PureBytes Links
Trading Reference Links
|
Dimitris,
you hit the nail on its head pretty well.
That was pretty much what I tried to accomplish. I might take it a little
further with your assistance later on.
A few more questions if you allow:
1./ Why do you say below
zy=(BarsSince(y)>BarsSince(z))*(BarsSince(z));//bars from z to y
yz=(BarsSince(z)>BarsSince(y))*(BarsSince(y));//bars from y to z
Isnīt ZY=Barssince (y)- barssince (z)???? Analogue for YZ? Why ">" and "<",
please??
2./ Can draw the swings from the lows and highs directly in the chart
instead of a separate indicator?
3./ what code would I have to use when -after having detected z and y- I
additionally wanted to check for the lowest low in between? Well,
Lowestsince might work. But if I wanted to detect the next
llv>Ref(llv(low,5),-1) before y (letīs call that one point x) and then check
if Y was the highest high between x and y, lowestsince wouldnīt work anymore
since it would relate to ALL quotes after sx, correct? Is there any cokkand
that checkest for the highest hifh or the lowest low for a desired period of
time instead of all following bars after a condition is met?
Appreciate it, Dimitris!!!!
Markus
----- Original Message -----
From: "dtsokakis" <TSOKAKIS@xxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Sunday, June 30, 2002 1:10 PM
Subject: [amibroker] Re: Calculating bars between two arguments
Markus,
As I wrote in my previous reply, zz and yy, as defined through
Valuewhen function, are continuous Arrays, with values for every bar
and not only for the condition bars. Consequently you can not define
a time interval between yy and zz.
You just suppose and you are interested for yy and zz values on the
condition days.
So, I will keep your
"I basically tried to determine howe many bars (i.e. time interval)
would be
in between thos two conditions" to continue.
This is the time interval between y and z [or respectively z and y]
and we shall try to express it.
The next question is about multiple z or multiple y.
Like buy/sell, we usually have a series
00z0zzz00yyy0yy000000zz0zzz0zz0000y.
Do we search the interval between the first z till the first y OR the
interval between the last z till the first y?
Let us solve the first z till the first y.
a. Begin with the two conditions
z=IIf(Low<Ref(LLV(Low,5), -1),1,0);
y=IIf (High>Ref(HHV(High,5), -1),1,0);
b. Write them without iif statement
z=Low<Ref(LLV(Low,5),-1);
y=High>Ref(HHV(High,5), -1);
It is the exactly the same, z is 1 when cond=true and 0 when false.
c. Remove excessive z or excessive y
z=ExRem(z,y);y=ExRem(y,z);
Now you may calculate the days from z to y or from y to z.
The full code is
z=Low<Ref(LLV(Low,5),-1);//the z condition
y=High>Ref(HHV(High,5), -1);//the y condition
z=ExRem(z,y);y=ExRem(y,z);//remove excessive z or excessive y
Plot(20*z,"",1,2);//z condition graph, 20* is for scaling purposes
Plot(20*y,"",4,2);//y condition graph
zy=(BarsSince(y)>BarsSince(z))*(BarsSince(z));//bars from z to y
yz=(BarsSince(z)>BarsSince(y))*(BarsSince(y));//bars from y to z
Plot(zy,"",3,1);Plot(yz,"",2,1);
The code calculates and plots the days [bars] from z to y and then
the bars from y to z and so on.
If you need something more, let me know.
Dimitris Tsokakis
--- In amibroker@xxxx, "IVA GmbH" <funnybiz@xxxx> 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@xxxx>
> 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/
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
|