Re: 8 Moving Averages
Posted: Wed Nov 02, 2016 5:59 am
by henry1224
Here is the code for comparing 8 MA's 4 fast ma's and 4 slower Ma's
under the parameter tab
N1 Double 4 4 100
N2 Double 8 6 120
N3 Double 12 8 140
N4 Double 16 10 160
N5 Double 20 15 200
N6 Double 40 20 240
N7 Double 60 40 280
N8 Double 80 60 320
Now for the code
Price:= (O+H+L+C)/4;
SMA1:=MA(Price,N1);
SMA2:=MA(Price,N2);
SMA3:=MA(Price,N3);
SMA4:=MA(Price,N4);
SMA1a:=MA(Price,N5);
SMA2a:=MA(Price,N6);
SMA3a:=MA(Price,N7);
SMA4a:=MA(Price,N8);
P5:=If(SMA1 > SMA2 & SMA2 > SMA3 & SMA3 > SMA4,5,0),Width2,PointDot,ColorGreen;
Con4A:= If(SMA1 > SMA2 & SMA2 > SMA4 & SMA4 > SMA3,4,0);
Con4B:= If(SMA1 > SMA3 & SMA3 > SMA2 & SMA2 > SMA4,4,0);
Con4C:= If(SMA2 > SMA1 & SMA1 > SMA3 & SMA3 > SMA4,4,0);
P4:= (Con4A + Con4B + Con4C),Width2,PointDot,ColorGreen;
P3:= If(SMA2 > SMA1 & SMA1 > SMA4 & SMA4 > SMA3, 3,0),Width2,PointDot,ColorGreen;
Con2A:=If(SMA1 > SMA3 & SMA3 > SMA4 & SMA4 > SMA2,2,0);
Con2B:=If( SMA1 > SMA4 & SMA4 > SMA2 & SMA2 > SMA3,2,0);
Con2C:=If(SMA2 > SMA3 & SMA3 > SMA1 & SMA1 > SMA4,2,0);
Con2D:=If(SMA3 > SMA1 & SMA1 > SMA2 & SMA2 > SMA4,2,0);
P2:= (Con2A + Con2B + Con2C + Con2D),Width2,PointDot,ColorGreen;
Con1A:=If(SMA1 > SMA4 & SMA4 > SMA3 & SMA3 > SMA2,1,0);
Con1B:=If(SMA3 > SMA2 & SMA2 > SMA1 & SMA1 > SMA4,1,0);
P1:= (Con1A + Con1B),Width2,PointDot,ColorGreen;
M5:= If(SMA4 > SMA3 & SMA3 > SMA2 & SMA2 > SMA1, -5,0),Width2,PointDot,ColorRed;
ConM4A:=If(SMA3 > SMA4 & SMA4 > SMA2 & SMA2 > SMA1,-4,0);
ConM4B:=If(SMA4 > SMA2 & SMA2 > SMA3 & SMA3 > SMA1,-4,0);
ConM4C:=If(SMA4 > SMA3 & SMA3 > SMA1 & SMA1 > SMA2,-4,0);
M4:= (ConM4A +ConM4B + ConM4C),Width2,PointDot,ColorRed;
M3:= If(SMA3 > SMA4 & SMA4 > SMA1 & SMA1 > SMA2,-3,0),Width2,PointDot,ColorRed;
ConM2A:=If(SMA2 > SMA4 & SMA4 > SMA3 & SMA3 > SMA1,-2,0);
ConM2B:=If(SMA3 > SMA2 & SMA2 > SMA4 & SMA4 > SMA1,-2,0);
ConM2C:=If(SMA4 > SMA1 & SMA1 > SMA3 & SMA3 > SMA2,-2,0);
ConM2D:=If(SMA4 > SMA2 & SMA2 > SMA1 & SMA1 > SMA3,-2,0);
M2:=(ConM2A + ConM2B + ConM2C + ConM2D),Width2,PointDot,ColorRed;
ConM1A:=If(SMA2 > SMA3 & SMA3 > SMA4 & SMA4 > SMA1,-1,0);
ConM1B:=If(SMA4 > SMA1 & SMA1 > SMA2 & SMA2 > SMA3,-1,0);
M1:=(ConM1A + ConM1B),Width2,PointDot,ColorRed;
P5a:=If(SMA1a > SMA2a & SMA2a > SMA3a & SMA3a > SMA4a,50,0),Width2,PointDot,ColorGreen;
Con4Aa:= If(SMA1a > SMA2a & SMA2a > SMA4a & SMA4a > SMA3a,40,0);
Con4Ba:= If(SMA1a > SMA3a & SMA3a > SMA2a & SMA2a > SMA4a,40,0);
Con4Ca:= If(SMA2a > SMA1a & SMA1a > SMA3a & SMA3a > SMA4a,40,0);
P4a:= (Con4Aa + Con4Ba + Con4Ca),Width2,PointDot,ColorGreen;
P3a:= If(SMA2a > SMA1a & SMA1a > SMA4a & SMA4a > SMA3a,30,0),Width2,PointDot,ColorGreen;
Con2Aa:=If(SMA1a > SMA3a & SMA3a > SMA4a & SMA4a > SMA2a,20,0);
Con2Ba:=If(SMA1a > SMA4a & SMA4a > SMA2a & SMA2a > SMA3a,20,0);
Con2Ca:=If(SMA2a > SMA3a & SMA3a > SMA1a & SMA1a > SMA4a,20,0);
Con2Da:=If(SMA3a > SMA1a & SMA1a > SMA2a & SMA2a > SMA4a,20,0);
P2a:= (Con2Aa + Con2Ba + Con2Ca + Con2Da),Width2,PointDot,ColorGreen;
Con1Aa:=If(SMA1a > SMA4a & SMA4a > SMA3a & SMA3a > SMA2a,10,0);
Con1Ba:=If(SMA3a > SMA2a & SMA2a > SMA1a & SMA1a > SMA4a,10,0);
P1a:= (Con1Aa + Con1Ba),Width2,PointDot,ColorGreen;
M5a:= If(SMA4a > SMA3a & SMA3a > SMA2a & SMA2a > SMA1a,-50,0),Width2,PointDot,ColorRed;
ConM4Aa:=If(SMA3a > SMA4a & SMA4a > SMA2a & SMA2a > SMA1a,-40,0);
ConM4Ba:=If(SMA4a > SMA2a & SMA2a > SMA3a & SMA3a > SMA1a,-40,0);
ConM4Ca:=If(SMA4a > SMA3a & SMA3a > SMA1a & SMA1a > SMA2a,-40,0);
M4a:= (ConM4Aa +ConM4Ba + ConM4Ca),Width2,PointDot,ColorRed;
M3a:= If(SMA3a > SMA4a & SMA4a > SMA1a & SMA1a > SMA2a,-30,0),Width2,PointDot,ColorRed;
ConM2Aa:=If(SMA2a > SMA4a & SMA4a > SMA3a & SMA3a > SMA1a,-20,0);
ConM2Ba:=If(SMA3a > SMA2a & SMA2a > SMA4a & SMA4a > SMA1a,-20,0);
ConM2Ca:=If(SMA4a > SMA1a & SMA1a > SMA3a & SMA3a > SMA2a,-20,0);
ConM2Da:=If(SMA4a > SMA2a & SMA2a > SMA1a & SMA1a > SMA3a,-20,0);
M2a:=(ConM2Aa + ConM2Ba + ConM2Ca+ ConM2Da),Width2,PointDot,ColorRed;
ConM1Aa:=If(SMA2a > SMA3a & SMA3a > SMA4a & SMA4a > SMA1a,-10,0);
ConM1Ba:=If(SMA4a > SMA1a & SMA1a > SMA2a & SMA2a > SMA3a,-10,0);
M1a:=(ConM1Aa + ConM1Ba),Width2,PointDot,ColorRed;
Total:=(P5+P4+P3+P2+P1+M5+M4+M3+M2+M1);
Totala:(P5a+P4a+P3a+P2a+P1a+M5a+M4a+M3a+M2a+M1a),width2,ColorBlue;
Totalb:Total + Totala,Width2, ColorBlack;
PlotUp5: FILLRGN(Totalb>=40,0, Totalb),Brush#80006400;
PlotUp4: FILLRGN(Totalb>=20 & Totalb <39.9999,0,Totalb),Brush#803CB371;
PlotUp3: FILLRGN(Totalb>0 & Totalb <19.999,0,Totalb),Brush#8000FF00;
PlotDn3: FILLRGN(Totalb<0 & Totalb >=-19.999,Totalb,0),Brush#80FA8072;
PlotDn4: FILLRGN(Totalb<=-20 & Totalb>=-39.999,Totalb,0),Brush#80FF0000;
PlotDn5: FILLRGN(Totalb<-40,Totalb,0),Brush#908B008B;