Skip to content

View original

EthTrendConfluenceDeribitLongOptionality

Hypotheses

ETH Trend-Financed Long Optionality — Express Proven Dual-Timeframe Momentum Confluence Through LONG Deribit Options (Buy ~30-45 DTE Calls in Confirmed Uptrends / Puts in Downtrends, Signal on ETHUSDT.BINANCE Perp, Convexity Caps Whipsaw Losses, 3-Parameter)

Hypotheses

A DIRECTIONAL, cross-venue strategy that takes the factory's ONLY repeatedly-surviving mechanism — dual-timeframe (4H primary + 1D confirm) momentum confluence, the exact recipe behind the ADA/BTC/ETH paper-stage survivors — and EXPRESSES it through LONG single-leg Deribit ETH options instead of a perp. When 4H and 1D absolute-momentum agree UP, buy a ~30-45 DTE, ~40-delta ETH CALL on Deribit; when they agree DOWN, buy the matching PUT; flat on disagreement. The momentum SIGNAL is computed on the liquid ETHUSDT.BINANCE perpetual (clean OHLCV, multi-year history); EXECUTION is on the Deribit option chain (developer selects the nearest listed strike to ~40-delta and nearest expiry in the 30-45 DTE band each entry). Position rolled to a fresh 30-45 DTE contract when time-to-expiry drops below ~14 days OR when the confluence signal flips (exit the option, re-enter the opposite side). This is deliberately the FIRST long-vol / long-gamma options structure in a corpus where 172 options experiments were ALL short-vol harvest (covered call 'other', short straddle 'no_edge', VRP write 'no_edge', CSP write in-pipeline) — a genuinely different mechanism, not a re-skin. Structural thesis: trend-following produces a fat right tail (few large wins) plus a cluster of small whipsaw losses; a long option CAPS each whipsaw loss at the premium paid while preserving the full convex payoff of the rare large trend leg. That payoff asymmetry is exactly what a perp cannot give and is why perp trend-followers bleed on choppy ranges. Fills three under-represented buckets at once (options 6%->target 15%, cross-venue 7%->target 15%, and diversifies off BTC/ETH-perp concentration) with a single defensible edge.

Hypotheses

Iteration 3 fixes exactly the deviation the semantic auditor flagged and nothing else. Previously on_bar exited only on `past_close or direction == -want`, so a zero direction (timeframes disagreeing OR |confluence| below threshold) carried the long option through the whole chop regime - contradicting the hypothesis' explicit 'flat on disagreement' mapping and the whipsaw thesis. The held position is now tracked as a single `_active_leg` with its roll deadline, and the exit test is `past_close or direction != self._held_dir`, which covers the flip AND the neutral/disagreement case; the entry block then re-buys the matching leg of the nearest live-window expiry once the confluence re-confirms (so a flip still round-trips on the same bar, and a leg can be re-entered while its window is open). `should_exit` in the single-instrument hook was aligned to the same rule. Signal maths, roll geometry, the iteration-2 USD premium normalisation, the venue mapping (signal on ETHUSDT.BINANCE, all orders on the Deribit option legs, no underlying fallback) and all parameters are unchanged, so Layers 1/1.5/2 stay green.

Hypotheses

suspected backtest artifact: option-position mark-to-market is implausibly large — total_return ~+9198%, recovery_factor 217, tail_ratio 116, and repeated +300% to +605% SINGLE-DAY account returns for a strategy that risks only 4% of equity per purchase and is exposed 28% of the time. A lone ~24%-of-equity option leg cannot sextuple the account in a day; this is an option premium/payoff scaling error in the sizing/valuation path (the coin-vs-USD unit confusion iterations 1-2 fought and iteration 3 has not resolved), not a convexity edge. Compounding this, the result is structurally UNVALIDATABLE: the Deribit chain only begins 2024-08, so all three walk-forward windows (2019-2024) traded zero legs and returned IS 0.0 / OOS 0.0 — the two HARD gate failures (is_overfitted, OOS<=0) are zero-coverage artifacts, and the DSR=1.0 / is_significant robustness is measured on the same ~2-year window the strategy was fit to, not a real out-of-sample. Recommend a factory-gate/manual review of the Deribit option MTM path before ANY long-options structure is trusted; do not promote on these numbers. The mechanism (long-gamma expression of the proven dual-TF confluence) is a legitimate idea, but it cannot be judged until the option accounting is verified and enough clean option history exists for a genuine walk-forward.

Implementation

