Hello, See Comments section in BarIndex() reference:
http://www.amibroker.com/guide/afl/afl_view.php?barindex When running a loop over array you must NOT access elements outside 0..BarCount-1 range. The code that you want to write should look as follows: bi = BarIndex(); for( i = 0; i < BarCount; i++ ) { Cnt[ i ] = i + bi[ 0 ]; } Best regards, Tomasz Janeczko amibroker.com ----- Original Message ----- From: "klaus_korneker" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Wednesday, January 10, 2007 8:30 PM Subject: [amibroker] Re: loop counter > Thanks for the explanation. But how can i now create a > barindex(counter) through a loop. Graph1 plots the barindex. I have > tried to use (i = 0; i < LastValue(BarIndex()); i++ ) but this > generates an error. > Can you help ? > > Cnt = 0; > for( i = 0; i < LastValue(BarIndex()); i++ ) > { > Cnt[ i ] = i ; > } > > Graph0 = Cnt; > Graph1 = BarIndex(); > > > --- In [email protected], "Terry" <[EMAIL PROTECTED]> wrote: >> >> BarCount does not necessarily == LastValue(BarIndex()) >> >> This is because Amibroker uses "quickAFL" which means it only uses > enough >> bars to "get the job done". This frequently is not all the bars. >> >> -- >> Terry >> >> -----Original Message----- >> From: [email protected] [mailto:[EMAIL PROTECTED] > On Behalf >> Of klaus_korneker >> Sent: Wednesday, January 10, 2007 09:48 >> To: [email protected] >> Subject: [amibroker] Re: loop counter >> >> Hi Terry, >> >> thank you very much for your explanation ! >> However it looks a little bit strange. It works still the same. >> When set the entire array to 0 with Cnt = 0; and click Apply, it shows >> the same value as with the confirmation code in the graph. However >> automatically after about 1 second it changes the value to 199 instead >> 4517 >> >> BTW: i know that it displays the number in the title based on my > cursor. >> >> Regards >> >> Klaus >> >> >> --- In [email protected], "Terry" <MagicTH@> wrote: >> > >> > To initialize the loop you should do this: >> > Cnt = 0; //Initializes entire array, not just 1st element. >> > >> > When you click on the chart the number should change because you are >> > selecting "that bar". Also see last paragraph about barcount. > Otherwise, >> > your loop is correct. >> > >> > Here's some code to verify with: >> > >> > x = BarIndex(); >> > Plot(x,"x",1,styleStaircase); >> > NumToStr(BarCount,1.0); >> > NumToStr(LastValue(BarIndex()),1.0); >> > >> > Note the last two statements print in the interpretation window and >> they are >> > different because of quickAFL. The first changes with your selection >> and the >> > number of bars showing. The last does not change. It is the absolute >> number >> > of bars in your data. This is probably the reason your results are >> changing >> > in unexpected ways as you are using BarCount. >> > -- >> > Terry >> > >> > -----Original Message----- >> > From: [email protected] [mailto:[EMAIL PROTECTED] >> On Behalf >> > Of klaus_korneker >> > Sent: Wednesday, January 10, 2007 07:43 >> > To: [email protected] >> > Subject: [amibroker] loop counter >> > >> > Hello, >> > >> > i am trying to build a counter with a loop. i have already tried the >> > following, but it seems that anything is wrong. The chart shows the >> > bar number, but when i click inside the chart, the number changes. >> > >> > Cnt[0] = 0; >> > for( i = 0; i < BarCount; i++ ) >> > { >> > Cnt[ i ] = i ; >> > } >> > >> > Graph0 = Cnt; >> > >> > Thanks i advance ! >> > >> > >> > >> > 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 > > > > >
