A two-year simulation, shown in full — drawdowns included.
This is the exact configuration Mercurio runs today, replayed over 2024-06-01 to 2026-06-01 on $25,000 of paper capital, with realistic execution costs. No cherry-picking, no hidden assumptions.
Equity curve
$25,000 starting capital · 381 trades
The drawdown we don't hide
The curve falls before it rises. Through late 2024, equity sank to about $18,175 — roughly 27% below its $25,000 starting capital, and a 29.3% drop from its peak — then spent months underwater before recovering. Watching nearly a third of the account evaporate is the part of trading that actually tests you, and the part most backtests quietly crop out.
Three assumptions that separate a backtest from a fantasy
Realistic execution costs
Every entry and exit pays 0.15% slippage per side — roughly 0.3% round-trip. Stop-losses are modeled with gap-through fills: when price gaps past the stop across an overnight or weekend break, the fill happens at the open, not the stop price. That single assumption costs about 32 percentage points versus a fantasy of perfect stop fills. We keep it on.
A regime filter that mirrors live
Longs are permitted only when the S&P 500 closes above its 50- and 200-day moving averages for ten consecutive sessions. The backtest computes those averages from genuine daily bars — the same way the live engine does — after we found and fixed a bug that had been computing them from 1-hour bars and inflating multi-year returns.
Walk-forward, not curve-fitting
Parameters are optimized on an in-sample period and then tested untouched on a later out-of-sample period. Changes that only shine on one window are rejected as overfit. Only the long-only configuration with 10-day bull confirmation generalized across both.
Tested on data the optimizer never saw
The validated configuration was optimized on 2021–2024 (which includes the 2022 bear market) and then tested, untouched, on 2024–2026. Both windows held up — the mark of an edge that is real rather than curve-fit.
The out-of-sample Sharpe of 0.58 sits below the project's 1.0 go-live bar. That gap is one reason Mercurio remains in paper validation rather than trading live capital.
Where the return came from
Return by calendar period
2024 (from June) and 2026 (through May) are partial years.
Top contributors
- MU+$2,470
- CRWD+$2,195
- PANW+$1,956
- ASML+$1,737
- ARM+$1,680
Biggest detractors
- GE$-671
- XOM$-687
- PYPL$-836
- ZS$-964
Losers are an expected cost of trend following. The edge comes from winners being larger than losers, not from avoiding losses.
Over a full five-year cycle, this strategy was net negative
The two-year window above is strong, but it is not the whole picture. Tested over 2021–2026 — including the 2022 bear market — the same strategy returned roughly -23%, with a negative Sharpe and a drawdown above 50%. Trend following on this universe works in sustained bull markets and struggles everywhere else. That is precisely why Mercurio is long-only, regime-gated, and sits in cash for long stretches — and why it is still being validated on paper, not trading live.
The backtest is deterministic and open
Same configuration, same window, same numbers. The entire engine — strategy, risk manager, and regime logic — is on GitHub. Change a realism assumption and watch the numbers move.
- BT_GAP_THROUGH = session
- BT_SLIPPAGE_PCT = 0.0015
- BT_REGIME_SMA = daily
- BT_BULL_CONFIRM_DAYS = 10
All figures on this page come from a historical simulation using $25,000 of paper capital. They are not live trading results, not a forecast, and not financial advice. Past performance does not guarantee future results. Trading involves substantial risk of loss. Read the full methodology in Inside the Mercurio Backtest.