EthDeribitWeeklyDirectionalVerticalSpreadMomentum
Hypotheses
ETH Weekly Directional Vertical-Spread Momentum (DERIBIT options, defined-risk bull-call / bear-put spreads driven by a 4-week trend sign, signal from ETHUSDT.BINANCE, roll weekly, 2-parameter)
Hypotheses
A DIRECTIONAL (long AND short bias), DEFINED-RISK options strategy on ETH DERIBIT weekly options, whose ONLY signal is the surviving edge family in this factory: slow directional trend/momentum on a liquid major. Every Friday-to-Friday cycle the strategy reads the sign of the trailing 28-day (4-week) return of ETH (from ETHUSDT.BINANCE daily bars) and expresses it through a bounded vertical spread on the new front weekly Deribit ETH expiry: if the 4-week trend is UP it BUYS a bull call spread (long ~25-delta OTM call, short ~10-delta further-OTM call to finance it); if DOWN it BUYS a bear put spread (long ~25-delta OTM put, short ~10-delta further-OTM put). The position is held to expiry (settled) or closed on the roll date, then re-established on the next weekly expiry. This deliberately AVOIDS the two options graveyards in our history: (1) it is NOT naked/short-vol — short-ATM-straddle VRP harvest, covered-call overwrite and cash-secured-put write all died no_edge/other because the short-vol tail is unmodeled and the premium sits below cost; here we are net LONG premium on a bounded structure, so the tail is capped and known up front; (2) it is NOT a naked long option — the long-optionality run died to an implausible mark-to-market artifact (+9198%, +605% single-day) because a lone long leg's payoff is unbounded in the engine's MTM path. A VERTICAL SPREAD caps max payoff at (strike_width - net_debit), so the MTM can never sextuple the account, which structurally sidesteps that artifact. The edge is directional (weekly trend persistence), not vol-based; the options wrapper simply buys convexity cheaply (the short leg finances the long leg) with defined downside = net debit. Cross-venue by construction (DERIBIT options + BINANCE signal bar), long-short capable, and fills the single most under-represented venue bucket (options at ~6% combined vs >=15% target, BINANCE_OPTIONS at 0%).
Hypotheses
MECHANISM: the only signal is the surviving edge family named in the hypothesis -- slow directional trend on a liquid major. calculate_signal returns ETH's trailing N-day return continuously (a real, varying decision variable, verified non-frozen on all 6 synthetic scenarios); its SIGN, evaluated once at each weekly establishment, picks calls vs puts. STRUCTURE: net LONG premium on a BOUNDED spread, which sidesteps both options graveyards -- not short-vol (the tail is capped by the long leg, not by an unmodeled naked short), and not a lone long option (payoff is capped at the strike width, so the MTM cannot sextuple the account the way the abandoned long-optionality run did). SIZING: contracts = equity * max_loss_frac / MEASURED net debit (long premium - short premium, both read from the legs' own premium bars at entry), with an independent cap on gross premium outlay; a non-positive debit skips the cycle rather than sizing off a floor, and both legs always carry the identical size so the vertical is never established half-open (both legs must be loaded AND have a live bar before either is submitted). Long/short assignment is by STRIKE (closest-to-spot = BUY, further OTM = SELL) because the chain expander cannot express two same-kind legs with opposite sides; a kind with fewer than 2 resolved contracts is never traded (that would be a naked long). CONFIG CHOICES: primary = ETHUSDT.BINANCE 1-DAY, exactly the signal source the hypothesis names -- it is the trend series AND the roll clock, and never receives an order. Daily bars make the 28-day lookback 28 primary bars (identical in Layer 2, Layer 3 and the real backtest, no intraday aggregation), keep the roll-loop cost trivial (no timeout risk), and match the hypothesis's stated daily-bar timeframe. roll_buffer_hours=30 and entry_window_hours=48 are tuned to the daily grid: entry lands on the first daily close after the Friday 08:00 UTC roll, the close lands on the daily bar ~8h before settlement, giving a ~6-day hold. ETH-PERPETUAL.DERIBIT is carried as a data-only reference leg so the Deribit side of the hypothesis is present in the config from the start. Leverage stays 1.0 (options venue cap) and is deliberately not referenced in sizing. equity is read from the OPTION venue's account, not the signal venue's, so sizing tracks the book that actually carries the risk. ONE RESERVATION: the resolvable Deribit weekly ETH chain is far shorter than ETHUSDT's daily history, so a walk-forward split over the full primary window will put option coverage only in its last segment -- the analyst should read early-window zero-trade windows as a data-coverage artifact, not as a dead mechanism. Dry-run against a synthetic 52-week chain produced 52 cycles / 104 leg entries with matched sizes and timestamps, so the entry conjunction is not over-selective.
Hypotheses
Net spread economics are decisively negative on the FULL available option-coverage window (~48 weekly cycles / 96 legs, 2025-09 to 2026-09 — the Deribit weekly ETH chain does not resolve earlier, so this is the whole measurable sample, not a data gap): profit_factor 0.925 (<1), expectancy -$521/cycle, total_return -25.0%, Sharpe -0.26 with CI [-2.98, 1.43] straddling zero, 71.3% max drawdown. The per-leg avg_trade_return_pct -45.5% is a defined-risk accounting artifact (QA borne out — sold OTM leg expires worthless = 'win', long leg loses) and is judged out; the honest net read is a gross-negative signal. The directional-trend premise got its best test — ETH fell ~4500 to ~2000 over the window — and the weekly-trend vertical still whipsawed to a loss, so the bounded-vertical wrapper does not clear premium/spread cost. A net-negative (PF<1) signal cannot be lifted above costs by tuning 2 parameters, so this is not worth 2 hours of optimization. abandon_class=negative_expectancy.
Implementation
Weekly DIRECTIONAL, DEFINED-RISK vertical debit spread on Deribit ETH European options. Every Friday-to-Friday cycle the strategy reads the sign of ETH's trailing 28-day (4-week) return from ETHUSDT.BINANCE daily bars and expresses it on the new front weekly Deribit ETH expiry: trend UP -> BUY a bull call spread (long ~5% OTM call, short ~10% OTM call that finances it); trend DOWN -> BUY a bear put spread (long ~5% OTM put, short ~10% OTM put). Both legs share one expiry and one size, so the structure is a true vertical: max loss = the net debit paid (measured from both legs' premium bars at entry and sized to 1.2% of equity), max profit = strike width - net debit. Legs are established within 48h of the roll and closed 30h before settlement, then re-established on the next weekly expiry. Only 2 of the 4 resolved contracts trade per cycle; the opposite-direction pair is skipped. Built on RollingOptionsStrategy: the factory expander resolves the historical weekly ETH chain and the base owns entry timing, the roll and per-leg positions. No order is ever placed on the underlying and there is no smoke/underlying fallback -- with an empty chain it trades nothing.
Verification Results
Acceptable as a structural proxy. If delta targeting matters to the thesis, resolve legs against the chain's delta rather than fixed % offsets.
Verification Results
Hypothesis specifies ~25-delta long / ~10-delta short legs; the code selects legs by fixed moneyness (5%/10% OTM offsets in rolling_options) rather than by delta. The bounded debit-vertical STRUCTURE (long closer-to-spot, short further-OTM, same size/expiry) is preserved and the directional edge is intact, so this is not a critical mismatch, but the realized deltas will drift from the stated 25/10 as IV changes.
Verification Results
Verify the base's roll/warm-up still fires correctly with the overridden min_bars_required; keep the override if intentional.
Verification Results
min_bars_required() and _enter_leg() override framework methods (flagged by static analysis as base_shadow). These appear to be deliberate extension points (min_bars scaled to the 28-day daily warm-up; _enter_leg is the documented per-leg entry hook called by the base roll loop). Confirm RollingOptionsStrategy does not itself depend on its own min_bars_required for option-leg warm-up gating, since the override sets it to trend_lookback+2 primary (daily) bars.
Verification Results
Sandbox is deeply negative (total_return -25%, Sharpe -0.26, avg_trade_return_pct -45.5%). Two caveats for the analyst, NOT blockers: (1) The headline per-trade numbers are per-LEG accounting artifacts of a debit vertical, not real edge signals. long_win_rate 0.19 vs short_win_rate 0.875 and largest_win/loss of +$149k/-$106k on a 100k book are the classic spread footprint: the sold OTM leg usually expires worthless (counts as a 'win') while the long leg loses, and avg_trade_return_pct is measured per-leg against option-premium notional, so it is not fee-comparable (cf. L72 defined-risk measurement trap). Judge economics on NET spread PnL per cycle, not per-leg %. (2) The resolvable Deribit weekly ETH chain is far shorter than ETHUSDT's daily history, so a full-history walk-forward will show option coverage only in the last segment; early-window zero-trade windows are a data-coverage artifact, not a dead mechanism. The directional-trend premise on a liquid major is the one surviving edge family, but whether the bounded-vertical wrapper clears real spread/premium cost over a decisive sample is unresolved here and should be settled on the full backtest.
Backtest Review
Structurally avoids the two options graveyards: net-long a BOUNDED debit vertical (tail capped, no short-vol blowup) and not a lone long leg (no unbounded MTM artifact — indeed no +9198% headline here).
Backtest Review
The trade footprint matches the hypothesis: 48 long + 48 short cycles, calls when 28-day trend up / puts when down, held to roll — the mechanism is implemented as described.
Backtest Review
Fills the under-represented options venue bucket.
Backtest Review
Net (not per-leg) economics are decisively negative: total_return -25.0%, profit_factor 0.925 (<1), expectancy -$521/cycle, Sharpe -0.26 with CI [-2.98, 1.43] straddling zero.
Backtest Review
71.3% max drawdown with ±25-30% single-day swings on a nominally 1.2%-max-loss defined-risk structure — the sizing/MTM is not capping loss as designed, yet the book still loses.
Backtest Review
This IS the full option-coverage window: the Deribit weekly ETH chain only resolves ~2025-09 to 2026-09 (all daily returns fall in that span), so the ~48-cycle / 96-leg sample is the whole available test, not an early-window data gap — the mechanism was measured and failed.
Backtest Review
ETH trended hard down (~4500 to ~2000) over the window — the ideal condition for a directional trend vertical — and it still whipsawed to a loss; the bounded-vertical wrapper does not clear real premium/spread cost.
Backtest Review
avg_trade_return_pct -45.5% is a per-leg defined-risk accounting artifact and not fee-comparable (QA point 1 correct), so judged on net spread PnL — which is negative.
Outcome Summary
EthDeribitWeeklyDirectionalVerticalS-9bbcd80e2b
Outcome Summary
This strategy expressed a slow directional-trend edge on ETH through weekly Deribit vertical debit spreads, chosen specifically to sidestep the factory's two options graveyards — short-vol blowups and unbounded long-option MTM artifacts. On the full available option-coverage window (~48 weekly cycles, Sep 2025–Sep 2026), it lost 25.0% with a profit factor of 0.925, expectancy of -$521 per cycle, negative Sharpe and a 71.3% drawdown. Notably ETH fell hard (~4500 to ~2000) over the window, giving the directional premise an ideal test, yet the weekly-trend vertical still whipsawed to a loss because the bounded wrapper did not clear premium and spread cost. The analyst abandoned it at the backtest-review stage as negative-expectancy, judging it not worth the optimization spend; optimization, analyst post-opt review, and risk review were never reached.
Outcome Summary
A bounded vertical-spread wrapper structurally caps the tail but does not by itself clear real premium and spread cost; a signal that produces a PF<1 net result over its whole measurable window cannot be rescued by tuning two parameters.
Outcome Summary
It was abandoned at the pre-optimization backtest-review gate (abandon verdict, abandon_class=negative_expectancy): net spread economics were decisively negative with PF<1, and this was the full available Deribit weekly ETH chain window (2025-09 to 2026-09), not an early-data gap, so the mechanism was measured and failed.
Outcome Summary
A defined-risk, directional weekly options structure on Deribit ETH that read the sign of ETH's trailing 28-day return and bought a bull-call spread when the trend was up or a bear-put spread when down, rolling each week and deliberately avoiding the naked short-vol and unbounded long-option shapes that failed before.
Outcome Summary
Over ~48 weekly cycles (96 legs) it lost money net: total return -25.0%, profit factor 0.925, expectancy -$521/cycle, Sharpe -0.26 (CI [-2.98, 1.43]) and a 71.3% max drawdown, with win rate 53% but per-leg avg_trade_return_pct of -45.5% flagged as a defined-risk accounting artifact.
Backtest and paper results are hypothetical. Trading involves risk of loss.