Fisher Transform Price
The Fisher Transform Price indicator in Amibroker could potentially involve transforming price data to emphasize trends and reduce noise. Though not directly linked to the Amibroker data feeder, it assists traders in better visualizing price movements, aiding in trend analysis and trade decision-making.
/_SECTION_BEGIN("Fisher Transform"); //SetBarsRequired(200, 0); // Ehlers formulas // from Ehlers, John F. Cybernetic Analysis for Stocks and Futures. Wiley. 2004. // Chapter 1, p. 1. Code on p. 7. 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] > .9999) Value1[i] = .9999; if (Value1[i] < -.9999) Value1[i] = -.9999; } return Value1; } function Fisher(array) // Figure 1.7 on p. 7 { F = array; F = .25 * log((1+ array)/(1 - array)) + .5 * Ref(F, -1); return F; } Med = (H+L)/2; // Fisher Transform FisherXform = Fisher(Normalize(Med, 10)); Plot(FisherXform, "Fisher Transform", colorRed, styleThick); Plot(Ref(FisherXform, -1), "", colorPink, styleDashed); PlotGrid(2, colorLightGrey); PlotGrid(-2, colorLightGrey); _SECTION_END();