Consider a candle with an open of 100, a high of 101, a low of 99 and a close of 100.5. Those four values do not tell us whether the high or the low came first. TradingView's official documentation explicitly describes the intrabar path assumptions used by its default broker emulator.
Identical OHLC, different exits
Assume a long position is already open at 100 when the bar begins. A profit target at 100.8 and a stop at 99.5 are both active. Price follows a continuous, piecewise-linear path, and the first exit touched is assumed to fill immediately at its threshold.
| Case | Intrabar path | First exit | Gross price return |
|---|---|---|---|
| A | 100 → 101 → 99 → 100.5 | Target at 100.8 | +0.8% |
| B | 100 → 99 → 101 → 100.5 | Stop at 99.5 | −0.5% |
Do not quietly choose the better outcome
In this teaching model, we retain an intrabar_order_ambiguous=true flag instead of altering the original bar. Compare target-first and stop-first scenarios and show how much the assumption changes the result. These are scenarios within the simplified model, not guaranteed bounds on real execution.
More precise prices do not guarantee fills
Finer-grained bars or correctly ordered source events can help resolve the sequence. Knowing the price path more precisely still does not prove that a particular order could have filled. Order arrival time, liquidity, partial fills and costs remain separate execution assumptions.
The takeaway
The lesson is not that one-minute bars are useless. A dataset must contain the information required by the question, and missing information should not be filled in to flatter the backtest.
Related notes
Backtest fills versus real fills · Why stop width is not an isolated number
Source and reproducibility
TradingView official documentation — Strategies / Broker emulator
The numerical paths are original teaching assumptions. The test code and results reproduce the matching OHLC and opposite first exits. This is not investment advice or a live-profitability claim.