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

Re: [amibroker] Re: Calculating bars between two arguments



PureBytes Links

Trading Reference Links

Does this help:

x=Cum(1);

z=IIf(Low<Ref(LLV(Low,5), -1),1,0);
zz=ValueWhen(z,x);


y=IIf (High>Ref(HHV(High,5), -1),1,0);
yy=ValueWhen(y,x);

Filter=1;
AddColumn(ValueWhen(z,DateNum()),"date Z",1);
AddColumn(ValueWhen(y,DateNum()),"date Y",1);
AddColumn(abs(zz-yy),"Bars between");

IVA GmbH wrote:

> Dimitris,
>
> thanks for taking the time.
>
> I understand what you said about z and y. As far as zz and yy goes,
> they
> are giving me a specific low and or high value, right? And thus, why
> is the
> time interval between them "meaningless" (what do you mean by THAT,
> please?). The reason to split the forumula in z and zz is just for
> easier
> reading. I could have put everything in one formula as I did below.
>
> I basically tried to determine howe many bars (i.e. time interval)
> would be
> in between thos two conditions. I thought of datenum function but
> realized
> that I could not use them for computation like datenum(yy) -
> datenum(zz) to
> determine the time interval (number of days).
>
> I assume that barssince is as well not an ideal solution since you see
> for
> zz that I want to check when the condition was true for the FIRST
> time. This
> is someting barssince doesnīt provide. It could for instance happen
> that
> z/zz happened AFTER y/yy (looking from retrospective). In this case I
> want
> those signals to be skipped since this case doesnīt apply to the
> pattern I
> try to detect.
>
> I cut and pasted the code below and got and error message (need to
> define a
> filter variable). What is the problem here? I went one step further
> and put
> the conditions for z and zz together like
> z=ValueWhen((IIf(Low<Ref(LLV(Low,5), -1),1,0)==1),Low,1) but again got
> the
> same error. I canīt see my mistake! Everything seems to be logic??
>
> What information would you need to judge how to go, Dimitris?
>
> Many thanks!!!!!
>
> Markus
>
> ----- Original Message -----
> From: "dtsokakis" <TSOKAKIS@xxxx>
> To: <amibroker@xxxxxxxxxxxxxxx>
> Sent: Saturday, June 29, 2002 9:17 PM
> Subject: [amibroker] Re: Calculating bars between two arguments
>
>
> Hi Markus,
> There is something to be explained here:
> z and y are conditions, their value is 0 or 1.
> zz and yy are continuous functions with various values.
> Perhaps you need the time interval from z to y [or from y to z]. It
> has some meaning, because z and y are events.
> The time interval between zz and yy is meaningless.
> Try the
> z=IIf(Low<Ref(LLV(Low,5), -1),1,0);
> zz=ValueWhen(z==1,Low,1);
> y=IIf (High>Ref(HHV(High,5), -1),1,0);
> yy=ValueWhen(y==1,High,1);
> Plot(z,"",1,2);Plot(y,"",4,2);
> Plot(zz,"",5,1);Plot(yy,"",7,1);
> to see what I mean.
> Can you be more specific ?
> DT
> --- In amibroker@xxxx, "IVA GmbH" <funnybiz@xxxx> wrote:
> > Folks,
> >
> > would someone help me with this:
> >
> > I need to calculate how many time periods have been passed since
> >
> > zz and yy
> >
> > whereby
> >
> > z=iif(low<Ref(llv(low,5), -1),1,0)
> > zz=valuewhen(z==1,low,1)
> >
> > and
> >
> > y=iif (high>Ref(hhv(high,5), -1),1,0)
> > yy=valuewhen(y==1,high,1)
> >
> > ???????????????
> >
> > I thought of
> >
> > barssince (y==1) - barssince (zz==1) but that dosnīt return the
> desired result.
> >
> > Thanks a lot!!
> >
> > Markus
>
>
>
>
>
> Your use of Yahoo! Groups is subject to
> http://docs.yahoo.com/info/terms/
>
>
>
> Yahoo! Groups Sponsor
ADVERTISEMENT

>
> Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.