Range Trading: Donchian Channel Fade


Abstract


Range Trading (RT) fades extremes of a Donchian-style price channel on hourly bars across a curated FX universe. When price tags the rolling N-bar high it sells; when it tags the rolling N-bar low it buys; exit comes via a midpoint target, an ATR-multiple stop, or a hold-time cap. The current production version was re-run under v3 doctrine in May 2026 on a cleaned data substrate (USDCNH excluded) and was downgraded from Tier-1 admit to research-grade when five of eight strict deflation gates failed. RT 1h continues to run in paper shadow under the per-system attribution architecture as an observational sleeve; it is not on live capital and the re-arm gate is open-ended rather than scheduled. The earlier RT variant (four-signal-type-per-pair with Monte-Carlo-validated regime-conditional trade management) is no longer the canonical version.


Mechanism


For each pair, two rolling Donchian-style levels are computed:



When price touches or breaks the upper level, the system enters short; when it touches or breaks the lower level, it enters long. Profit target is the channel midpoint or a fraction of the distance to it. Stop loss is an ATR multiple. A maximum hold-time cap closes any position that has not reverted in time.


The mechanism is mean-reverting by construction — it assumes the pair will spend most of its time inside the rolling range and only the tails are tradable. The pre-v3 version used four different signal families (Bollinger, RSI, rolling range, session-based) assigned per pair through walk-forward selection; the v3 cleanup consolidated to a single mechanism class and dropped the per-pair signal-type assignment because that selection was a primary PBO source.


What changed in v3


The pre-v3 RT variant had two properties that v3 either kills or replaces:


1. Regime-conditional trade management. Pre-v3 RT adjusted take-profit fraction, stop multiplier, and hold time per pair × volatility regime (QUIET / NORMAL / ELEVATED / STRESS). The published claim was a Sharpe lift from +1.47 (fixed parameters) to +2.08 (adaptive). Under the v3 deflation gauntlet, regime-conditional parameters failed PBO and walk-forward holdout: the lift was selection on the in-sample, not a real out-of-sample effect. Regime conditioning is gone; v3 RT trades pooled across regimes with a single parameter set.

2. Headline Sharpe 2.08, twelve pairs including USDCNH. That number came from a substrate that had not yet been cleaned of the 343 polluted USDCNH hourly bars (audited 2026-05-13). USDCNH's polluted bars had registered as enormous reverting moves; removing them dropped RT's apparent admit Sharpe from +3.52 to +1.38 and dropped four of the strict v3 deflation gates from PASS to FAIL.


Validation


Re-run under v3 doctrine on the clean substrate (USDCNH excluded, eleven pairs). The eight strict gates and the composite verdict:


GateThresholdRT 1h clean
Walk-forward Sharpe5/5 folds positive, minimum > 0.5PASS (5/5, min +0.86)
Holdout replicationHoldout SR > 0.6 × WF SRPASS (holdout +1.38)
Probability of Backtest OverfittingPBO < 0.05 strictPASS (0.020)
Deflated Sharpe RatioDSR strict**FAIL**
Monte Carlo permutationp < 0.10**FAIL** (p = 0.18)
GARCH residual testp < 0.10**FAIL** (p = 0.19)
HMM regime nullp < 0.10**FAIL** (p = 0.21)
DSR K=3 multiple-testingDSR-K=3 strict**FAIL** (0.59)

Three of eight pass, five fail. Composite verdict: not admit-eligible under strict v3 doctrine. RT 1h has been downgraded from Tier-1 candidate to research-grade / Tier-2; the live shadow continues to run for observational purposes only and the path to live capital is not currently scheduled.


The downgrade is informative on its own terms. The pre-cleanup composite verdict was admit-eligible, but the +3.52 Sharpe that made it so was specifically the polluted-USDCNH artefact — clean RT does not pass the strict gates. The four failed gates (MC, GARCH, HMM, DSR-K=3) are regime-aware nulls that the polluted bars had inflated past threshold.


Universe


Eleven pairs traded:


USDSEK, USDNOK, USDMXN, USDCHF, AUDUSD, NZDUSD, USDZAR, USDCAD, GBPUSD, USDPLN, EURUSD.


USDCNH is excluded because its hourly bar substrate was contaminated (343 polluted bars between Aug 2025 and Jan 2026, audited 2026-05-13).


Execution


RT 1h trades through the same central order router as FV-Fast and ER under per-system attribution. Orders carry orderRef='rt_1h:{signal_id}'. While currently in shadow mode, the execution path is wired up identically to the live arm — paper-shadow trades land in the shadow ledger only, while the order router and reconciler see RT as a registered system whose live arm is held off.


Live status



What RT is not


RT is not a regime classifier, not a multi-signal ensemble, not a per-pair-tuned trade manager. The v3 cleanup specifically removed the regime-conditional parameter tables and the per-pair signal-type assignment that the pre-v3 version had used. That stripped-down mechanism is what survives walk-forward but fails the regime-aware deflation gates — strong evidence that the pre-v3 complexity was the source of the inflated admit numbers.


Relationship to other systems


RT is the third leg of the Tier-1 trifecta alongside FV-Fast and ER. Per-pair Sharpe stratification on RT does not show the EM amplification that FV-Fast does — RT's mechanism (channel fade) is structural rather than dealer-inventory-driven. The three sleeves together provide coverage across mechanism families (USD-pair residual MR, equity-coupled flow divergence, technical channel fade). On HRP-rolling weights, RT's higher variance gets diluted in shorter windows and gains weight in longer windows; the 248-day window allocates RT ~52% versus FV-Fast ~41% versus ER ~7%. Whether that allocation runs as live capital depends on whether RT's admit-eligibility question is resolved.


EricL Analytics — updated May 2026