Skip to content

View original

BtcSpotPerpBasisMeanReversionLSBinance4H

Hypotheses

BTC Same-Exchange Spot-Perp Basis Mean-Reversion Long-Short on BINANCE (Cross-Venue Signal: BINANCE_SPOT → BINANCE Perp Execution, 4H, Pure OHLCV, 3-Parameter Contrarian)

Hypotheses

Cross-venue contrarian mean-reversion strategy on BTC. EXECUTION instrument is BTCUSDT.BINANCE (USD-M perpetual — supports long AND short, 0.10% RT fees). SIGNAL source is the basis between BTCUSDT.BINANCE_SPOT close and BTCUSDT.BINANCE perp close at each 4H bar close — explicitly cross-venue (BINANCE_SPOT venue is distinct from BINANCE per the portfolio bucket classification). The mechanism is fundamentally distinct from the deprecated 'crypto pairs ratio MR' failure class because the spot-perp basis is STRUCTURALLY ARBITRAGE-BOUNDED by the funding mechanism: when perp dislocates from spot, funding payments mechanically incentivize arbitrageurs to close the gap. This is the OPPOSITE of L1-token ratio pairs (SOL/AVAX, BTC/ETH) where competing crypto assets are 'drift-dominant, NOT a stationary process' per analyst's deprecation note — basis IS stationary by exchange design. When perp closes >+50 bps above spot (over-leveraged longs paying premium), enter SHORT perp. When perp closes >-30 bps below spot (rare, capitulation), enter LONG perp. Exit when basis returns to ±10 bps neutral OR time-stop at 12 bars (48 hours). Crucially: NO funding payment dependency (so unaffected by the infrastructure gap that killed 9 funding strategies), NO basis-arbitrage execution (no spot leg = no 0.20% spot fees, no two-leg orchestration), pure single-instrument execution driven by cross-venue signal. Trade frequency: spot-perp basis crosses ±50/±30 bps approximately 40-80 times/year on BTC across the 7+ year BINANCE_SPOT history — yielding 24-40 OOS trades per walk-forward window, well above the analyst's empirically-established 5-trade-per-window floor.

Hypotheses

Addresses iteration-1 feedback that fixed +-50/-30 bps thresholds essentially never fire on BTC (only 9 trades in 6 years, nothing after 2023) because the absolute basis is a few bps and has compressed as the market matured. (1) RECALIBRATED to BTC's actual basis distribution: the trigger is now a rolling z-score / relative dislocation rather than absolute bps, so it self-scales to the shrinking-basis regime and keeps firing in 2023-2026. (2) PRESERVES the fee edge: exit reverts the z-score from +-2 sigma toward +-0.5 sigma, capturing ~1.5*rolling_std bps; a min_std_bps floor skips dead-flat windows so trades only occur when the dislocation (and its reversion) is multi-sigma and large versus the ~10 bps perp round-trip fee. (3) Mechanism unchanged and proven fee-viable from iteration 1 (single-leg perp execution, PF 2.54). The re-backtest will reveal whether recent (2023-2026) windows now produce adequate, regime-distributed trade counts (>~5/window); if recent windows stay near-empty even on a relative measure, the edge has decayed out of existence on BTC and the analyst should abandon rather than optimize.

Hypotheses

