Skip to content

View original

EthDeribitPostFlushWeeklyPutCreditSpread

Hypotheses

ETH Deribit Post-Flush Weekly Put-Credit-Spread (Defined-Risk Buy-the-Dip With Vol-Crush Tailwind)

Hypotheses

Implements the hypothesis on the rolling-options framework (RollingOptionsStrategy) so the historical weekly Deribit ETH chain is resolved and each week's two puts are real option legs -- no underlying proxy, no smoke path. 'Post-flush' is the entry gate, computed purely from ETH-PERPETUAL daily closes (no IV feed dependency, so the thesis is genuinely exercised and never silently defaults open): the gate latches only on APPROVAL, so a flush anywhere inside the week's entry window still opens that week's spread, and a rejection is retried each bar. 'Defined risk' is enforced in code: leg roles come from strike order (higher strike = short, lower = wing), a week whose wing did not resolve is dropped rather than sold naked, and both legs are submitted on the same bar once both markets are live. 'Vol-crush tailwind' is captured by holding the credit spread from the post-flush IV peak until 24h before expiry. One deviation worth flagging: the chain resolver fixes strikes from the spot at the week's open (7 days before expiry), while entry happens later in the week after the flush -- so the short strike can sit close to spot at entry (richer credit, more risk). A max_itm_frac guard therefore refuses a week whose short strike the flush has already pushed more than 2% into the money, which would be a near-locked max loss rather than a credit spread. Strikes at -5%/-10% were chosen because Deribit's historical ETH weeklies reliably have candles there; -15% wings do not, and a week without a resolved wing cannot be traded at all. Venue is DERIBIT per the hypothesis (options_deribit, ETH-PERPETUAL.DERIBIT primary); leverage stays 1.0 (options venues cap there) and is not referenced in sizing.

Hypotheses

data_wall: unmeasurable / insufficient statistical power (data_wall). The strategy is NOT a losing or fee-fragile book — QA is right that the -5.33% avg_trade_return_pct is the wing-notional artifact and realized economics are net-positive (PF 1.68, expectancy +$200.7/spread, short-put win 93%, coherent post-flush short-vol structure). The problem is that it produced only 30 complete spreads over the ENTIRE available ETH-Deribit weekly option history (legs exist only from ~2024-08; ~25 months is all the data), and the flush-gated weekly cadence structurally cannot produce more — tuning cannot enlarge the sample. The 3-phase run would curve-fit noise (walk-forward ~10 spreads/window, holdout ~6-8, below the hard holdout floor), and even the single config is not skill-distinguishable (PSR 0.79 < 0.95 on 30 daily obs, deflated Sharpe uncomputable). This mirrors the recent EthDeribitTrendLongConvexityCheapIvRoll (12-trade) unmeasurable abandon and the L27/L67 defined-risk-spread pattern. Not worth 2 hours of optimization; revive when the ETH-Deribit weekly option series matures enough to give the flush-gated mechanism a testable sample. abandon_class=unmeasurable.

Implementation

Weekly, defined-risk ETH put credit spread on Deribit, established only AFTER a downside flush. Each weekly expiry (~7 DTE) the strategy sells the ~5% OTM put and buys the ~10% OTM put of the SAME expiry (bull put spread, net credit, max loss = strike width x contracts, capped by the long wing). The spread is opened only on a bar where the ETH perp shows (a) a peak-to-trough drawdown of >=6% within the last 4 daily closes, with the trough strictly after the peak, and (b) stabilization: the last close has bounced >=0.5% off that trough and the last bar is not a fresh >3% down-bar. If no flush occurs during a week's entry window, that week is simply skipped. The position is held into the vol crush and closed 24h before expiry by the rolling base. Sizing is risk-first: contracts = 2% of equity / actual strike width, so the pre-known max loss per week is a fixed fraction of equity.

Verification Results

No code change needed. Optionally revise the hypothesis text to say 'weekly-expiry' to stop the lexical checker firing.

Verification Results

Layer-1.5 flagged a timeframe contradiction (hypothesis 'Weekly' vs config bar_type 1-DAY). This is a FALSE POSITIVE from lexical matching: 'weekly' in the hypothesis is the OPTION EXPIRY cadence (weekly Deribit ETH expiries, ~7 DTE, carried by rolling_options.roll='weekly'/dte_target=7), not the signal bar timeframe. The hypothesis description itself specifies the flush gate on DAILY closes ('peak-to-trough drawdown >=6% within the last 4 daily closes'), so bar_type=1-DAY on the ETH perp is the correct and intended signal timeframe. No genuine mismatch.

Verification Results

None — the override is deliberate and correct. Warning can be ignored.

