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

RE: [EquisMetaStock Group] Re: plotting a line Modify



PureBytes Links

Trading Reference Links









           
Hi Roy,

<span
>                         Are there person's /
people around called Equis Solution <span
class=GramE>Providers ?

Are there person's / people around <span
class=GramE>that  code ( write
custom formula ) for Metastock?

 

I would like to be able to draw a vertical
line on a chart , a specified number of price bars
from a defined starting price bar. This line must be height adjustable<span
>  ( just like you adjust the length of
the trendline 
)

 

I do not know if you call it an indicator
or a drawing tool . <span
> I just assumed that it could be coded in the 

<font size=3
color=navy face=Arial>Metastock<font
color=navy face=Arial> ,<font
color=navy face=Arial> Indicator
Builder . Having had numerous correspondence both<span
>  on yahoo groups and privately

<span
>this<font
color=navy face=Arial> appears not
to be the case .

 

  I
am not a programmer , but things like a custom DLL<span
>  , API , the Metastock
Developers Kit etc tec 

Would you know yourself or any body <span
class=GramE>around , that  may be
able to help in this matter?

 

All comments welcomed

 

Michael Bethell

mdtmn@xxxxxxxxxxxxxxxx

 

 

       


     


 

<span
>-----Original Message-----
From: Roy Larsen
[mailto:rlarsen@xxxxxxxxxxxxxx] 
Sent: <st1:date
Month="7" Day="20" Year="2003">Sunday, 20 July 2003<font
size=2 face=Tahoma> <st1:time
Hour="11" Minute="35">11:35 AM<span
>
To: equismetastock@xxxxxxxxxxxxxxx
Subject: Re: [EquisMetaStock
Group] Re: plotting a line Modify

<font size=3
face="Times New Roman"> 

<font size=2
face="Courier New">Michael<font
size=2 face="Courier New">

There is a possible way to adjust the height of a
vertical line without
resorting to a dll.  I don't know if what you
want can be done by a dll but
I certainly don't see the feature in any of the
20+ dll's I currently have.

What you could experiment with, along the lines of
Dusant's suggestion, is
having a second (and third?) line to
"blank" portions of the original
vertical line. I see problems in implementing
this, even if it works,
because of the difficulty in scaling to your chart
value without the zero
portion of the histogram skewing your entire
chart. Putting that aside, one
way to blank a line is to draw another partial
line over the top of the
original line and colour it to the colour of your
background. There is also
an "invisible" option that may be of
use.

At the end of the day these ideas are going to be
entirely impractical
unless you incorporate the setup in your default
template so you don't have
to recreate it every time you open a chart.

<span
  >Roy<font
size=2 face="Courier New">

----- Original Message ----- 
From: "Michael Bethell"
<mdtmn@xxxxxxxxxxxxxxxx>
To: <equismetastock@xxxxxxxxxxxxxxx>
Sent: <st1:date Month="7"
Day="20" Year="2003"><span
 >Sunday, July 20, 2003<font
size=2 face="Courier New"> <st1:time
Hour="11" Minute="55"><span
 >11:55 AM<font size=2
face="Courier New">
Subject: RE: [EquisMetaStock Group] Re: plotting a
line Modify


         
Hi  Dusant,
                             
Thanks for your input.
         
Is there another way to custom code a vertical line in an
indicator .  As I need to be able to adjust
the height of the vertical
line ( as you would the length of the trendline
drawing tool )

Michael Bethell
mdtmn@xxxxxxxxxxxxxxxx


-----Original Message-----
From: Dusant [mailto:cooldush@xxxxxxxxxxx]
Sent: <st1:date Month="7"
Day="19" Year="2003"><span
 >Saturday, 19 July 2003<font
size=2 face="Courier New"> <st1:time
Hour="14" Minute="14"><span
 >2:14 PM<font size=2
face="Courier New">
To: equismetastock@xxxxxxxxxxxxxxx
Subject: [EquisMetaStock Group] Re: plotting a
line Modify

Michael
To plot a vertical line, create a binary indicator
which satisfies
your condition.
A binary indicator would be:
if(<condition> = true, 1, 0)
Drag the indicator on the price plot, and select
overlay without
scale. Then select the indicator, choose the style
as a histogram. You
would get your vertical line.
Hope this helps.
Dusant