Overfit with no forward edge: walk-forward is_overfitted=TRUE (avg IS 3.77 -> avg OOS -1.68, ALL THREE OOS windows negative: -1.82/-2.08/-1.13), the holdout FAILED (0.0, ratio 0), and the multiple-testing gates concur — deflated_sharpe 0.146 « 0.95 with the optimized Sharpe 1.97 BELOW the expected-max luck bar 3.13 over 225 trials (is_significant=FALSE), PBO 0.5516 (>0.5), and sharpe_ci_low -0.137 straddling 0. Root cause: the BTC spot-perp basis is only a few bps and has compressed as the market matured; iteration 1's fixed ±50/30 bps triggers fired just 9 times in 6yr, and iteration 2's adaptive z-score now fires only by z-scoring basis microstructure NOISE, which has no consistent direction after the ~10 bps perp round-trip fee — hence the uniformly negative OOS. Not iterate (attempt 1 of 2): the OOS is negative across every window and the holdout is zero, so there is no robust region to tune toward — a smooth in-sample sensitivity surface measures consistency, not the absent forward edge, and a second best-of-225 sweep re-selects another noise-fit config that inverts OOS. Not revise_hypothesis: the basis-MR mechanism has no proven sibling stranded on a dead target, and the basis is even thinner on other majors, so reframing just re-overfits. FAILURE PATTERN: same-exchange spot-perp basis mean-reversion on a major is structurally unoptimizable — the basis is a few-bps, fee-fragile noise process, so any threshold either never fires (fixed bps) or fires on noise (adaptive z-score) and produces a high best-of-N in-sample Sharpe that inverts to negative OOS and a zero holdout.

Implementation

Single-leg BTC perp (BTCUSDT.BINANCE) contrarian mean-reversion driven by a cross-venue spot-perp basis signal. Basis_bps = (perp_close - BINANCE_SPOT close)/spot*1e4 each 4H bar. An adaptive rolling z-score (90-bar window) of the basis replaces the old fixed +-50/-30 bps triggers: short the perp when z >= +2 (perp richer than its recent mean), long when z <= -2 (perp cheaper), exit when |z| <= 0.5 (reverted to mean) or after a 12-bar (48h) time stop. Sizing is capital-relative via account equity.

Backtest Review

323 trades over 6.5yr with 0 dropped entries — ample sample for parameter fitting and walk-forward windows

Backtest Review

Balanced long/short (131/192) consistent with the hypothesis (perp usually rich -> more shorts fading premium)

Backtest Review

Single-leg perp execution driven by a basis z-score — PnL is from real perp moves, NOT a stale-leg phantom-basis artifact, so the cross-venue spread-magnitude concern does not apply

Backtest Review

Reasonable risk-adjusted profile: Sharpe 1.15, PF 1.32, max DD 6.2%, win rate 0.53, commissions only 8.77% of gross (edge clears fees)

Backtest Review

Iteration 2's adaptive z-score correctly fixed the dead fixed-bps trigger that produced only 9 trades

Backtest Review

Edge is concentrated in 2020-2021 (+9.1%, +10.7%) and decays to ~1.6-2.4%/yr in 2022-2025 with 2026 slightly negative — basis-dislocation premium compressed as the market matured

Backtest Review

sharpe_ci_low is already -0.17 (CI straddles 0) pre-optimization — foreshadows a possible deflated-Sharpe failure after best-of-N selection

Backtest Review

Low time-in-market (~12% exposure); high Sharpe partly leans on a small exposure denominator

Backtest Review

n/a (pre-opt)

Backtest Review

>~30 for optimization

Analysis

Mechanism is conceptually sound (spot-perp basis is arbitrage-bounded, unlike drift-dominant token-ratio pairs) and single-leg execution avoids spot fees / funding dependency

Analysis

Sensitivity surface is clean (only 1 cliff on short_entry_z), and benchmark_meaningful=false is correctly handled (market-neutral, ~6-12% exposure)

Analysis

Walk-forward is_overfitted=TRUE: avg IS Sharpe 3.77 collapses to avg OOS -1.68, with all three OOS windows negative (-1.82, -2.08, -1.13) — the edge inverts out-of-sample

Analysis

Holdout FAILED (holdout_sharpe 0.0, ratio 0)

Analysis

Deflated Sharpe 0.146 « 0.95, is_significant=FALSE; optimized Sharpe 1.97 is BELOW the expected-max best-of-N luck bar 3.13 over 225 trials; sharpe_ci_low -0.137 straddles 0; PBO 0.5516 > 0.5

Analysis

The adaptive z-score is normalizing a few-bps basis that is mostly microstructure noise; after ~10 bps round-trip fees there is no forward edge, which is why every OOS window loses money

Analysis

