Stops, take-profit and brackets
An entry does not go out alone. It carries a stop loss and up to three take-profit rungs, and the exchange holds them next to the position from the moment it fills. This page covers where the levels come from, how a simulated stop fills, and the one place where live differs from backtest and paper.
Where the levels are set
Stop loss, take-profit 1 to 3, break-even, start-trail-after and the trailing stop are strategy parameters. You set them in the strategy parameters panel, per run in the backtester and per instance on paper and live. Each field shows the unit you chose for risk: ticks, points, R, ATR or dollars. The same values live in the run template under [risk], as risk.sl, risk.tp1 to risk.tp3 and the trail keys.
A total position size with no leg sizes becomes the legs. A total that does not equal TP1 plus TP2 plus TP3 is refused with the message, so a typo cannot silently change your sizes.
What fills, and when
A stop always fills on touch: it is a market order once its level trades. A limit order needs the rule you picked, see Limit fills and queue lots.
A stop the market gapped past fills at the next real tick, and slippage applies from there. That fill price can sit where nothing traded, because a simulated fill is a simulation. It is not a defect and it is never snapped to a print, see Fills and slippage.
Three rungs in backtest and paper
Backtest and paper use one bracket order per leg: three take-profit rungs mean three separate stop-loss and take-profit pairs, and each pair covers its own share of the position. This is the model a CME futures account will use as well.
Every closing fill records why it closed, and the trade tables show it as a badge: stop loss, take-profit, trailing stop, break-even, the strategy's own rule, maximum holding time, reverse, flatten, a level that was already passed when the exit was decided, or a close-position order. The engine never guesses: an exit it cannot explain is labelled other.
Live on Bybit
Bybit allows exactly one stop loss and one take-profit attached to a position, so the shape is different there, and this is a venue constraint rather than a preference:
- One entry order per direction, sized at the total, carrying the stop loss and the take-profit at the level of the last rung.
- When it fills, every leg gets a reduce-only limit take-profit, each sitting one tick inside its own rung level. The last leg's limit sits one tick inside the attached take-profit.
- The limits are maker orders on purpose. The attached take-profit closes at market when price touches it, so a limit one tick closer fills first and cheaper.
On a live account you therefore see two take-profit orders one tick apart. That gap is intended, and it stays when the take-profit trails: the attached take-profit moves and the last leg's limit follows it, while each earlier rung keeps and trails at its own level.
Trailing, break-even and time stops
- Trailing stop and start-trail-after: once the trade is the amount in profit that you set, the stop follows the price at the distance you set, in your risk unit. It only ever moves toward the price, never away.
- Break-even: the stop moves to your entry once the trade is the set amount in profit, and to an offset beyond it in ticks if you set one.
- Trade Guardian manages a stop on a manual live position: it takes over an existing stop or places its own, and the stop only tightens. The guardian takes no entries of its own.
- Maximum and minimum holding time: a position held longer than the maximum is closed, and a position younger than the minimum is not closed by a stop, a take-profit or an exit rule yet. Both are counted on trading-bar closes.
Protection rules
- An entry with no real stop is refused and nothing is sent. That covers no stop loss at all, a zero or unusable stop, and a stop on the wrong side of the entry. A stopless entry is an unprotected position the moment it fills, so the label shows it instead of trying it.
- A protective leg is never cancelled on its own. Cancel the entry and its bracket goes with it, or close the position and the exchange removes the pair. Levels are moved, never cleared.
- After a restart the bracket stands at its last levels at once, and the strategy evaluates one bar-close so inherited levels are corrected as if a bar had just closed.