Uses MACD(12, 26, 9) on bar opens. It buys when the histogram crosses above zero with RSI(14) at or below 55, and sells short when it crosses below zero with RSI(14) at or above 50. A 15% stop loss is set from the entry.
Best run of 10. Nasdaq 100, 30 min, spread 3, from run sweeps:2026-10-07-NAS100-30m-opt.tsv:12.
| Period | Up to 2026-10-07 |
| Instrument | Nasdaq 100, 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-10 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| Nasdaq 100Best run | 30 min | n/a | 2,658 | 57.64 | 8,347 EUR | -6,527 |
| EUR/USD | 1 hour | n/a | 2,596 | 63.52 | 89,383 USD | -54,475 |
| Nikkei 225 | 4 hours | n/a | 407 | 65.11 | 21,936 USD | -12,927 |
| DAX 40 | 1 hour | n/a | 1,672 | 63.22 | 14,390 EUR | -5,354 |
| Dow Jones | 30 min | n/a | 1,081 | 62.90 | 14,077 EUR | -12,432 |
| Dow Jones | 1 hour | n/a | 597 | 62.48 | 12,147 EUR | -11,383 |
| Nasdaq 100 | 1 hour | n/a | 1,812 | 61.70 | 9,449 EUR | -7,655 |
| FTSE 100 | 1 hour | n/a | 1,687 | 61.71 | 5,623 EUR | -3,125 |
| FTSE 100 | Daily | n/a | 202 | 63.86 | 4,667 EUR | -3,943 |
| S&P 500 | 1 hour | n/a | 1,860 | 61.02 | 2,802 EUR | -1,354 |
Charts
The code
// ============================================================== // MACD Zero Cross On Opens // ProRealAlgos Strategy Library | prorealalgos.com // Type: Momentum // Direction: Long & short // Timeframe tested: 30 minutes // ============================================================== DEFPARAM CumulateOrders = false myRsi = RSI[14](open) myMacd = ExponentialAverage[12](open) - ExponentialAverage[26](open) signal = ExponentialAverage[9](myMacd) delta = myMacd - signal
12 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 10 market and timeframe combinations. The best run by trade count was Nasdaq 100, 30 minutes, with 2,658 trades.
The best run had a maximum drawdown of 6,527 EUR at the tested position size, against a net result of 8,347 EUR.
It trades both long and short.
Related
Copy trading on US indices is available to ProRealAlgos members as spots open.