Quiet Asia builds a range, London/early-US liquidity breaks it: buy-stop above the Asian high or sell-stop below the Asian low at 01:00 NY, ride to an 11:00 NY time exit with a full-range protective stop. The 2026 window looked great; the 6-year test says otherwise.
The original 2026 Bybit window looked exceptional (PF 1.79, +38.5R, 99.5% MC P(profit)) — and the strategy's own report warned it was regime-sensitive. A 6-year out-of-sample test on PAXGUSDT (tokenized gold, which reproduces the Bybit window almost exactly: 124 vs 122 trades, PF 1.80 vs 1.79) settles it: PF 0.90, −220R over 1,543 trades, 5 of 7 calendar years lose money, P(total net > 0) = 9.8%.
As specified, this strategy is not profitable over multi-year data. Any live use would need a genuine edge change (regime filter, different entry/exit mechanics), not just better data. This is one of the cleanest lessons in the library: a short backtest window in a trending regime can look amazing and still be worthless.
XAUUSD / GC (gold), 15-minute chart, America/New_York timezone, 17:00 chart-day boundary.
21:00 → 01:00 NY — highest high / lowest low of the quiet Asia session.
Buy-stop at range HIGH + sell-stop at range LOW (OCO) at 01:00, first to fill. One trade per day, either direction.
Stop = StopFrac × range width (default 1.0 = full range). No take profit — ride to the 11:00 NY time exit, next-bar market order.
| Metric | 2026 Bybit window | Multi-year PAXG (2020–2026) |
|---|---|---|
| Trades | 122 | 1,543 |
| Win rate | 58.2% | 35.3% |
| Profit factor | 1.79 | 0.90 |
| Total R | +38.5R | −220R |
| Sharpe (daily, ann.) | 2.94 | −0.44 |
| P(total net > 0) bootstrap | 99.5% | 9.8% |
Faithful EasyLanguage-derived engine (fills, OCO, stops, time exit) with per-trade fill verification against raw bars (verify_fills.py).
XAUUSDT 15m Bybit (Mar–Aug 2026), GC=F 15m Yahoo (Jul–Sep 2026), PAXGUSDT 15m Binance (Aug 2020 → Sep 2026, 211k bars), GC=F daily 2016–2026 for regime labels.
Metric suite + Monte Carlo + sensitivities on the original window; multi-year yearly/regime analysis on PAXG; fill verification; hand-traced sample days.
The multi-year update is published prominently in the README and site — the negative result is the headline, not a footnote.
python backtest/asian_breakout.py # faithful engine
python backtest/asian_analysis.py # metrics + MC + sensitivities
python backtest/multiyear_analysis.py # 6-year PAXG test
python backtest/verify_fills.py # verify every fill vs raw bars
python backtest/generate_site_data.py # site/data/site_data.json