XrpIntradayRangeReversionSymmetricLS15m
Hypotheses
XRP Intraday Range-Reversion, Long-Short with SYMMETRIC Reward/Risk (Single-Instrument XRPUSDT.BINANCE, 15m Bars, Fade Moderate Z-Deviations from Rolling Mean ONLY in Non-Trending Regimes, Balanced Mean-Target Exit vs Equal Z-Stop, Pure OHLCV, 3-Parameter)
Hypotheses
A LONG-SHORT intraday mean-reversion on XRPUSDT.BINANCE (USD-M perp, 15m bars) that deliberately breaks the ONE flaw that killed every recent single-name reversion in this factory (LINK Keltner, ADA RSI2, DOGE VWAP, SOL OI-flush all died with the SAME signature: exit_z≈0.3 tiny take-profit + 2.5-ATR wide stop → avg_loss ≈ 2-2.4x avg_win → 60%+ win rate still nets negative). Here the reward/risk is SYMMETRIC BY CONSTRUCTION: the take-profit is a full reversion to the mean (capturing the entire entry deviation) and the stop is an EQUAL z-extension beyond entry, so avg_win ≈ avg_loss and profitability comes purely from reversion win-rate > 50% — the opposite of the inverted-RR trap. It also copies what the ONE surviving reversion (SOL VWAP 15m) did right: fade MODERATE (not extreme) deviations, fire frequently, stay low-parameter, and it adds the trend-regime gate the losers lacked (fading is DISABLED in strong trends — the LINK/ADA deaths came from fighting directional drift). It fills the under-represented SHORT horizon (8.7% vs >=10%) and long_short direction, uses only pure OHLCV (best-surviving data class), and guards a single position (flat-check before entry) to avoid the DOGE pyramiding-liquidation bug. Not a carry (the portfolio's pending set is carry-heavy), not a pairs cointegration bet (SOL-AVAX just died -82%), not options/liquidations.
Hypotheses
Iteration 2 fixes every mechanism the Layer-4 QA named, with the smallest changes that leave the passing signal logic (rolling z-score + Wilder ADX trend gate) and imports untouched. (1) The QA proved z-space symmetry does not yield PnL symmetry because the mean/std drift; the fix moves the take-profit and stop into PRICE space fixed at entry (target = rolling mean at entry; stop = equal price distance stop_mult x deviation), so avg_win and avg_loss are equal price moves by construction and the edge is purely reversion win-rate > 50%. (2) The QA showed wins landed in calm (tiny std -> tiny capture); a minimum-absolute-deviation gate (dev >= min_dev_frac x price, ~0.4%) now only fires when the reversion target is a real, fee-clearing move (> the ~0.10% futures round-trip), removing the calm micro-fades that could never balance vol-expansion losses. (3) The liquidation came from dividing risk by the tiny ranging price std -> notional exploded to ~200% of equity; sizing is now risk-based off the FIXED price stop distance and HARD-CAPPED at gross_frac x equity (0.40), so a single position is always a small fraction of the book and cannot liquidate, and there is no inverse-std term to explode. (4) The iter-1 'stop' was a close-only z-check that gaps blew through and that immediately re-entered a deeper fade; the stop/target are now checked against the bar HIGH/LOW (reacting on intrabar touch) and a post-stop cooldown blocks re-entry for several bars, ending the knife-catching. The trend-regime gate that the dead reversions lacked is retained (fade only when ADX < adx_max). It remains a pure-OHLCV, long-short, single-position 15m reversion filling the short-horizon and long_short dimensions, with only three core parameters; the structural windows and risk caps are fixed conventions. No banned imports were added and the class/method interface is unchanged, so Layers 1-3 remain green while the Layer-4 defects are corrected.
Hypotheses
Terminal, repeated failure: the account liquidated again (liquidated=true, 2020-11-22, total_return -100%, max_drawdown 100%), dying ~10 months into the sample in the Nov-2020 XRP pump/dump (-102.7% single day) so the remaining 5+ years never traded. Both load-bearing design claims are falsified by the result: (1) 'symmetric reward/risk by construction' is false — avg_loss $145 is ~1.8x avg_win $81, the exact inverted-RR signature that killed the LINK/ADA/DOGE/SOL reversion family, because vol-expansion gaps blow through the fixed-price stop; (2) 'hard gross_frac cap makes liquidation impossible' is false — it liquidated anyway, so the sizing guard does not bound tail risk. Combined with profit_factor 0.561, negative expectancy (-$31.73/trade), Sharpe -1.20, and this being the SECOND consecutive -100% liquidation on the idea, there is no parameter set for entry_z/adx_max/stop_mult that rescues a mechanism which zeroes the account and carries negative inverted-RR expectancy. This is the zero-survivor single-name intraday reversion class. Abandon.
Implementation
Long-short intraday mean-reversion on XRPUSDT.BINANCE (USD-M perp, 15m, pure OHLCV). Fades moderate z-deviations of price from a 48-bar rolling mean ONLY in non-trending regimes (ADX < adx_max) and only when the entry deviation is at least min_dev_frac of price (a meaningful, fee-clearing target). Reward/risk is symmetric in PRICE: the take-profit is a full reversion to the rolling mean captured at entry, and the stop is an equal price distance (stop_mult x the entry deviation) on the opposite side of entry, both fixed at entry and checked against the bar high/low (intrabar). Sizing is risk-based off that fixed price stop and hard-capped at gross_frac (40%) of equity, so notional cannot explode and a single position cannot liquidate. After a stop-out the strategy waits cooldown_bars before fading again, so it never re-enters a deeper same-direction fade into a falling knife. Single position (base enters only when flat). Three core parameters: entry_z, adx_max, stop_mult.
Verification Results
Verification failed (Layer 4 — QA review):
- The hypothesis's central claim — reward/risk symmetric BY CONSTRUCTION so avg_win ≈ avg_loss — is FALSIFIED by the sandbox: avg_loss (710.6) = 2.56× avg_win (278.0), the exact inverted RR that killed the prior reversions, plus total_return -100% / liquidated. Z-space symmetry does not produce PnL symmetry because TP (z≥0) and stop (z≤ez·(1+stop_mult)) are measured against a rolling mean/std that drift; wins land in calm (small std → small capture) and losses in vol-expansion (larger realized move). The core mechanic is not implemented.
- Risk sizing normalizes by the 48-bar rolling PRICE std, and the strategy fires only in low-ADX ranging regimes where std is small → stop_dist_price small → notional explodes → clamped to 100% of equity. The book holds max size during calm then gets run over on the break. avg_position_pct 201.6% exceeds the max_gross=1.0 cap and the account liquidated — impossible for a truly 1×-capped single position.
- The 'stop' is a bar-close z-check, not a protective order. On 15m bars price gaps past the z-stop intrabar on a max-size position → loss many multiples of risk_frac (largest_loss -5077, kurtosis 307, tail_ratio 0.23). This is the liquidation mechanism.
- A stop-out at z≤ez·(1+stop_mult) is also ≤ -entry_z, so the next bar re-enters an even deeper same-direction fade — fading a falling knife until lagging ADX catches up, compounding drawdown.
- Pure-OHLCV single-name z-fade — the zero-survivor class (L7) — reproducing the same inverted-RR death signature it claimed to break.
Verification Results
Rest a LIMIT at the take-profit and a STOP at the stop (bracket) so fills occur AT the levels; market-on-touch cannot deliver by-construction symmetry.
Verification Results
Symmetric-RR promise only partly realized: avg_loss 313.8 = 1.53× avg_win 204.7 (down from iter-1's 2.56x). The PRICE-space construction is correct (I verified target=mean, stop=equal distance), so this is not a construction bug — it's execution: should_exit triggers on intrabar high/low touch but fills a market order at the bar CLOSE, so adverse bars extend losses beyond the stop while winners give back below the target. XRP's bar structure makes down-moves fill worse.
Verification Results
Analyst: ABANDON on negative well-sampled expectancy rather than optimize.
Verification Results
Edge conclusively negative and well-sampled: win_rate 0.496 is BELOW the >50% the thesis requires, expectancy negative — total_return -73.4%, PF 0.64, avg_trade_return_pct 0.013% (below the 0.15% floor) over 1293 trades. The win-rate pillar of the thesis fails; tuning cannot manufacture a >50% reversion hit-rate.
Verification Results
Weigh whether further reworks of a zero-survivor class are worth the iteration budget.
Verification Results
Pure-OHLCV single-name z-reversion — the zero-survivor class (L7), second rework; reversion edge still absent for this instrument/timeframe.
Verification Results
No change required; noted so it isn't misread as a cap violation.
Verification Results
avg_position_pct 59.6% exceeds the 40% gross cap via equity-drawdown inflation, not a cap-logic error (the min(notional, equity·gross_frac) cap is coded correctly and binds; no liquidation), confirming the iter-1 sizing fix holds.
Backtest Review
Large signal sample and a genuine attempt to address a known failure mode (regime gate + cooldown + fixed-price targets)
Backtest Review
Account LIQUIDATED on 2020-11-22 (total_return -100%, max_drawdown 100%); the backtest died ~10 months in and the remaining 5+ years never traded
Backtest Review
The 'symmetric by construction' claim failed: avg_loss $145 is ~1.8x avg_win $81 — the same inverted reward/risk that killed the LINK/ADA/DOGE/SOL reversion siblings
Backtest Review
The 'hard gross_frac cap = no liquidation' claim failed: it liquidated anyway (short leg run over in the Nov-2020 XRP spike); skew -46.6, kurtosis 2234 show a single catastrophic tail
Backtest Review
Negative edge: profit_factor 0.561, avg_trade_return_pct -0.0065%, expectancy -$31.73/trade, Sharpe -1.20 (CI entirely negative)
Backtest Review
Second consecutive -100% liquidation on this idea (iter-1 also liquidated); single-name intraday reversion is the zero-survivor class
Outcome Summary
XrpIntradayRangeReversionSymmetricLS15m was iteration 2 of an idea explicitly designed to break the inverted reward/risk that had killed its LINK/ADA/DOGE/SOL reversion siblings, using price-fixed symmetric targets, a trend-regime gate, cooldowns, and a hard sizing cap. Instead it reproduced the exact failure: the account liquidated on 2020-11-22 during a Nov-2020 XRP pump/dump (-100% total return, 100% max drawdown), avg_loss ran ~1.8x avg_win, and the 'liquidation-impossible' cap failed as the short leg was overrun. With a profit factor of 0.561, negative expectancy, Sharpe -1.20, and this being the second consecutive -100% liquidation on the concept, the analyst abandoned it at the backtest-review gate — judging single-name intraday reversion a zero-survivor class no parameter tuning could rescue.
Outcome Summary
Fixing take-profit and stop at equal price distances does not guarantee symmetric PnL when volatility-expansion gaps blow through the stop, and a notional cap alone cannot bound tail risk on a single-name intraday reversion — a mechanism class that has now liquidated twice with zero survivors.
Outcome Summary
The analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate because the account liquidated ~10 months into the sample during the Nov-2020 XRP spike (leaving 5+ years untraded), falsifying both load-bearing design claims: reward/risk was not symmetric (inverted ~1.8x loss/win) and the hard gross_frac cap did not prevent liquidation.
Outcome Summary
A long-short intraday mean-reversion on XRPUSDT.BINANCE (15m perp bars) that faded moderate z-deviations from a rolling mean only in non-trending regimes (ADX-gated), aiming for symmetric reward/risk by fixing the take-profit at the rolling mean and placing an equal price-distance stop, with bounded risk-based sizing hard-capped at 40% of equity to prevent liquidation.
Outcome Summary
Over 2020-01 to its early death the strategy took 8,689 trades (4,141 long / 4,548 short) but was a decisive loser: the account was fully liquidated on 2020-11-22 with total_return -100%, max_drawdown 100%, profit_factor 0.561, expectancy -$31.73/trade, avg_trade_return_pct -0.0065%, and Sharpe -1.20 (CI entirely negative). Its core symmetry claim failed — avg_loss $145 ran ~1.8x avg_win $81 — with skew -46.6 and kurtosis 2234 marking a single catastrophic tail.
Backtest and paper results are hypothetical. Trading involves risk of loss.