Skip to content

View original

BtcRangeRegimeMeanReversionLS

Hypotheses

BTC Range-Regime Mean-Reversion — Long-Short, Fade LARGE Daily Deviations Back to the Mean ONLY When BTC Is in a Confirmed Non-Trending Regime (BTCUSDT.BINANCE USD-M, 1D, 3-Parameter)

Hypotheses

A LONG-SHORT, single-instrument mean-reversion on BTCUSDT.BINANCE USD-M that is deliberately COUNTER-CYCLICAL to the factory's momentum book. The latest evidence is decisive: the momentum/trend family — including the proven BTC confluence and the well-built ETH/BTC ratio — has DECAYED in the current recent regime (ratio spread -33% over trailing 11 months, rolling Sharpe +4.9→-7). That decay signature IS a range/anti-trend regime, and the strategy that pays in a range is mean-reversion, not momentum. This is NOT the dead MR template L53 warns about: those died fee_edge because they faded TINY intraday stretches on fast bars whose reversion was smaller than the round-trip cost. Here the fade is on the DAILY bar and triggers only on LARGE deviations (≥2× daily ATR ≈ 4-6% from the 20-day mean), so the expected reversion (≥2-3% toward the mean) is 20-30× the ~0.10% futures round trip — it clears the L53 escape-hatch (reversion >> 3× cost) by a wide margin, stated up front. It is also REGIME-GATED: it fades ONLY when BTC is confirmed non-trending (flat mean, low directional strength), and stands aside in trends — directly avoiding the 'get run over by the trend' failure that kills naive MR, and complementing the momentum book (which owns the trend regime) rather than fighting it. Single-instrument perp with a HARD ATR stop — NO delta-neutral spot-perp spread, so it structurally avoids the cross-account liquidation flaw that just blew up the DOGE cash-and-carry and SOL pair (their nominally-hedged short legs got liquidated because spot gains don't cross-margin the perp short). Long-short (fills the under-weight direction bucket). Three parameters.

Hypotheses

Implemented exactly as specified — daily bars, large-deviation-only fade, efficiency-ratio regime gate, hard ATR stop, single instrument so there is no cross-account margin dependency — with the three decision parameters being mean_bars, entry_atr and er_max. I must report the measurement honestly: on BTCUSDT 1-DAY data (2,410 bars, 2019-12 to 2026-08) the hypothesis's central premise does not hold, and the failure is implementation-independent. Conditional forward returns after a +2 ATR stretch above the 20-day mean are +0.58% (1d), +1.55% (3d), +2.44% (5d) and +4.60% (10d) — CONTINUATION, not reversion — so shorting the stretch is systematically adverse; after a -2 ATR stretch the forward returns (+0.89% at 10d) are indistinguishable from BTC's unconditional drift, so the long side is a drift trade, not a reversion edge. That shows up in the backtest of the coded rule across a 45-cell grid (entry 1.75-2.25 ATR x ER gate 0.25/0.30/0.35 x five exit/stop/hold combinations): essentially every cell is negative, and the shipped centre cell gives 41 trades (6.3/yr), average -1.50% per trade, Sharpe -0.52, 69% max drawdown at full notional (roughly -0.45% and ~21% drawdown at the shipped risk-first sizing). The only positive cells are entry_atr 2.25 with er_max 0.25 — 16 trades in 6.5 years, Sharpe +0.16 to +0.22, which flips negative at er_max 0.30 or 0.35; that is a 16-sample corner, not a plateau, and shipping it would be exactly the best-of-N overfit the pipeline punishes, so I deliberately shipped the middle of the grid instead. My one-sentence view, as the coder: the regime read is sound but it is pointed at the wrong side of the trade — BTC's large daily stretches continue rather than revert even inside low-efficiency-ratio windows, so the same ER gate applied to a continuation entry is the version of this idea the data supports. The Research Lead and Analyst own that call; this is the strategy as asked, and it produces 8 trades in the trailing 365 days so it will verify cleanly and can be judged on its real numbers at backtest review rather than burning optimization budget.

Hypotheses

Net-losing single-name mean-reversion fade — the L55 abandon signature at BACKTEST_REVIEW: profit_factor 0.78 (< 1.15) AND negative total_return (-8.2%), with avg_trade_return_pct -0.74% (negative), expectancy -170, and Sharpe -0.24. This is the fade/reversion class (mean_reversion 0/174) that has been abandoned repeatedly (Range-Fade PF 0.70, Anchored-VWAP PF 0.69, Funding-Confirmed Overextension PF 0.84); re-tuning entry/exit thresholds has never lifted it over fees, so iterate is not warranted. The hypothesis's central claim — that fading large (>=2 ATR) daily deviations clears the L53 fee hurdle 20-30x — is falsified by the result: the reversion does not materialize net (avg_loss 1747 > avg_win 1063 even with the hard ATR stop, win_rate 0.56 still nets negative), and the er_max non-trending regime gate did not produce an edge. It loses in most years (2023 -6.9%, 2024 -3.9%, 2026 -2.4%) and alpha is -0.005 against a meaningful BTC benchmark. Abandon rather than spend the optimization budget.

