Join waitlist
Strategies / Trend / EMA Trend StochRSI Filter

EMA Trend StochRSI Filter

Buys when the 28-bar EMA is above the 48-bar EMA and the Stochastic RSI is below 0.8. Sells when the 28-bar EMA falls below the 48-bar EMA and the Stochastic RSI is above 0.2.

TrendLong onlySwingS&P 500Daily
2.71Profit factor
4,779Net profit EUR
36.67%Win rate
120Trades
-952Max drawdown
39.82Avg trade

Best run of 40. S&P 500, Daily, spread 1, from run pf:2026-10-05-USA500-D.tsv:8.

Entry rules, long

  1. The Stochastic RSI, the position of RSI(14) within its 14-bar range, is below 0.8.

Exit rules

  1. The 28-bar EMA is below the 48-bar EMA and the Stochastic RSI is above 0.2.

Test conditions

PeriodUp to 2026-10-05
InstrumentS&P 500, Daily
Spread1 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-05

Every run

Markets and timeframes tested

MarketTimeframePFTradesWin %NetMax DD
S&P 500Best runDaily2.71 12036.674,779 EUR-952
Dow JonesDaily2.12 12136.3623,379 EUR-5,802
USD/JPYDailyn/a 9337.631,217,720 USD-468,560
USD/JPY30 minn/a 1,55332.58610,590 USD-217,040
USD/JPY4 hoursn/a 31131.19500,510 USD-261,900
USD/JPY1 hourn/a 1,10733.79462,460 USD-271,560
USD/JPY10 minn/a 1,63332.76336,930 USD-170,140
USD/JPY15 minn/a 1,59633.02284,700 USD-220,470
Nikkei 225Dailyn/a 8931.4648,624 USD-11,480
EUR/USD5 minn/a 1,71227.1634,393 USD-27,455
Nikkei 2254 hoursn/a 21135.5532,469 USD-8,860
Nikkei 2252 minn/a 1,58431.0619,612 USD-6,279
Nikkei 2251 hourn/a 80932.7618,193 USD-13,618
Nikkei 2253 minn/a 1,61131.0416,839 USD-8,102
Nasdaq 100Dailyn/a 8843.1815,102 EUR-5,818
US Crude OilDailyn/a 9034.4413,397 EUR-4,711
Nasdaq 1004 hoursn/a 25240.0811,959 EUR-6,563
Dow Jones1 hourn/a 32235.4010,779 EUR-6,523
Nasdaq 10015 minn/a 1,59132.6810,375 EUR-3,230
DAX 40Dailyn/a 12939.5310,209 EUR-5,310
DAX 4015 minn/a 1,57833.279,822 EUR-3,004
Nasdaq 1001 hourn/a 94235.149,558 EUR-5,605
Nasdaq 10010 minn/a 1,59331.649,442 EUR-3,723
Nasdaq 10030 minn/a 1,53834.278,142 EUR-5,451
Dow Jones4 hoursn/a 8248.787,588 EUR-6,991
Nasdaq 1005 minn/a 1,56830.807,381 EUR-4,340
Brent CrudeDailyn/a 4330.236,609 EUR-6,316
DAX 4030 minn/a 1,58232.056,541 EUR-5,383
DAX 404 hoursn/a 25134.265,802 EUR-4,971
DAX 4010 minn/a 1,62430.975,639 EUR-2,962
GoldDailyn/a 11243.753,348 EUR-1,225
S&P 5004 hoursn/a 25140.642,706 EUR-1,071
Gold1 hourn/a 95234.032,690 EUR-1,181
Gold15 minn/a 1,65127.922,257 EUR-670
Gold30 minn/a 1,56530.932,177 EUR-888
Gold4 hoursn/a 26633.831,982 EUR-1,587
Gold10 minn/a 1,66228.521,770 EUR-662
Gold3 minn/a 1,67229.311,420 EUR-614
S&P 50015 minn/a 1,59232.041,398 EUR-890
Gold5 minn/a 1,65231.841,314 EUR-948

Charts

Results by run

Top 10 of 40 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

// ==============================================================
// EMA Trend StochRSI Filter
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Trend
// Direction: Long only
// Timeframe tested: Daily
// ==============================================================

DEFPARAM CumulateOrders = false

emafast = ExponentialAverage[28](close)
emaslow = ExponentialAverage[48](close)
myRsi = RSI[14](close)
rsihi = Highest[14](myRsi)
rsilo = Lowest[14](myRsi)
valid = 0
stoch = 0

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

EMARSIStochastic
Longer historyRe-run on up to 1,000,000 barsS&P 500 · Daily · older data 59.21 EUR

S&P 500 had no history beyond the standard run, so both runs used 14,000 bars.

S&P 500 · Daily

Bars available14,000
Net, standard 200,000-bar run4,778.75 EUR
Net, long run4,837.96 EUR
Net on the older data alone59.21 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 EMA Trend StochRSI Filter 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 40 market and timeframe combinations. The best run was S&P 500, Daily, with a profit factor of 2.71 over 120 trades.

How large was the drawdown?

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

Does it trade long, short or both?

It only takes long trades.

Related

Strategies like this one

Trend Surfer

Uses the same indicator.

1.04 PF · 10,813 trades

CCI Sign With EMA Alignment

Best run on the same market, S&P 500.

1.23 PF · 1,253 trades

Ichimoku Cloud StochRSI Filter

Also a trend strategy.

2.70 PF · 148 trades

Want strategies that are already part of a live portfolio? Join the ProRealAlgos waitlist.

Copy trading on US indices is available to ProRealAlgos members as spots open.

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