// Downloaded From https://www.WiseStockTrader.com _SECTION_BEGIN("EMAavg"); SetChartOptions(0,chartShowArrows|chartShowDates); _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) )); z=H; EMAavg=((21*EMA(z,2))+(13*EMA(z,3))+(8*EMA(z,5))+(5*EMA(z,8))+(3*EMA(z,13))+(2*EMA(z,21)))/(52); function Normalize(array, arraylen) // Figure 1.7 on p. 7 { MaxH = HHV(array, arraylen); MinL = LLV(array, arraylen); Value1[0] = array[0]; // Initialize as array for(i = 1; i < BarCount; i++) { Value1[i]=.5*2*((array[i]-MinL[i])/IIf(MaxH[i]-MinL[i]==0,1,MaxH[i]-MinL[i])-.5)+.5*Value1[i-1]; if (Value1[i] > .999) Value1[i] = .999; if (Value1[i] < -.999) Value1[i] = -.999; } return Value1; } function Fisher(array) // Figure 1.7 on p. 7 { F = array; F = .5 * log((1+ array)/(1 - array)) + .5 * Ref(F, -1)+0.6; return F; } Med = (H+L)/2; // Fisher Transform FisherXform = Fisher(Normalize(Med, 10)); Buy = C>EMAavg AND C>=EMA(C,10) AND fisherxform>=-0.0; Sell =C