Buys LONG single-leg Deribit ETH options (roughly 5%-OTM, 26-40 DTE monthly contracts) in the direction of a dual-timeframe absolute-momentum confluence computed on the ETHUSDT.BINANCE 4H perpetual series. Both a fast (30x4H bars) and a slow ('1D confirm', 20 calendar days) momentum leg are vol-normalised into t-stats; when both agree UP above +entry_threshold the strategy holds the period's CALL, when both agree DOWN below -entry_threshold it holds the PUT, and on ANY disagreement or neutral reading (|confluence| < threshold) it is FLAT - the open leg is closed on that bar. Positions are also rolled out 14 days before expiry, and a flip closes the held leg and buys the opposite leg on the same bar. Sizing spends a fixed 4% of equity of premium per purchase, so the premium paid is the entire capped downside.

Verification Results

Optional: nudge dte_target toward the stated band if the analyst wants exact alignment; not required for correctness.

Verification Results

Effective DTE band is ~26-40 days (dte_target 40 minus roll_out_dte_days 14), slightly tighter than the hypothesis's stated 30-45 DTE. Structurally identical (open ~monthly, roll ~2 weeks out), and the '5% OTM' offset maps to the stated ~40-delta; does not change the mechanism.

Verification Results

Acceptable as-is; note the design choice so the analyst does not expect a literal 1D bar subscription.

Verification Results

The '1D confirm' leg is implemented as a 20-calendar-day (120x4H-bar) momentum on the same 4H close series rather than a genuinely separate 1D bar feed. This is a dual-LOOKBACK confluence on one series rather than a dual-DATA-FEED confluence. Functionally it still requires short-horizon momentum to agree with a ~daily+ horizon, preserving the confluence intent, and avoids a second-feed warm-up stall. Both legs are vol-normalised into t-stats (scale-free), which is a reasonable and defensible design.

Verification Results

Confirm RollingOptionsStrategy/FactoryStrategy does not depend on its own min_bars_required for the schedule warm-up; if it does, reconcile. Otherwise informational.

Verification Results

min_bars_required(self) shadows the framework base method (Layer-1 base_shadow warning). This is a deliberate, documented override to gate warm-up on slow_lookback_bars+2 and appears self-consistent with the strategy's own state buffer.

Verification Results

Sandbox metrics are implausibly strong for a LONG-vol trend follower (Sharpe 3.46, profit_factor 25.3, and near-uniform Sharpe ~8-9 across calm/normal/stressed vol terciles). A premium-buying trend structure is supposed to BLEED in chop and only earn in the rare large leg, so uniformly high risk-adjusted returns in every regime look like a truncated-window artifact (favorable 2024-2025 ETH tape, 723 days) and/or the backtest engine's linear-USD option marking rather than a robust edge. avg_trade_return_pct +30.8% is positive (this is genuinely long-vol, not the negative-per-notional short-vol spreads of L72), and skew 3.24 / tail_ratio 116 is consistent with the intended fat-right-tail payoff. The analyst should confirm on full history that the edge survives a chop-heavy regime and is not concentrated in one or two large convex legs (largest_win $17.5k vs avg_loss $137).

Backtest Review

Genuinely differentiated mechanism working as hypothesized: the factory's only repeatedly-surviving recipe (dual-TF 4H+1D vol-normalized momentum confluence) expressed through LONG single-leg Deribit options. Trade records confirm long puts entered in downtrends / long calls in uptrends, losses capped near premium (avg_loss $137, largest_loss $564), wins large and convex (avg_win $2,016, largest $17,567). Skew 3.24, tail_ratio 116, PF 25.3 are the intended fat-right-tail long-gamma signature, not curve-fit noise.

Backtest Review

Option PnL is marked on REAL Deribit option bars (quantity x (exit-entry) reconciles exactly, e.g. 41 x ($362.48-$98.71)=$10,873) — this is proper option-instrument marking, NOT the linear-USD-on-underlying artifact QA suspected. Equity curve is realistic (+92% total over the ~2yr traded window, not the 9,000% a first read of total_return suggests).

Backtest Review

Per-trade edge is decisively positive and well above costs: expectancy +$1,226/trade, avg_trade_return_pct +30.8% of premium notional (positive = genuinely long-vol, unlike the negative-per-notional short-vol spreads that killed prior options attempts), commissions negligible. 150 trades / 63% win rate on a reliable sample.

Backtest Review

Fills three under-represented buckets (options, cross-venue, off-BTC/ETH-perp concentration) with a single defensible edge; iteration-3 flat-on-disagreement fix now matches the whipsaw thesis (exits on neutral AND flip).

Backtest Review

Deribit monthly chain only exists from 2024-08, so all 150 trades sit in ~2 years of a strongly favorable ETH tape. Walk-forward windows will be short and the holdout ~5 months — the high raw Sharpe (3.46, rolling 7-12) MUST be deflated hard and the DSR/holdout treated as the real gate.

Backtest Review

Max drawdown is a real 42.3% despite the premium cap (from a cluster of capped losses in choppy stretches) — the convexity caps per-trade loss, not portfolio DD. Calmar 92 / recovery 217 are inflated by percent-over-fraction unit inconsistency, not real risk quality.

