The strategy buys when a 10-period EMA of the median price crosses above a PMax stop line built from 3 times ATR(10) bands. It closes the long when the EMA crosses back below PMax.
Best run of 43. Nasdaq 100, 30 min, spread 3, from run pf:2026-10-12-NAS100-30m.tsv:4.
| Period | Up to 2026-10-12 |
| 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-12 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| Nasdaq 100Best run | 30 min | 1.26 | 1,302 | 41.63 | 16,155 EUR | -3,005 |
| Nasdaq 100 | 15 min | 1.16 | 1,256 | 40.53 | 12,228 EUR | -2,847 |
| USD/JPY | Daily | n/a | 81 | 41.98 | 914,670 USD | -495,200 |
| USD/JPY | 4 hours | n/a | 215 | 42.79 | 734,580 USD | -217,160 |
| USD/JPY | 30 min | n/a | 1,140 | 40.79 | 600,400 USD | -189,350 |
| USD/JPY | 10 min | n/a | 1,148 | 40.24 | 372,890 USD | -158,540 |
| USD/JPY | 15 min | n/a | 1,143 | 38.32 | 199,190 USD | -174,720 |
| EUR/USD | Daily | n/a | 79 | 41.77 | 42,063 USD | -39,850 |
| Nikkei 225 | Daily | n/a | 77 | 38.96 | 37,737 USD | -11,480 |
| Dow Jones | Daily | n/a | 84 | 48.81 | 20,791 EUR | -5,689 |
| Nikkei 225 | 1 hour | n/a | 643 | 39.81 | 19,207 USD | -13,403 |
| Nikkei 225 | 4 hours | n/a | 163 | 42.33 | 18,688 USD | -7,946 |
| Nikkei 225 | 3 min | n/a | 1,213 | 36.85 | 17,211 USD | -9,616 |
| Nikkei 225 | 2 min | n/a | 1,163 | 38.09 | 16,365 USD | -8,702 |
| Nasdaq 100 | Daily | n/a | 71 | 63.38 | 15,359 EUR | -2,513 |
| Silver | 5 min | n/a | 1,131 | 36.34 | 13,996 USD | -13,467 |
| DAX 40 | Daily | n/a | 120 | 46.67 | 12,362 EUR | -7,045 |
| Dow Jones | 30 min | n/a | 521 | 40.12 | 11,882 EUR | -6,396 |
| Nasdaq 100 | 4 hours | n/a | 240 | 43.33 | 11,379 EUR | -5,707 |
| Dow Jones | 4 hours | n/a | 71 | 49.30 | 11,061 EUR | -8,767 |
| Nasdaq 100 | 1 hour | n/a | 834 | 42.21 | 10,322 EUR | -4,943 |
| DAX 40 | 4 hours | n/a | 206 | 43.20 | 10,308 EUR | -3,905 |
| DAX 40 | 30 min | n/a | 1,292 | 40.25 | 10,162 EUR | -4,094 |
| Dow Jones | 1 hour | n/a | 276 | 40.22 | 10,005 EUR | -6,801 |
| DAX 40 | 15 min | n/a | 1,232 | 38.96 | 9,123 EUR | -4,333 |
| Nasdaq 100 | 5 min | n/a | 1,187 | 37.41 | 8,721 EUR | -3,750 |
| US Crude Oil | Daily | n/a | 80 | 46.25 | 7,106 EUR | -5,627 |
| GBP/USD | Daily | n/a | 90 | 41.11 | 5,959 USD | -5,923 |
| Nasdaq 100 | 3 min | n/a | 1,142 | 38.09 | 5,541 EUR | -3,823 |
| DAX 40 | 10 min | n/a | 1,241 | 37.63 | 4,971 EUR | -2,947 |
| Nasdaq 100 | 10 min | n/a | 1,244 | 37.06 | 4,640 EUR | -3,853 |
| S&P 500 | Daily | n/a | 93 | 46.24 | 3,895 EUR | -1,009 |
| Gold | 1 hour | n/a | 723 | 41.49 | 2,899 EUR | -1,160 |
| S&P 500 | 4 hours | n/a | 224 | 46.43 | 2,764 EUR | -1,334 |
| FTSE 100 | 4 hours | n/a | 180 | 44.44 | 2,644 EUR | -2,191 |
| S&P 500 | 30 min | n/a | 1,281 | 40.52 | 2,624 EUR | -728 |
| Gold | 15 min | n/a | 1,125 | 37.07 | 2,383 EUR | -893 |
| Gold | Daily | n/a | 87 | 44.83 | 2,230 EUR | -1,353 |
| Gold | 30 min | n/a | 1,156 | 37.80 | 2,047 EUR | -906 |
| Gold | 5 min | n/a | 1,104 | 38.50 | 1,871 EUR | -574 |
| Gold | 4 hours | n/a | 211 | 40.76 | 1,716 EUR | -1,580 |
| Gold | 10 min | n/a | 1,151 | 37.36 | 1,677 EUR | -861 |
| Gold | 3 min | n/a | 1,111 | 37.71 | 1,080 EUR | -816 |
Charts
Top 10 of 43 runs. The full list is in the table above.
Above 1.0 made money, below 1.0 lost money.
The code
// ============================================================== // EMA and PMax Cross Long // ProRealAlgos Strategy Library | prorealalgos.com // Type: Trend // Direction: Long only // Timeframe tested: 30 minutes // ============================================================== DEFPARAM CumulateOrders = false ONCE longstop = 0 ONCE shortstop = 0 ONCE dir = 1 ONCE init = 0 ONCE pmax = 0 ma = ExponentialAverage[10](MedianPrice) myAtr = AverageTrueRange[10](close) ls = ma - 3 * myAtr ss = ma + 3 * myAtr
41 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 43 market and timeframe combinations. The best run was Nasdaq 100, 30 minutes, with a profit factor of 1.26 over 1,302 trades.
The best run had a maximum drawdown of 3,005 EUR at the tested position size, against a net result of 16,155 EUR.
It only takes long trades.
Related
Copy trading on US indices is available to ProRealAlgos members as spots open.