Skip to content
All strategies

Strategies

XRP USD-M Dual-Timeframe Momentum with Open-Interest EXPANSION Confirmation, Long-Short (4H primary + 1D trend confirm, take directional momentum ONLY when open interest is rising WITH price = genuine new-money trend; stand flat / fade when the move is powered by position unwinding, ATR-trailing exit, 3-parameter)

Outcome: Abandoned

XrpDualTimeframeMomentumOiExpansionConfirmedLS

Outcome Summary

This strategy took the factory's recurring dual-timeframe momentum template on XRPUSDT USD-M perps and swapped the usual volume/taker-flow confirmation for a crypto-native open-interest expansion gate, entering only when 4H and 1D momentum agreed and OI was rising with price, exiting on an ATR chandelier trail. The gate fired often enough to produce a healthy 299-trade sample across 6.7 years, and the implementation behaved as designed — balanced long/short legs, 7h25m average hold, a contained 7.31% max drawdown — but the economics were negative: -6.54% total return, Sharpe -0.206, profit factor 0.827 and an avg trade return of 0.051% versus a 0.15% fee floor. Because both legs lost, there was no payoff asymmetry, and returns were negative in every vol regime and in 3 of 5 calendar years, the analyst judged the failure structural and abandoned it at the pre-optimization backtest-review gate on iteration 1. Optimization, the post-optimization analyst decision, and risk review were never reached.

Hypothesis

A LONG-SHORT, single-instrument, single-venue directional-momentum trend follower on XRPUSDT.BINANCE (USD-M perpetual) that borrows the ONLY consistently-surviving mechanism in this factory (dual-timeframe momentum confluence + a participation-confirmation gate) but replaces the volume/taker-flow confirmation with a crypto-native OPEN-INTEREST signal. Entries fire only when 4H fast momentum agrees with the 1D slow trend AND open interest is EXPANDING with price (oi_z > +thresh). A move on rising OI is new capital committing (continuation-prone); a move on falling OI is short-covering / liquidation unwinding (fragile) — gating on OI expansion filters out the fake breakouts that make raw momentum sub-fee. Flat on TF disagreement or contracting OI. ATR-trailing chandelier exit. Not a COIN-M/HL/Bybit clone (L94/L100), not beta-neutral (L95), not a pairs spread (L96), not a delta-neutral VRP. IMPLEMENTATION: OI read via point-in-time supp_as_of/supp_window incrementally (avoids the taker-flow sandbox_timeout).

Implements the hypothesis literally: 4H primary + 1D trend confirmation + an OPEN-INTEREST EXPANSION gate, ATR-trailing exit, three searched parameters. (1) Dual timeframe without a second data leg: daily closes are aggregated from the 4H bars on UTC day boundaries, so there is no extra-leg alignment barrier and no risk of a missing 1D feed stalling the run; the 1D trend is measured from the live close against the daily close trend_days ago (strictly backward-looking). (2) OI is read point-in-time via a……Show moreShow less

