What is a worked example of Fisher Transform?

Explore What is a worked: mechanics, differences, limitations, and practical checks.

Fisher Transform definition (what it is)

Fisher Transform is a mathematical transformation used in technical analysis to convert an input series (often derived from price) into an output series that tends to accentuate turns. In plain terms: it remaps a bounded “where am I in the recent range?” value into a scale with stronger separation near extremes.

Because it is a transformation, the output is not automatically a standalone trading signal. It is best understood as a calculated number whose behavior depends on how you define its input, window, and scaling.

Mechanics (how a worked example can be constructed)

A worked example needs assumptions that are not guaranteed by “market reality” alone. Here is one self-contained way to compute it numerically.

Assumptions for the example

  1. We have a short series of five closing prices: 100, 102, 101, 103, 104.
  2. We use a window length of 5 (so each step looks at the same min and max over the whole sample). This is a simplifying assumption to make verification easy.
  3. For each time step t, we define a normalized position x inside the window range:
    • Let min = 100 and max = 104.
    • Range = max − min = 4.
    • x = (price − min) / range, so x is in [0, 1].
  4. We then map x to a symmetric bounded value in (−1, 1) using:
    • p = 2x − 1.
    • So p is −1 when price = min and +1 when price = max.
  5. To avoid undefined values at ±1, we clamp p into (−0.999, 0.999). This is an implementation choice; different software may handle this differently.
  6. We use a simplified Fisher-style mapping with base formula:
    • f = 0.5 * ln((1 + p) / (1 − p)) where ln is the natural logarithm.

With these explicit assumptions, any reader can reproduce the arithmetic.

Step-by-step computation for the final point

For the last price 104:

  • x = (104 − 100) / 4 = 1
  • p = 2(1) − 1 = 1
  • clamp p to 0.999
  • f = 0.5 * ln((1 + 0.999) / (1 − 0.999)) = 0.5 * ln(1.999 / 0.001) = 0.5 * ln(1999)

Since ln(1999) ≈ 7.6009, f ≈ 3.8004.

What changes earlier in the series

For price 100:

  • x = 0, p = −1 → clamp to −0.999
  • f ≈ −3.8004

For intermediate prices, p lands between −0.999 and 0.999, producing values between those extremes. That is the “accentuation” effect in a numerical sense: the logarithm grows quickly as p approaches ±1 (near the window’s min or max).

Limitations and risks (material failure modes)

  1. Parameter sensitivity. The output depends strongly on window length and the exact min/max used. Changing the window changes the normalized input p, which changes f.
  2. Implementation details. Different implementations may use different intermediate variables (for example, using a running high/low, different smoothing, or different clamping rules). Even with the same prices, f may differ.
  3. Boundary issues. If p can reach exactly ±1 and is not handled with clamping or offsets, the log mapping can become undefined or numerically unstable.
  4. Not a standalone prediction. Fisher Transform output is a transformed value, not guaranteed cause-and-effect. Historical patterns in one period do not establish future results.

Verification and a next question you can answer

To verify the example independently, recompute each step from the same assumed formulas: min/max, normalization to x, mapping to p, clamping, then the logarithmic transform. If your computed value differs, the first place to check is the clamping and boundary handling.

A useful next question is: how does your chosen software define the input series and window? Fisher Transform is only reproducible when the input definition and formula details match.

Trading foreign exchange and CFDs involves substantial risk. Information on FoxiForex is educational and is not personal financial advice. Sponsored placements are labelled clearly.