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

Re: [amibroker] Re: Confusing Behaviour...!!!



PureBytes Links

Trading Reference Links

As written here:
http://www.amibroker.com/kb/2008/07/03/quickafl/
and illustrated here:
http://www.amibroker.com/gifs/barindex_small.gif

BarCount is in direct relation with bar requirements.
BarCount is actually number of bars visible PLUS calculated requirements.

> They require 5,000 bars each. Again, why? 
Again as written here:
http://www.amibroker.com/kb/2008/07/03/quickafl/
every function has internally known requirements. 
QuickAFL does not really care about "exact" requirements.
It just needs to have some safe estimate. With safe
it means that too much is good, too few is not. 
For some functions with dynamic requirements, some kind
of assumption is being made. For those functions it is 5000.
Read however the "IMPORTANT NOTES" part of the document
mentioned already many times.

The difference between in-funciton or out, is very simple.
If you don't actually CALL the function, it does not add to
the requirements. The definition does not matter.
What is important is actual CALL.
If you call multiple times - the requirements add up.
Again, this is all really described in detail in the docs
http://www.amibroker.com/kb/2008/07/03/quickafl/

Note that my documents are condensed and each sentence
is usually packed with important info, so slow reading is advised.

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
From: "sidhartha70" <sidhartha70@xxxxxxxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Saturday, September 20, 2008 1:48 AM
Subject: [amibroker] Re: Confusing Behaviour...!!!


> Tj thanks.
> 
> But I just want to get this 100% clear so I don't have to come back to
> this again.
> 
> On exactly the same chart... same settings, same zoom etc... One line
> of code requires 5,000 previous bars within a function structure, and
> outside of a function structure it requires 500. Why? It makes no
> difference if I move around the chart, or zoom the chart etc. The
> number of pervious bars required doesn't seem dynamic. It's very much
> fixed.
> 
> In the case of the following lines,
> 
> H1=SelectedValue(TimeFrameGetPrice( "H", inDaily, -1 ));
> L1=SelectedValue(TimeFrameGetPrice( "L", inDaily, -1 ));
> C1=SelectedValue(TimeFrameGetPrice( "C", inDaily, -1 ));
> 
> They require 5,000 bars each. Again, why? Sorry to be thick here, and
> I'm sure it's blindingly obvious to you... But I don't see how
> BarCount has anything to do with these two examples...??
> 
> Thanks Again for taking the time.
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@xxx> wrote:
>>
>> BarCount is DYNAMIC, it may change with every execution.
>> You should not think about it as a constant.
>> It can change with zoom factor, tooltip display (uses less),
>> interpretation, selected bar, etc, etc.
>> 
>> Also first execution after applying indicator always uses
>> all bars, only subsequent runs use less.
>> 
>> Best regards,
>> Tomasz Janeczko
>> amibroker.com
>> ----- Original Message ----- 
>> From: "sidhartha70" <sidhartha70@xxx>
>> To: <amibroker@xxxxxxxxxxxxxxx>
>> Sent: Saturday, September 20, 2008 1:15 AM
>> Subject: [amibroker] Re: Confusing Behaviour...!!!
>> 
>> 
>> > Thanks TJ. I do know about Quick AFL and I have read that document
>> > throughly before.
>> > 
>> > But I can't see how it applies in this case with these specific
>> > examples. And I definately can't see the difference between one being
>> > inside a function or not.
>> > 
>> > Can you explain?
>> > 
>> > TIA
>> > 
>> > --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@> wrote:
>> >>
>> >> Please read this:
>> >> 
>> >> http://www.amibroker.com/kb/2008/07/03/quickafl/
>> >> 
>> >> Best regards,
>> >> Tomasz Janeczko
>> >> amibroker.com
>> >> ----- Original Message ----- 
>> >> From: "sidhartha70" <sidhartha70@>
>> >> To: <amibroker@xxxxxxxxxxxxxxx>
>> >> Sent: Saturday, September 20, 2008 12:50 AM
>> >> Subject: [amibroker] Confusing Behaviour...!!!
>> >> 
>> >> 
>> >> > Hi,
>> >> > 
>> >> > I'm trying to get some code to run as fast as possible. As such
> I've
>> >> > been studying the 'Display Chart Timing' option under
>> > preferences>misc.
>> >> > 
>> >> > I've noticed some behaviour that I can't explain. I hope others
> may be
>> >> > able to.
>> >> > 
>> >> > Firstly I notice that when my chart requires 10,000+ bars I
> start to
>> >> > notice latency in AmiBroker, despite running a very fast PC. I
> assume
>> >> > that is normal at that number of bars...?
>> >> > 
>> >> > So here's the problem...
>> >> > 
>> >> > Under normal circumstances my code requires 297 previous bars.
>> >> > 
>> >> > However, If I add the following lines, the number of previous bars
>> >> > required increases by 5,000 for each instance. So after these three
>> >> > lines of code I am now needing 15,297 pervious bars.
>> >> > 
>> >> > H1=SelectedValue(TimeFrameGetPrice( "H", inDaily, -1 ));
>> >> > L1=SelectedValue(TimeFrameGetPrice( "L", inDaily, -1 ));
>> >> > C1=SelectedValue(TimeFrameGetPrice( "C", inDaily, -1 ));
>> >> > 
>> >> > Even stranger, when I add the following line of code into the main
>> >> > body of code,
>> >> > 
>> >> > test=((BarCount - 1) - LastValue(TroughBars(L, 0.05,10)));
>> >> > 
>> >> > It adds 500 bars to my previous bars required (total new 797).
>> >> > 
>> >> > However if I call a function and simply return the following,
>> >> > 
>> >> > return ((BarCount - 1) - LastValue(TroughBars(L, 0.05,10)));
>> >> > 
>> >> > It now requires 5,000 previous bars instead of the 500 outside
> of the
>> >> > function (total now 5,297).
>> >> > 
>> >> > Can anyone explain this behaviour...?
>> >> > 
>> >> > Many Thanks
>> >> > 
>> >> > 
>> >> > 
>> >> > 
>> >> > ------------------------------------
>> >> > 
>> >> > 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/