int counted_bars=IndicatorCounted(); if(counted_bars < 0) return(-1); if(counted_bars > 0) counted_bars--; int limit = Bars - counted_bars; for (int i = limit; i >= 0; i--) { double OpenPricenow = Open [i]; double ClosePricenow = Close [i]; double Volumenow = Volume [i]; double HighNow = High [i]; double LowNow = Low[i]; // candle 1 double OpenPrice1 = Open [i+1]; double ClosePrice1 = Close [i+1]; double Volume1 = Volume [i+1]; double High1 = High [i+1]; double Low1 = Low [i+1]; double H []; double I []; double J []; double K []; double L []; double M []; double N []; double O []; double P []; double Q []; double R []; double S []; double T []; double U []; double V []; H[i] = (ClosePricenow - ClosePrice1); I [i]= (HighNow - High1); J[i]= ( LowNow - Low1); K [i]= (H [i]+I[i]+J[i]); L [i]= L [i+1]+ K[i]; M [i]= L[i] - L[i+1]; if ( M[i] > 0) { N[i] = M[i]; } else if ( M[i] <0) { N[i] = 0; } O[i] = (N [i + 13] + N [i+12] + N [i+11] + N [i +10] + N [i+9]+ N[i+8]+ N[i+7]+ N[i+6]+ N[i+5]+ N[i+4]+ N[i+3]+ N[i+2] + N[i+1] +N[i])/ 14; if ( M[i] < 0) { P[i] = M[i]; } else if ( M[i] >0) { P[i] = 0; } Q[i]= P[i] * -1; R[i] = (Q [i + 13] + Q [i+12] + Q [i+11] + Q [i +10] + Q [i+9]+ Q[i+8]+ Q[i+7]+ Q[i+6]+ Q[i+5]+ Q[i+4]+ Q[i+3]+ Q[i+2] + Q[i+1] +Q[i])/ 14; S[i] = (Q[i]/ R[i]);