Do NOT optimize yet — the strategy fired only 9 trades in 6 years (exposure 0.37%, nothing after 2023-03) versus the hypothesis's predicted 40-80/year. The per-trade mechanism is sound (single-leg perp execution makes it fee-viable; a 50->10 bps reversion captures ~40 bps >> ~10 bps RT fee, PF 2.54), so this is a threshold-CALIBRATION problem, not a dead edge. Specific changes: 1. RECALIBRATE THE TRIGGER TO BTC's ACTUAL BASIS DISTRIBUTION. Fixed ±50/±30 bps thresholds essentially never fire on BTC (basis is a few bps and has compressed as the market matured). Replace fixed-bps thresholds with an ADAPTIVE measure — a rolling z-score or rolling percentile of the basis over a lookback window — so entries trigger on RELATIVE dislocations and the strategy adapts to the shrinking basis regime. Target enough trades for walk-forward (>~5 per window, ideally 20-40/yr). 2. PRESERVE THE FEE EDGE. Whatever threshold you adopt, verify on a trade sample that the captured reversion still clears the ~0.10% (10 bps) perp round-trip fee with margin — do not lower thresholds so far that trades capture <~15-20 bps (fee-marginal). Report avg captured bps per trade vs fee. 3. CHECK RECENT-REGIME COVERAGE (hard gate). After recalibration, confirm 2023-2026 actually produces trades. If the BTC basis has compressed below tradeable (fee-clearing) dislocation levels in recent years and those windows stay near-empty, the edge has decayed out of existence on BTC — in that case report back so it can be abandoned (or retargeted to a higher-basis-volatility instrument) rather than optimized. After these changes, re-backtest. If you have a fee-clearing edge with adequate, regime-distributed trade counts, proceed to optimization; if recent windows remain empty, abandon.

Outcome Summary

This was iteration 2 of a BTC spot-perp basis mean-reversion strategy that abandoned fixed ±50/-30 bps triggers (which fired only 9 times in 6 years) for an adaptive rolling z-score of the basis, executing long and short on the BINANCE perp alone. The initial backtest looked viable — Sharpe 1.15, profit factor 1.32, 323 trades, 6.2% max drawdown — and the analyst cleared it to optimize, noting the edge was concentrated in 2020-2021. Optimization then exposed the strategy as overfit: in-sample Sharpe of 3.77 collapsed to negative across all three out-of-sample windows, the holdout returned zero, and every robustness gate (deflated Sharpe, PBO, luck-bar, CI) failed. The analyst abandoned it, concluding the BTC basis is a few-bps, fee-fragile noise process that is structurally unoptimizable, and recorded it as a failure pattern rather than iterating further.

Outcome Summary

On a major like BTC the same-exchange spot-perp basis is only a few basis points and has compressed over time, so any trigger either never fires (fixed bps) or fires on microstructure noise (adaptive z-score) that has no forward edge after the ~10 bps perp round-trip fee.

Outcome Summary

The Strategy Analyst abandoned it at the post-optimization ANALYZING stage: walk-forward flagged is_overfitted=TRUE with uniformly negative OOS, the holdout failed (ratio 0), and the multiple-testing gates concurred — deflated Sharpe 0.146 (« 0.95), optimized Sharpe 1.97 below the expected-max luck bar of 3.13 over 225 trials, PBO 0.5516, and sharpe_ci_low -0.137 straddling zero.

Outcome Summary

A contrarian mean-reversion strategy that traded the BTC perp single-leg on BINANCE, fading dislocations in the spot-perp basis (BINANCE_SPOT vs BINANCE perp) via an adaptive rolling z-score, on the thesis that the basis is structurally arbitrage-bounded by funding and therefore stationary.

Outcome Summary

The initial 4H backtest over ~6.5 years produced 323 trades (131 long / 192 short) with a Sharpe of 1.15, total return ~25.5x, profit factor 1.32, 53% win rate, and a 6.2% max drawdown, but the edge was concentrated in 2020-2021 and decayed toward flat/negative thereafter. After optimization the in-sample Sharpe rose to 3.77 while all three walk-forward OOS windows turned negative (avg -1.68; -1.82/-2.08/-1.13) and the holdout Sharpe was 0.0.
Strategy report

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