When a single candle body grows to more than 2 times ATR(14), this system joins the move in the same direction. It works both ways, buying after a big up candle and selling after a big down candle. Trades last at most 8 bars and flip if an opposite signal appears.
Best run of 11. EUR/USD, 1 hour, spread 1, from run sweeps:2026-09-17-EURUSD-1h-opt.tsv:2.
| Period | Up to 2026-09-17 |
| Instrument | EUR/USD, 1 hour |
| Spread | 1 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-17 |
| positionSize Contracts per trade | 1 |
| atrPeriod ATR length | 14 |
| atrMultiplier Candle body must exceed this many ATRs | 2 |
| maxBarsInTrade Time exit exactly this many bars after entry | 8 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| EUR/USDBest run | 1 hour | n/a | 2,077 | 52.48 | 80,499 USD | -27,880 |
| USD/JPY | Daily | n/a | 165 | 54.55 | 880,730 JPY | -268,600 |
| USD/JPY | 1 hour | n/a | 1,461 | 50.24 | 359,930 JPY | -141,710 |
| USD/JPY | 4 hours | n/a | 410 | 48.78 | 205,380 JPY | -125,930 |
| USD/JPY | 10 min | n/a | 1,964 | 49.80 | 189,090 JPY | -116,270 |
| EUR/USD | 5 min | n/a | 1,842 | 40.01 | 28,308 USD | -25,518 |
| EUR/USD | 4 hours | n/a | 564 | 50.00 | 25,332 USD | -25,173 |
| GBP/USD | Daily | n/a | 127 | 51.97 | 4,794 USD | -2,184 |
| Dow Jones | 4 hours | n/a | 164 | 54.27 | 4,784 EUR | -3,802 |
| GBP/USD | 4 hours | n/a | 528 | 50.76 | 2,228 USD | -2,006 |
| Gold | Daily | n/a | 108 | 53.70 | 917 EUR | -349 |
Charts
Top 10 of 11 runs. The full list is in the table above.
The code
// ============================================================ // ATR Strength // ProRealAlgos Strategy Library | prorealalgos.com // Type: Momentum // Direction: Long & short // Timeframe tested: 1 hour // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = false // --- Parameters --- positionSize = 1 // contracts per trade atrPeriod = 14 // ATR length atrMultiplier = 2 // candle body must exceed this many ATRs maxBarsInTrade = 8 // time exit exactly this many bars after entry // --- Indicators --- atrValue = AverageTrueRange[atrPeriod](close)
27 more lines: the entry and exit rules.
Setup
Questions
Yes, the code is a standard ProOrder system you can load into ProRealTime. The rewrite has not been compile checked yet, so run it on a demo account first.
The best run was EUR/USD 1 hour with 80,499 USD from 2077 trades. USD/JPY was positive on all four timeframes tested, and Gold, GBP/USD and the Dow Jones showed small profits.
At 1 contract on EUR/USD 1 hour the worst drawdown was 27,880 USD. Size your account around that figure, not around the average trade of 38.76 USD.
It gave the best EUR/USD result in the sweeps. The 5 minute and 4 hour charts also made money, but less (28,308 and 25,332 USD).
Related
The ProRealAlgos community gets the full rules, the complete code and the automated portfolio.