Implements the hypothesis literally: 4H primary + 1D trend confirmation + an OPEN-INTEREST EXPANSION gate, ATR-trailing exit, three searched parameters. (1) Dual timeframe without a second data leg: daily closes are aggregated from the 4H bars on UTC day boundaries, so there is no extra-leg alignment barrier and no risk of a missing 1D feed stalling the run; the 1D trend is measured from the live close against the daily close trend_days ago (strictly backward-looking). (2) OI is read point-in-time via a forward-only pointer over a series parsed ONCE and thinned to <=1 print/hour, so the per-bar cost is O(1) and the Layer-3 wall clock is safe (this is the taker-flow-timeout lesson applied). Source order is `metrics` (XRPUSDT open_interest, 5-minute prints from 2021-12 -> 2026-09, the only feed with multi-year depth; open_interest_hist alone starts 2026-03 and would shrink the usable data span to ~5 months) with the `open_interest` row-list as fallback, which is also what the synthetic verification layer supplies. (3) The gate is a rolling Z-SCORE of OI growth, not an absolute OI-growth constant, so its firing rate is scale- and regime-invariant (lesson L5). (4) Entry frequency: sign agreement of the two legs (~50% of bars) AND oi_z > 0.5 (~30%) gives roughly one candidate bar in six while flat, i.e. hundreds of trades over the history and comfortably >= 1 in the sandbox window (lesson L25/L21). (5) If open interest is unavailable for a bar the strategy stands FLAT and returns 0.0 -- it never silently degrades into a price-only momentum strategy, which would be an unconfirmed and different hypothesis. (6) Venue: BINANCE USD-M is required because the strategy goes SHORT; leverage stays 1.0 because risk-fraction sizing with a 3-ATR stop needs ~0.3x equity of notional, so no margin amplification is claimed or used. (7) Sizing risks a fixed fraction of equity per trade with a gross cap that does not compound with the equity path (lesson L15). Costs: a 3-ATR trailing trend trade on 4H XRP targets multi-percent moves, far above the ~0.10% round-trip taker cost.

Negative expectancy on a reliable 299-trade / 6.7-year sample: profit_factor 0.827, Sharpe -0.206, total_return -6.54%, expectancy -$22.23 per trade, and avg_trade_return_pct 0.051% is roughly one third of the 0.15% BINANCE USD-M round-trip fee floor. Optimization cannot lift an edge that is below trading costs and whose gross profit factor is already under 1 after 18.6% commission drag. The failure is structural rather than regime- or parameter-specific: losses in all three realized-vol terciles and in 3 of 5 full calendar years, both legs sub-breakeven, no payoff asymmetry. The OI-expansion confirmation gate was the whole novelty of the hypothesis, and at full history it does not lift dual-timeframe momentum above costs — it only thins the same null edge to 5.3% exposure, confirming QA's pre-registered edge concern. Not worth 2 hours of optimization.

Implementation

Long-short dual-timeframe momentum trend follower on XRPUSDT.BINANCE (USD-M perpetual, 4-HOUR bars) that takes a directional trend ONLY when open interest is expanding with price. Fast leg: 4H momentum over fast_lookback bars. Slow leg: 1D trend over trend_days daily closes aggregated from the same 4H stream. Both legs are normalised into 4H-ATR volatility units so they are directly comparable, and the composite signal = 0.5*(f_units + s_units) * confirm, where confirm = 0.5*(1+tanh(oi_z)) discounts the trend by……Show moreShow less

Long-short dual-timeframe momentum trend follower on XRPUSDT.BINANCE (USD-M perpetual, 4-HOUR bars) that takes a directional trend ONLY when open interest is expanding with price. Fast leg: 4H momentum over fast_lookback bars. Slow leg: 1D trend over trend_days daily closes aggregated from the same 4H stream. Both legs are normalised into 4H-ATR volatility units so they are directly comparable, and the composite signal = 0.5*(f_units + s_units) * confirm, where confirm = 0.5*(1+tanh(oi_z)) discounts the trend by how little new open interest backs it. An entry needs (a) sign agreement between the 4H and 1D legs, (b) a 1D leg above noise, and (c) oi_z > oi_z_thresh, i.e. open interest expanding relative to its own trailing distribution (new money committing = continuation-prone) rather than contracting (short-covering / liquidation unwind = fragile). Exits: daily-trend regime flip, decisive 4H momentum flip, or an ATR chandelier trailing stop at 3 ATRs from the running extreme; a stop-out blocks re-entry in that direction until fast momentum flips, preventing trailing-stop fee churn. Sizing risks a constant 1.2% of equity per trade (notional = equity * risk_frac / (atr_stop_mult * ATR%)) with a hard 1.0x-equity gross cap; leverage 1.0.

Verification Results

If the base template ignores the override, warmup may be under-gated; otherwise no action needed (the longer warmup is desirable here).

