EthDeribitWeeklyShortStrangleVrpIvRankDeltaHedged
Hypotheses
Deribit ETH Short-Dated Delta-Hedged Strangle — Variance-Risk-Premium Harvest, IV-Rank Gated, Perp Delta Hedge (ETH weekly options + ETH perp, Market-Neutral Vega/Theta)
Hypotheses
A MARKET-NEUTRAL, OPTIONS-based volatility-carry strategy that harvests the crypto variance risk premium (implied vol persistently exceeds subsequently-realized vol) by systematically selling a near-dated (nearest weekly, ~5-7 DTE) ETH strangle on Deribit and delta-hedging the residual directional exposure with the ETH perpetual. This is a DELIBERATE family switch away from the trend/momentum graveyard: the flagged proposal was the Nth dual-timeframe-momentum-confluence clone (its near-twin was abandoned overfit, Sharpe 0.34; lesson L94 says these venue clones never transfer). This hypothesis shares NO mechanism, NO signal, and NO direction with that family. It is not momentum (L94/L95), not a pairs/cointegration spread (L96), and not a sub-fee microstructure fade. The edge is a documented structural risk premium — option sellers are paid for bearing gap/tail risk — filtered so we only sell when that premium is actually rich (IV-rank elevated, term structure in contango, realized vol not already spiking). Options are the single most under-represented venue bucket in the entire factory (0% coverage vs the >=15% quota); this also books market-neutral direction and cross-venue scope (Deribit options + Binance perp hedge). The regime gate is the anti-overfit core: we do NOT sell vol blindly (that is how short-vol books die in a crash) — we stand flat when vol is cheap or already exploding, harvesting the premium only in the contango/mean-reverting-vol regime where it is real.
Hypotheses
Iteration 2 fixes the Layer-3 'no trades' failure at its real cause, without touching any logic that already passed. The sandbox ships supplementary_data to the backtest subprocess as JSON, so deribit_dvol's integer nanosecond keys arrive as STRINGS; _build_dvol skipped string keys (it assumed the in-process dual int+str dict), read ZERO DVOL points, and gate 1 correctly blocked every cycle with 'no_iv' — the entry logic ran fine, its data feed was empty. An in-process repro of the identical code with int-keyed DVOL produced 162 trades over 104 weekly cycles, confirming the chain, schedule, entry gates and hedge all work. _build_dvol now parses both key shapes (exact int parse for digit strings, deduplicated by timestamp). Two cost cuts ride along because that repro consumed 489s of the 600s options sandbox budget: rolling_options.lookback_days 730 -> 540 (208 -> ~154 contracts to load; run cost is linear in leg count) and a live-period guard in the per-bar delta scan so positions_open() is only queried for periods between their own entry and expiry. Imports, class structure, signal scaffolding, gates and sizing are unchanged (Layers 1/1.5/2 stay green). One honest note: 540 days is ~77 weekly cycles, a thin sample for a payoff defined by its left tail — but it is the most the sandbox wall-clock permits.
Hypotheses
Negative expectancy on a reliable sample: PF 0.74, Sharpe -1.03, -139.8% return, -$26.63/trade, 196% drawdown. Not a fee problem (2.31% of gross) — the delta hedge cost -$5,356 against +$2,560 of option premium, so realized gamma ran ~2.1x the vol sold and no tuning of the gates or hedge_band lifts a book whose gross losses exceed gross profits by 35%. Worth recording for the Research Lead: the option legs in isolation were profitable (+$2,560, 83% win rate), so it was the continuous-hedging implementation that consumed the premium — a revisit should test a defined-risk / wider-wing structure that doesn't need daily gamma re-hedging, not a re-tune of this one.
Implementation
Sells the front-week ~5% OTM ETH strangle on Deribit every weekly cycle (~7 DTE, closed 24h before settlement) and delta-hedges the residual with the ETHUSDT.BINANCE perp once per day inside a deadband. Entry is gated on three vol-regime conditions computed point-in-time: DVOL IV-rank elevated, front-week IV not in steep backwardation vs 30-day DVOL, and fast realized vol not spiking vs slow realized vol. No implied data => no trade.
Verification Results
Layer-1.5 'weekly bars vs 1-DAY bar_type' adjudicated as NOT a mismatch: 'weekly' is the option expiry tenor (~5-7 DTE), implemented via rolling_options roll='weekly', dte_target=7, roll_buffer 24h. The hypothesis states no bar interval; 1-DAY is the roll/RV/daily-hedge clock the hypothesis itself specifies. Amend the hypothesis text so the keyword check stops firing.
Verification Results
ivrank_min defaults to 0.35 (sells in ~65% of states) and its lower bound is 0.0 — the optimizer can delete the regime gate the hypothesis calls its anti-overfit core. Same for rv_spike_max's 4.0 ceiling.
Verification Results
lookback_days=540 caps the FULL backtest, not just the sandbox — ~77 cycles split across 3 WF windows + holdout is underpowered.
Verification Results
Naked (unwinged) short strangle, hedged once per day inside a 0.2-contract deadband, gates evaluated only at entry and never re-checked while live, no intra-cycle stop. Delta hedging does not bound the gap tail.
Verification Results
Flat-book unwind is still subject to min_hedge_notional/ROUND_DOWN, leaving a sub-0.005 ETH delta-1 residue between cycles.
Verification Results
Sandbox is negative (total_return -1.38%, Sharpe -1.01, PF 0.74, expectancy -$26/trade over 471 days / ~67 weekly cycles). Not a blocker (unoptimized single draw), but two specific things the analyst should check on the full backtest: (1) REGIME ATTRIBUTION IS BACKWARDS FOR THE PREMISE — calm +0.11% / normal -1.29% / stressed -0.19%, tariff_shock_2025 -0.17% at Sharpe -3.24. The anti-overfit claim is that the gates stand the book down BEFORE vol expands; bleeding in the normal and stressed terciles suggests rv_fast/rv_slow on 1-DAY bars fires after the move. Check the _period_block_reason tallies against the loss-making cycles. (2) SAMPLE IS THIN FOR A LEFT-TAIL PAYOFF — lookback_days=540 pins the full backtest to ~77 weekly cycles; a short strangle's distribution is its worst few cycles, so read any flattering Sharpe alongside the worst-cycle PnL. Also avg_trade_return_pct 5.36% is premium-relative on option legs and is not comparable to the 0.15% futures floor; fees are not the problem here (2.3% of gross) — direction/gamma is.
Backtest Review
Strategy is alive and trades the declared structure: 64 option legs (32 calls / 32 puts, always paired) over ~32 weekly cycles plus 41 perp hedge trades — roll schedule, gates and paired-leg guard all work.
Backtest Review
The premium-selling side of the premise did show up: the short option legs alone earned +$2,560 at an 83% win rate (puts +$2,663 / 91% — the put-skew insurance bid).
Backtest Review
Fees are not the problem: commission $182 = 2.31% of gross; impact $38.
Backtest Review
Decisively negative expectancy on a reliable 105-trade / 472-day sample: PF 0.74, Sharpe -1.03, total_return -139.8%, expectancy -$26.63/trade, CAGR -109%.
Backtest Review
The delta hedge is the loss engine and it is structural, not a sign bug: perp leg -$5,356 over 41 trades (17% win rate) — realized gamma cost ~2.1x the entire premium collected. That IS the VRP test, and it failed.
Backtest Review
max_drawdown 196% with liquidated=false — equity marked through zero; a live account is margin-called. Sizing reduction cannot fix a 0.74 profit factor.
Backtest Review
QA's concern is borne out: calm +8.9% / normal -128.8% (Sharpe -6.8) / stressed -20.1%, tariff_shock -17.8% — the rv_fast/rv_slow gate on 1-DAY bars stands down after the move, not before.
Backtest Review
Classic blown short-vol distribution: skew -0.77, kurtosis 10.8, tail_ratio 0.61, omega 0.68, avg_loss $238 vs avg_win $132, worst day -51%.
Backtest Review
avg_trade_return_pct 5.36% is premium-notional and NOT comparable to the futures fee floor — judged on realized $ P&L per the options rule.
Backtest Review
~32 weekly cycles is thin for a left-tail payoff; unoptimizable either way.
Outcome Summary
EthDeribitWeeklyShortStrangleVrpIvRa-ec7b4c5cdc
Outcome Summary
This strategy was a deliberate family switch away from momentum clones into the factory's empty options bucket: a weekly ~5% OTM ETH short strangle on Deribit, gated on IV rank, term structure and realized-vol spikes, with a daily Binance perp delta hedge. It traded the declared structure cleanly over 2 iterations — 64 option legs across ~32 weekly cycles plus 41 hedge trades — and the short legs themselves were profitable at +$2,560 and an 83% win rate. But the hedge leg bled -$5,356, leaving profit factor 0.74, Sharpe -1.03, -139.8% total return and a 196% drawdown that marked equity through zero. The analyst abandoned it at backtest review before any optimization spend, judging that realized gamma ran about 2.1x the vol sold and that no re-tune of the gates or hedge band could lift a book whose gross losses exceed gross profits by 35%.
Outcome Summary
The premium-selling side of the VRP thesis was real, but continuous daily delta-hedging on 1-DAY bars cost ~2.1x the premium collected — a revisit should use a defined-risk or wider-wing structure that does not require daily gamma re-hedging.
Outcome Summary
The analyst abandoned it at the backtest-review gate before optimization, ruling the negative expectancy structural rather than fixable: costs were not the issue (commissions 2.31% of gross, impact $38), and regime attribution showed -128.8% in the normal-vol tercile with the vol gates standing down after moves rather than before.
Outcome Summary
Harvest the crypto variance risk premium by selling a ~5% OTM front-week ETH strangle on Deribit under IV-rank, term-structure and realized-vol-spike gates, delta-hedging the residual with the ETHUSDT Binance perp.
Outcome Summary
Over 472 days and 105 trades it returned -139.8% with Sharpe -1.03, profit factor 0.74, expectancy -$26.63 per trade and a 196% max drawdown; the short option legs alone made +$2,560 at an 83% win rate while the perp delta hedge lost -$5,356 across 41 trades (17% win rate).
Iteration History
Verification failed (Layer 3 — sandbox backtest): No trades produced
Bar type used: ETHUSDT.BINANCE-1-DAY-LAST-EXTERNAL, Bars processed: 2399
Diagnostics: calculate_signal() was never evaluated (0 evaluated bars) -> this is a RollingOptionsStrategy: 0 evaluated bars means the option CHAIN was never built for the smoke window (no contracts discovered / no option bars) -> a data-coverage limit of the chain, not an entry-logic problem. Do NOT loosen entry thresholds — the entry logic never ran.
Ensure your strategy produces trades with the given data and parameters.
Backtest and paper results are hypothetical. Trading involves risk of loss.