Tool
Gann Fan
market.gann_fan
Inputs
The single pivot point the fan is drawn from — usually a swing high or low fed from a zigzag/point tool. Its price and bar set where every ray originates.
Outputs
A bundle of Gann ray lines (one price per ray at the current bar) that act as projected angled support/resistance; tap a ray to test whether price is above, below, or reacting at it.
Gann Fan projects a set of angled support/resistance rays out from one pivot point. Each ray is a fixed price-per-time slope (the famous 1×1, 2×1, 1×2 angles); price tends to find support or resistance as it crosses from one ray to the next.
How it works
From the anchor pivot (fed in via the anchor input), the tool draws ray_count rays whose slopes come from the ray_N_slope settings, scaled so that one 'unit' of price per bar is meaningful. scale_mode chooses whether that unit is a fixed price step (fixed_scale) or volatility-adaptive (ATR over atr_period), and anchor_dir flips the fan up or down off the pivot.
Modes
Ray count options
Anchor dir options
Picks whether the fan opens upward (from a swing low) or downward (from a swing high) automatically based on the anchor pivot's role.
When to use: The hands-off default — let the pivot decide which way the rays should fan.
Forces an upward fan rising from a swing low, so the rays act as ascending support beneath an uptrend.
When to use: Anchoring to a significant bottom in a rising market.
Forces a downward fan falling from a swing high, so the rays act as descending resistance above a downtrend.
When to use: Anchoring to a significant top in a falling market.
Scale mode options
Sizes the price-per-bar unit from a constant fixed_scale value, so the fan's angles stay the same regardless of how volatile the market gets.
When to use: When you want classic, reproducible Gann angles tied to a price scale you set by hand.
Sizes the price-per-bar unit from ATR over atr_period, so the fan automatically opens wider in volatile conditions and tightens when the market calms.
When to use: When you want the angles to adapt to current volatility instead of a hand-set scale.
Configuration
How many rays the fan draws, from 1 (just the central 1×1 angle) up to 9 (a full fan of finer and steeper angles). More rays = a denser grid of support/resistance lines; 1–9 rays, more = finer fan.
Which way the fan opens off the pivot: 'up' (support rising from a low), 'down' (resistance falling from a high), or 'auto' to follow the pivot's role.
How the price-per-bar unit behind the angles is sized: 'fixed' uses the constant fixed_scale, 'atr' adapts the unit to ATR volatility.
The constant price-per-bar unit used when scale_mode is 'fixed'; larger values steepen every ray. Ignored in ATR mode.
The ATR lookback used to size the angles when scale_mode is 'atr'; larger smooths the volatility estimate. Ignored in fixed mode.
Slope multiplier for the first (central) ray, typically the 1×1 angle of one price unit per bar.
Slope multiplier for the second ray (e.g. the 2×1 angle).
Slope multiplier for the third ray (e.g. the 1×2 angle).
Slope multiplier for the fourth ray (e.g. the 3×1 angle).
Slope multiplier for the fifth ray (e.g. the 1×3 angle).
Slope multiplier for the sixth ray (e.g. the 4×1 angle).
Slope multiplier for the seventh ray (e.g. the 1×4 angle).
Slope multiplier for the eighth ray (e.g. the 8×1 angle).
Slope multiplier for the ninth ray (e.g. the 1×8 angle).
Connects to
Examples
- Anchor the fan to a major swing low, then use interpretor.gann_fan to fire when price holds above the 1×1 ray as trend support.
- Switch scale_mode to 'atr' on a volatile symbol so the angles widen with range instead of clipping price.
Common mistakes
- Setting fixed_scale wrong for the symbol's price scale, so the angles are far too steep or flat to line up with real swings.
- Anchoring to a minor pivot — Gann angles only carry weight from significant swing highs and lows.