The strategy buys when the close moves up out of the bottom zone, at or below the lower band. It sells the long when the close moves out of the top zone, at or above the upper band.
Best run of 29. S&P 500, Daily, spread 1, from run pf:2026-10-04-USA500-D.tsv:7.
| Period | Up to 2026-10-04 |
| Instrument | S&P 500, Daily |
| Spread | 1 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 |
|---|---|---|---|---|---|---|
| S&P 500Best run | Daily | 4.55 | 116 | 83.62 | 5,994 EUR | -1,280 |
| Dow Jones | Daily | 3.93 | 128 | 81.25 | 46,718 EUR | -8,705 |
| Nasdaq 100 | 4 hours | 2.24 | 304 | 72.37 | 21,840 EUR | -4,640 |
| Nikkei 225 | 1 hour | 1.39 | 957 | 63.85 | 46,972 USD | -9,453 |
| S&P 500 | 1 hour | 1.29 | 1,435 | 66.48 | 4,488 EUR | -933 |
| USD/JPY | 4 hours | n/a | 348 | 64.37 | 483,930 USD | -406,510 |
| Nikkei 225 | 4 hours | n/a | 235 | 69.36 | 29,557 USD | -11,063 |
| Dow Jones | 4 hours | n/a | 107 | 74.77 | 23,121 EUR | -11,316 |
| Silver | Daily | n/a | 135 | 67.41 | 22,401 USD | -14,002 |
| Dow Jones | 1 hour | n/a | 483 | 66.46 | 20,967 EUR | -7,906 |
| Nikkei 225 | 15 min | n/a | 2,052 | 62.13 | 20,275 USD | -15,369 |
| DAX 40 | Daily | n/a | 127 | 67.72 | 18,566 EUR | -5,511 |
| Nasdaq 100 | Daily | n/a | 83 | 74.70 | 18,005 EUR | -5,474 |
| Nasdaq 100 | 1 hour | n/a | 1,456 | 64.22 | 16,532 EUR | -4,797 |
| DAX 40 | 4 hours | n/a | 308 | 68.51 | 14,600 EUR | -5,779 |
| Dow Jones | 15 min | n/a | 1,722 | 67.36 | 14,559 EUR | -8,724 |
| Dow Jones | 30 min | n/a | 888 | 63.74 | 10,836 EUR | -9,993 |
| Dow Jones | 10 min | n/a | 2,017 | 66.29 | 9,855 EUR | -9,233 |
| Nasdaq 100 | 15 min | n/a | 2,048 | 66.11 | 8,999 EUR | -6,527 |
| FTSE 100 | Daily | n/a | 97 | 75.26 | 8,687 EUR | -3,110 |
| DAX 40 | 1 hour | n/a | 1,251 | 64.91 | 8,549 EUR | -5,603 |
| Nasdaq 100 | 30 min | n/a | 2,221 | 65.29 | 6,924 EUR | -6,085 |
| FTSE 100 | 1 hour | n/a | 1,215 | 67.08 | 6,383 EUR | -3,003 |
| FTSE 100 | 4 hours | n/a | 288 | 66.67 | 5,659 EUR | -2,836 |
| S&P 500 | 4 hours | n/a | 305 | 69.51 | 4,721 EUR | -1,205 |
| FTSE 100 | 10 min | n/a | 2,037 | 62.44 | 2,153 EUR | -1,906 |
| S&P 500 | 30 min | n/a | 2,189 | 65.60 | 2,075 EUR | -1,566 |
| Gold | Daily | n/a | 129 | 55.04 | 1,370 EUR | -856 |
| Gold | 4 hours | n/a | 315 | 65.40 | 1,153 EUR | -1,003 |
Charts
Top 10 of 29 runs. The full list is in the table above.
Above 1.0 made money, below 1.0 lost money.
The code
// ============================================================== // Bollinger Zone Exit Long // ProRealAlgos Strategy Library | prorealalgos.com // Type: Mean reversion // Direction: Long only // Timeframe tested: Daily // ============================================================== DEFPARAM CumulateOrders = false ONCE zone = 0 mid = Average[20](close) sd = STD[20](close) upper = mid + 2.25 * sd lower = mid - 2 * sd
27 more lines: the entry and exit rules.
Setup
S&P 500 had no history beyond the standard run, so both runs used 14,000 bars.
| Bars available | 14,000 |
| Net, standard 200,000-bar run | 5,993.76 EUR |
| Net, long run | 6,027.33 EUR |
| Net on the older data alone | 33.57 EUR |
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 29 market and timeframe combinations. The best run was S&P 500, Daily, with a profit factor of 4.55 over 116 trades.
The best run had a maximum drawdown of 1,280 EUR at the tested position size, against a net result of 5,994 EUR.
It only takes long trades.
Related
Copy trading on US indices is available to ProRealAlgos members as spots open.