THRESHER / METHODOLOGY← back to the desk

Methodology · Indicators · I.10

Pivot Support & Resistance (fractal method)

Measures: the price levels where the market has actually reversed before — the structural map that stops and targets anchor to. This is the only "subjective-looking" indicator in the engine, so its algorithm is specified exactly.

Algorithm:

1. Fractal detection (window w = 5):
   bar i is a pivot HIGH if H_i > H_j for all j in [i−5, i+5], j ≠ i
   bar i is a pivot LOW  if L_i < L_j for all j in [i−5, i+5], j ≠ i
   (the last 5 bars can never be pivots — they lack a right side;
    this is inherent, not a bug: fresh structure is unconfirmed)

2. Zone merging:
   sort pivot levels; merge any levels within 0.5 × ATR of each
   other into one zone at their volume-weighted mean
   zone strength = number of merged touches

3. Nearest-level selection (relative to close):
   resistance = lowest zone strictly above close × 1.004
   support    = highest zone strictly below close × 0.996
   (0.4% buffer prevents treating a level price is *sitting on*
    as meaningful overhead/floor)

4. Fallback when no zone exists in range:
   close ± 2.5 × ATR, flagged "synthetic level" in the response

How Thresher uses it: Structure family room-asymmetry vote (±0.40); stop anchoring (II.5); structure targets (II.6). Zone strength ≥ 2 touches is preferred for targets when multiple candidates exist.

Limitations: pivots are timeframe-relative (a daily level is invisible to the weekly engine), the 5-bar window is a tunable that trades sensitivity for noise, and levels decay in relevance with age — v2 adds recency weighting to zone strength.