Click Image To Enlarge. Please Rate And Comment.
_SECTION_BEGIN("");
period = Param("Period", 14, 1, 240, 1);
mult = Param("Multiplier", 2, 1, 240, 0.1);
f=ATR(period);
VS[0] = Close[0];
trend[0] = 0;
HighC[0]=0;
Lowc[0]=0;
for( i = period+1; i < BarCount; i++ )
{
vs[i] = vs[i-1];
trend[i] = trend[i-1];
highC[i] = HighC[i-1];
lowc[i] = lowc[i-1];
if ((trend[i]>=0) && ( C[i] <VS[i] ))
{
trend[i] =-1;
HighC[i] = C[i];
lowc[i] = C[i];
}
if ((trend[i]<=0) && (C[i] >VS[i]))
{
trend[i]=1;
HighC[i] = C[i];
lowc[i] = C[i];
}
if (trend[i]==-1)
{
if (C[i]<lowc[i]) lowc[i] = C[i];
VS[i]= lowc[i]+ (mult*f[i]);
}
if (trend[i]==1)
{
if (C[i]>HighC[i]) HighC[i] = C[i];
VS[i]= HighC[i]-(mult*f[i]);
}
}
Buy=Cross(Trend,0);
Sell=Cross(0, Trend);
Plot(Close,"Close",colorGreen,styleCandle);
Plot(VS, "Vol Stop",IIf(trend==1,10,11 ),styleThick);
mkol = IIf( Trend==1, 10, 11);
Plot(4, "ribbon", mkol, styleOwnScale|styleArea|styleNoLabel, 2, -10); // Weekly trend
shape = Buy * shapeUpArrow + Sell * shapeDownArrow;
PlotShapes( shape, IIf( Buy, colorGreen, colorRed ), 0, IIf( Buy, Low-f, High+f));