Strategies
COIN-M Open-Interest Deleveraging-Flush Reversal, Long-Short (Single-Instrument ETHUSD_PERP.BINANCE_CM — Fade Price Moves Driven by a Sharp CONTRACTION in Open Interest, i.e. Positions Closing Rather Than New Conviction Entering; OI-Rate-of-Change Gated, 2-Parameter)
Outcome: Abandoned
EthPerpOpenInterestDeleveragingFlushReversalLS
Backtest gate: - metrics unreliable: Incoherent: Sharpe 0.39 disagrees in sign with total_return -100.00% — the Sharpe is computed from the mtm_equity_curve series while the return comes from the equity curve. Judge on…
Hypothesis
Implementation
Long-short mean-reversion on the ETHUSD_PERP.BINANCE_CM inverse perpetual, gated on the rate of change of ETH perpetual OPEN INTEREST rather than on price alone. Every bar it computes a continuous fade score: -price_z * contraction, where price_z is the close's extension from its own trailing mean in trailing sigmas and contraction = 0.5*(1 - tanh(z-scored OI rate of change)) rises toward 1 when open interest is contracting unusually hard (positions being CLOSED: deleveraging, stop-runs, margin reduction) and toward 0 when it is expanding (new conviction). It enters when |signal| >= entry_z AND the reversion target (distance to the trailing mean) clears the ~0.10% round-trip cost, exits on mean reversion, a 3% stop, or a 36-bar time stop. ETHUSD_PERP has no OI history of its own, so the signal reads the USD-M ETHUSDT.BINANCE per-leg open-interest series (signal-only leg, never traded). Sizing is in whole INVERSE CONTRACTS via contracts_for_notional(), based on the coin-inclusive equity path and capped at 25% of equity per entry.
Verification Results
Acceptable as-is. If the run proceeds, the analyst should be aware the deleveraging signal is measured on USD-M OI, not on the COIN-M contract actually traded.
The hypothesis chose COIN-M single-instrument specifically so the OI feed would be jointly available with the traded bars in-sandbox. In practice ETHUSD_PERP.BINANCE_CM has no OI history, so the code reads OI from the USD-M ETHUSDT.BINANCE per-leg series (signal-only, never traded) via open_interest_by_instrument. The traded instrument and the OI-ROC mechanism both still match the hypothesis, and USD-M is the dominant ETH perp book, so this is an economically defensible proxy — but it reintroduces the cross-venue dependency the hypothesis stated it was avoiding. Documented and bounded (ts<=bar_ts), so not a correctness defect.
The developer's own iteration-3/4 event study on this exact signal (ETH 1h, 2021-12..2026-07) measures the OI gate as INVERTED and value-subtracting: fade return at 24h is -0.198% when OI is contracting (this strategy's trigger), +0.091% flat, +0.469% when OI is expanding, and +0.082% unconditioned — i.e. conditioning on contraction is worse than not conditioning at all. The traded gate nets ~-0.087% per trade after the ~0.10% round trip. The sandbox corroborates: avg_trade_return_pct -0.014%, profit_factor 0.967, total_return -10.06%, negative in all three vol regimes and both stress windows, with a break-even-by-geometry exit (win_rate 0.668 against a ~2.1:1 loss:win). No parameter change flips the sign of a conditioning variable that selects the worst regime. The analyst should treat the OI-contraction premise as likely falsified and check whether the mechanism has any positive-expectancy region before spending optimization hours.
Backtest Review
- Sharpe
- -0.04
- Total return
- -26.55%
- Max drawdown
- 66.47%
- Trades
- 2151
- Win rate
- 65.1%
- Profit factor
- 0.83
Well-formed single-venue/single-instrument design that cleared Layers 1-3 and produced a judgeable, non-liquidated run (iteration 6 bounded the notional).
Trades faithfully implement the hypothesis: a balanced long/short fade (1158 long / 993 short) triggered by OI contraction, so this is a fair test of the premise, not a coding artifact.
Reliable, decisive sample: 2151 trades over 2125 days, metrics_reliable=true.
Negative per-trade expectancy: avg_trade_return_pct -0.093% — below ZERO and far under the ~0.10% COIN-M fee floor — with profit_factor 0.831 and expectancy -$19.13/trade.
Total_return -26.55%, Sharpe -0.038 (CI [-0.87, 0.80] straddling/negative), Sortino -0.038, recovery_factor -0.885, negative in EVERY calendar year (2022 -13.0%, 2023 -5.5%, 2024 -1.0%, 2025 -4.4%) and in all three vol regimes (calm -23.0%, normal -12.2%, stressed -2.1%).
Break-even-by-geometry exit: win_rate 0.651 against avg_win 144 vs avg_loss 324 (~2.2:1) nets negative — the exit manufactures small wins that fees erase; commission is only 15.4% of gross, so this is gross-negative, NOT fee-fragility.
The OI-contraction premise is measurably FALSIFIED: the developer's own event study (reproduced on this COIN-M config) finds the gate INVERTED — fading works best when OI is EXPANDING (+0.469%) and worst when contracting (-0.198%), and conditioning on contraction is worse than not conditioning at all. QA's edge concern is borne out.
The 2 tunables (lookback, entry_z) cannot flip the sign of a conditioning variable that selects the worst regime; there is no positive-expectancy region to optimize toward.
Analysis
Backtest gate: - metrics unreliable: Incoherent: Sharpe 0.39 disagrees in sign with total_return -100.00% — the Sharpe is computed from the mtm_equity_curve series while the return comes from the equity curve. Judge on the equity curve.
Iteration History
Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - config.instrument_id is ETHUSDT.BINANCE but the hypothesis declares ETHUSD_PERP.BINANCE_CM — same asset, DIFFERENT venue/contract type (fees, settlement and the mechanism's premise differ). Trade the declared instrument.
Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - config.instrument_id is BTCUSDT.BINANCE but the hypothesis declares ETHUSD_PERP.BINANCE_CM — a different asset. Implement the hypothesis as written (or the Research Lead must revise it). Also note: - hypothesis states 1h bars but config.bar_type is BTCUSDT.BINANCE-4-HOUR-LAST-EXTERNAL (4-HOUR) — QA rejects a timeframe that contradicts the hypothesis; align bar_type or revise the text.
Backtest and paper results are hypothetical. Trading involves risk of loss.