--- In equismetastock@xxxxxxxxxxxxxxx,
"mdtmn" <mdtmn@xxxx> wrote:
> Hello Dusant,
>              
Would you know if the formula you posted, could be
> modifed to draw a vertical line thru one
point on the chart screen?
> Thanks
> Michael B
> mdtmn@xxxx
> --- In equismetastock@xxxxxxxxxxxxxxx,
"Dusant" <cooldush@xxxx>
> wrote:
> > This is not my material. This was posted
by fredcom about a three
> > weeks ago.
> > -------------
> > {Highs <font
 size=2 face="Courier New">Normal<font
size=2 face="Courier New"> Scale with Date
Indicator}<span
>
> > j:=Input("Day",1,31,15);
> > {by FREDCOM, 26May2003 --> V3.06}
> > m:=Input("Month",1,12,1);
> >
an:=Input("Year",1800,2200,2003);
> > cdate:=ValueWhen( 1,
((Year()-2000)*10000+Month()*100+DayOfMonth()
)
> =
> > ((an-2000)*10000+m*100+j), Cum(1) );
> >
peri:=Input("Période?",2,100,4);
> > {by FREDCOM, 29april2003 --> V1.09}
> > hic:= H>Ref(HHV(H,peri),-1) AND
H>=Ref(HHV(H,peri),peri) AND
Cum(1)
> <=
> > (LastValue(cdate)-peri);
> > y1t:=LastValue(ValueWhen( 2, hic=1, H
));
> > y2t:=LastValue(ValueWhen( 1, hic=1, H
));
> > x1t:=LastValue(ValueWhen( 2, hic=1 ,
Cum(1) ));
> > x2t:=LastValue(ValueWhen( 1, hic=1 ,
Cum(1) ));
> >
{at:=(y1t-y2t)/(x1t-x2t);bt:=y1t-at*x1t;}
> >
yt:=(y1t-y2t)/(x1t-x2t)*Cum(1)+y1t-(y1t-y2t)/(x1t-x2t)*x1t;
> > {yt:=at*cum(1)+bt;}
> > {e1:=H-yt;}
> >
{ret1:=LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-1));}
> >
{seg1:=LastValue(Int((x2t-x1t)/2+Int(2*peri/5)));}
> >
x1:=LastValue(Cum(1)-HHVBars(Ref({e1}H-yt,{-ret1}-LastValue(Cum(1)
-
> > (x1t+Int((x2t-x1t)/2)-1))),{seg1}LastValue(Int((x2t-x1t)
> >
/2+Int(2*peri/5)))){-ret1}-LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-
> 1)))
> > ;
> > y1:=LastValue(ValueWhen(1,x1=Cum(1),H));
> >
ret2:=LastValue(Cum(1)-(x2t+Int(4*peri/5)));
> > seg2:=LastValue(Int((x2t-x1t)/2)+Int(4*peri/5));
> >
x2:=LastValue(Cum(1)-HHVBars(Ref({e1}H-yt,-ret2),seg2)-ret2);
> > y2:=LastValue(ValueWhen(1,x2=Cum(1),H));
> > {a:=(y1-y2)/(x1-x2);b:=y1-a*x1;}
> >
> >
HiTL:=If(Cum(1)>x1t-5,(y1-y2)/(x1-x2)*Cum(1)+y1-(y1-y2)/(x1-x2)
> > *x1,BarsSince(Cum(1)>x1t-5));
> >
> >
Diff:=Ref(HiTL-L,-LastValue(Cum(1)-x2t));
> > decal:=LastValue(HHV(Diff,x2t-x1t));
> >
If(Cum(1)=LastValue(cdate),HiTL*1.02,HiTL);HiTL;HiTL-decal;
> > -------------
> > {Highs Log Scale}
> >
peri:=Input("Période?",2,100,5);
> > {by FREDCOM, 26Mai2003 --> V2.13}
> > hic:= H>Ref(HHV(H,peri),-1) AND
H>=Ref(HHV(H,peri),peri);
> > y1t:=Log(LastValue(ValueWhen( 2, hic=1,
H )));
> > y2t:=Log(LastValue(ValueWhen( 1, hic=1,
H )));
> > x1t:=LastValue(ValueWhen( 2, hic=1 ,
Cum(1) ));
> > x2t:=LastValue(ValueWhen( 1, hic=1 ,
Cum(1) ));
> >
{at:=(y1t-y2t)/(x1t-x2t);bt:=y1t-at*x1t;}
> >
yt:=Exp((y1t-y2t)/(x1t-x2t)*Cum(1)+y1t-(y1t-y2t)/(x1t-x2t)*x1t);
> > {yt:=at*cum(1)+bt;}
> > e1:=H-yt;
> >
ret1:=LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-1));
> >
seg1:=LastValue(Int((x2t-x1t)/2+Int(2*peri/5)));
> >
x1:=LastValue(Cum(1)-HHVBars(Ref(e1,-ret1),seg1)-ret1);
> >
y1:=Log(LastValue(ValueWhen(1,x1=Cum(1),H)));
> >
ret2:=LastValue(Cum(1)-(x2t+Int(4*peri/5)));
> >
seg2:=LastValue(Int((x2t-x1t)/2)+Int(4*peri/5){+Int(1*peri/5)});
> >
x2:=LastValue(Cum(1)-HHVBars(Ref(e1,-ret2),seg2)-ret2);
> >
y2:=Log(LastValue(ValueWhen(1,x2=Cum(1),H)));
> > {a:=(y1-y2)/(x1-x2);b:=y1-a*x1;}
> >
HiTL:=Exp(If(Cum(1)>x1t-5,(y1-y2)/(x1-x2)*Cum(1)+y1-(y1-y2)
/(x1-x2)
> > *x1,BarsSince(Cum(1)>x1t-5)));
> >
> > Diff:=Ref(Log(HiTL)-Log( L
),-LastValue(Cum(1)-x2t));
> > decal:=LastValue(HHV(Diff,x2t-x1t));
> > HiTL;Exp(Log(HiTL)-decal);
> > -------------
> > {Highs Normal Scale}
> >
peri:=Input("Période?",1,100,5);
> > {by FREDCOM, 26Mai2003 --> V1.13}
> > hic:= H>Ref(HHV(H,peri),-1) AND
H>=Ref(HHV(H,peri),peri);
> > y1t:=LastValue(ValueWhen( 2, hic=1, H
));
> > y2t:=LastValue(ValueWhen( 1, hic=1, H
));
> > x1t:=LastValue(ValueWhen( 2, hic=1 ,
Cum(1) ));
> > x2t:=LastValue(ValueWhen( 1, hic=1 ,
Cum(1) ));
> >
{at:=(y1t-y2t)/(x1t-x2t);bt:=y1t-at*x1t;}
> >
yt:=(y1t-y2t)/(x1t-x2t)*Cum(1)+y1t-(y1t-y2t)/(x1t-x2t)*x1t;
> > {yt:=at*cum(1)+bt;}
> > e1:=H-yt;
> >
ret1:=LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-1));
> > seg1:=LastValue(Int((x2t-x1t)/2+Int(2*peri/5)){+peri-1});
> >
x1:=LastValue(Cum(1)-HHVBars(Ref(e1,-ret1),seg1)-ret1);
> > y1:=LastValue(ValueWhen(1,x1=Cum(1),H));
> >
ret2:=LastValue(Cum(1)-(x2t+Int(4*peri/5)));
> >
seg2:=LastValue(Int((x2t-x1t)/2)+Int(4*peri/5));
> > x2:=LastValue(Cum(1)-HHVBars(Ref(e1,-ret2),seg2)-ret2);
> > y2:=LastValue(ValueWhen(1,x2=Cum(1),H));
> > {a:=(y1-y2)/(x1-x2);b:=y1-a*x1;}
> > a:=(y1-y2)/(x1-x2);
> >
HiTL:=If(Cum(1)>x1t-5,(y1-y2)/(x1-x2)*Cum(1)+y1-(y1-y2)/(x1-x2)
> > *x1,BarsSince(Cum(1)>x1t-5));
> >
> >
Diff:=Ref(HiTL-L,-LastValue(Cum(1)-x2t));
> > decal:=LastValue(HHV(Diff,x2t-x1t));
> > HiTL;HiTL-decal;
> > -------------
> > {Lows with Date Indication}
> > j:=Input("Day",1,31,15);
> > {by FREDCOM, 26May2003 --> V3.06}
> > m:=Input("Month (1=Jan,
2=Feb,...)",1,12,1);
> >
an:=Input("Year",1800,2200,2003);
> > date:=ValueWhen( 1,
((Year()-2000)*10000+Month()*100+DayOfMonth())
=
> > ((an-2000)*10000+m*100+j), Cum(1) );
> >
peri:=Input("Période?",2,100,4);
> > loc:= L<Ref(LLV(L,peri),-1) AND L<=Ref(LLV(L,peri),peri)
AND
Cum(1)
> <=
> > (LastValue(date)-peri);
> > y1t:=LastValue(ValueWhen( 2, loc=1, L
));
> > y2t:=LastValue(ValueWhen( 1, loc=1, L
));
> > x1t:=LastValue(ValueWhen( 2, loc=1,
Cum(1) ));
> > x2t:=LastValue(ValueWhen( 1, loc=1,
Cum(1) ));
> >
{at:=(y1t-y2t)/(x1t-x2t);bt:=y1t-at*x1t;}
> >
yt:=(y1t-y2t)/(x1t-x2t)*Cum(1)+y1t-(y1t-y2t)/(x1t-x2t)*x1t;
> > {yt:=at*cum(1)+bt;}
> > {e1:=(L-yt)};
> >
{ret1:=LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-1))};
> > {seg1:=LastValue(Int((x2t-x1t)/2+Int(2*peri/5)))};
> >
x1:=LastValue(Cum(1)-LLVBars(Ref({e1}(L-yt),{-ret1}-LastValue(Cum
> (1)-
> >
(x1t+Int((x2t-x1t)/2)-1))),{seg1}LastValue(Int((x2t-x1t)
> >
/2+Int(2*peri/5)))){-ret1}-LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-
> 1)))
> > ;
> > y1:=LastValue(ValueWhen(1,x1=Cum(1),L));
> >
ret2:=LastValue(Cum(1)-(x2t+Int(4*peri/5)));
> >
seg2:=LastValue(Int((x2t-x1t)/2)+Int(4*peri/5));
> >
x2:=LastValue(Cum(1)-LLVBars(Ref({e1}(L-yt),-ret2),seg2)-ret2);
> > y2:=LastValue(ValueWhen(1,x2=Cum(1),L));
> > {a:=(y1-y2)/(x1-x2);b:=y1-a*x1;}
> >
> >
LoTL:=If(Cum(1)>x1t-5,(y1-y2)/(x1-x2)*Cum(1)+y1-(y1-y2)/(x1-x2)
> > *x1,BarsSince(Cum(1)>x1t-5));
> >
> >
Diff:=Ref(H-LoTL,-LastValue(Cum(1)-x2t));
> > decal:=LastValue(HHV(Diff,x2t-x1t));
> > If(Cum(1)=LastValue(date),LoTL*.98,LoTL);LoTL;LoTL+decal;
> > ---------------
> > {Lows Log Scale}
> >
peri:=Input("Période?",2,100,5);
> > {by FREDCOM, 26Mai2003 --> V2.13}
> > loc:= L<Ref(LLV(L,peri),-1) AND
L<=Ref(LLV(L,peri),peri);
> > y1t:=Log(LastValue(ValueWhen( 2, loc=1,
L )));
> > y2t:=Log(LastValue(ValueWhen( 1, loc=1,
L )));
> > x1t:=LastValue(ValueWhen( 2, loc=1,
Cum(1) ));
> > x2t:=LastValue(ValueWhen( 1, loc=1,
Cum(1) ));
> >
{at:=(y1t-y2t)/(x1t-x2t);bt:=y1t-at*x1t;}
> > yt:=Exp((y1t-y2t)/(x1t-x2t)*Cum(1)+y1t-(y1t-y2t)/(x1t-x2t)*x1t);
> > {yt:=exp(at*cum(1)+bt);}
> > e1:=L-yt;
> >
ret1:=LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-1));
> >
seg1:=LastValue(Int((x2t-x1t)/2+Int(2*peri/5)));
> >
x1:=LastValue(Cum(1)-LLVBars(Ref(e1,-ret1),seg1)-ret1);
> >
y1:=Log(LastValue(ValueWhen(1,x1=Cum(1),L)));
> >
ret2:=LastValue(Cum(1)-(x2t+Int(4*peri/5)));
> >
seg2:=LastValue(Int((x2t-x1t)/2)+Int(4*peri/5)+Int(1*peri/5));
> >
x2:=LastValue(Cum(1)-LLVBars(Ref(e1,-ret2),seg2)-ret2);
> > y2:=Log(LastValue(ValueWhen(1,x2=Cum(1),L)));
> > {a:=(y1-y2)/(x1-x2);b:=y1-a*x1;}
> >
LoTL:=Exp(If(Cum(1)>x1t-5,(y1-y2)/(x1-x2)*Cum(1)+y1-(y1-y2)
/(x1-x2)
> > *x1,BarsSince(Cum(1)>x1t-5)));
> >
> >
Diff:=Ref(Log(H)-Log(LoTL),-LastValue(Cum(1)-x2t));
> > decal:=LastValue(HHV(Diff,x2t-x1t));
> > LoTL;Exp(Log(LoTL)+decal);
> > --------------
> > {Lows Normal Scale}
> >
peri:=Input("Période?",2,100,4);
> > {by FREDCOM, 26May2003 --> V1.13}
> > loc:= L<Ref(LLV(L,peri),-1) AND
L<=Ref(LLV(L,peri),peri);
> > y1t:=LastValue(ValueWhen( 2, loc=1, L
));
> > y2t:=LastValue(ValueWhen( 1, loc=1, L
));
> > x1t:=LastValue(ValueWhen( 2, loc=1,
Cum(1) ));
> > x2t:=LastValue(ValueWhen( 1, loc=1,
Cum(1) ));
> >
{at:=(y1t-y2t)/(x1t-x2t);bt:=y1t-at*x1t;}
> >
yt:=(y1t-y2t)/(x1t-x2t)*Cum(1)+y1t-(y1t-y2t)/(x1t-x2t)*x1t;
> > {yt:=at*cum(1)+bt;}
> > e1:=L-yt;
> >
ret1:=LastValue(Cum(1)-(x1t+Int((x2t-x1t)/2)-1));
> >
seg1:=LastValue(Int((x2t-x1t)/2+Int(2*peri/5)){+peri-1});
> >
x1:=LastValue(Cum(1)-LLVBars(Ref(e1,-ret1),seg1)-ret1);
> > y1:=LastValue(ValueWhen(1,x1=Cum(1),L));
> >
ret2:=LastValue(Cum(1)-(x2t+Int(5*peri/5)));
> >
seg2:=LastValue(Int((x2t-x1t)/2)+Int(4*peri/5));
> >
x2:=LastValue(Cum(1)-LLVBars(Ref(e1,-ret2),seg2)-ret2);
> > y2:=LastValue(ValueWhen(1,x2=Cum(1),L));
> > {a:=(y1-y2)/(x1-x2);b:=y1-a*x1;}
> > a:=(y1-y2)/(x1-x2);
> >
LoTL:=If(Cum(1)>x1t-5,(y1-y2)/(x1-x2)*Cum(1)+y1-(y1-y2)/(x1-x2)
> > *x1,BarsSince(Cum(1)>x1t-5));
> >
Diff:=Ref(H-LoTL,-LastValue(Cum(1)-x2t));
> > decal:=LastValue(HHV(Diff,x2t-x1t));
> > LoTL;LoTL+decal;
> > -----------------
> > Hope this helps.
> > And it would always be better to do an
archive search. There's
> plenty
> > of material available here. Some of them
are gems.
> >
> > Dusant






Yahoo! Groups Sponsor


ADVERTISEMENT

<<a
href="">http://rd.yahoo.com/M=194081.3551198.4824677.1261774/D=egroupweb/S=1705
375617:HM/A=1663535/R=0/SIG=11ps6rfef/*http:/www.ediets.com/start.cfm?co
de=30504&media=atkins> click here


<<a
href="">http://us.adserver.yahoo.com/l?M=194081.3551198.4824677.1261774/D=egrou
pmail/S=:HM/A=1663535/rand=871210145>

To unsubscribe from this group, send an email to:
equismetastock-unsubscribe@xxxxxxxxxxxxxxx



Your use of Yahoo! Groups is subject to the Yahoo!
<http://docs.yahoo.com/info/terms/> 
Terms of Service.






<font size=2
face="Courier New">To unsubscribe from this
group, send an email to:<span
>
equismetastock-unsubscribe@xxxxxxxxxxxxxxx



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










Yahoo! Groups Sponsor


  ADVERTISEMENT 









To unsubscribe from this group, send an email to:
equismetastock-unsubscribe@xxxxxxxxxxxxxxx





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