Join today
Strategies / Momentum / Storm Short Rising

Storm Short Rising: Shorting Weakness on Wide Bars

On weekdays the system sells short when the close drops under a 2-bar EMA, CCI(21) is above -95, the bar is wide, and Repulse(3) is below 0.1. It covers at a 2% target, a 1% stop, or when Repulse rises back above 0.1.

MomentumShort onlySwingGold4 hours
n/aProfit factor
522Net profit EUR
34.82%Win rate
359Trades
-485Max drawdown
1.45Avg trade

Best run of 4. Gold, 4 hours, spread 0.6, from run sweeps:2026-09-23-GOLD-4h-opt.tsv:7.

Entry rules, short

  1. Monday to Friday
  2. Close is below the 2-bar EMA
  3. CCI(21) is above -95
  4. True range of the bar is above 24
  5. Members only

Exit rules

  1. Stop loss 1% above entry
  2. Profit target 2% below entry
  3. Members only

Test conditions

PeriodUp to 2026-09-23
InstrumentGold, 4 hours
Spread0.6 points
Contracts1
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-09-23

Parameters

positionSize
Contracts per trade
1
fastPeriod
Fast EMA length (equals the close)
1
slowPeriod
Slow EMA length
2
cciPeriod
CCI length
21
cciLevel
CCI must be above this
-95
minTrueRange
Bar true range must exceed this
24
repulsePeriod
Repulse smoothing length
3
repulseLevel
Short below this Repulse value, cover above it
0.1
firstTradeDay
First allowed weekday (Monday)
1
lastTradeDay
Last allowed weekday (Friday)
5
stopLossPct
Protective stop, percent of entry price
1
takeProfitPct
Profit target, percent of entry price
2

Every run

Markets and timeframes tested

MarketTimeframePFTradesWin %NetMax DD
GoldBest run4 hoursn/a 35934.82522 EUR-485
Gold15 minn/a 17334.10663 EUR-346
FTSE 1001 minn/a 1050.00106 EUR-63.10
Gold1 minn/a 540.0045.50 EUR-27.00

Charts

Results by run

Net profit against max drawdown

Net profitMax drawdown
0-500-2505001KGold · 15 minGold · 4 hoursFTSE 100 · 1 minGold · 1 min

The code

ProBuilder, rewritten to house standard

Every file in the library uses the same header, the same section order and the same variable names. The numbers above were produced by the original version before the rewrite, and the rewrite has not yet been compiled in ProRealTime.

// ============================================================
// Storm Short Rising
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Momentum
// Direction: Short only
// Timeframe tested: 4 hours
// ============================================================

// --- Settings ---
DEFPARAM CumulateOrders = false

// --- Parameters ---
positionSize = 1       // contracts per trade
fastPeriod = 1         // fast EMA length (equals the close)
slowPeriod = 2         // slow EMA length
cciPeriod = 21         // CCI length
cciLevel = -95         // CCI must still be above this
minTrueRange = 24      // bar must be at least this volatile
repulsePeriod = 3      // smoothing of the Repulse buying and selling pressure
repulseLevel = 0.1     // short below this Repulse value, cover above it
firstTradeDay = 1      // Monday
lastTradeDay = 5       // Friday
stopLossPct = 1        // protective stop, percent of entry price
takeProfitPct = 2      // profit target, percent of entry price

// --- Indicators ---
fastMA = ExponentialAverage[fastPeriod](close)
slowMA = ExponentialAverage[slowPeriod](close)
cciValue = CCI[cciPeriod](close)
trueRange = TR(close)

// Repulse written out: bullish pressure minus bearish pressure, as percent of close.
bullPressure = 100 * (3 * close - 2 * low - open) / close
bearPressure = 100 * (open + 2 * high - 3 * close) / close
repulseValue = ExponentialAverage[repulsePeriod](bullPressure) - ExponentialAverage[repulsePeriod](bearPressure)

tradingWindow = OpenDayOfWeek >= firstTradeDay AND OpenDayOfWeek <= lastTradeDay

17 more lines: the entry and exit rules.

Read this first

Known weaknesses

  • The best run on Gold 4 hours made EUR 521.80 with a EUR 485.30 drawdown, a slim margin.
  • The true range filter of 24 is in price units, so it only makes sense on instruments priced like Gold.
  • Other runs are tiny: FTSE 100 1 minute had 10 trades and Gold 1 minute had 5.
  • Profit factor was not recorded because only sweep data exists.

Indicators used

EMACCIRepulse

How to load it

  1. Copy the code with the copy button above 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.

Questions

About this strategy

Can it trade live in ProOrder?

Yes, it is a short only system with 1 contract, a 1% stop and a 2% target. The rewritten code has not been compile checked.

What was it tested on?

Gold 4 hours was the main run. Gold 15 minutes made EUR 662.70, FTSE 100 1 minute EUR 105.80 and Gold 1 minute EUR 45.50.

What risk comes with 1 contract?

On Gold 4 hours the maximum drawdown was EUR 485.30. Each trade risks 1% of the entry price at the stop.

Why a 4 hour chart?

The minimum true range of 24 is easier to meet on 4 hour Gold bars, which gives a usable number of trades without too much noise.

Related

Strategies like this one

Monday Dip Buy

Uses the same indicator.

n/a PF · 146 trades

Triple Band Market Model

Best run on the same market, Gold.

2.27 PF · 203 trades

Twelve Minus Two Momentum

Also a momentum strategy.

12.00 PF · 52 trades

Short side systems are rare. Join the ProRealAlgos waitlist to see more.

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