Click Image To Enlarge. Please Rate And Comment.
SetChartOptions(0,0,chartGrid20|chartGrid50|chartGrid80);
function StochRaw(nLength, nSmoothing)
{
Hh = HHV(High, nLength);
Ll = LLV(Low, nLength);
Hh = HHV(High, nLength);
Ll = LLV(Low, nLength);
return ((Close - ll) / (hh - ll)) * 100;
}
function PreferStochK(nLength, nSmoothing)
{
percentK =StochRaw(nLength, nSmoothing);
MAVt[0]=0;
for(i=1; i<BarCount; i++)
MAVt[i] = MAVt[i-1] + (percentK[i] - MAVt[i-1]) / nSmoothing;
return MAVt;
}
function PreferStochD(nLength, nSmoothing, nSmoothings)
{
percentK = PreferStochK(nLength, nSmoothing);
MAVt[0] = 0;
for(i=1; i<BarCount; i++)
MAVt[i] = MAVt[i-1] + (percentK[i] - MAVt[i-1]) / nSmoothings;
return MAVt;
}
Period = Param("Period", 8, 3, 100);
Ksmooth = Param("%K Smooth", 3, 3, 100);
Dsmooth = Param("%D Smooth", 3, 3, 100);
Upper = Param("%Upper Level", 75, 0, 100);
Lower = Param("%Lower Level", 25, 0, 100);
Plot( PreferStochK(Period, Ksmooth), "percentK", colorBlue);
Plot( PreferStochD(Period, Ksmooth, Dsmooth), "percentD", colorRed);
Plot(Upper, "", colorBlack, styleDashed);
Plot(Lower, "", colorBlack, styleDashed);