Verification Results

Static analysis base_shadow warning: _enter_leg overrides the RollingOptionsStrategy method. Reviewed the base — this is the intended extension point. The base's default _enter_leg would use leg_sides:{'P':'SELL'}, which makes BOTH puts SELL (a naked structure). The override is REQUIRED to assign one SELL (higher-strike short) and one BUY (lower-strike wing) by strike order, enforcing defined risk. The True/False retry contract is honored and both-legs-live is checked via _period_markets_ready before submitting. Correct.

Verification Results

Sandbox avg_trade_return_pct is -5.33%, but this is the known defined-risk-spread accounting artifact (per-trade % measured against the wide WING notional, not the premium collected) rather than a losing book: the sandbox is net POSITIVE (PF 1.68, total_return +12%, short-leg win 93% vs wing 3% — exactly the expected profile for a bull put spread). The analyst should judge profitability against PREMIUM-relative economics, not the per-leg pct. Two things to check at full backtest: (1) trade count — weekly expiries gated by a flush that must fire inside each entry window produced only ~30 spreads over the 610-day sandbox; over full ETH-Deribit weekly option history (legs roughly 2024-08 onward) this extrapolates to a modest sample that may sit near the edge of statistical power (cf. the recent 12-trade EthDeribitTrendLongConvexityCheapIvRoll unmeasurable abandon). (2) L72 pattern: defined-risk put-credit spreads have repeatedly cleared headline Sharpe while being structurally fee/premium-marginal — confirm the realized credit clears Deribit round-trip on the premium base, not just on the Sharpe.

Backtest Review

The book is genuinely net-positive on realized economics, NOT a defined-risk fee/premium kill: PF 1.68, realized expectancy +$200.7/spread, short-put win rate 93% vs wing 3% — exactly the bull-put profile, and Deribit RT (~0.06%, capped) is trivial vs the credit. QA's read is correct: the -5.33% avg_trade_return_pct is the wing-notional accounting artifact, not a losing edge, so this is not an L67 fee-floor abandon.

Backtest Review

Trades faithfully implement the hypothesis: 60 legs = 30 complete spreads, all puts, avg moneyness 1.085 (~8.5% OTM short), net short vega (-127) / positive theta (+1980) / positive delta — a real post-flush short-vol-plus-buy-the-dip structure, atomically legged so risk stays defined. The mechanism is sound, not broken.

Backtest Review

Statistical power is the wall. Only 30 spreads fired over the ENTIRE available ETH-Deribit weekly option history — the option legs only exist from ~2024-08, so ~25 months / ~108 weeks IS all the data, and the flush gate + weekly cadence structurally cap the count near here. Tuning cannot enlarge the sample.

Backtest Review

The 3-phase machinery would fit noise: walk-forward 3 windows ≈ 10 spreads each, holdout 20% ≈ 6-8 spreads — below the HARD holdout floor and far below what supports a promote decision.

Backtest Review

Even the single chosen config is not skill-distinguishable: probabilistic_sharpe 0.79 < 0.95 on effective_daily_obs of 30; deflated_sharpe uncomputable. Headline total_return (~1204%) / annual (2025: +837%) are a size-off-growing-equity compounding artifact on a 2%-max-loss book, not evidence of edge.

Backtest Review

Family/precedent: this is the defined-risk put-credit-spread class (L27/L67) and mirrors the recent EthDeribitTrendLongConvexityCheapIvRoll (12 trades) unmeasurable abandon — same too-short-feed problem, just 30 instead of 12.

Outcome Summary

EthDeribitPostFlushWeeklyPutCreditSp-4ceed7814a

Outcome Summary

Sound short-vol mechanism, but structurally unmeasurable on the available Deribit weekly history; abandoned at the pre-optimization gate, later stages never reached.

Outcome Summary

A flush-gated weekly options mechanism is structurally sample-starved on a short option history; wait for the series to mature before entering the pipeline.

Outcome Summary

Backtest-review 'abandon' for insufficient statistical power (data_wall) — Deribit weekly option legs exist only from ~2024-08, capping the flush-gated cadence at 30 spreads and failing the sample/effective-obs floors (PSR 0.79 < 0.95).

Outcome Summary

Sell a defined-risk weekly ETH bull put credit spread on Deribit only after a downside flush had begun to stabilize, harvesting theta plus the post-flush IV crush while the long wing hard-caps loss.

Outcome Summary

30 complete spreads, PF 1.68, realized Sharpe 2.95, +$200.7/spread expectancy, 93% short-put win rate, ~1204% total return; the -5.33% avg_trade_return_pct judged a wing-notional artifact, not a losing edge.
Strategy report

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