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.
Best run of 4. Gold, 4 hours, spread 0.6, from run sweeps:2026-09-23-GOLD-4h-opt.tsv:7.
| Period | Up to 2026-09-23 |
| Instrument | Gold, 4 hours |
| Spread | 0.6 points |
| Contracts | 1 |
| 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-09-23 |
| 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
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| GoldBest run | 4 hours | n/a | 359 | 34.82 | 522 EUR | -485 |
| Gold | 15 min | n/a | 173 | 34.10 | 663 EUR | -346 |
| FTSE 100 | 1 min | n/a | 10 | 50.00 | 106 EUR | -63.10 |
| Gold | 1 min | n/a | 5 | 40.00 | 45.50 EUR | -27.00 |
Charts
The code
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
Questions
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.
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.
On Gold 4 hours the maximum drawdown was EUR 485.30. Each trade risks 1% of the entry price at the stop.
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
The ProRealAlgos community gets the full rules, the complete code and the automated portfolio.