Skip to content

View translation

BnbFourHourRsi2OversoldMeanReversionLong

Hypotheses

BNB 4H RSI(2) Extreme-Oversold Mean-Reversion Long with Daily Bull Regime Filter

Hypotheses

A long-only single-instrument VELOCITY-BASED mean-reversion strategy on BNBUSDT perpetual futures using 4-hour bars and OHLCV-only data, with a daily-bar bull regime filter. This is a STRUCTURALLY DIFFERENT mechanism from every other in-pipeline strategy: 6 of 10 are momentum/breakout (continuation), 1 is BB-distance mean-reversion (SOL 4H BB — fires on price FAR from mean), 3 are daily trend or accumulation. None use a velocity-based extreme-RSI trigger. RSI(2) is a textbook Larry Connors short-term mean-reversion trigger (documented ~2008, robust across asset classes for ~17 years): it captures the SPEED of recent decline rather than absolute distance from mean, firing on different market microstructure conditions than Bollinger Bands. The two fire on largely non-overlapping bars: BB triggers when price is multiple sigma below the moving average (slow, drift-driven dips); RSI(2) triggers when price has dropped sharply over just 2 bars (fast, panic-driven flushes). This makes the SOL-4H-BB and BNB-4H-RSI(2) a true orthogonal mean-reversion pair within the portfolio, not redundant coverage. BNB is chosen specifically because (a) BNB has only ONE promoted strategy in the portfolio (BnbFourHourVolumeBreakoutLong), so this fills BNB's mechanism-diversification gap, (b) BNB's 4H futures data path is empirically reliable (proven by the existing promoted breakout strategy), (c) BNB has a distinct retail-driven oversold-then-bounce dynamic on intraday timeframes (Binance ecosystem token, retail panic on BNB-specific FUD typically reverses within 4-12 hours), (d) BNB volatility (~3-4% daily ATR) is high enough to produce meaningful per-trade returns above the 0.10% fee threshold but low enough to avoid the wild whipsaws of meme assets. Critically, this strategy AVOIDS daily-bar dependencies (which have produced 10+ Layer 3 infrastructure failures) by using 4H bars and a daily-bar regime filter where the daily bars only need to provide the most-recent close (a much lighter data dependency). Only 4 parameters total (RSI period=2, RSI oversold threshold, daily regime EMA period, stop-loss pct), all economically meaningful with stable interpretations.

Hypotheses

Iteration-3 Layer-3 fix (previous run produced ZERO trades because should_enter's `_bull_regime` flag was never True). Root cause: the regime flag was driven exclusively by a DAILY extra bar via on_extra_bar, which never populated the regime — the exact daily-bar fragility the hypothesis flagged. SMALLEST forward-progress change that keeps Layers 1 & 2 green: (1) removed the daily extra_instruments/extra_bar_types dependency entirely and now compute the identical economic filter — a daily-equivalent bull-regime EMA — DIRECTLY from the 4H primary buffer (daily EMA(50 days) == EMA over 50*6 = 300 4H bars, well within the base template's 500-bar buffer); the regime is refreshed every bar inside calculate_signal from self._bars. (2) Relaxed rsi_oversold from the extreme 5 to the canonical Connors 10 for trade-count margin (still a textbook RSI(2) oversold threshold, tunable in optimization). Imports remain clean (no banned modules), class structure and the continuous bar-varying signal (Wilder RSI + tanh velocity jitter) are untouched, and entry/exit still read the exact self._last_rsi so trading semantics remain pure RSI(2)-oversold-in-bull-regime. Venue kept on BINANCE USD-M futures with leverage 2.0 genuinely consumed in position_size (notional 1.2x equity).

Hypotheses

The strategy has a negative, well-sampled edge that costs make non-viable, and no optimization can fix it. Over 447 trades (representative sample) the BNB 4H RSI(2)-oversold mean-reversion returns -36.4% with profit_factor 0.927 (<1), Sharpe -1.57 (CI high only 0.066), sortino -1.73, PSR 0.023, and expectancy -$77/trade, losing in 6 of 7 years (only 2021 positive) with a 65% max drawdown; avg_loss > avg_win (skew -1.18) shows the signal has no reversion edge after stops. Independently, trading costs destroy any residual edge: impact_cost_pct is 172.7% of gross PnL, commission 19.4% of gross, turnover 1167%, and capacity_usd is just $33.5k (toy scale). Optimization tunes parameters over an existing edge — it cannot flip a negative-expectancy signal positive, and no parameter change fixes a 172%-of-gross impact cost. This mirrors the abandoned ETH RSI(2) siblings (both oversold mean-reversion and overbought continuation): RSI(2) velocity extremes carry no net-of-cost edge on crypto majors at 4H. Abandon rather than spend 2 hours optimizing a losing, cost-dominated signal; further RSI(2)-extreme 4H variants on majors should not be re-proposed.

