# Fisher Transform of Stochastics for Amibroker AFL The Fisher Transform Stochastic Amibroker Afl used to Stocks and Commodities. The is an improvement on the stochastic indicator by using the Fisher Transform. The oscillator is formed first from a multi-layered Weighted Moving Average, which is then used as the base for the Stochastic calculation.

The is an improvement on the stochastic indicator by using the Fisher Transform. It has reduced lag and less whipsaws because the Fisher Transform makes the indicator snap into the overbought and oversold areas.

This indicator’s definition is further expressed in the condensed code given in the calculation below.

## Formula

```_SECTION_BEGIN("Fisher Transform of Stochastics");
// Fisher transform of stochastics
//
//It is an improvement on the Stochastics. Identifying turning points better with less wipsaws.

function FisherSto(array, period, factor) {
MaxH = HHV(array, period);
MinL = LLV(array, period);

Range = MaxH - MinL;
sto  = (array - MinL)/(MaxH - MinL);

Value1 = AMA(2*(sto - 0.5), factor);
Value1 = IIf(Value1 > 0.999, 0.999, IIf(Value1 < -0.999, -0.999, Value1));

Fish = AMA(log((1 + Value1)/(1 - Value1)), 0.5);

return fish;
}

// Parameters
period = Param("Period", 14, 3, 35, 1);
factor = 0.10;

price  = AMA(Avg,0.5);
StoFR = FisherSto(price, period, factor); temp = Ref(StoFR,-1);

Plot(StoFR, "Stochastic", colorRed,styleThick); Plot(Ref(StoFR,-1),"previous", colorPink,styleDashed);