After an inside bar, the system buys a close above its high or sells a close below its low. It exits on a close through the 5-bar low or high, or at a 1% stop.
Best run of 16. Nasdaq 100, 15 min, spread 3, from run sweeps:2026-09-07-NAS100-15m-opt.tsv:19.
| Period | Up to 2026-09-07 |
| Instrument | Nasdaq 100, 15 minutes |
| Spread | 3 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-07 |
| positionSize Contracts per trade | 1 |
| channelPeriod Exit channel length | 5 |
| stopLossPct Protective stop, percent of entry price | 1 |
Every run
| Market | Timeframe | PF | Trades | Win % | Net | Max DD |
|---|---|---|---|---|---|---|
| Nasdaq 100Best run | 15 min | n/a | 7,858 | 30.64 | -31,620 EUR | -32,200 |
| DAX 40 | 1 hour | n/a | 4,773 | 31.76 | 1,515 EUR | -10,979 |
| Gold | 5 min | n/a | 6,594 | 29.71 | -3,209 EUR | -3,365 |
| Gold | 15 min | n/a | 6,735 | 29.55 | -3,448 EUR | -4,234 |
| Gold | 1 hour | n/a | 4,993 | 29.84 | -3,636 EUR | -3,944 |
| S&P 500 | 1 hour | n/a | 4,673 | 29.19 | -3,735 EUR | -5,260 |
| Gold | 30 min | n/a | 7,337 | 29.63 | -3,850 EUR | -4,533 |
| S&P 500 | 30 min | n/a | 6,356 | 30.38 | -6,829 EUR | -6,927 |
| S&P 500 | 15 min | n/a | 6,989 | 29.93 | -7,578 EUR | -7,685 |
| Nasdaq 100 | 1 hour | n/a | 5,096 | 28.36 | -8,351 EUR | -12,486 |
| S&P 500 | 5 min | n/a | 6,775 | 28.10 | -9,128 EUR | -9,173 |
| Nasdaq 100 | 30 min | n/a | 7,212 | 29.45 | -16,800 EUR | -17,754 |
| DAX 40 | 30 min | n/a | 7,686 | 31.85 | -17,896 EUR | -18,885 |
| Nasdaq 100 | 5 min | n/a | 7,452 | 30.66 | -28,571 EUR | -28,910 |
| DAX 40 | 5 min | n/a | 7,338 | 29.38 | -30,467 EUR | -30,544 |
| DAX 40 | 15 min | n/a | 7,706 | 30.48 | -30,555 EUR | -31,256 |
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.
// ============================================================ // Inside Bar Breakout // ProRealAlgos Strategy Library | prorealalgos.com // Type: Breakout // Direction: Long & short // Timeframe tested: 15 minutes // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = false // --- Parameters --- positionSize = 1 // contracts per trade channelPeriod = 5 // exit channel length stopLossPct = 1 // protective stop, percent of entry price // --- Indicators --- // Previous bar sits fully inside the bar before it insideBar = high[1] < high[2] AND low[1] > low[2] // Exit channel as of the previous bar, so the current bar cannot move it channelHigh = Highest[channelPeriod](high)[1] channelLow = Lowest[channelPeriod](low)[1]
26 more lines: the entry and exit rules.
Read this first
Questions
Yes, it is a one position at a time system with 1 contract and a 1% stop, but the tested results do not support running it live.
Gold, S&P 500, Nasdaq 100 and DAX 40 were tested from 5 minutes to 1 hour. Gold ended between EUR -3,209.20 and EUR -3,850.30, and DAX 40 15 minutes at EUR -30,555.40.
At 1 contract the Nasdaq 100 15 minute run had a maximum drawdown of EUR 32,199.60.
Inside bars are common on short charts, which gives a large sample. The sample here shows the plain breakout lost on nearly every combination.
Related
Copy trading on US indices is available to ProRealAlgos members as spots open.