Join waitlist
Strategies / Mean reversion / Smoothed Stochastic Crossover

Smoothed Stochastic Crossover

Buys when average %K crosses above average %D while average %D is below 20, and sells short on the mirror cross while average %D is above 80. Longs close when average %D is above 80, and shorts close when it is below 20.

Mean reversionLong & shortSwingS&P 5001 hour
n/aProfit factor
2,763Net profit EUR
63.36%Win rate
1,894Trades
-1,565Max drawdown
1.46Avg trade

Best run of 5. S&P 500, 1 hour, spread 1, from run sweeps:2026-10-04-USA500-1h-opt.tsv:62.

Entry rules, long

  1. Average %D is below 20.

Entry rules, short

  1. Average %D is above 80.

Exit rules

  1. A short closes when average %D is below 20.
  2. An opposite cross that meets its level condition reverses the position.

Test conditions

PeriodUp to 2026-10-04
InstrumentS&P 500, 1 hour
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-07

Every run

Markets and timeframes tested

MarketTimeframePFTradesWin %NetMax DD
S&P 500Best run1 hourn/a 1,89463.362,763 EUR-1,565
Dow Jones1 hourn/a 61865.2119,249 EUR-12,050
Nasdaq 1001 hourn/a 1,86363.2918,625 EUR-6,425
Nasdaq 1004 hoursn/a 55366.379,925 EUR-6,907
FTSE 100Dailyn/a 21168.259,229 EUR-3,622

Charts

Results by run

Net profitMax drawdown

The code

ProBuilder code, as tested

// ==============================================================
// Smoothed Stochastic Crossover
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Mean reversion
// Direction: Long & short
// Timeframe tested: 1 hour
// ==============================================================

DEFPARAM CumulateOrders = false

ONCE rawk = 50

hh = highest[21](high)
ll = lowest[21](low)

26 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

StochasticSMAEMA
Read this firstKnown weaknesses3 points
  • No profit factor is available, because only sweep results exist for this strategy.
  • The maximum drawdown of 1,565 EUR is large next to the net profit of 2,763 EUR.
  • The code sets no stop loss, so a losing trade stays open until an exit signal arrives.

Questions

About this strategy

Can I run Smoothed Stochastic Crossover 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 5 market and timeframe combinations. The best run by trade count was S&P 500, 1 hour, with 1,894 trades.

How large was the drawdown?

The best run had a maximum drawdown of 1,565 EUR at the tested position size, against a net result of 2,763 EUR.

Does it trade long, short or both?

It trades both long and short.

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

ATR Band

Also a mean reversion strategy.

10.31 PF · 53 trades

See how ProRealAlgos combines strategies like this into one automated portfolio.

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