PureBytes Links
Trading Reference Links
|
Yes I could have just said one plain : NO.
Instead I was just trying to help you better by pointing out conceptual mistake you are making. However, no good deed goes
unpunished.
In my response I just pointed out you simple fact, that if chart is not scrolled to right-most position, there is no point
in accessing future data at all, to draw a chart that is not supposed to look into the future.
That's all. That's why insisting on "knowing" the value LastValue(BarIndex()) is IMHO mistake you are making.
Instead you should be using { bi = BarIndex(); lastbarindexinchart = bi[ BarCount -1 ]; }
because future invisible bars should not really be relevant to your chart.
That is the message I was trying to bring accross, yet you don't want to see.
You should be using Status() function that I pointed out to determine first and last visible bar and
use it for drawing. That's all. You don't need to worry about scrolling. You don't perform scrolling, you don't
perform scroll bar sizing, etc. It is *only* needed for scroll bar update, but you don't do that in your code.
This is all handled by AB. All you need to do is to draw from first to last visible bar, without really caring how many bars there
are.
Now, if you anyway insist on doing all things the other way round, not the way I suggested/recommended,
you can of course do it your way using LastValue(BarIndex()), but then I offered you better way - it is your
call to choose to use my advice or not. IMHO you have taken wrong implementation approach and I am trying to help you by pointing it
out.
But of course you may not like it.
And, no sorry, I don't have better answer for you, there is no one-to-one replacement for LastValue(BarIndex()) .
Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message -----
From: "jooleanlogic" <juliangoodsell@xxxxxxxxxxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Thursday, August 27, 2009 11:10 PM
Subject: [amibroker] Re: barcount
> What's sad Tomasz is your inability to understand the question being asked and offer a normal response. You jump to ridicule so
> quickly as to miss the point of the question.
>
> Your explanation of barcount is total semantics. So what if you say a chart is represented by the 100 bars available as opposed to
> the other 200,000+ that we know are there? It's meaningless. It was implicitly clear in my question as to which value I was after.
> "Is there a way to determine the total number of bars in a chart besides LastValue(BarIndex())? Using LastValue turns off quickAFL
> for future bars and I don't want to do that."
> There is no ambiguity in that question.
>
> In my dll, I have around a half million custom trade objects in an array. The full set is in memory but for performance reasons I
> will only process and render what's necessary, say trades 240,000 to 260,000 if the user is scrolled to the middle of the chart,
> but I still know there's 500k trades all up. I need to know this figure in order to scale and scroll the chart.
> BarCount in my chart would be 20,000, yet the "total number of bars" I'm referring to is the figure of 500,000 and it doesn't cost
> me any cpu cycles to get that value.
>
> Internally, do you know this value for your charts and is it exposed through afl anywhere?
>
> Jules.
>
> --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@xxx> wrote:
>>
>> Go on with teaching me about the program I wrote....
>> This is hillarious.
>>
>> BarCount IS total number of bars in CHART. CHART is something that
>> is drawn in given window with given zoom - and it usually some VISIBLE bars.
>> And for most formulas (*those not having future leak problem*)
>> invisible bars in the FUTURE (from the right hand side of last visible bar) are irrelevant.
>> Those bars which are used for given chart calcualtions are "bars in chart".
>> Others are not.
>>
>> Read this
>> http://www.amibroker.com/kb/2008/07/03/quickafl/
>>
>> And this:
>> http://www.amibroker.com/guide/afl/afl_view.php?barindex
>>
>> and this:
>> http://www.amibroker.com/f?setbarsrequired
>>
>> and this:
>> http://www.amibroker.com/f?status
>>
>> It contains all info you need.
>>
>> Best regards,
>> Tomasz Janeczko
>> amibroker.com
>> ----- Original Message -----
>> From: "jooleanlogic" <juliangoodsell@xxx>
>> To: <amibroker@xxxxxxxxxxxxxxx>
>> Sent: Thursday, August 27, 2009 8:04 PM
>> Subject: [amibroker] Re: barcount
>>
>>
>> >> But BarCount *IS* total number of bars in a chart. And that was original question.
>> >
>> > BarCount under QuickAFL is not the TOTAL number of bars in the chart, otherwise the bar number in the tooltip wouldn't show
>> > 500,000 when BarCount says there's only 180 bars.
>> > LastValue(BarIndex()) is how many bars there are in the current chart, on whatever timeframe the user happens to be on.
>> >
>> >> BarIndex will not give you total number of "available bars in the data" because
>> > you don't know that. Why? Because in a second or two new backfilled data may arrive and it will all change, or user will change
>> > filtering or interval and the number of bars of "available data" will change.
>> >
>> > Where in my question did I ask to access off chart data? All I asked for was "TOTAL number of BARS in a CHART". I.e. the
>> > current
>> > chart, not some future one.
>> >
>> >> Why do you care at all about "total number of "available" bars" it is irrelevant, unless you really want to PROCESS THEM. But
>> >> then... you would need to ACCESS them. But then.... you will need to SetBarsRequired( sbrAll, sbrAll ) and then... BarCount
>> >> will
>> >> represent total number of bars of available data.
>> >
>> > How can you know it's irrelevant when you have no idea what I'm doing? I'm rendering market delta charts from T&S data using
>> > gfx
>> > functions. I need to know how many bars are on the current chart so I can map between the footprint bars and normal bars in
>> > order
>> > to perform scaling and scrolling amongst other issues.
>> >
>> > LastValue(BarIndex()) gets me the total number of bars in the current chart, but LastValue negates the advantages of QuickAFL.
>> > This causes a performance hit the further to the left the user scrolls.
>> > All I want to know is, can I get the total number of bars in the chart, as given by LastValue(BarIndex()), without using
>> > LastValue? If not, so be it.
>> >
>> > Jules.
>> >
>> >
>> > --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@> wrote:
>> >>
>> >> But BarCount *IS* total number of bars in a chart. And that was original question.
>> >>
>> >> BarIndex will not give you total number of "available bars in the data" because
>> >> you don't know that. Why? Because in a second or two new backfilled data may arrive
>> >> and it will all change, or user will change filtering or interval and the number of bars of "available data" will change.
>> >>
>> >> Why do you care at all about "total number of "available" bars" it is irrelevant, unless you really
>> >> want to PROCESS THEM. But then... you would need to ACCESS them. But then.... you will need
>> >> to SetBarsRequired( sbrAll, sbrAll ) and then... BarCount will represent total number of bars of available data.
>> >>
>> >> Best regards,
>> >> Tomasz Janeczko
>> >> amibroker.com
>> >> ----- Original Message -----
>> >> From: "jooleanlogic" <juliangoodsell@>
>> >> To: <amibroker@xxxxxxxxxxxxxxx>
>> >> Sent: Thursday, August 27, 2009 3:50 PM
>> >> Subject: [amibroker] Re: barcount
>> >>
>> >>
>> >> > Thanks Snoopy,
>> >> >
>> >> > Barcount doesn't give you the total number of bars in the data, just the total number of available bars.
>> >> > I need to know how many total bars exist in the current symbol when running under QuickAFL.
>> >> >
>> >> > Turning off QuickAFL is about a 10x performance hit which is not acceptable for the sake of one number.
>> >> >
>> >> > Jules.
>> >> >
>> >> >
>> >> > --- In amibroker@xxxxxxxxxxxxxxx, Snoopy <snoopy.pa30@> wrote:
>> >> >>
>> >> >> Here is the reference to the Barcount Constant. Not sure if it will
>> >> >> impact Quickafl.
>> >> >>
>> >> >> *BarCount* constant gives the number of bars in array (such as Close,
>> >> >> High, Low, Open, Volume, etc). Array elements are numbered from 0 (zero)
>> >> >> to BarCount-1.
>> >> >>
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > ------------------------------------
>> >> >
>> >> > **** IMPORTANT PLEASE READ ****
>> >> > This group is for the discussion between users only.
>> >> > This is *NOT* technical support channel.
>> >> >
>> >> > TO GET TECHNICAL SUPPORT send an e-mail directly to
>> >> > SUPPORT {at} amibroker.com
>> >> >
>> >> > TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
>> >> > http://www.amibroker.com/feedback/
>> >> > (submissions sent via other channels won't be considered)
>> >> >
>> >> > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>> >> > http://www.amibroker.com/devlog/
>> >> >
>> >> > Yahoo! Groups Links
>> >> >
>> >> >
>> >> >
>> >>
>> >
>> >
>> >
>> >
>> > ------------------------------------
>> >
>> > **** IMPORTANT PLEASE READ ****
>> > This group is for the discussion between users only.
>> > This is *NOT* technical support channel.
>> >
>> > TO GET TECHNICAL SUPPORT send an e-mail directly to
>> > SUPPORT {at} amibroker.com
>> >
>> > TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
>> > http://www.amibroker.com/feedback/
>> > (submissions sent via other channels won't be considered)
>> >
>> > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>> > http://www.amibroker.com/devlog/
>> >
>> > Yahoo! Groups Links
>> >
>> >
>> >
>>
>
>
>
>
> ------------------------------------
>
> **** IMPORTANT PLEASE READ ****
> This group is for the discussion between users only.
> This is *NOT* technical support channel.
>
> TO GET TECHNICAL SUPPORT send an e-mail directly to
> SUPPORT {at} amibroker.com
>
> TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
> http://www.amibroker.com/feedback/
> (submissions sent via other channels won't be considered)
>
> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> http://www.amibroker.com/devlog/
>
> Yahoo! Groups Links
>
>
>
------------------------------------
**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.
TO GET TECHNICAL SUPPORT send an e-mail directly to
SUPPORT {at} amibroker.com
TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)
For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/
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/
|