Backtest Review

Regime performance is near-uniform across vol terciles (QA's concern) — surprising for a premium-buyer that should bleed in calm chop; the short single-cycle sample likely masks a chop-heavy regime. Downstream analysis should confirm the edge is not concentrated in a few large convex legs over the 2024-25 window.

Analysis

Genuinely differentiated mechanism: the factory's only repeatedly-surviving recipe (dual-TF 4H+1D vol-normalized momentum confluence) expressed through LONG single-leg Deribit options — the corpus' first long-vol/long-gamma structure. Trade records confirm the polarity is correct (calls in uptrends, puts in downtrends, flat on disagreement).

Analysis

Sensitivity grid is clean (0 cliffs) and the holdout window that DID have option data (2024-08 -> 2025-05, 45 trades) posted a positive Sharpe 3.91.

Analysis

Loss per trade is genuinely capped at the premium paid (avg_loss ~$137, max_drawdown driven by premium bleed) — the convexity thesis is structurally present.

Analysis

SUSPECTED BACKTEST ARTIFACT (primary reason): the headline is physically implausible for a strategy that caps each purchase at premium_frac=4% of equity and is in-market only 28% of the time. total_return ~+9198%, recovery_factor 217, tail_ratio 116, omega 24.7, sortino 22.8, profit_factor 25, avg_win/avg_loss = 2016/137. The daily-return series contains repeated single-day account moves of +300% to +605% (2024-11-14 +5.06, 2025-05-15 +4.96, 2025-08-15 +6.06, 2026-02-09 +4.66, 2026-06-10 +3.36). A single option position sized at ~24% of equity cannot move the whole account +600% in one day — that requires the option's mark-to-market to jump ~+2500%, which no 40-delta / ~40-DTE contract does intraday. This is the fingerprint of an option premium/payoff SCALING error in the sizing or valuation path (the exact coin-vs-USD unit confusion iterations 1-2 were fighting and iteration 3's _premium_usd auto-detect has NOT resolved). Symptom stated; I have not independently traced the exact line, and recommend a harness/factory-gate review of Deribit option MTM before any long-options result is trusted.

Analysis

UNVALIDATABLE OUT-OF-SAMPLE (secondary, structural): the two HARD gate failures (is_overfitted=true with IS 0.0 / OOS 0.0; OOS Sharpe 0.000 <= 0) are ZERO-COVERAGE artifacts, not measured overfitting. The Deribit ETH monthly chain only begins 2024-08 (first entry 2024-08-18), yet all three walk-forward windows train/validate over 2019-2024 — where zero option legs exist, so every trial returned 0.0. Only ~2 years (2024-08 -> 2026-09, data_days 723) of option history exist, so this mechanism cannot be put through a genuine multi-window out-of-sample walk-forward. The robustness block (DSR 1.0, is_significant) is computed on the SAME ~2-year window the strategy was fit to, not a real OOS.

Analysis

Corpus context: no long-options structure has ever validated, and options results with flattering headline stats on short/ thin histories have repeatedly been abandoned (L27, L67). Even setting the artifact aside, ~2 years is too short to promote a monthly-roll options structure.

Analysis

implausible (tail_ratio 116, recovery 217, +600% single-day returns)

Analysis

credible

Analysis

Code↔hypothesis misalignment found by the semantic auditor — the code does NOT implement the hypothesis. Re-code the strategy to implement the hypothesis EXACTLY (instrument, timeframe, direction, the named edge/mechanic, sizing). Concrete issues: Hypothesis states the position mapping as 'buy CALL when both agree UP / PUT when both agree DOWN; flat on disagreement', but the code never flattens on disagreement. In `on_bar` the only exit trigger is `if past_close or direction == -want` — `_direction()` returns 0 both when the 4H/1D legs disagree and when |confluence| < entry_threshold, which matches neither branch, so an open long call/put is carried through the entire disagreement/neutral period (up to the ~14-days-to-expiry roll). The base `RollingOptionsStrategy.on_bar` primary-bar path is fully overridden, so there is no other exit route. The code's own comment ('a neutral/disagreeing signal keeps the position') and docstring ('on disagreement we hold whatever is open but open nothing new') confirm the deviation is deliberate; it materially changes exposure precisely in the chop regime the hypothesis' whipsaw thesis is about.

Analysis

Benjamini-Hochberg at q=0.10 over 241 programme candidates keeps 4. A candidate that does not survive here is not distinguishable from the programme's own noise, however good its individual statistics look.

Outcome Summary

EthTrendConfluenceDeribitLongOptiona-22adaaf6a9

Outcome Summary

