Thanks, brian_z
--- In [email protected], "gp_sydney" <[EMAIL PROTECTED]> wrote: > > You can't do loops over arrays to arbitrary index values (in this case > 63 and 127) unless you are sure that you will never run the code over > a stock that has less than that many bars. Array indices reference > bars, and every stock will likely have a different number of bars. If > you run this over a portfolio of stocks, the moment you hit a stock > with less than 64 bars you'll get that error on the first loop. > > Normally you should use BarCount, or some smaller value, as the loop > limit. If you want to use a fixed value unrelated to BarCount, then > you need to add a test for your value exceeding BarCount before you > enter the loop, and skip the whole loop for stocks with insufficient > bars. Loops are usually to iterate over all bars though, so using > BarCount in the loop termination condition makes sense. > > Note that valid indices are from zero to BarCount-1, so you need to > use strictly less than BarCount (ie. "< BarCount"). > > Regards, > GP > > > --- In [email protected], Humblybob <humblybob1@> wrote: > > > > Would be highly obliged if someone can help me with correcting > this error > > in an afl. I am not a programmer and hence struggle with this. I do > realize > > that this error has to do with the number of bars. What values do I > need to > > change so that this afl works with even those scrips that have even > 1 or no > > bars. > > > > limitvalue=63 > > startValue = 64; > > > > //---- > > > > for (i = 0; i <= limitValue; i++) list [i] = -1000000; > > > > for (i = startValue; i <= 127; i++) list [i] > > ------------------------------------------------^ > > > > Error 10. > > Subscript out of range. > > You must not access array elements outside 0..(BarCount-1) range > > > > > > Many thanks in advance. > > >
