Momentum trading
How trailing stops work on momentum trades
By the PatternX team · Published
Short answer
A trailing stop tracks the highest price since entry, the high-water mark, and starts an exit once price falls a set distance below it (a short tracks the low instead). On fast momentum trades it decides when the exit begins, not the price you get: gaps, spreads, slippage and partial fills can make the realized exit materially worse than the trail level.
The three parts of a trailing stop
A trailing stop is a stop-loss that only moves in your favor. Three settings define it, and each one changes when it fires.
The high-water mark. For a long position, this is the highest reference price seen since the fill. It ratchets up with each new high and never moves down. A short uses the mirror image: a low-water mark that only ratchets down.
The trail distance. This sets how far price may retreat from the mark before the stop triggers. As a percentage:
Some traders set the distance in dollars or as a multiple of average true range. A tight trail gives back less on an orderly pullback but fires more often on noise; a wide one rides out noise but gives back more.
The price reference. Which price updates the mark and triggers the stop matters more in thin markets than most traders expect.
| Reference | What it tracks | Trade-off |
|---|---|---|
| Last trade | The most recent print | Matches the chart, but one stray print can set a new high or trigger the stop |
| Executable side | The bid when selling a long, the ask when covering a short | Reflects a real exit price, but a wide spread makes it fire earlier |
| Midpoint | Halfway between bid and ask | Smoother, but not a price anyone can trade at |
In a liquid stock at midday the three are nearly identical. In a premarket mover with a 1% spread they can sit far enough apart to change whether, and when, the stop fires.
A worked example
For example, a long position fills at $10.00 with a 0.5% trail that follows the last trade. All figures are hypothetical.
| Moment | Last trade | High-water mark | Trail level |
|---|---|---|---|
| Fill | $10.00 | $10.00 | $9.95 |
| Price climbs | $10.40 | $10.40 | $10.348 |
| New high | $10.80 | $10.80 | $10.746 |
| Pullback | $10.77 | $10.80 | $10.746 |
| Trail crossed | $10.74 | $10.80 | Exit triggered |
The orderly case. Price drifts down through the trail near $10.75. In a tight market, say a bid of $10.73 against an ask of $10.75, the sell fills around $10.73 to $10.74: roughly 0.6% below the high and a little over 7% above the entry. This is the outcome people picture when they set a trail.
The gap case. Now suppose a headline hits while price is at $10.78, and the next trade prints at $10.52, already 2.1% below the trail level. The stop triggers, but the bid may be lower still, at $10.48 for instance. The exit fills somewhere around $10.48 to $10.52: about 2.6% to 3.0% below the high instead of 0.5%. The trade still makes money only because it had already run.
The same gap early in the trade. If the gap came right after the fill, with the trail at $9.95, a jump to $9.62 would mean a loss of about 3.8%, more than seven times the trail distance.
Why a trail is not a maximum loss
The trail level is a trigger, not a fill price. Between the two, several things can go wrong:
- Gaps. Price can jump past the level between two trades, or between two observations by your software, as in the example. See gap.
- Spreads. Selling a long means selling at the bid, which in thin premarket books can sit well below the last trade.
- Slippage. If the bid shows 200 shares and you need to sell 500, the rest fills lower. See slippage.
- Partial fills. Part of the order fills and the remainder has to chase a falling market.
- Rejections. A broker can reject an order, for example a type it doesn't accept in that session, and time passes before a valid one goes out.
- Stop-limit orders that don't fill. Once triggered, a stop-limit becomes a limit order. If price gaps through the limit, it rests unfilled: you avoid a bad price but still hold the position.
- Halts. Nothing trades during a halt, and the stock can reopen far from its last price.
The honest way to describe a trail is "the exit starts around here", never "this is the most I can lose".
Broker-native and software-managed trails
A trailing order can live in two places. A broker-native trailing stop rests at the broker, which tracks the mark and fires the order on its own systems. It keeps working if your software disconnects, but brokers often accept it only in certain sessions. A software-managed (synthetic) trail is tracked by your trading platform, which sends an ordinary exit order when the level is crossed. It can run in sessions where the broker won't hold a trailing order, but it depends on the platform, its market data and its broker connection staying up. Neither escapes the gap, spread and fill risks above.
How Momentum Lab protects a position
Momentum Lab, part of the Elite plan, chooses protection once, at the fill, and shows it on every position.
Broker Native trailing is used only when all of these hold:
- The position is in Live mode, not Paper.
- The "prefer native trailing" setting is on.
- The trail distance is above zero.
- The entry filled during the regular session.
- The broker supports native trailing orders at that time.
- The session policy isn't "continue through after-hours".
- The hard stop is set to 0.
The default hard stop is 3%, so with default settings positions always use the PatternX Synthetic Trail. So does any position whose entry filled in premarket.
The synthetic trail is evaluated by the engine on every cycle, about once a second, and the high-water mark (the low-water mark for shorts) is persisted, so a restart doesn't reset it; after a restart, orders are re-polled, never resent. In Live mode with a hard stop, a GTC STOP_LIMIT emergency stop also rests at the broker, with its limit 1% beyond the stop. In extended hours that broker-side stop exists only where the broker accepts stops in that session: IBKR does, Alpaca doesn't.
The default trail is 0.5% (1% for Momentum Reversal) and follows the last trade; the executable side or the midpoint can be chosen instead.
For example, take a Live position at a broker that accepts the stop, with a $10.00 average fill. The 3% hard stop sits at $9.70, and the broker-side STOP_LIMIT carries a limit about 1% lower, near $9.60. If price gapped straight from $10.00 to $9.55, that stop would trigger but couldn't fill unless someone was still bidding $9.60 or more. The synthetic exit would keep working the position with marketable limit orders, described in premarket liquidity and spreads.
Two more limits are worth knowing. Price exits act only on fresh data, so if the feed goes stale the synthetic trail waits, while time-based exits still fire. And circuit breakers block new entries without closing open positions, so they're not an exit mechanism. The Momentum Lab guide has the full protection reference, and the engine's design is covered in the Momentum Lab methodology.
Choosing a trail distance
- Compare it with the spread. If the trail follows the bid, a spread that widens by one percentage point around an unchanged midpoint lowers the bid by about 0.5%, enough to trigger a 0.5% trail without any real change in price.
- Compare it with normal movement. If the stock routinely swings 1% within a minute, a 0.5% trail will often exit on noise.
- Test before trading. Backtesting and paper trading show how a distance behaves. Momentum Lab's backtests can compare several trail distances side by side, but they assume a 0.2% spread and 0.05% slippage, which can understate costs in thin premarket stocks.
Frequently asked questions
Does a 0.5% trailing stop limit my loss to 0.5%?
No. The trail sets the level where the exit begins. A gap, a wide spread, slippage or a partial fill can make the realized loss several times the trail distance.
What is the difference between a trailing stop and a regular stop-loss?
A regular stop-loss stays at a fixed price. A trailing stop moves up behind a long position as it makes new highs (down behind a short) and never moves back, so it can protect part of an open gain.
Should a trailing stop follow the last trade, the bid or the midpoint?
Each has a cost: the last trade reacts to stray prints, the bid fires early when spreads widen, and the midpoint isn't a tradable price. In thin markets, look at how far apart the three are before you choose.
Why won't my broker hold a trailing stop in premarket?
Many brokers accept native trailing orders only in the regular session. At IBKR, TRAIL orders work only during regular hours, and Alpaca's stop orders don't trigger outside regular hours, which is why software-managed trails exist.
Does Momentum Lab use my broker's trailing stop?
Only when every condition holds, including Live mode, a regular-session fill and a hard stop of 0. With the default 3% hard stop, positions use the PatternX Synthetic Trail.
What happens to a synthetic trail if PatternX restarts?
The water marks, position state and orders are persisted. After a restart, working orders are re-polled rather than sent again, and the trail continues from the stored mark.