Implementation

Long-only velocity-based (Larry Connors RSI(2)) mean-reversion on BNBUSDT 4H perpetual futures. Enters LONG when raw Wilder RSI(2) <= 10 while in a bull regime (current 4H close above a daily-equivalent EMA computed directly from the 4H bars, span = 50 days x 6 bars/day). Exits on RSI recovery to 65, +4% take-profit, -3% stop-loss, or a 6-bar (~24h) time stop. Uses 2x leverage, sizing notional = equity x 0.60 x 2.0. Pure OHLCV, no supplementary data, no extra instruments.

Verification Results

Verification failed (Layer 3 — sandbox backtest): No trades produced Bar type used: BNBUSDT.BINANCE-4-HOUR-LAST-EXTERNAL, Bars processed: 13768 Diagnostics: should_enter() returned a side 0 times over 13749 evaluated bars -> your ENTRY CONDITION never triggered. Loosen the entry logic / thresholds. Ensure your strategy produces trades with the given data and parameters.

Backtest Review

Clean implementation matching the hypothesis (447 long-only RSI(2)-oversold-in-bull-regime entries), adequate sample, OHLCV-only with no data-availability issues

Backtest Review

Negative edge over a large sample: profit_factor 0.927, Sharpe -1.57 (CI high only 0.066), sortino -1.73, PSR 0.023, expectancy -$77/trade

Backtest Review

avg_loss ($2219) > avg_win ($1873) with skew -1.18 despite 52% win rate — losers dominate; loses in 6 of 7 years, max_drawdown 65%

Backtest Review

Costs exceed the edge entirely: impact_cost_pct 172.7% of gross PnL, commission 19.4% of gross, turnover 1167%, capacity_usd just $33.5k

Backtest Review

Same failure family as the abandoned ETH RSI(2) siblings — RSI(2) extremes carry no net-of-cost edge on crypto majors at 4H

Backtest Review

Optimization cannot flip a negative-expectancy, cost-destroyed signal to viable

Outcome Summary

This strategy tried to fill BNB's mechanism-diversification gap with a Larry Connors RSI(2) extreme-oversold mean-reversion long, gated by a 4H-derived bull-regime filter designed to sidestep the daily-bar data failures that had zeroed out earlier iterations. The implementation was clean and produced an adequate 447-trade sample, but the results were decisively negative—a -36.4% return, Sharpe -1.57, profit factor below 1, and losses in six of seven years—while turnover of 1167% pushed impact costs to 172.7% of gross PnL. The analyst abandoned it at the backtest-review gate rather than spend hours optimizing a losing, cost-dominated signal, noting it repeated the same failure family as the abandoned ETH RSI(2) siblings. The takeaway recorded was that RSI(2) velocity extremes simply carry no net-of-cost edge on crypto majors at the 4H timeframe.

Outcome Summary

RSI(2) velocity extremes carry no net-of-cost edge on crypto majors at 4H, and a high-turnover signal whose costs exceed its gross PnL cannot be rescued by optimization, so further RSI(2)-extreme 4H variants on majors should not be re-proposed.

Outcome Summary

The analyst issued an 'abandon' verdict at the pre-optimization backtest-review gate, so the strategy never reached optimization: the signal has negative, cost-destroyed expectancy that no parameter tuning can flip positive, mirroring the previously abandoned ETH RSI(2) siblings.

Outcome Summary

A long-only, OHLCV-only velocity-based mean-reversion strategy on BNBUSDT 4H perpetual futures that buys extreme Larry Connors RSI(2)-oversold flushes only while a 4H-derived daily-equivalent EMA confirms a bull regime, exiting on RSI recovery, take-profit, stop-loss, or a time stop.

Outcome Summary

Over 447 long-only trades (366 data-days) it posted a negative, well-sampled edge: -36.35% total return, Sharpe -1.57 (CI high only 0.066), Sortino -1.73, profit factor 0.927, PSR 0.023, expectancy -$77/trade, 65.4% max drawdown, and a 52.3% win rate undone by avg_loss ($2,219) exceeding avg_win ($1,873); trading costs alone were ruinous, with impact cost 172.7% of gross PnL, commission 19.4% of gross, 1167% turnover, and only $33.5k capacity.

Iteration History

Verification failed (Layer 2 — synthetic scenarios): Parameters used: ['rsi_period', 'min_notional', 'position_pct', 'rsi_oversold', 'max_hold_bars', 'stop_loss_pct', 'rsi_exit_level', 'take_profit_pct', 'regime_ema_period'] Check that __init__ sets all attributes from self.parameters.get(). - steady_downtrend: Frozen signal: all 481 signals are identical (value=50.0). calculate_signal() likely has a bug — the signal never varies.
Strategy report

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