RSI Divergence: does it work?
None of these versions passed. Sample: Bullish RSI divergence, daily, 40 US stocks: 322 completed trades over 2016-09-15 to 2025-03-14 (8.5 years); Bullish RSI divergence, hourly, 8 crypto pairs: 3,602 completed trades over 2017-08-17 to 2025-03-14 (7.6 years).
Bullish RSI divergence is when price makes a lower low but the RSI makes a higher low, read as fading selling pressure ahead of a reversal.
The rule we tested. Two versions of bullish divergence: daily bars on 40 US stocks (RSI(14) under 40, 10-day hold), and hourly bars on 8 crypto pairs.
- Bullish RSI divergence, daily, 40 US stocks (40 US stocks (AAPL, NVDA, AMZN, GOOGL, …)), 2016-09-15 to 2025-03-14, costs 0.05% per side: −16.7 pts/yr vs the benchmark across 322 completed trades, unadjusted p=1.000, BH-adjusted q=1.000: did not beat the benchmark.
- Bullish RSI divergence, hourly, 8 crypto pairs (8 crypto pairs (BTCUSDT, BNBUSDT, XRPUSDT, ADAUSDT, …)), 2017-08-17 to 2025-03-14, costs 0.10% to 0.12% per side: −98.1 pts/yr vs the benchmark across 3,602 completed trades, unadjusted p=1.000, BH-adjusted q=1.000: did not beat the benchmark.
See a full worked example of one of these reads (free, no account)
Receipt: parameters, data, window and result file
Bullish RSI divergence, daily, 40 US stocks
- Run id
- t100-rsidiv-s, run 2026-10-06
- Frozen parameters
- timeframe 1d; L=5, span=40, maxRsi=40, hold=10
- Data source
- vendor not recorded in the result file; data fingerprint sha256 7b5251fa65d8de0e...
- Instruments and coverage
- 40 assets: AAPL, NVDA, AMZN, GOOGL, META, TSLA, JPM, V, UNH, XOM, JNJ, COST and 28 more (full list in the result file). 9 corrupt vendor bar-day(s) across 9 assets were dropped, never repaired
- Date window
- 2016-09-15 to 2025-03-14 (discovery cutoff 2025-03-15)
- Sample
- 322 completed trades over 2016-09-15 to 2025-03-14 (8.5 years)
- Cost rule
- 0.05% per side; charged on every change in position/weight; benchmark pays none; no funding/borrow on shorts
- Fill rule
- not recorded
- Benchmark
- equal-weight long of the same assets, rebalanced daily across assets trading that day (no costs)
- Rule source (public)
- not published yet
- Run record (public)
- research/hunt2/ledger.jsonl, line with id t100-rsidiv-s
- Full result file
- not published yet
Bullish RSI divergence, hourly, 8 crypto pairs
- Run id
- s29-h-rsi-divergence, run 2026-10-06
- Frozen parameters
- timeframe 1h; rsi=14, from=48, to=13, gap=5, rsiMax=40, holdBars=12
- Data source
- vendor not recorded in the result file; data fingerprint sha256 d482077d31ca2631...
- Instruments and coverage
- 8 assets: BTCUSDT, BNBUSDT, XRPUSDT, ADAUSDT, DOGEUSDT, LTCUSDT, LINKUSDT, TRXUSDT
- Date window
- 2017-08-17 to 2025-03-14 (discovery cutoff 2025-03-15)
- Sample
- 3,602 completed trades over 2017-08-17 to 2025-03-14 (7.6 years)
- Cost rule
- 0.10% to 0.12% per side; charged on every change in position/weight; benchmark pays none; no funding/borrow on shorts
- Fill rule
- not recorded
- Benchmark
- equal-weight long of the same assets, rebalanced daily across assets trading that day (no costs)
- Rule source (public)
- research/hunt2/strategies/s29-h-rsi-divergence.mjs
- Run record (public)
- research/hunt2/ledger.jsonl, line with id s29-h-rsi-divergence
- Full result file
- not published yet
None of these versions passed. US stocks −16.7 pts/yr vs the benchmark (unadjusted p=1.000, BH-adjusted q=1.000); crypto pairs −98.1 pts/yr vs the benchmark (unadjusted p=1.000, BH-adjusted q=1.000). None cleared our Benjamini-Hochberg q<0.10 bar once counted alongside every other rule we tested. That covers the versions, costs and benchmark described here, not every version of the rule. These are historical diagnostics, not validation under Testing Standard v2: the backtest harness predates that standard and has not been re-run to meet it.
Failed: only the tested versions above. Not tested: Bearish divergence; hidden divergence; MACD divergence; other swing definitions. A result for the tested version says nothing about these.
This is one line in a bigger check. The research desk has run 694 strategies, most against an equal-weight benchmark of the same assets rebalanced daily that pays no costs (the strategies pay theirs). After correcting for how many we tried (Benjamini-Hochberg, 777 tests), 0 passed. That does not prove no strategy works, and it says nothing about versions we did not test. These are historical diagnostics, not validation under Testing Standard v2: the backtest harness predates that standard and has not been re-run to meet it.
General information only. It doesn't consider your objectives, finances or needs. Tickfloor holds no financial services licence and never places trades.
Short answers: the verdict and the rule, as questions
Does RSI divergence work?
None of these versions passed. US stocks −16.7 pts/yr vs the benchmark (unadjusted p=1.000, BH-adjusted q=1.000); crypto pairs −98.1 pts/yr vs the benchmark (unadjusted p=1.000, BH-adjusted q=1.000). None cleared our Benjamini-Hochberg q<0.10 bar once counted alongside every other rule we tested. That covers the versions, costs and benchmark described here, not every version of the rule. These are historical diagnostics, not validation under Testing Standard v2: the backtest harness predates that standard and has not been re-run to meet it.
What exact rule did Tickfloor test?
Two versions of bullish divergence: daily bars on 40 US stocks (RSI(14) under 40, 10-day hold), and hourly bars on 8 crypto pairs.
Is this financial advice?
No. This measures a publicly claimed strategy rule, not a recommendation. General information only, not personal advice.
See the full numbers on the Top 100 retail strategies, Mean reversion family pages, or the full method and every result.