Professional Documents
Culture Documents
Timing Solutions For Swing Traders: Successful Trading Using Technical Analysis and Financial Astrology
Timing Solutions For Swing Traders: Successful Trading Using Technical Analysis and Financial Astrology
APPENDIX 4
Formulas in
MetaStock Format*
Length1:5Input("Base Unit",2,100,21);
Length2:5Input("First Period",2,100,13);
Length3:5Input("Second Period",1,100,8);
Length4:5Input("Third Period",1,100,8);
Cycle:5Input("Cycle",1,100,21);
plot:5Input("Select Plot, 15OB Lines, 25AutoLines 35Cycle Zones", 1,3,3);
n:5(RSI(Length1)-LLV(RSI(Length1),Length2));
k:5(HHV((RSI(Length1)),Length2)-LLV(RSI(Length1),Length2));
k2:5If(k50,0.000001,k);
Osc:5100*n/k2;
OscAvg1:5(2*Mov(Osc,Length3,S)-100);
OscAvg2:5Mov(OscAvg1,Length4,S);
StdP:51.2*Stdev(oscavg2,89);
StdM:5Neg(1.2*Stdev(oscavg2,89));
n2:5(Fml("frhlc")-LLV(Fml("frhlc"),Cycle));
k2:5HHV((Fml("frhlc")),Cycle)-LLV(Fml("frhlc"),Cycle);
k22:5If(k250,0.000001,k2);
OscAvg12:5(2*Mov((100*n2/k22),Length2,S)-100);
RwUp:5(451Stdev(OscAvg12,2));
RwDn:5Neg(451Stdev(oscavg12,2));
Zone:5If(oscavg12>0,RwUp,If(oscavg12<50,RwDn,RwUp));
*
For educational purposes only and not for the purposes of encouraging trading.
177
178 APPENDIX 4
If(plot51,50,If(plot52,StdP,Zone));
If(plot51,Neg(50),If(plot52,StdM,Zone));
OscAvg1; OscAvg2; 0;
VZO was developed by Walid Khalil and David Steckler. The following VZO is modified
for merging of plots of volume ratio compressed indicator and planetary aspects
indicators.
prd:5Input("Period",1,200,13);
avg:5Input("Average",2,200,8);
y:5Input("Select Price 15MP(),25Typical(),35Close",1,3,1);
plot:5Input("Select Plot, 15vzo, 25sma, 35All",1,3,3);
y:5If(y51,MP(),If(y52,Typical(),CLOSE));
Change:5ROC(y,1,$);
x:5If(Change>0,VOLUME,-VOLUME);
vp:5Mov(x,prd,E);
tv:5If(Mov(VOLUME,prd,E)50,0.000001,Mov(V,prd,E));
vzo:5(1001(100*vp/tv))/2;
vzo1:5Mov(vzo,avg,S);
If(plot51,vzo,vzo1);
If(plot52,vzo1,vzo);
70; 50; 30;
Period1:5Input("Period1",1,144,2);
Period2:5Input("Period2",1,144,10);
x:5Input("Compressed",0,100,0.2);
VAvg1:5Mov(Abs(VOLUME),Period1,E);
VAvg2:5Mov(Abs(VOLUME),Period2,S);
z:5If(vavg250,0.0001,vavg2);
VolRatio:5100*(VAvg1/z);
VolRatio*x;
Formulas in MetaStock Format 179
Period:5Input("Period",1,500,89);
PCent1:5Input("Upper Pecentage",1,200,7);
PCent2:5Input("Lower Percentage",1,200,7);
x:5Input("Select Price, 15mp(),25typical(),35close",1,3,3);
plot:5Input("Select Plot,15RMA1Mirror, 25Mirror,35RMA",1,3,1);
x:5If(x51,MP(),If(x52,Typical(), C));
RMA:5Mov(x,Period,E)1LinRegSlope(x,Period)*(1);
MirrorP:5RMA1(RMA*PCent1/100);
MirrorN:5RMA-(RMA*PCent2/100);
Mirror:5If(LOW>RMA,MirrorP,If(HIGH<RMA,MirrorN,RMA));
{Plot PMA on price chart, signals in own window}
If(plot51,RMA,If(plot52,Mirror,RMA));
If(plot51,Mirror,If(plot53,RMA,Mirror));
Fast:5Input("Fast MA",1,300,9);
y:5Input("Select Price 15MP(),25Typical(),35Close",1,3,3);
plot:5Input("Plot [1]Disparity [2]Two Lines [3]All",1,3,2);
y:5If(y51,MP(),If(y52,Typical(),C));
Ind1:5Mov(y,Fast,S)1LinRegSlope(y,Fast)*3;
Ind2:5Mov(y,9,S)1LinRegSlope(y,9);
iDiff:5(1.382*(Ind1-Ind2)10.618*Ref(Ind1-Ind2,-1))/2;
Ind3:5If(Cross(Ind1,Ind2),(Ind11iDiff),If(Cross(ind2,ind1),
(Ind1-iDiff),ind11idiff));
If(plot51,Ind3,If(plot52,Ind1,Ind3));
If(plot52,Ind2,If(plot51,Ind3,Ind2));
If(plot53,Ind1,If(plot51,Ind3,Ind1));