A long triggers when the close is more than 0.006 above the open of 8 bars ago, and a short when it is 0.006 below. Each trade has a 50 point stop and a 225 point target. An opposite signal reverses the trade.
Best run of 9. EUR/USD, 2 min, spread 1, from run pf:2026-09-24-EURUSD-2m.tsv:4.
| Period | Up to 2026-09-25 |
| Instrument | EUR/USD, 2 minutes |
| 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-25 |
| positionSize Contracts per trade | 1 |
| lookbackPeriod Compare the close with the open this many bars ago | 8 |
| minMove Move must be larger than this, in price units | 0.006 |
| stopLossPoints Protective stop in points | 50 |
| takeProfitPoints Profit target in points | 225 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| EUR/USDBest run | 2 min | 5.19 | 280 | 53.57 | 272,509 USD | -4,000 |
| EUR/USD | 3 min | 3.94 | 216 | 46.76 | 167,018 USD | -8,323 |
| EUR/USD | 5 min | 2.36 | 167 | 35.93 | 71,187 USD | -9,179 |
| USD/JPY | Daily | 1.29 | 5,832 | 27.14 | 5,959,250 JPY | -584,950 |
| EUR/USD | 10 min | n/a | 254 | 26.77 | 25,006 USD | -16,228 |
| GBP/USD | Daily | n/a | 5,375 | 21.41 | 24,855 USD | -14,293 |
| Silver | Daily | n/a | 2,509 | 29.61 | 19,609 USD | -12,943 |
| Dow Jones | Daily | n/a | 6,193 | 22.17 | 11,582 EUR | -6,851 |
| GBP/USD | 5 min | n/a | 68 | 26.47 | 818 USD | -713 |
Charts
Above 1.0 made money, below 1.0 lost money.
The code
// ============================================================ // Eight Bar Trend Follower // ProRealAlgos Strategy Library | prorealalgos.com // Type: Trend // Direction: Long & short // Timeframe tested: 2 minutes // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = false // --- Parameters --- positionSize = 1 // contracts per trade lookbackPeriod = 8 // compare the close with the open this many bars ago minMove = 0.006 // move must be larger than this, in price units stopLossPoints = 50 // protective stop, points takeProfitPoints = 225 // profit target, points // --- Indicators --- priceMove = close - open[lookbackPeriod] bigMove = ABS(priceMove) > minMove
20 more lines: the entry and exit rules.
Setup
EUR/USD 2 minutes had 996,000 bars, and the long run made USD 240,278 compared with USD 272,509 on the standard run, which means the older data alone lost USD 32,231.
| Bars available | 996,000 |
| Net, standard 200,000-bar run | 272,509.00 USD |
| Net, long run | 240,278.00 USD |
| Net on the older data alone | -32,231.00 USD |
Questions
Yes, it uses a simple price rule with fixed stop and target. Compile-check the rewritten code on demo first.
EUR/USD 2 minutes made USD 272,509.0 and 3 minutes USD 167,018.0 at a profit factor of 3.94. GBP/USD 5 minutes made only USD 818.4.
The best run had a max drawdown of USD 4,000.0 with 1 contract. EUR/USD 10 minutes had USD 16,228.0.
On 2 minute bars the 8 bar window is short, so the 0.006 threshold only catches fast bursts. On 5 and 10 minute bars the results were weaker.
Related
The ProRealAlgos community gets the full rules, the complete code and the automated portfolio.