Join waitlist
Strategies / Momentum / DEMA Spread Momentum Hold

DEMA Spread Momentum Hold

Buys when the 4 period double exponential average sits more than 0.2 percent above the 8 period one, measured against their average. Closes the long when the gap falls below -0.2.

MomentumLong onlyIntradayDAX 4030 min
1.41Profit factor
23,166Net profit EUR
47.22%Win rate
826Trades
-4,369Max drawdown
28.05Avg trade

Best run of 44. DAX 40, 30 min, spread 3, from run pf:2026-10-04-DAX40-30m.tsv:3.

Entry rules, long

  1. Signals are only checked after bar 30.

Exit rules

  1. The same percentage gap is below -0.2, closing the long.

Test conditions

PeriodUp to 2026-10-04
InstrumentDAX 40, 30 minutes
Spread3 points
Starting capital1,000,000
CostsSpread only. Commissions and overnight financing are not included.
BarsUp to 200,000 bars, fewer where the instrument has less history
Last tested2026-10-04

Every run

Markets and timeframes tested

MarketTimeframePFTradesWin %NetMax DD
DAX 40Best run30 min1.41 82647.2223,166 EUR-4,369
Gold4 hours1.30 84848.352,800 EUR-699
USD/JPY30 minn/a 7456.76620,440 USD-144,050
USD/JPY15 minn/a 2951.72307,650 USD-199,290
USD/JPY4 hoursn/a 38744.70275,820 USD-255,480
USD/JPY3 minn/a 580.00141,520 USD-82,660
USD/JPY2 minn/a 250.0079,640 USD-38,220
EUR/USD4 hoursn/a 44744.9750,914 USD-29,061
Nikkei 22530 minn/a 99645.7841,793 USD-13,433
Nikkei 22515 minn/a 43046.0539,449 USD-10,300
Nikkei 2255 minn/a 13453.7328,794 USD-10,816
Nikkei 22510 minn/a 23946.8626,012 USD-9,316
Nikkei 2251 hourn/a 1,13643.7525,529 USD-12,779
Silver5 minn/a 60748.1124,544 USD-20,746
Silver2 minn/a 42744.5023,944 USD-20,227
Nikkei 2254 hoursn/a 89545.7023,595 USD-10,140
Dow Jones1 hourn/a 27248.1622,953 EUR-8,899
Silver4 hoursn/a 1,36043.0121,691 USD-12,482
Silver10 minn/a 87845.3321,034 USD-10,035
Dow JonesDailyn/a 79543.7720,485 EUR-7,206
Nikkei 2253 minn/a 7853.8520,084 USD-10,141
Nikkei 2252 minn/a 2955.1717,544 USD-7,002
Nasdaq 10030 minn/a 96744.6717,346 EUR-5,440
Nasdaq 1001 hourn/a 1,39739.5812,946 EUR-4,123
Nasdaq 1004 hoursn/a 99745.8412,067 EUR-4,736
DAX 401 hourn/a 1,21942.2510,885 EUR-5,947
Nasdaq 10015 minn/a 57844.6410,403 EUR-4,178
Dow Jones30 minn/a 28140.939,838 EUR-9,721
DAX 40Dailyn/a 87841.808,350 EUR-4,260
DAX 404 hoursn/a 96944.587,446 EUR-4,428
Brent Crude4 hoursn/a 83844.756,935 EUR-3,926
DAX 405 minn/a 3652.784,828 EUR-3,375
FTSE 10030 minn/a 48347.834,438 EUR-3,233
DAX 4015 minn/a 30943.694,389 EUR-4,105
S&P 5001 hourn/a 95041.583,038 EUR-1,284
GoldDailyn/a 73544.222,535 EUR-1,284
S&P 50030 minn/a 57445.122,159 EUR-1,453
Gold10 minn/a 14546.901,851 EUR-841
Gold5 minn/a 7354.791,707 EUR-725
Gold30 minn/a 52146.831,510 EUR-915
S&P 5003 minn/a 2142.861,377 EUR-853
FTSE 1005 minn/a 1163.64997 EUR-604
S&P 5001 minn/a 3100.00681 EUR-307
S&P 5002 minn/a 4100.00567 EUR-412

Charts

Results by run

Top 10 of 44 runs. The full list is in the table above.

Above 1.0 made money, below 1.0 lost money.

The code

ProBuilder code, as tested

// ==============================================================
// DEMA Spread Momentum Hold
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Momentum
// Direction: Long only
// Timeframe tested: 30 minutes
// ==============================================================

DEFPARAM CumulateOrders = false

emashort = ExponentialAverage[4](close)
demashort = 2 * emashort - ExponentialAverage[4](emashort)
emalong = ExponentialAverage[8](close)
demalong = 2 * emalong - ExponentialAverage[8](emalong)
diff = 100 * (demashort - demalong) / ((demashort + demalong) / 2)

13 more lines: the entry and exit rules.

Setup

How to load it

  1. Copy the code with the copy button on the code block.
  2. In ProRealTime, open a chart of the instrument and timeframe you want to test, then open ProOrder > New trading system and choose "Create with programming".
  3. Paste the code, give the system a name and save it.
  4. Click "Backtest", set your own spread and position size, and run it before you consider trading it live.

Indicators used

EMA
Longer historyRe-run on up to 1,000,000 barsDAX 40 · 30 min · older data 11,575.00 EUR

On the long run with 228,000 bars the net result was 34,741 EUR, against 23,166 EUR on the standard 200,000-bar run. The older data alone gave 11,575 EUR.

DAX 40 · 30 min

Bars available228,000
Net, standard 200,000-bar run23,165.60 EUR
Net, long run34,740.60 EUR
Net on the older data alone11,575.00 EUR
Read this firstKnown weaknesses2 points
  • The code sets no stop loss, so a losing trade stays open until an exit signal arrives.
  • Results include the spread only. Commissions and overnight financing are not included.

Questions

About this strategy

Can I run DEMA Spread Momentum Hold in ProOrder?

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.

Which markets was it tested on?

It was tested on 44 market and timeframe combinations. The best run was DAX 40, 30 minutes, with a profit factor of 1.41 over 826 trades.

How large was the drawdown?

The best run had a maximum drawdown of 4,369 EUR at the tested position size, against a net result of 23,166 EUR.

Does it trade long, short or both?

It only takes long trades.

Related

Strategies like this one

Reversal Pattern With Chaikin Volatility

Uses the same indicator.

2.26 PF · 6,872 trades

Heikin Ashi Color Flip

Best run on the same market, DAX 40.

1.12 PF · 3,692 trades

Linear Regression Slope Acceleration

Also a momentum strategy.

1.41 PF · 550 trades

Get the full rules, the complete code and the ProRealAlgos portfolio as a member.

The ProRealAlgos community gets the full rules, the complete code and the automated portfolio.

Past backtest results do not guarantee future results. This is not financial advice. Curated and maintained by ProRealAlgos. ProRealTime™ is a trademark of ProRealTime SAS. prorealalgos.comStatsDocs