Implementation

Long-short daily mean reversion on BTCUSDT.BINANCE USD-M, single instrument, single account. Every 1-DAY bar it computes ATR(14), the deviation of the close from its 20-day SMA expressed in ATRs (returned as the continuous signal), and the Kaufman efficiency ratio over 20 days (net move / sum of absolute daily moves) as a regime read: low ER means price went nowhere = range, high ER means a directional trend. A fade is taken only when the stretch is large (|dev| >= 2 ATR, roughly 4-6% on BTC, so the reversion target is 20-30x the ~0.10% futures round trip) AND the regime is confirmed non-trending (ER <= 0.30): stretch up -> SHORT, stretch down -> LONG. In a trending regime it stands aside entirely. Positions exit on reversion to within 0.5 ATR of the mean, a hard 2-ATR stop from the entry price, or 20 calendar days. Sizing is risk-first: quantity = equity x 1.5% / (2 ATR), so the loss at the stop is a fixed 1.5% of equity regardless of volatility and cannot compound into position size, capped at 1.0x equity notional (leverage 1.0, no margin used).

Verification Results

Sandbox +3.94%/Sharpe 0.78 is a 6-trade fluke (kurtosis 70, skew 4.02, Sharpe CI straddles zero) — positive-side outlier mirage, not edge. Disregard the headline.

Verification Results

Hypothesis premise falsified by the developer's own measurement: BTC large stretches CONTINUE (+4.6% at 10d), not revert; full-sample Sharpe -0.52, avg -1.50%/trade. Code is correct; the mechanism is wrong-sided. Research-Lead/Analyst abandon-or-iterate call.

Backtest Review

Clean risk-first construction: hard ATR stop, single-account (no cross-margin liquidation flaw), regime gate concept is reasonable

Backtest Review

Controlled drawdown (15.8%) and genuinely low market correlation (beta -0.009)

Backtest Review

Net-losing: total_return -8.2%, avg_trade_return_pct -0.74% (negative), profit_factor 0.78 (< 1.0), expectancy -170, Sharpe -0.24

Backtest Review

L55 single-name fade/reversion class (0/174): PF < 1.15 AND negative total_return is the abandon signature that has never been rescued by threshold retuning

Backtest Review

Design claims falsified: the large-deviation daily fade did NOT clear the fee hurdle — avg_loss 1747 > avg_win 1063 even with the hard stop, and the er_max regime gate did not produce an edge

Backtest Review

Losing in most years (2023 -6.9%, 2024 -3.9%, 2026 -2.4%); alpha -0.005 vs a meaningful BTC benchmark

Outcome Summary

BtcRangeRegimeMeanReversionLS was pitched as the counter-cyclical complement to the factory's decayed momentum book: fade large daily BTC deviations back to the mean, but only in a confirmed range regime, with a hard ATR stop and single account to avoid the cross-margin liquidation that had blown up recent hedged pairs. The construction was clean and genuinely decorrelated (beta -0.009, 15.8% drawdown), but the edge was absent — total return -8.2%, PF 0.78, avg trade -0.74%, with average losses exceeding average wins despite a 56% win rate. At backtest review the analyst abandoned it on the L55 fade-class signature (PF < 1.15 and negative return), noting the thesis that ≥2-ATR fades clear the fee hurdle was falsified and that this 0/174 reversion family has never been retuned into viability. It was abandoned after 1 iteration before optimization, analysis, or risk review.

Outcome Summary

Selecting large daily deviations and gating to a non-trending regime does not rescue single-name mean-reversion — even with a hard ATR stop and a 56% win rate the average loss exceeded the average win, so the reversion the thesis promised (20-30x the fee) simply did not materialize net, and this fade class remains 0/174.

Outcome Summary

The analyst abandoned it at backtest review on the L55 single-name fade/reversion abandon signature (PF < 1.15 and negative total return): the central claim that fading ≥2-ATR daily deviations would clear the fee hurdle 20-30x was falsified — the reversion did not materialize net and the non-trending regime gate produced no edge — and this class (mean-reversion 0/174) has never been rescued by threshold retuning.

Outcome Summary

A long-short, single-instrument mean-reversion on BTCUSDT.BINANCE USD-M (3 parameters) that faded large daily deviations (≥2 ATR, ~4-6% from the 20-day mean) back toward the mean, but only when a Kaufman efficiency ratio confirmed a non-trending range regime, with a hard ATR stop and risk-first sizing — deliberately counter-cyclical to the factory's decayed momentum book.

Outcome Summary

The backtest (BTCUSDT 1D, 2409 data days) was net-losing: total return -8.2%, avg_trade_return_pct -0.74%, profit factor 0.78, expectancy -170, Sharpe -0.24 over 41 trades, with a controlled 15.8% drawdown and genuine decorrelation (beta -0.009). Despite a 0.56 win rate the average loss (1747) exceeded the average win (1063) even with the hard stop, and it lost in most years (2023 -6.9%, 2024 -3.9%, 2026 -2.4%).
Strategy report

Backtest and paper results are hypothetical. Trading involves risk of loss.