Skip to content

View original

XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H

Hypotheses

XRP Premium Index Negative Extension Basis Mean Reversion Long (4H)

Hypotheses

A long-only single-instrument BASIS MEAN-REVERSION strategy on XRPUSDT perpetual futures (Binance USD-M) triggered exclusively by extreme NEGATIVE premium index readings (perp trading at a discount to the underlying spot/index price). The strategy uses the supplementary `premium_index` data series — COMPLETELY UNUSED by any in-pipeline strategy (current pipeline covers funding_rates, liquidations, taker_ratio, open_interest, and OHLCV — but premium_index is fundamentally different: it's the high-frequency basis between perp mark and index, whereas funding is the once-per-8h settlement derived from it). Uses a NEW SYMBOL (XRP — not BTC/ETH/SOL/BNB/LINK/DOGE/AVAX already in portfolio). Designed to be MAXIMALLY SIMPLE with just 2 decision parameters (premium threshold, exit time stop) — direct response to feedback that overfitting has been recurring across the 10 failed daily pattern strategies.

Hypotheses

Iteration 2 fix for the Layer-2 synthetic failure: `_to_ns()` was a `@staticmethod` (signature `(ts)`) but the verifier's strategy proxy invokes it bound as `self._to_ns(ts)`, passing (self, ts) and raising 'takes 1 positional argument but 2 were given'. Converted `_to_ns` to a regular instance method (`def _to_ns(self, ts)`), which matches both existing call sites (`self._to_ns(...)`) and eliminates the rebinding error. No other logic changed — imports, signal computation (continuous premium/basis), entry/exit thresholds, and capital-relative sizing all remain intact so Layer-1 static analysis stays green and the pure-basis edge mechanism is preserved.

Hypotheses

No edge and mechanism mismatch. Base backtest loses money (profit_factor 0.998, expectancy -1.92%/trade, total_return -3.03%, alpha -0.88%, Sharpe 0.083 with CI through 0) across a healthy 159-trade sample — this is a coin flip, not a signal. Optimizing two parameters cannot create an edge from a negative-expectancy coin flip. More fundamentally, the strategy is mislabeled: it claims BASIS mean-reversion but holds an unhedged long-only perp, so it takes naked directional XRP exposure (42% drawdown) rather than capturing the mark-index basis, which would require hedging the underlying. Not worth 2 hours of optimization.

Implementation

Long-only 4H basis mean-reversion on XRPUSDT perpetual futures (Binance USD-M). Reads the supplementary premium_index series (high-frequency mark-vs-index basis). Enters LONG when the perp trades at a steep discount to index (premium <= -premium_threshold), betting the basis reverts to zero. Exits when basis reverts to >= exit_revert, on a time stop, or on a catastrophic hard stop. Two decision parameters only (premium_threshold, time_stop_bars).

Verification Results

Verification failed (Layer 2 — synthetic scenarios): Parameters used: ['pos_frac', 'stop_pct', 'exit_revert', 'min_notional', 'size_precision', 'time_stop_bars', 'premium_threshold'] Check that __init__ sets all attributes from self.parameters.get(). - steady_uptrend: TypeError: XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H._to_ns() takes 1 positional argument but 2 were given (bar timestamp: 1735689840000) - steady_downtrend: TypeError: XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H._to_ns() takes 1 positional argument but 2 were given (bar timestamp: 1735689840000) - flat_ranging: TypeError: XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H._to_ns() takes 1 positional argument but 2 were given (bar timestamp: 1735689840000) - volatility_spike: TypeError: XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H._to_ns() takes 1 positional argument but 2 were given (bar timestamp: 1735689840000) - zero_volume: TypeError: XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H._to_ns() takes 1 positional argument but 2 were given (bar timestamp: 1735689840000) - price_gap: TypeError: XrpPremiumIndexNegativeExtensionBasisMeanReversionLong4H._to_ns() takes 1 positional argument but 2 were given (bar timestamp: 1735689840000)

Backtest Review

Genuinely novel data source (premium_index) unused elsewhere in the pipeline

Backtest Review

Maximally simple 2-parameter design (addresses prior overfitting feedback)

Backtest Review

Healthy, optimizable trade sample (159 trades, no degenerate/zero-trade windows)

Backtest Review

No edge in base: profit_factor 0.998, expectancy -1.92%/trade, total_return -3.03%, negative alpha and information_ratio

Backtest Review

Sharpe 0.083 with CI straddling 0 (-1.62 to 1.89) — statistically indistinguishable from no skill

Backtest Review

Mechanism mismatch: hypothesis claims BASIS mean-reversion but the code takes an UNHEDGED long-only perp position, so it captures directional XRP price risk (42% max drawdown), not the basis. A basis edge requires hedging the underlying.

Backtest Review

51% win rate is a coin flip on price direction; the transient premium discount reverts in hours but the position holds days catching noise

Backtest Review

Capacity only $89K with impact_cost_pct 105.8% — negative edge even at small size

Outcome Summary

This strategy tested a novel, deliberately simple thesis: go long XRPUSDT perpetual futures whenever the premium index showed a steep discount to the index, expecting the basis to revert. Despite a healthy 159-trade sample and a genuinely fresh data source, the base backtest showed no edge—profit factor 0.998, expectancy -1.92% per trade, -3.03% total return, and a Sharpe of 0.083 whose confidence interval crossed zero. The analyst also flagged a fundamental mechanism mismatch: the code holds an unhedged long-only position, taking naked directional XRP exposure (42% drawdown) rather than capturing the mark-index basis it claimed to trade. It was abandoned at the backtest-review gate after 2 iterations, never reaching optimization, analysis, or risk review.

Outcome Summary

A true basis mean-reversion edge requires hedging the underlying; an unhedged long-only perp position captures directional price risk instead, and optimizing parameters cannot manufacture an edge from a negative-expectancy sample.

Outcome Summary

The analyst issued an 'abandon' verdict at the pre-optimization backtest review, citing no edge (negative-expectancy coin flip failing all four criteria) and a mechanism mismatch—an unhedged long-only perp takes naked directional XRP risk rather than capturing the basis it claims to trade.

Outcome Summary

A long-only, 2-parameter XRPUSDT 4H strategy that bought the perp on extreme negative premium-index (basis discount) readings, betting the mark-to-index discount would revert toward zero using a data source unused elsewhere in the pipeline.

Outcome Summary

Over 287 days of data it took 159 long trades with a 50.9% win rate but lost money: total return -3.03%, profit factor 0.998, avg trade return -1.92%, and Sharpe 0.083 with a confidence interval (-1.62 to 1.89) straddling zero, alongside a 42.1% max drawdown.
Strategy report

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