EthTrendConfluenceDeribitLongOptionality took the factory's only repeatedly-surviving signal — dual-timeframe momentum confluence — and, for the first time in a corpus of 172 short-vol options experiments, expressed it as a LONG-gamma structure buying Deribit ETH calls/puts to cap whipsaw losses at premium. Over three iterations it produced a mechanically correct, differentiated strategy whose backtest showed the intended fat-right-tail signature (Sharpe 3.46, PF 25.3, capped ~$137 avg losses vs $2,016 avg wins) and cleared backtest-review with an 'optimize' verdict. But optimization exposed that the Deribit chain only starts 2024-08, so every walk-forward window traded zero legs (IS/OOS 0.0) and the robustness was self-referential, while the analyst read the recovery factor of 217 and repeated +600% single-day returns as a suspected option premium/payoff scaling error. It was abandoned at iteration 3 pending a manual review of the Deribit option accounting, with the mechanism judged a legitimate idea that simply cannot be validated on the thin, artifact-suspect data available.

Outcome Summary

A long-options mechanism cannot be trusted or promoted until the Deribit option MTM/sizing path (coin-vs-USD units) is independently verified and enough clean option history exists for a genuine multi-window walk-forward — flattering headline stats on a ~2-year single-cycle sample are not evidence of edge.

Outcome Summary

The analyst abandoned it after backtest-review said 'optimize': the option mark-to-market was judged a suspected scaling artifact (a ~24%-of-equity leg cannot sextuple the account in a day), and the result was structurally unvalidatable because the Deribit monthly chain only begins 2024-08, so all three 2019–2024 walk-forward windows traded zero legs and the DSR/robustness was measured on the same ~2-year window the strategy was fit to.

Outcome Summary

Express the factory's repeatedly-surviving dual-timeframe (4H+1D) vol-normalized momentum confluence signal (computed on ETHUSDT.BINANCE) through LONG single-leg Deribit ETH options — buy ~40-delta/~40-DTE calls in confirmed uptrends and puts in downtrends — so whipsaw losses are capped at the premium paid while rare large trend legs keep full convex payoff.

Outcome Summary

The backtest posted a Sharpe of 3.46, profit factor 25.3, 63% win rate and +92% total return over the ~2yr traded window across 150 long option trades (avg win $2,016 vs avg loss $137), with a clean 0-cliff sensitivity grid and a positive holdout Sharpe of 3.91 on the 45 trades that had option data. However the walk-forward returned IS 0.0 / OOS 0.0 (is_overfitted=true, OOS Sharpe ≤ 0) and the analyst flagged implausible headline stats (recovery factor 217, tail ratio 116, repeated +300%–600% single-day account returns).

Iteration History

Verification failed (Layer 4 — QA review) [class=code_defect]: - [edge_concern] The long-vol/long-gamma thesis is genuinely novel and the signal side is faithful, but the sandbox already blew the account to -100% (liquidated 2022-09-09) purely from the sizing bug below, not from the mechanism. Once sizing is fixed, the analyst should still watch premium bleed: at 4% of equity per trade with ~30% win rate, the strategy needs the rare convex trend leg to actually pay multiples of premium to clear cumulative decay. - [critical] Position sizing divides USD equity by a COIN-denominated option premium, oversizing ~100-1000x and liquidating the account. This environment runs SF_NATIVE_OPTIONS=1, under which src/data/on_demand.py keeps Deribit option premium bars in RAW COIN terms (e.g. ~0.04 ETH) and deliberately skips _option_premium_to_usd. But _enter_long_option reads `premium = leg_bars[-1].close.as_double()` (a coin premium ~0.04) and _option_size computes `qty = (equity * premium_frac) / premium_usd` = (100000 USD * 0.04) / 0.04_coin = ~100,000 contracts. At ETH ~$3000 the real premium outlay is ~100000 * 0.04 * 3000 = ~$12M against a $100k account (~120x equity) instead of the intended 4% ($4000). This is the direct cause of the sandbox result: total_return -100%, liquidated=true, avg_position_pct 38868% (the documented 'Deribit-options sizing wall'), avg_win $20M / largest_win $69M. It also defeats the hypothesis's core claim that 'premium paid IS the maximum loss = 4% of equity' — the convexity cap does not exist as coded, and the account can and does blow up on a long-only-options book that should have strictly bounded loss. (line 291) — fix: Convert the coin premium to USD before sizing: `premium_usd = premium_coin * spot` where spot is the underlying ETH price already available as self._closes[-1] (the ETHUSDT perp close). Then qty = (equity * premium_frac) / premium_usd. Note the Layer-2 position_size() path already does this correctly (premium = spot * est_premium_frac_of_spot), so the two code paths are inconsistent — the real on_bar/_enter_long_option path is the wrong one. Alternatively, detect native vs linear-USD premium and normalise. Also rename the misleading `premium_usd` variable, since under the native path the leg-b
Strategy report

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