Strategies
BTC Options-Skew Sentiment Extreme Reversal, Long-Short (Trade the BTCUSDT.BINANCE Perp on DERIBIT 25-Delta Put-Call IV SKEW — NEW Information Source: Fade Extreme Hedging-Demand Skew as It Turns, Distinct from Vol LEVEL, Revert Exit, 3-Parameter)
Outcome: Abandoned
BtcOptionsSkewSentimentReversalLS
BTC Options-Skew Sentiment Extreme Reversal, Long-Short (Trade the BTCUSDT.BINANCE Perp on DERIBIT 25-Delta Put-Call IV SKEW — NEW Information Source: Fade Extreme Hedging-Demand Skew as It Turns, Distinct from Vol…
Hypothesis
verification_loop: Verification failed (Layer 1 — static analysis): - Look-ahead: a supplementary observation is selected by ABSOLUTE distance to the bar timestamp, which returns the NEXT observation when it is closer than the previous one. Use self.supp_as_of(key) (latest at or before the bar) or an explicit `ts <= bar.ts_init` filter — never abs(). (line 502)
Implementation
Long/short BTCUSDT.BINANCE USD-M perpetual timed by the Deribit 25-delta options skew (25d put IV minus 25d call IV) built from the `deribit_book_summary` supplementary feed. The skew is bucketed hourly, z-scored over a 21-day trailing window, and traded contrarian: an extreme PUT-rich skew (saturated hedging demand = capitulation) that has stopped steepening is a LONG, an extreme CALL-favoured skew (complacency) that has stopped steepening is a SHORT. Entries fire on a fresh cross of +/- skew_z_thresh; exits are an intrabar-detected ATR stop (checked first), an ATR target on the close, and a 24-bar (4-day) max hold. Sizing is gap-aware risk-first (equity * 2% / (max(stop, 3) * ATR)) capped at 35% of equity notional, leverage 1.0, no option legs.
Verification Results
Verification failed (Layer 1 — static analysis): - Look-ahead: a supplementary observation is selected by ABSOLUTE distance to the bar timestamp, which returns the NEXT observation when it is closer than the previous one. Use self.supp_as_of(key) (latest at or before the bar) or an explicit `ts <= bar.ts_init` filter — never abs(). (line 502)
Iteration History
Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: BTCUSDT.BINANCE-4-HOUR-LAST-EXTERNAL, Bars processed: 2180 Diagnostics: should_enter() returned a side 0 times over 2155 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.
Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: BTCUSDT.BINANCE-4-HOUR-LAST-EXTERNAL, Bars processed: 14388 Diagnostics: should_enter() returned a side 0 times over 14363 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.
Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: BTCUSDT.BINANCE-4-HOUR-LAST-EXTERNAL, Bars processed: 14390 Diagnostics: should_enter() returned a side 0 times over 14365 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.
Abandon Reason
verification_loop: Verification failed (Layer 1 — static analysis): - Look-ahead: a supplementary observation is selected by ABSOLUTE distance to the bar timestamp, which returns the NEXT observation when it is closer than the previous one. Use self.supp_as_of(key) (latest at or before the bar) or an explicit `ts <= bar.ts_init` filter — never abs(). (line 502)
Backtest and paper results are hypothetical. Trading involves risk of loss.