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).
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
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.