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

Re: [amibroker] Re: Need a help for a maximum run AFL code



PureBytes Links

Trading Reference Links

Why are you using vbscript
You should be able to do this with the native AFL loops etc


On Wed, 10 Nov 2004 23:56:13 -0000, liugq_99 <gliu@xxxxxxxx> wrote:
> 
> 
> Sorry too late back on this. Thanks for giving suggestions. However,
> the result is not quite I'm looking for. I have written VBscript
> codes to try the job. The codes are shown as below. Again, thanks.
> 
> liugq_99
> 
> EnableScript("vbscript");
> 
> ix=34;
> 
> //----------------------------------
> 
> r=log(c/Ref(c,-1))*100;
> 
> <%
> rr=afl("r")
> ix=afl("ix")
> nsize=ubound(rr)
> 
> arun=0;
> brun=0;
> 
> for i=0 to ix
> xx=rr(i)
> yy=rr(i-1)
> arun=1
> if (xx == yy) arun=arun+1
> maxr=Max(arun,brun)
> brun=maxr
> i=i+1;
> next i
> 
> afl(xy")=brun
> %>
> 
> xy=brun;
> 
> Plot(xy,"",1,1);
> 
> --- In amibroker@xxxxxxxxxxxxxxx, "Christoper" <turkey@xxxx> wrote:
> >
> > I tried looking at your code and coudln' figure out why AB was
> > thinking i or n were arrays and not just single numbers.
> >
> > Having said that... I think you might be able to achiece what you
> want
> > without loops.  Take a look at this and let me know if this is waht
> > you are looking for.
> >
> > Also, how are you using this?
> >
> > ----------start-----------
> > Lookback = 100;
> >
> > Runup=HHV(BarsSince(Cross(C, Ref(C, -1))) * (C > Ref(C,-1))+1,
> Lookback );
> > Rundown=HHV(BarsSince(Cross(Ref(C, -1), C)) * (Ref(C,-1) > C)+1,
> > Lookback );
> >
> > Plot(Runup,"Max Runup", colorGreen, styleLine);
> > Plot(rundown,"Max Rundown", colorRed, styleLine);
> > ----------end-------------
> >
> > --- In amibroker@xxxxxxxxxxxxxxx, "liugq_99" <gliu@xxxx> wrote:
> > >
> > > Hi,
> > >
> > > A maximum run is defined as the maximum number of days (daily
> data)
> > > consecutive runing up or running down for a certain time of
> period.
> > > For example, a 100 day maximum run being 5 means the maximum
> number
> > > of days consecutively running up (or down) is 5.
> > >
> > > I need a help to write a AFL code for this. Thanks.
> > >
> > > liugq_99
> > >
> > > My AFL code below has a "if" error:
> > >
> > >
> > > r=log(C/Ref(C,-1));
> > > n=100; //n--period
> > >
> > > i=0;
> > > arun=1;
> > > brun=1;
> > > do
> > > {
> > > x=IIf(Ref(r,-i)>0,1,0);
> > > y=IIf(Ref(r,-i-1)>0,1,0);
> > > t=IIf(x-y=0,1,0);
> > > arun=arun+t;
> > > maxr=Max(arun,brun);
> > > brun=maxr;
> > > if(t==0) arun=1;
> > > i=i+1;} while (i<n);
> > >
> > > Plot(brun,"",1,1);
> 
> 
> Check AmiBroker web page at:
> http://www.amibroker.com/
> 
> Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> Yahoo! Groups Links
> 
> 
> 
> 
> 


-- 
Cheers
Graham
http://e-wire.net.au/~eb_kavan/


------------------------ Yahoo! Groups Sponsor --------------------~--> 
Make a clean sweep of pop-up ads. Yahoo! Companion Toolbar.
Now with Pop-Up Blocker. Get it for free!
http://us.click.yahoo.com/L5YrjA/eSIIAA/yQLSAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

Check AmiBroker web page at:
http://www.amibroker.com/

Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> 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/