There is NO limit. Best regards, Tomasz Janeczko amibroker.com ----- Original Message ----- From: "david.weilmuenster" <[EMAIL PROTECTED]> To: <[email protected]> Sent: Friday, November 16, 2007 5:44 PM Subject: [amibroker] Re: Nested Loops to Examine Signals in Custom BackTester
> Graham, > > Thanks, that could do the trick, and would likley be more efficient > processing. > > One concern: Is there an architectural limit on the number of > variables that one can create using varset? > > > Thanks, > David > > > > --- In [email protected], Graham <[EMAIL PROTECTED]> wrote: >> >> Why not do 2 separate loops and in the first use varset to obtain > what >> information you need for each signal to use in the second loop >> >> -- >> Cheers >> Graham Kav >> AFL Writing Service >> http://www.aflwriting.com >> >> >> >> On 16/11/2007, david.weilmuenster <[EMAIL PROTECTED]> wrote: >> > GP, >> > >> > Thanks. I was afraid it would involve something similar to your >> > suggestion. >> > >> > Will take it from there, and make something work. >> > >> > Thanks agin, >> > David >> > >> > >> > --- In [email protected], "gp_sydney" <gp.investment@> >> > wrote: >> > > >> > > Yes, the backtester object maintains the state internally of > which >> > > signal is the next one, so both loops are affecting the same > state >> > > variable. >> > > >> > > For the outer loop you need to keep your own count of how many >> > signals >> > > it's processed and after the inner loop has finished, do > another get >> > > first followed by the current count of get next until the state > is >> > > back to where it needs to be for the next pass of the outer > loop. >> > > >> > > There are a few ways to do this, but one would be something like >> > this: >> > > >> > > sig = bo.GetFirstSignal(bar); >> > > count = 1; >> > > while (sig) >> > > { >> > > ... inner loop here ... >> > > >> > > sig = bo.GetFirstSignal(bar); >> > > cnt = count++; >> > > while (sig && cnt--) sig = bo.GetNextSignal(bar); >> > > } >> > > >> > > I haven't tried this code though, so there may be issues in it. >> > > >> > > Note also that the way you have it, the outer loop will > terminate at >> > > the very first signal that's not an entry. If you only want to > skip >> > > non-entries rather than terminate the loop at the first one, > put the >> > > IsEntry test inside the loop in an IF statement, not as part of > the >> > > loop condition. Similarly for the inner loop with the symbol > match >> > test. >> > > >> > > Regards, >> > > GP >> > > >> > > >> > > --- In [email protected], "david.weilmuenster" >> > > <dweilmuenster95125@> wrote: >> > > > >> > > > Hi, >> > > > >> > > > Is it possible to use nested loops of Signals in Custom >> > BackTester? >> > > > >> > > > What I have in mind is something like: >> > > > >> > > > for ( sig = bo.GetFirstSignal(bar); sig AND sig.isentry; >> > > > sig=bo.GetNextSignal(bar)) >> > > > { >> > > > ... >> > > > >> > > > for ( compsig = bo.GetFirstSignal(bar); compsig AND >> > compsig.symbol != >> > > > sig.symbol; compsig=bo.GetNextSignal(bar)) >> > > > { >> > > > >> > > > .... >> > > > >> > > > } >> > > > } >> > > > >> > > > But, what seems to happen is that the inner loop is processed >> > only >> > > > once, for the first signal identified in the outer loop. Am >> > guessing >> > > > that bo.getnextsignal(bar) needs to be "reset" somehow at end > of >> > > > inner loop, but don't see how to do it. >> > > > >> > > > >> > > > Thanks in advance for help, >> > > > >> > > > David >> > > > San Jose, CA >> > > > >> > > >> > >> > >> > >> > >> > 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 > > > > >
