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

Re: [EquisMetaStock Group] triple boxed ellipse indicator



PureBytes Links

Trading Reference Links

Sunando, in which way do you need help?

jose '-)


--- In equismetastock@xxxxxxxxxxxxxxx, sunando ghosal 
<sunandoghosal@xxxx> wrote:
> Hi Jose
> I am from India,recently started using Metastock 8.0.
> Finding difficult handling. Downloaded and loaded many
> indicators, experts & explorations from net can u help
> me further?
> Sunando
>
>
> --- Jose Silva <josesilva22@xxxx> wrote:
> Due to the incredible response to the Ellipseindicator series (at 
> least two replies), below is the final indicator in the Ellipse
> trilogy: triple Boxed Ellipse.
> 
> Note the re-use of variables to allow MetaStock to use 60 variables
> (x3 maximum).
> 
> 
> MetaStock -> Tools -> Indicator Builder -> New ->
> Copy and paste complete formula between "---8<---" lines.
> 
> ==============
> Boxed Ellipses
> ==============
> ---8<--------------------------
> 
> { Boxed Ellipses v2.0
>   Box: High & Low of selected period.
>   Ellipse: plots within Box boundaries.}
> { ©Copyright 2005 Jose Silva
>   For personal use only.
>   http://www.metastocktools.com }
> 
> pds1:=Input("Ellipse/Box width periods",
>  2,2600,40);
> pds2:=Input("Ellipse/Box separation periods",
>  -26000,2600,5);
> plot:=Input("plot:  [1]Box,  [2]Ellipse, 
> [3]Both",1,3,3);
> pds2:=LastValue(If(pds2<=-pds1,-pds1+1,pds2));
> 
> { Box & Ellipse 1 }
> p2:=pds2;
> p1:=pds1+p2;
> start:=Cum(1)=LastValue(Cum(1))-p1;
> end:=Cum(1)=LastValue(Cum(1))-p2;
> restrict:=Ref(Ref(ValueWhen(1,start,1),-p2),p2);
> Hi:=LastValue(Highest(ValueWhen(1,restrict,H)))
>  +restrict-1;
> Lo:=LastValue(Lowest(ValueWhen(1,restrict,L)))
>  +restrict-1;
> top:=If(start OR end,Lo,Hi);
> bot:=If(start OR end,Hi,Lo);
> 
> midX:=(p1-p2)/2;
> midY:=(Hi-Lo)/2;
> tX:=Cum(1)-midX-(LastValue(Cum(1))-p1);
> ellipse:=
>  Sqrt(midY*midY*(1-Min(tX*tX/midX/midX,1)));
> upperE:=Lo+midY+ellipse;
> lowerE:=Hi-midY-ellipse;
> 
> If(plot=2,upperE,Hi);
> If(plot=2,lowerE,Lo);
> If(plot=2,upperE,top);
> If(plot=2,lowerE,bot);
> If(plot=1,top,upperE);
> If(plot=1,bot,lowerE);
> 
> { Box & Ellipse 2 }
> p2:=p1+pds2;
> p1:=pds1+p2;
> start:=Cum(1)=LastValue(Cum(1))-p1;
> end:=Cum(1)=LastValue(Cum(1))-p2;
> restrict:=Ref(Ref(ValueWhen(1,start,1),-p2),p2);
> Hi:=LastValue(Highest(ValueWhen(1,restrict,H)))
>  +restrict-1;
> Lo:=LastValue(Lowest(ValueWhen(1,restrict,L)))
>  +restrict-1;
> top:=If(start OR end,Lo,Hi);
> bot:=If(start OR end,Hi,Lo);
> 
> midX:=(p1-p2)/2;
> midY:=(Hi-Lo)/2;
> tX:=Cum(1)-midX-(LastValue(Cum(1))-p1);
> ellipse:=
>  Sqrt(midY*midY*(1-Min(tX*tX/midX/midX,1)));
> upperE:=Lo+midY+ellipse;
> lowerE:=Hi-midY-ellipse;
> 
> If(plot=2,upperE,Hi);
> If(plot=2,lowerE,Lo);
> If(plot=2,upperE,top);
> If(plot=2,lowerE,bot);
> If(plot=1,top,upperE);
> If(plot=1,bot,lowerE);
> 
> { Box & Ellipse 3 }
> p2:=p1+pds2;
> p1:=pds1+p2;
> start:=Cum(1)=LastValue(Cum(1))-p1;
> end:=Cum(1)=LastValue(Cum(1))-p2;
> restrict:=Ref(Ref(ValueWhen(1,start,1),-p2),p2);
> Hi:=LastValue(Highest(ValueWhen(1,restrict,H)))
>  +restrict-1;
> Lo:=LastValue(Lowest(ValueWhen(1,restrict,L)))
>  +restrict-1;
> top:=If(start OR end,Lo,Hi);
> bot:=If(start OR end,Hi,Lo);
> 
> midX:=(p1-p2)/2;
> midY:=(Hi-Lo)/2;
> tX:=Cum(1)-midX-(LastValue(Cum(1))-p1);
> ellipse:=
>  Sqrt(midY*midY*(1-Min(tX*tX/midX/midX,1)));
> upperE:=Lo+midY+ellipse;
> lowerE:=Hi-midY-ellipse;
> 
> If(plot=2,upperE,Hi);
> If(plot=2,lowerE,Lo);
> If(plot=2,upperE,top);
> If(plot=2,lowerE,bot);
> If(plot=1,top,upperE);
> If(plot=1,bot,lowerE)
> 
> ---8<--------------------------
> 
> 
> jose '-)
> http://www.metastocktools.com





------------------------ Yahoo! Groups Sponsor --------------------~--> 
Has someone you know been affected by illness or disease?
Network for Good is THE place to support health awareness efforts!
http://us.click.yahoo.com/Rcy2bD/UOnJAA/cosFAA/BefplB/TM
--------------------------------------------------------------------~-> 

 
Yahoo! Groups Links

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

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

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