The strategy buys when RSI(16) is below 30 and the close is below the lower Bollinger Band (20 periods, 2 standard deviations). It sells the long when RSI(16) rises above 70.
Best run of 41. DAX 40, 30 min, spread 3, from run sweeps:2026-10-04-DAX40-30m-opt.tsv:7.
| Period | Up to 2026-10-04 |
| Instrument | DAX 40, 30 minutes |
| Spread | 3 points |
| Starting capital | 1,000,000 |
| Costs | Spread only. Commissions and overnight financing are not included. |
| Bars | Up to 200,000 bars, fewer where the instrument has less history |
| Last tested | 2026-10-04 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| DAX 40Best run | 30 min | n/a | 635 | 64.72 | 12,007 EUR | -5,925 |
| USD/JPY | 1 hour | n/a | 432 | 67.13 | 284,970 USD | -241,730 |
| Dow Jones | Daily | n/a | 37 | 78.38 | 38,445 EUR | -8,988 |
| EUR/USD | 10 min | n/a | 550 | 62.00 | 36,259 USD | -12,392 |
| Nikkei 225 | 4 hours | n/a | 78 | 67.95 | 35,005 USD | -9,360 |
| Nikkei 225 | 30 min | n/a | 596 | 63.93 | 28,756 USD | -9,277 |
| Nikkei 225 | 15 min | n/a | 592 | 64.70 | 25,702 USD | -16,535 |
| Nikkei 225 | 1 hour | n/a | 304 | 67.76 | 22,055 USD | -9,889 |
| DAX 40 | Daily | n/a | 44 | 65.91 | 19,611 EUR | -5,087 |
| Nikkei 225 | 10 min | n/a | 609 | 66.34 | 18,933 USD | -12,215 |
| Dow Jones | 30 min | n/a | 273 | 69.60 | 18,750 EUR | -8,925 |
| Dow Jones | 1 hour | n/a | 146 | 73.97 | 18,237 EUR | -9,943 |
| Dow Jones | 15 min | n/a | 510 | 65.69 | 16,866 EUR | -9,757 |
| Nasdaq 100 | 4 hours | n/a | 119 | 80.67 | 16,298 EUR | -4,236 |
| Silver | Daily | n/a | 36 | 72.22 | 16,074 USD | -7,304 |
| Nikkei 225 | 5 min | n/a | 587 | 65.59 | 15,616 USD | -10,493 |
| DAX 40 | 4 hours | n/a | 109 | 77.06 | 13,793 EUR | -5,393 |
| Dow Jones | 4 hours | n/a | 36 | 75.00 | 13,396 EUR | -10,393 |
| Dow Jones | 10 min | n/a | 600 | 65.00 | 12,933 EUR | -5,850 |
| Nasdaq 100 | Daily | n/a | 32 | 81.25 | 11,413 EUR | -4,023 |
| Nasdaq 100 | 15 min | n/a | 627 | 65.55 | 9,772 EUR | -5,296 |
| Nasdaq 100 | 1 hour | n/a | 424 | 69.81 | 9,645 EUR | -5,979 |
| EUR/USD | 3 min | n/a | 496 | 60.48 | 5,742 USD | -5,192 |
| Nasdaq 100 | 10 min | n/a | 617 | 63.86 | 5,555 EUR | -4,290 |
| Dow Jones | 1 min | n/a | 470 | 65.32 | 5,259 EUR | -3,975 |
| FTSE 100 | 4 hours | n/a | 86 | 75.58 | 4,826 EUR | -3,210 |
| S&P 500 | 4 hours | n/a | 104 | 77.88 | 4,784 EUR | -1,298 |
| FTSE 100 | 1 hour | n/a | 347 | 65.71 | 4,735 EUR | -2,665 |
| FTSE 100 | Daily | n/a | 26 | 84.62 | 4,667 EUR | -2,690 |
| Dow Jones | 2 min | n/a | 508 | 63.78 | 3,995 EUR | -3,483 |
| DAX 40 | 10 min | n/a | 578 | 65.57 | 3,843 EUR | -3,318 |
| FTSE 100 | 10 min | n/a | 554 | 68.41 | 3,309 EUR | -1,057 |
| Brent Crude | 5 min | n/a | 561 | 66.49 | 2,827 EUR | -2,372 |
| FTSE 100 | 5 min | n/a | 577 | 67.24 | 2,606 EUR | -970 |
| S&P 500 | 1 hour | n/a | 417 | 70.74 | 2,520 EUR | -1,351 |
| S&P 500 | 30 min | n/a | 587 | 67.80 | 2,129 EUR | -1,442 |
| S&P 500 | 15 min | n/a | 598 | 65.89 | 1,783 EUR | -1,038 |
| FTSE 100 | 3 min | n/a | 553 | 67.27 | 1,634 EUR | -1,303 |
| S&P 500 | Daily | n/a | 31 | 77.42 | 1,474 EUR | -1,071 |
| DAX 40 | 1 min | n/a | 488 | 64.14 | 1,444 EUR | -1,144 |
| S&P 500 | 1 min | n/a | 426 | 67.37 | 655 EUR | -304 |
Charts
Top 10 of 41 runs. The full list is in the table above.
The code
// ============================================================== // Bollinger Band RSI Oversold Long // ProRealAlgos Strategy Library | prorealalgos.com // Type: Mean reversion // Direction: Long only // Timeframe tested: 30 minutes // ============================================================== DEFPARAM CumulateOrders = false mid = Average[20](close) sd = STD[20](close) lower = mid - 2 * sd myRsi = RSI[16](close)
9 more lines: the entry and exit rules.
Setup
Questions
Yes. The code is ProBuilder and runs as an automated ProOrder system. Backtest it on your own account with your own spread and position size before trading it live.
It was tested on 41 market and timeframe combinations. The best run by trade count was DAX 40, 30 minutes, with 635 trades.
The best run had a maximum drawdown of 5,924 EUR at the tested position size, against a net result of 12,007 EUR.
It only takes long trades.
Related
The ProRealAlgos community gets the full rules, the complete code and the automated portfolio.