[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [amibroker] Why does it take so long to apply edits?



PureBytes Links

Trading Reference Links

Hello,

It saves parameter values for all charts - it is needed as
"permanent" storage of parameters, so when you shut down AmiBroker
and re-run the parameters are restored to values they were set prior to shut down.

I think that you "re-invented wheel" - parameters are saved by AmiBroker already
and I am not quite sure why to re-implement the same from AFL.

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
From: "Dennis Brown" <see3d@xxxxxxxxxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Tuesday, November 20, 2007 5:13 AM
Subject: Re: [amibroker] Why does it take so long to apply edits?


> Tomasz,
> 
> The broker.params file is 117KB and you are right it contains  
> thousands of parameters from past versions of the chart.
> Since I keep all my parameters in separate files I deleted this file  
> and it is now only 5KB and my program runs the same (I made a copy  
> first).
> How interesting.  Could this have slowed down applying my edits as it  
> grew?
> I could just delete this file from time to time.  Does it serve any  
> other purpose?
> 
> Best regards,
> Dennis
> 
> On Nov 19, 2007, at 9:29 PM, Tomasz Janeczko wrote:
> 
>> Hello,
>>
>> You should look inside broker.params file.
>> I guess that thousands of different (now unused)
>> parameter names were created by the formula.
>>
>> Best regards,
>> Tomasz Janeczko
>> amibroker.com
>> ----- Original Message -----
>> From: "Dennis Brown" <see3d@xxxxxxxxxxx>
>> To: <amibroker@xxxxxxxxxxxxxxx>
>> Sent: Tuesday, November 20, 2007 2:45 AM
>> Subject: Re: [amibroker] Why does it take so long to apply edits?
>>
>>
>>> Hello,
>>>
>>> I just wanted to let everyone know that I found how to fix this
>>> problem.  Somehow my chart had become corrupted in such a way that
>>> every edit I made would progressively add a little bit more to the
>>> time it took to "Apply Indicator".  I was up to 15 minutes today
>>> before I found it was not my AFL that was doing it.  AB Support tried
>>> my AFL and let me know that it was not the problem which got me
>>> looking in the right direction.  Copying my AFL to another sheet
>>> fixed the problem.  It actually takes less than a second to do this
>>> operation now.
>>>
>>> Best regards,
>>> Dennis
>>>
>>> On Nov 8, 2007, at 9:09 PM, Dennis Brown wrote:
>>>
>>>> Tomasz,
>>>>
>>>> Thank you for your response on the forum.  Since this problem seems
>>>> to have gone way beyond the purpose of the forum at this point, I am
>>>> switching to AB Support to debug this issue.  I have included this
>>>> whole thread as background with that email.
>>>>
>>>> But to answer your questions here for the completeness of this  
>>>> thread:
>>>>
>>>> Yes, I am talking about "Apply Indicator" taking so long and it did
>>>> not make sense to me either that it should take so long.
>>>>
>>>> If I do a "Verify syntax" it takes less than a second.
>>>>
>>>> Normal operation mode is .25 seconds and resulted in the following:
>>>>
>>>> Using constant volume bar mode resulted in an "Apply" time of 8.5
>>>> minutes.
>>>> Switching to daily mode resulted in an "Apply" time of 9.5  
>>>> minutes --
>>>> so not an improvement.
>>>> Commenting out ALL 2700 lines of my AFL code resulted in an apply
>>>> time of 3 minutes.
>>>>
>>>> The Profiler runs instantly and shows .01 seconds execution time,  
>>>> but
>>>> consists of only 6 functions that are checked because most of the  
>>>> AFL
>>>> is conditionally executed in indicator mode only.
>>>>
>>>> I edited out my indicator mode wrapper and used the Profiler again.
>>>> This time it showed the results on the screen for about 2 seconds,
>>>> then the window disappeared and none of the AB windows could be
>>>> selected, as if the profiler model dialog box was still open but now
>>>> invisible.  I was able to catch the AFL run time from the window
>>>> before it disappeared.  One time it said .45 seconds, another  
>>>> time it
>>>> was 1.1 seconds.
>>>>
>>>> I took screen shots of the Task Manager while it is doing an "Apply
>>>> indicator" and sent them along with my AFL code to the AB support
>>>> email.
>>>>
>>>> Thank you for all you do for us.
>>>> Best regards,
>>>>
>>>> Dennis
>>>>
>>>> On Nov 7, 2007, at 4:26 PM, Tomasz Janeczko wrote:
>>>>
>>>>> Dennis,
>>>>>
>>>>> If you speak about "Apply indicator" - it should be sub-second  
>>>>> time.
>>>>> Minutes mean that something is wrong.
>>>>> "Applying indicator" executes the code for ALL bars with selected
>>>>> symbol and selected interval.
>>>>>
>>>>> Your formula needs to be doing some weird things if that takes that
>>>>> much time.
>>>>> Use built in Profiler (in 5.0.1) to find out which functions that
>>>>> you are using cause such long times.
>>>>>
>>>>> Other than looking at your formula I can only suggest to switch to
>>>>> daily interval when applying the code during editing.
>>>>>
>>>>> Best regards,
>>>>> Tomasz Janeczko
>>>>> amibroker.com
>>>>> ----- Original Message -----
>>>>> From: "Dennis Brown" <see3d@xxxxxxxxxxx>
>>>>> To: <amibroker@xxxxxxxxxxxxxxx>
>>>>> Sent: Wednesday, November 07, 2007 6:24 PM
>>>>> Subject: Re: [amibroker] Why does it take so long to apply edits?
>>>>>
>>>>>
>>>>>> Ok,
>>>>>>
>>>>>> This has totally frustrated me.  I am ready to abandon the  
>>>>>> built-in
>>>>>> AFL editor.  It is taking forever to debug code when I have to  
>>>>>> wait
>>>>>> 4-8 minutes for every typo.
>>>>>>
>>>>>> However, I need to keep my AB chart running while editing the AFL
>>>>>> (because my AB startup setup is complicated).
>>>>>>
>>>>>> Can I use an external editor as a *direct* replacement for the
>>>>>> built-
>>>>>> in editor?
>>>>>> Alternatively, is there a way to disable the checking done by the
>>>>>> AFL
>>>>>> formula editor when applying?
>>>>>> Actually the syntax checking is fast, it is what it does after  
>>>>>> that
>>>>>> that takes so long.
>>>>>>
>>>>>> Am I the only one who sees this problem?
>>>>>>
>>>>>> Best regards,
>>>>>> Dennis
>>>>>>
>>>>>> On Oct 30, 2007, at 10:21 AM, Dennis Brown wrote:
>>>>>>
>>>>>>> Tomasz,
>>>>>>>
>>>>>>> As time has gone on, I have increased the complexity of my AFL to
>>>>>>> 2500 lines and my database to 200K.  The time to apply edits has
>>>>>>> also
>>>>>>> gone up to 8 minutes even though I have wrapped the code so that
>>>>>>> most
>>>>>>> only executes in indicator mode.  Finally today I became  
>>>>>>> frustrated
>>>>>>> enough to track down the offending AFL.  I started by commenting
>>>>>>> out
>>>>>>> my entire AFL.  Time to apply --4 minutes for 2500 lines of
>>>>>>> comments!  I am at a loss for how to track down what is  
>>>>>>> causing the
>>>>>>> long apply edits now.  Do you know how I might approach this?
>>>>>>>
>>>>>>> Best regards,
>>>>>>> Dennis
>>>>>>>
>>>>>>> On Sep 4, 2007, at 9:16 PM, Dennis Brown wrote:
>>>>>>>
>>>>>>>> Tomasz,
>>>>>>>>
>>>>>>>> Thank you for your insights.
>>>>>>>>
>>>>>>>> I wrapped my code today as you suggested below and in an earlier
>>>>>>>> post
>>>>>>>> today, so unwrapped are only the uncalled functions and a few
>>>>>>>> variables initialized to keep out syntax errors.  I am using a
>>>>>>>> 90,000
>>>>>>>> bar 5 second database, but the chart timeframe is run at about
>>>>>>>> 7,000
>>>>>>>> bars, and my complex loop processing is limited by parameter to
>>>>>>>> less
>>>>>>>> than 2,000 bars.  Changing that parameter to 200 bars reduces  
>>>>>>>> the
>>>>>>>> execution time from 1 second to .2 seconds, but as you  
>>>>>>>> suggested,
>>>>>>>> does not seem to have much affect on the apply time --which now
>>>>>>>> varies from 35 to 65 seconds.  I also tried different tickers  
>>>>>>>> with
>>>>>>>> fewer bars (30,000) and it did made the apply time longer.  So I
>>>>>>>> would say my edit apply time is no longer dependent on my  
>>>>>>>> database
>>>>>>>> size or AFL complexity.
>>>>>>>>
>>>>>>>> Even though I am glad to have under a minute apply time now, it
>>>>>>>> seems
>>>>>>>> as though there is still something else that is slowing it
>>>>>>>> down.  Do
>>>>>>>> any other possibilities come to mind?
>>>>>>>>
>>>>>>>> One thing that I noticed, is that it is a consistent 35  
>>>>>>>> seconds to
>>>>>>>> apply when I start up AB and just do a lot of applies.   
>>>>>>>> Switching
>>>>>>>> symbols, more edits, enabling complex AFL sections, etc.  
>>>>>>>> cause the
>>>>>>>> time to lengthen up to the 55 second area and it does not go  
>>>>>>>> back
>>>>>>>> down until I quit AB.  I am guessing that these things take  
>>>>>>>> memory
>>>>>>>> that does not get released and it reduces the RAM available for
>>>>>>>> processing the apply.
>>>>>>>>
>>>>>>>> PS.  When I turn on ALL of my formula (enabled in sections with
>>>>>>>> multiple timeframes and indicators) it takes about 5 seconds to
>>>>>>>> execute with all the speed-up tricks so far --which is why I am
>>>>>>>> obsessed with getting the most speed I can out of AFL by clever
>>>>>>>> programming tricks.
>>>>>>>>
>>>>>>>> Best regards,
>>>>>>>> Dennis
>>>>>>>>
>>>>>>>> On Sep 4, 2007, at 6:00 PM, Tomasz Janeczko wrote:
>>>>>>>>
>>>>>>>>> Dennis,
>>>>>>>>>
>>>>>>>>> If you are "applying" the code - it is for the first time
>>>>>>>>> executed
>>>>>>>>> with ALL bars, regardless of QuickAFL and SetBarsRequired
>>>>>>>>> settings.
>>>>>>>>>
>>>>>>>>> Now *if* your formula is complex and uses looping and you are
>>>>>>>>> using
>>>>>>>>> for example tick database with hundreds of thousands of bars
>>>>>>>>> it may take a while. Usually it is non-issue as people are not
>>>>>>>>> using such complex formulas.
>>>>>>>>> (1 second is *very* long for execution under normal
>>>>>>>>> circumstances.
>>>>>>>>> My formulas usually execute well below 0.1 sec).
>>>>>>>>>
>>>>>>>>> You may wrap your code into
>>>>>>>>>
>>>>>>>>> if( Status("action")==actionIndicator)
>>>>>>>>> {
>>>>>>>>> ...
>>>>>>>>> }
>>>>>>>>>
>>>>>>>>> and this will prevent this effect.
>>>>>>>>>
>>>>>>>>> Best regards,
>>>>>>>>> Tomasz Janeczko
>>>>>>>>> amibroker.com
>>>>>>>>> ----- Original Message -----
>>>>>>>>> From: "Dennis Brown" <see3d@xxxxxxxxxxx>
>>>>>>>>> To: <amibroker@xxxxxxxxxxxxxxx>
>>>>>>>>> Sent: Tuesday, September 04, 2007 11:25 PM
>>>>>>>>> Subject: [amibroker] Why does it take so long to apply edits?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>> I have noticed that the time it takes to apply an edit to my
>>>>>>>>>> large
>>>>>>>>>> indicator AFL takes a long but variable amount of time.  It
>>>>>>>>>> might
>>>>>>>>>> take 15 seconds one time and 3 minutes another time.  It  
>>>>>>>>>> usually
>>>>>>>>>> takes about 2.5 minutes to apply an edit, though if there is a
>>>>>>>>>> syntax
>>>>>>>>>> error, it comes back right away.  The AFL itself has an
>>>>>>>>>> execution of
>>>>>>>>>> about 1 second per pass and starts up right away from scratch.
>>>>>>>>>>
>>>>>>>>>> I was wondering if there were any general rules that I  
>>>>>>>>>> should be
>>>>>>>>>> aware of that would make applying edits faster and more
>>>>>>>>>> consistent?
>>>>>>>>>>
>>>>>>>>>> Another thing that is interesting is that if I click  
>>>>>>>>>> anywhere on
>>>>>>>>>> the
>>>>>>>>>> chart or UI while the edit is being applied, it runs even
>>>>>>>>>> slower,
>>>>>>>>>> and
>>>>>>>>>> always resets all the params.
>>>>>>>>>>
>>>>>>>>>> Insights anyone?
>>>>>>>>>>
>>>>>>>>>> Thanks,
>>>>>>>>>> Dennis
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Please note that this group is for discussion between users
>>>>>>>>>> only.
>>>>>>>>>>
>>>>>>>>>> To get support from AmiBroker please send an e-mail  
>>>>>>>>>> directly to
>>>>>>>>>> SUPPORT {at} amibroker.com
>>>>>>>>>>
>>>>>>>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check
>>>>>>>>>> DEVLOG:
>>>>>>>>>> http://www.amibroker.com/devlog/
>>>>>>>>>>
>>>>>>>>>> For other support material please check also:
>>>>>>>>>> http://www.amibroker.com/support.html
>>>>>>>>>>
>>>>>>>>>> Yahoo! Groups Links
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Please note that this group is for discussion between users  
>>>>>>>>> only.
>>>>>>>>>
>>>>>>>>> To get support from AmiBroker please send an e-mail directly to
>>>>>>>>> SUPPORT {at} amibroker.com
>>>>>>>>>
>>>>>>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check  
>>>>>>>>> DEVLOG:
>>>>>>>>> http://www.amibroker.com/devlog/
>>>>>>>>>
>>>>>>>>> For other support material please check also:
>>>>>>>>> http://www.amibroker.com/support.html
>>>>>>>>>
>>>>>>>>> Yahoo! Groups Links
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Please note that this group is for discussion between users  
>>>>>>>> only.
>>>>>>>>
>>>>>>>> To get support from AmiBroker please send an e-mail directly to
>>>>>>>> SUPPORT {at} amibroker.com
>>>>>>>>
>>>>>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check  
>>>>>>>> DEVLOG:
>>>>>>>> http://www.amibroker.com/devlog/
>>>>>>>>
>>>>>>>> For other support material please check also:
>>>>>>>> http://www.amibroker.com/support.html
>>>>>>>>
>>>>>>>> Yahoo! Groups Links
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Please note that this group is for discussion between users only.
>>>>>>>
>>>>>>> To get support from AmiBroker please send an e-mail directly to
>>>>>>> SUPPORT {at} amibroker.com
>>>>>>>
>>>>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>>>>>>> http://www.amibroker.com/devlog/
>>>>>>>
>>>>>>> For other support material please check also:
>>>>>>> http://www.amibroker.com/support.html
>>>>>>>
>>>>>>> Yahoo! Groups Links
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Please note that this group is for discussion between users only.
>>>>>>
>>>>>> To get support from AmiBroker please send an e-mail directly to
>>>>>> SUPPORT {at} amibroker.com
>>>>>>
>>>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>>>>>> http://www.amibroker.com/devlog/
>>>>>>
>>>>>> For other support material please check also:
>>>>>> http://www.amibroker.com/support.html
>>>>>>
>>>>>> Yahoo! Groups Links
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> Please note that this group is for discussion between users only.
>>>>>
>>>>> To get support from AmiBroker please send an e-mail directly to
>>>>> SUPPORT {at} amibroker.com
>>>>>
>>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>>>>> http://www.amibroker.com/devlog/
>>>>>
>>>>> For other support material please check also:
>>>>> http://www.amibroker.com/support.html
>>>>>
>>>>> Yahoo! Groups Links
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> Please note that this group is for discussion between users only.
>>>>
>>>> To get support from AmiBroker please send an e-mail directly to
>>>> SUPPORT {at} amibroker.com
>>>>
>>>> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>>>> http://www.amibroker.com/devlog/
>>>>
>>>> For other support material please check also:
>>>> http://www.amibroker.com/support.html
>>>>
>>>> Yahoo! Groups Links
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> Please note that this group is for discussion between users only.
>>>
>>> To get support from AmiBroker please send an e-mail directly to
>>> SUPPORT {at} amibroker.com
>>>
>>> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>>> http://www.amibroker.com/devlog/
>>>
>>> For other support material please check also:
>>> http://www.amibroker.com/support.html
>>>
>>> Yahoo! Groups Links
>>>
>>>
>>>
>>>
>>>
>>
>>
>> Please note that this group is for discussion between users only.
>>
>> To get support from AmiBroker please send an e-mail directly to
>> SUPPORT {at} amibroker.com
>>
>> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>> http://www.amibroker.com/devlog/
>>
>> For other support material please check also:
>> http://www.amibroker.com/support.html
>>
>> Yahoo! Groups Links
>>
>>
>>
> 
> 
> 
> Please note that this group is for discussion between users only.
> 
> To get support from AmiBroker please send an e-mail directly to 
> SUPPORT {at} amibroker.com
> 
> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> http://www.amibroker.com/devlog/
> 
> For other support material please check also:
> http://www.amibroker.com/support.html
> 
> Yahoo! Groups Links
> 
> 
> 
> 
>


Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

For other support material please check also:
http://www.amibroker.com/support.html
 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/