Trading Dev AcademyFree quant education

Free lesson · Technical analysis

Fibonacci retracements: anchors before ratios

Open interactive lessonPractice calculationsExplore labs

Start with the idea

A retracement measures how much of a completed move has been given back. Ratios identify candidate levels; they do not make those levels inevitable.

Symbols, units & horizon
  • L,H: fixed confirmed low/high anchors in price units, H>L
  • r: retraced fraction in [0,1]
  • P_r: candidate retracement price
  • H−L: amplitude of the completed upswing

When and why to use this

Use fixed-anchor distance features or predefined scenario levels. Compare their incremental value with simple prior extrema and uniform grids.

  • Choose a confirmed low and subsequent confirmed high for an upswing. A downswing uses the mirrored construction.
  • Common chart ratios include 23.6%, 38.2%, 50%, 61.8% and 78.6%. The 50% midpoint is conventional, not a Fibonacci sequence ratio.
  • Fibonacci ratios motivate a geometric grid. The price market is not constrained to obey that grid.
  • Freeze anchor timestamps and the confirmation rule. Replacing anchors after seeing a bounce changes the historical strategy.
  • Use level distance, reaction frequency or conditional return as a measurable hypothesis. Compare with equally spaced and randomized-ratio grids.
  • Extensions project beyond an anchor and are different from retracements inside the completed move. Test targets and entries separately.
Pr=H−r(H−L),r=H−PrH−L
Specified chart rule · derivation and arithmetic

Fibonacci retracements: anchors before ratios

  1. Measure the upswing: H−L=120−100=20.
  2. For r=.618, the give-back is .618×20=12.36. Subtract from the high: 107.64.
  3. To recover the ratio, subtract the observed price from H and divide by H−L.
Work it by hand

A pullback to 110 gives (120−110)/20=.5. A .382 retracement lies at 112.36.

Use the rule

  • Fix the definition, units and information timestamp.
  • Compute the example and inspect the graph.
  • Compare with a simple baseline on untouched periods after costs.

Before moving on

Write the exact rule, its availability time, an invalidation condition and a fair out-of-sample test.

Python implementation

Self-contained teaching example. Python 3.10+; dependencies and input conventions are shown in the code and notation. Run in your own Python environment.

def retracement(low,high,ratio):
    if high<=low or not 0<=ratio<=1: raise ValueError("Ordered anchors and ratio in [0,1] required")
    return high-ratio*(high-low)

print(retracement(100,120,.618))

Continue learning

Technical Analysis: Geometry, Structure & Evidence — all lessons
  1. Support, resistance and reversal: start with a price zone
  2. Breakout detection, false breaks and retests
  3. Fibonacci retracements: anchors before ratios
  4. Harmonic patterns: ratio constraints and competing candidates
  5. Elliott Wave: count hypotheses, rules and invalidation
  6. Fair value gaps (FVG): three-bar geometry and fill measurement
  7. Heikin-Ashi: smoothed candles are synthetic prices
  8. Renko: price-driven bricks and the missing time axis
  9. Dynamic support, trend lines and Gann angles
  10. Momentum indicators, oscillators and divergence
  11. Volume, supply/demand zones and what OHLCV cannot reveal
  12. Market structure, BOS and CHOCH as a state machine
  13. Moon phases: encode a calendar hypothesis and try to falsify it

Quantitative finance and development glossary · Python resources and libraries · Research sources and limitations