DeribitBtcVrpShortPutIvRankHarvester
Hypotheses
BTC Volatility Risk Premium Harvester via Deribit Put Selling
Hypotheses
Systematically sells out-of-the-money BTC put options on Deribit when implied volatility is elevated relative to its recent history, harvesting the well-documented volatility risk premium (VRP) — the persistent gap between implied and realized volatility. The strategy monitors BTC price action via 4-hour futures bars and tracks Deribit IV via supplementary data (deribit_book_summary). When the 30-day IV rank exceeds the 75th percentile, it sells OTM puts at ~10-15% below current price with 14-30 DTE. Puts are held until either: (a) IV collapses below the 40th percentile (close for profit), (b) 50% of max premium is captured (take-profit), (c) BTC drops within 5% of the strike (stop-loss to avoid assignment risk), or (d) 7 DTE remaining (roll or close to avoid gamma risk). This captures the structural tendency for crypto IV to overshoot realized vol, especially during fear spikes. The edge is enhanced in crypto because retail demand for downside protection persistently inflates put premiums. Uses Deribit as the venue for deepest options liquidity and lowest fees (~0.06% RT). Position sizing targets 3-5% of equity per trade with max 2 concurrent puts open.
Hypotheses
Iteration 2. Per the iteration-1 feedback, the strategy itself is a genuine, plausibly-priced short-VRP edge (PF 2.46, 21% DD, correct short-put greeks, positive every year 2022-2026, 179-trade initial backtest + real sensitivity grid) and the ONLY blocker was a systemic optimization-harness bug: the walk-forward / holdout / optimized re-backtest reused a config in which the resolved option extra_instruments/extra_bar_types were dropped (option_chain_schedule stayed in params but extra_instruments=[]), so the put legs were un-subscribed, _extra_bars was empty, every entry gate returned False, and the optimizer never traded (n_trials=0, IS/OOS=[0,0,0], degenerate holdout). That is NOT fixable from strategy parameters. I verified the required engineering fix is now in place in the live source tree: backtest_agent.expand_rolling_options_into_config is module-level and re-runs the identical chain expansion in the optimized re-backtest (pipeline_processor._run_optimized_backtest), and the parallel walk-forward/holdout workers carry the full config_dict (with the option legs) into every window. Because the blocker was infra and it is resolved, the smallest correct Developer change is to re-emit the strategy UNCHANGED (byte-identical to previous_code, which already passed Layers 1-3) so it re-runs through verify -> backtest -> optimize on the fixed harness, this time producing a genuine IS/OOS walk-forward, a non-degenerate holdout, and a deflated Sharpe. Config faithfully encodes the hypothesis: weekly ~21-DTE ~12% OTM BTC puts, IV-rank-gated entry, multi-condition exits, 7-DTE (168h) roll buffer, max 2 concurrent, ~4% equity per trade. NOTE to the analyst: apply the normal gate on the fresh optimization (consistent positive WF-OOS, holdout >= 70% of WF-OOS, DSR >= 0.95) and heavily discount the 4.66 in-sample Sharpe for weekly-OTM-put fill optimism and the same-bar proximity-stop.
Hypotheses
Suspected benign-window artifact for a naked short-put VRP harvester whose defining risk (the left tail) is untestable on the available data — not worth 2 hours of optimization. Although the primary perp starts in 2018, the Deribit put legs only exist from 2025-08 onward (see extra-leg data_spans / option_chain_schedule), so the effective tested period is ~12 months (daily returns 2025-09→2026-08, annual_returns only 2025/2026) with 43 trades in a single, rising, no-crash regime. The headline stats — Sharpe 1.76, PF 2.36, max_drawdown 2.15%, POSITIVE return skew (+0.48), largest_loss (-$928) < largest_win ($1,516) — are abnormal for short puts and reflect that no volatility crash occurred in-sample, not that the tail risk is absent. The greeks confirm a real short-vol book (net vega -1447, net theta +2285, ~16 DTE, avg moneyness 1.13), so the missing negative-skew tail is precisely the risk the strategy exists to bear. A 3-phase optimization carved out of this one benign year (holdout also inside the same regime) would curve-fit the calm period and manufacture false confidence; the ~1-year option-history limitation is structural, not a code fix, so iteration cannot help either. This is NOT the L67 defined-risk signature (avg_trade is positive here, not fee-dead) — the disqualifier is an inadequate, one-regime sample for a tail-risk strategy. Symptom stated from the visible data spans; recommend manual/factory-gate review rather than spending optimization budget. Failure pattern: untested short-vol tail on structurally limited options history.
Implementation
Short-VRP harvester that systematically SELLS ~12% OTM BTC puts on Deribit (rolling weekly, ~21 DTE entry, closed at the 7-DTE roll buffer) whenever the 30-day IV rank (from Deribit DVOL) is elevated above the entry percentile. Legs are resolved from the historical Deribit chain by the rolling-options harness. Puts are closed on the first of: IV rank collapsing below exit_pct, capturing 50% of the entry premium, or spot coming within proximity_stop of the strike (assignment-risk stop). Up to max_concurrent puts, ~4% equity per trade. A gated long-perp smoke trade runs ONLY in Layer-3 verification (no schedule) to prove order plumbing; it is disabled whenever a real option schedule exists, so the analyzed backtest trades only real option legs.
Verification Results
CLEAN RESTART 2026-09-04 — this run's verdict history and learning records were removed and it was restarted from verification. Its previous abandonment came from the pipeline, not from the market: the Layer-2 harness mis-bound @staticmethod helpers (fixed), QA issued terminal performance verdicts on an unoptimized smoke test (removed — QA now judges correctness only), and sandbox timeouts came from backtest-slot starvation (fixed). The hypothesis and the strategy code are unchanged. Verify the code on its merits; performance is decided later by the full backtest and the optimizer.
Backtest Review
Genuine, correctly-implemented short-vol options structure (real Deribit put legs, sensible greeks: net vega -1447, net theta +2285, avg IV 0.50, ~16 DTE), harvesting a well-documented VRP
Backtest Review
Positive per-trade edge (expectancy +$110.9/trade, PF 2.36, win_rate 74%) — not fee-dead, distinct from the L67 defined-risk credit-spread family
Backtest Review
~50 weekly expiry cycles rather than a single cycle
Backtest Review
Effective sample is only ~1 year (option legs exist 2025-08→2026-09; daily returns 2025-09→2026-08), not the 2018 start the primary perp implies — 43 trades in one macro regime
Backtest Review
Short-vol tail is untested: max_drawdown 2.15%, positive skew, largest_loss < largest_win — the sample contains no crash, which is exactly the event this strategy is exposed to
Backtest Review
Structural data wall: Deribit option history spans only ~1 year here, so a full-cycle (crash-inclusive) validation is impossible; a walk-forward/holdout carved from this benign window would curve-fit the calm regime
Backtest Review
avg_trade_return_pct 198.5% is an options-notional artifact, not comparable to the fee floor
Backtest Review
~1yr, no crash
Backtest Review
multi-regime
Backtest and paper results are hypothetical. Trading involves risk of loss.