min_bars_required(self) overrides/shadows a framework method name. Static analysis flagged this (base_shadow). The override deliberately lengthens warmup to cover the 1D trend horizon (trend_days*6 bars), which is correct for this strategy, but confirm the base template actually consumes this override for warmup gating rather than relying on its own implementation.

Sandbox smoke test is net-negative: total_return -6.54%, Sharpe -0.21, PF 0.83, and avg_trade_return_pct 0.051% sits below the ~0.10% round-trip taker cost on Binance USD-M (commission already 18.5% of gross, so gross is roughly break-even-to-losing). 299 trades, so frequency is healthy, but the short leg (166 trades, 44.6% win) and long leg (133, 39.8% win) are both sub-breakeven in this unoptimized truncated window. The OI-expansion confirmation is a genuinely new mechanism (not a known-dead family per L81), so this is worth a full backtest + optimizer run — but the analyst should verify at full history whether the OI gate actually lifts the dual-TF momentum edge above costs, since the smoke test does not yet show it clearing fees.

Backtest Review

Sharpe
-0.21
Total return
-6.54%
Max drawdown
7.31%
Trades
299
Win rate
42.5%
Profit factor
0.83

Healthy sample: 299 trades over 2439 days of full XRPUSDT 4H history — the OI gate does fire and the mechanism is genuinely exercised, not frozen.

Trades match the hypothesis: balanced long (133) / short (166) legs, low exposure (5.3%), ATR-trailing exits with 7h25m average hold — the code implements the stated dual-TF + OI-expansion premise.

Modest drawdown (7.3%) and no blowup — this is a clean null, not a broken or unsafe strategy.

Negative expectancy on a reliable full-history sample: total_return -6.54%, Sharpe -0.206, profit_factor 0.827, expectancy -$22.23/trade.

avg_trade_return_pct 0.051% is a third of the 0.15% BINANCE USD-M round-trip fee floor; commissions are 18.6% of gross plus $2.5k impact, so even the gross edge is break-even at best.

Both legs lose: long win rate 39.8%, short 44.6%, with avg_win $250.6 vs avg_loss $223.7 — no payoff asymmetry to offset the sub-50% hit rate.

Negative in ALL THREE vol regimes (calm -6.45%, normal -1.73%, stressed -1.02%) and in 3 of 5 full calendar years — structural, not regime-specific.

tail_ratio 0.58 / omega 0.92: fat left tail, with two outlier days carrying essentially all gross upside.

QA's edge concern is borne out at full history — the OI-expansion gate does not lift dual-TF momentum above costs.

Outcome Summary

An open-interest expansion filter thinned trading down to 5.3% exposure without changing the sign of the underlying dual-timeframe momentum edge — a confirmation gate can only select from an edge that already exists gross of fees, it cannot create one.

The backtest-review gate returned an abandon verdict before optimization: the edge was negative on a reliable full-history sample and sat roughly a third of the round-trip cost floor, failing the Sharpe, profit-factor, total-return and avg-trade-return criteria. Losses in all three realized-vol regimes (calm -6.45%, normal -1.73%, stressed -1.02%) and in 3 of 5 full calendar years marked the failure as structural rather than parameter- or regime-specific, so optimization and all later stages were never run.

A long-short 4H/1D dual-timeframe momentum trend follower on XRPUSDT.BINANCE USD-M perps that only took directional signals when open interest was expanding with price (oi_z > threshold), on the thesis that rising OI marks new money entering a move while falling OI marks fragile unwind-driven moves, with an ATR chandelier trailing exit.

Over 2,439 days of 4H history (14,631 bars) it made 299 trades (133 long / 166 short) for a total return of -6.54%, Sharpe -0.206, profit factor 0.827, win rate 42.5% and expectancy -$22.23 per trade, with a 7.31% max drawdown and 5.3% exposure. Avg trade return was 0.051% of notional against the 0.15% BINANCE USD-M round-trip fee floor, with commissions at 18.6% of gross plus $2,475 of modeled impact.

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