Skip to content

View original

BtcVolExpansionOiFuelBreakoutLS

Hypotheses

BTC Volatility-Expansion Breakout with Open-Interest-Fuel Confirmation, Long-Short (Single-Instrument BTCUSDT.BINANCE Perp — Enter on a Discrete Range-EXPANSION Event ONLY in the Direction Confirmed by Rising Open Interest, ATR-Trailing, 3-Parameter)

Hypotheses

A LONG-SHORT strategy on the BTCUSDT.BINANCE USD-M perpetual that enters on a DISCRETE volatility/range-EXPANSION event — but only in the direction CONFIRMED by an open-interest expansion (new leveraged capital fueling the move). It builds directly on the one piece of positive evidence in this session: my OI-fueled trend continuation showed a REAL per-trade edge (avg_trade_return_pct +0.635%, above the fee floor) and was abandoned only for a thin risk-adjusted profile (PF 1.16, win-rate 43% — the low-win-rate/give-back signature of CONTINUOUS trend-following). This changes the ENTRY MECHANISM from a continuous trend-regime to a discrete, high-conviction VOLATILITY-EXPANSION trigger, which historically carries a higher win-rate and profit factor than continuous trend-riding, aiming to lift the composite metrics past the L9 PF≥1.2 survivor line while keeping the proven-edge OI-fuel as the directional filter. It is distinct from the flagged CONTINUOUS OI-fuel trend (event-driven vs continuous), from generic breakout (the OI-fuel confirmation is the key filter that removes the unfueled false breakouts that killed prior breakout attempts), and from my pending seasonality/basis/liquidation/survivor ideas. It stays on BTC (the one tradable instrument), single perp execution (dev-safe), pure OHLCV + well-covered open_interest (no coverage/no-trades risk), long-short (fills the 13.4% bucket vs 86.6% long-only), 4H cadence, ATR trail. 3 parameters.

Hypotheses

MECHANISM. The hypothesis keeps the one ingredient with confirmed positive evidence in this session -- OI-fuel as the directional filter, which produced +0.635% per trade on the continuous-trend sibling, above the fee floor -- and swaps the entry mechanism from a continuous regime to a discrete expansion event. That is implemented literally: the position is only opened on a bar that displaces >= expansion_mult ATRs, so exposure is concentrated around the events rather than held through every mean-reverting wiggle inside a regime, which is the give-back that produced the sibling's PF 1.16 / 43% win rate. TWO DESIGN DETAILS THAT DECIDE WHETHER THE SIGNAL MEANS ANYTHING. (1) OI is read COIN-DENOMINATED. Both feeds also carry open_interest_value, which is OI x PRICE -- its rate of change contains the very price displacement the filter is supposed to confirm, so using it would have the strategy confirming its own signal. Only the coin series is parsed. (2) The ATR used to normalize the displacement excludes the bar being decided; otherwise a large bar partly normalizes itself away and the expansion trigger systematically under-fires on exactly the bars it exists to catch. FUEL IS GRADED, NOT A COMPOUND GATE. ANDing an expansion condition with a fuel condition multiplies selectivity and is the most reliable way to build a strategy that fires zero times and burns its verification budget. The fuel test is a multiplier instead: an unfuelled expansion keeps its direction and still varies bar to bar but at 0.30x would need ~5 ATRs to reach the entry threshold. When OI is genuinely UNAVAILABLE the strategy is not ready and takes no position at all -- it does not degrade into a price-only breakout, which is a different and already-failed hypothesis. The exit path deliberately reads the RAW displacement rather than the fuel-weighted signal, so losing the OI feed can never by itself flatten a live position. COVERAGE -- I MEASURED IT, AND THE HYPOTHESIS'S CLAIM IS WRONG. The brief states open_interest is 'well-covered (no coverage/no-trades risk)'. It is not, and this is the single most important thing for the analyst to know when reading the results. The `open_interest` (open_interest_hist) feed for BTCUSDT covers only 2026-03-23 to 2026-07-30 -- about four months. The multi-year coin-denominated history lives in `metrics` (5-minute, 2020-09 to 2026-07, 325k rows), so this strategy MERGES both feeds rather than reading either alone. Even merged, the series is block-structured with stretches of up to ~20 days missing: measuring against the real 4H catalog, only 40-45% of bars have any OI sample near them, and widening the staleness tolerance from 4h to 24h moves that by ~5 points because the holes are structural, not a tolerance problem. I also tested a rigid t-24h anchor versus the pair-based per-24h-rate estimator that shipped; the pair-based version is the right way to measure a rate off an irregular grid but recovers only a couple of points, confirming the ceiling is sample availability itself. MEASURED TRADE COUNTS (real 4H bars + real merged OI, 14,412 bars 2019-12 to 2026-07). At the shipped defaults (expansion_mult 1.5, fuel_z 0.3, 12h staleness): 697 raw expansion events, 245 of them with a usable OI reading, 100 fuelled entries over the full history and 11 inside a trailing 365-day window. So Layer 3's >=1-trade requirement is met with margin, and the optimizer's likely range stays non-zero throughout (expansion_mult 1.3 -> 143 entries, 1.8 -> 71, 2.2 -> 36). The honest read: the trade count is COVERAGE-BOUND, not signal-bound. If the sample looks thin, that is the OI data gap, not an over-selective trigger -- and it would improve on its own as the metrics backfill proceeds. I chose expansion_mult 1.5 over 1.8 specifically to buy sample size (100 vs 71 entries) without dropping the trigger to a level where a 'discrete expansion' stops being discrete; 1.5 ATRs is roughly a 1.5-2% 4H BTC move against a ~0.10% round trip, so fee viability has wide margin either way. RISK AND VENUE. Sizing is anchored to a 3-ATR gap floor rather than to the trail itself, so a tight trail cannot produce the largest position exactly where the stop is least enforceable -- the pattern behind the 90%+ drawdowns in this book -- and gross notional is capped at 0.5x equity independently of the equity path. risk_frac is locked so an optimizer cannot buy Sharpe with notional instead of edge. The trail is detected INTRABAR (bar low/high) but booked at the bar CLOSE, which is deliberately pessimistic on gaps. Futures (BINANCE USD-M MARGIN) is required rather than preferred: a downside expansion is traded SHORT, which a CASH spot account cannot do. leverage stays 1.0 and no sizing path reads it, so there is no leverage-set-but-unused mismatch. Per-bar cost is two searchsorted calls and O(1) arithmetic against a precomputed prefix-sum grid -- no per-bar rescan of the 325k-row OI series, which is what blew the 300s sandbox wall clock on a sibling.

