The strategy buys 1 contract when the 12 period EMA crosses above the 25 period EMA, and holds the long until the 12 period EMA crosses back below. It only trades after the first 30 bars.
Best run of 24. Nasdaq 100, Daily, spread 3, from run pf:2026-10-13-NAS100-D.tsv:1.
| Period | Up to 2026-10-13 |
| Instrument | Nasdaq 100, Daily |
| 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-13 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| Nasdaq 100Best run | Daily | 2.42 | 192 | 41.67 | 21,070 EUR | -3,497 |
| Gold | Daily | 2.27 | 243 | 32.10 | 3,637 EUR | -809 |
| S&P 500 | Daily | 1.96 | 263 | 37.26 | 4,062 EUR | -716 |
| Dow Jones | Daily | 1.87 | 259 | 35.91 | 27,161 EUR | -6,379 |
| USD/JPY | Daily | n/a | 226 | 37.17 | 1,174,280 USD | -469,100 |
| USD/JPY | 30 min | n/a | 3,416 | 30.27 | 662,180 USD | -175,190 |
| USD/JPY | 1 hour | n/a | 2,394 | 31.20 | 652,050 USD | -191,580 |
| USD/JPY | 10 min | n/a | 3,583 | 29.25 | 187,680 USD | -161,770 |
| EUR/USD | Daily | n/a | 204 | 37.25 | 94,825 USD | -44,080 |
| Nikkei 225 | Daily | n/a | 198 | 34.85 | 36,943 USD | -13,365 |
| Nikkei 225 | 4 hours | n/a | 477 | 33.33 | 23,414 USD | -14,401 |
| DAX 40 | Daily | n/a | 245 | 38.37 | 14,241 EUR | -4,254 |
| Dow Jones | 4 hours | n/a | 182 | 36.81 | 14,125 EUR | -4,843 |
| Nasdaq 100 | 1 hour | n/a | 2,061 | 32.65 | 10,807 EUR | -3,445 |
| US Crude Oil | Daily | n/a | 202 | 38.12 | 10,725 EUR | -7,810 |
| DAX 40 | 30 min | n/a | 3,480 | 30.09 | 10,173 EUR | -4,134 |
| Nasdaq 100 | 4 hours | n/a | 587 | 35.78 | 9,585 EUR | -5,190 |
| Nasdaq 100 | 30 min | n/a | 3,457 | 32.31 | 9,322 EUR | -3,581 |
| DAX 40 | 1 hour | n/a | 1,938 | 32.66 | 8,727 EUR | -4,511 |
| Gold | 4 hours | n/a | 518 | 35.52 | 3,248 EUR | -1,077 |
| Gold | 1 hour | n/a | 2,055 | 30.32 | 3,042 EUR | -947 |
| S&P 500 | 4 hours | n/a | 566 | 36.75 | 2,807 EUR | -781 |
| Gold | 30 min | n/a | 3,507 | 29.20 | 1,892 EUR | -988 |
| Gold | 5 min | n/a | 3,601 | 28.35 | 612 EUR | -535 |
Charts
Top 10 of 24 runs. The full list is in the table above.
Above 1.0 made money, below 1.0 lost money.
The code
// ============================================================== // EMA 12 25 Crossover // ProRealAlgos Strategy Library | prorealalgos.com // Type: Trend // Direction: Long only // Timeframe tested: Daily // ============================================================== DEFPARAM CumulateOrders = false fast = ExponentialAverage[12](close) slow = ExponentialAverage[25](close)
10 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 24 market and timeframe combinations. The best run was Nasdaq 100, Daily, with a profit factor of 2.42 over 192 trades.
The best run had a maximum drawdown of 3,496 EUR at the tested position size, against a net result of 21,070 EUR.
It only takes long trades.
Related
Copy trading on US indices is available to ProRealAlgos members as spots open.