Hypotheses

The discrete OI-fuel breakout redesign made the sibling WORSE, not better, and the composite has no edge. avg_trade_return_pct is -0.021% (negative — a collapse from the continuous OI-fuel version's +0.635% this design was explicitly built to preserve), profit_factor 1.051 (below the sibling's 1.16 and far below the L9 1.2 survivor line the hypothesis aimed to clear), and win_rate 38.75% is LOWER than the 43% it set out to raise — the core 'volatility expansion carries a higher win rate' premise is falsified. Sharpe 0.054 (CI [-0.63, 0.66]), total_return 2.78% over 6.5 years (~0.4% CAGR), information_ratio -0.703. The entire profit is the 2020 regime; the strategy is negative in every year 2022-2026 with rolling Sharpe now -6 — a single-regime artifact. The sample is only 80 trades and is coverage-bound by structural OI data gaps (the developer's own note), clustered in 2020, so optimizing best-of-225 trials would curve-fit noise (kurtosis 42.9). This is the OHLCV+OI breakout class (L9, zero survivors); the OI-fuel filter did not remove the false breakouts. There is no robust parameter region to tune toward — abandon rather than spend 2 hours optimizing.

Implementation

Long/short BTCUSDT.BINANCE USD-M perpetual on 4H bars. Entry is a DISCRETE volatility/range-expansion event: the bar's close displaces more than expansion_mult ATRs from the previous close (ATR measured over prior bars only, so the trigger bar cannot normalize itself away). That event is only acted on in the direction confirmed by an OPEN-INTEREST EXPANSION -- new leveraged capital entering to fuel the move, as opposed to a same-sized bar on FALLING OI, which is short-covering or long-liquidation and means the opposite about what happens next. OI is read coin-denominated (never the USD notional series, whose rate of change would contain the price move it is meant to confirm) as a per-24h growth rate standardized by a rolling 30-day z-score; fuel is applied as a 0.30x multiplier on the signal rather than as a second ANDed gate, so one threshold governs entry. Exits: an ATR trailing stop from the best close since entry, detected intrabar and booked at the close; an opposite expansion event read from the RAW displacement; and a 5-day max hold. Sizing is risk-first and gap-aware (1.5% of equity over a 3-ATR excursion), capped at 0.5x equity notional, leverage 1.0. Three tunable parameters: expansion_mult, fuel_z, trail_atr_mult.

Verification Results

'ONLY fueled' softened to graded-0.30x — disclosed; practically ~equivalent since unfueled entry needs ~5 ATRs

Verification Results

fuel_z=0.3 is a weak confirmation bar (~38% pass rate)

Verification Results

OI coverage only ~40-45% — hypothesis's 'well-covered' claim is false; trade count coverage-bound at ~100

Verification Results

Negative sandbox (PF 0.37, -0.67%/trade) — analyst's call, n=11 noise-dominated

Backtest Review

Clean, well-instrumented implementation; contained max_drawdown 12.6% and low turnover

Backtest Review

OI coverage limits are measured and honestly disclosed rather than hidden

Backtest Review

avg_trade_return_pct -0.021% — NEGATIVE, and a collapse from the sibling's +0.635% the redesign was meant to preserve

Backtest Review

profit_factor 1.051 (below the sibling's 1.16 and far below the L9 1.2 survivor line the hypothesis targeted); win_rate 38.75% is LOWER than the continuous version, so the 'higher-win-rate breakout' thesis is falsified

Backtest Review

Sharpe 0.054 with CI [-0.63, 0.66]; total_return 2.78% over 6.5y (~0.4% CAGR); information_ratio -0.703

Backtest Review

Entire return is the 2020 regime: negative in 2022, 2023, 2024, 2025, 2026; rolling Sharpe now -6 — single-regime overfit signature

Backtest Review

Only 80 trades and coverage-bound by structural OI gaps — too few, and clustered in 2020, to optimize without curve-fitting noise (kurtosis 42.9)

Outcome Summary

BtcVolExpansionOiFuelBreakoutLS was a deliberate attempt to rescue the one piece of positive evidence this session — a continuous OI-fuel trend strategy with a real +0.635% per-trade edge but a thin risk-adjusted profile — by keeping the OI-fuel directional filter and swapping the entry to a discrete, high-conviction volatility-expansion trigger meant to raise win rate and profit factor past the survivor line. The redesign backfired on its own terms: win rate fell to 38.75% (below the 43% it targeted), the per-trade edge collapsed from +0.635% to -0.021%, and profit factor dropped to 1.051, leaving Sharpe indistinguishable from zero. Worse, the entire +2.78% return came from the 2020 regime, with losses in every year from 2022 through 2026 and only 80 OI-coverage-bound trades clustered in one period. The reviewer abandoned it at backtest-review, concluding the OI-fuel filter did not remove the false breakouts, the higher-win-rate premise was falsified, and there was no robust region to optimize toward.

Outcome Summary

Grafting a proven ingredient (OI-fuel as a directional filter) onto a new entry mechanism doesn't preserve the edge — the discrete volatility-expansion trigger actually destroyed the sibling's positive per-trade return, and the OI-fuel filter did not remove the false breakouts that keep killing the OHLCV+OI breakout class.

Outcome Summary

It was abandoned at the pre-optimization BACKTEST_REVIEW gate: the core thesis that volatility-expansion entries carry a higher win rate was falsified (win rate fell, per-trade edge went negative), the profit was entirely a 2020-regime artifact (negative in every year 2022-2026, rolling Sharpe -6), and with only 80 OI-coverage-bound trades clustered in one regime there was no robust parameter region to optimize.

Outcome Summary

Enter the BTCUSDT.BINANCE perp long/short on a discrete volatility/range-expansion event (a bar displacing >1.5 ATRs), but only in the direction confirmed by expanding open interest (new leveraged capital fueling the move) — a redesign of a sibling continuous OI-fuel trend that had a real per-trade edge, swapping the entry to a discrete high-conviction trigger to lift win rate and profit factor.

Outcome Summary

The redesign made the sibling worse: 80 trades (35 long / 45 short), avg per-trade return -0.021% (negative, collapsed from the sibling's +0.635%), profit factor 1.051 (below the sibling's 1.16 and the 1.2 survivor line), win rate 38.75% (lower than the 43% it aimed to raise), Sharpe 0.054 (CI [-0.63, 0.66]), and just +2.78% over 6.5 years (~0.4% CAGR) with max drawdown 12.6%.
Strategy report

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