The complaint I hear most about trailing stops is some version of "it triggered and the chart never touched my level." The second most common is the opposite, a trailing stop that never fired at all while a winning position gave back everything. Both usually trace back to the same gap. Traders picture a stop that glides behind price at a fixed distance, always armed, always honest. What the exchange actually runs is a small state machine with two or three parameters, and if you set any of them casually, the order does exactly what you told it to do instead of what you meant.
What the platform does with your callback rate
Take the standard case, a trailing stop protecting a long. You give the platform a trail distance. Equity brokers usually take it as a dollar amount or a percentage. Crypto perp venues call it a callback rate, always a percentage. From the moment the order is live, the platform tracks the highest price reached. Your trigger sits below that peak by the trail distance. Every new high drags the trigger up, and it never moves down. When price falls from the peak by the full callback, the order fires.
Two details in that description carry most of the pain. First, the trail measures from the peak reached after the order goes live. Your entry price is invisible to it. Attach a five percent callback the moment you buy, watch price chop sideways and dip four percent, and you are still in the trade even if your plan wanted you out long before. A trailing stop knows nothing about your invalidation level. Second, on almost every platform the order that fires is a plain market order. The trailed level only decides when you exit. Where you exit is whatever the book gives you at that moment, which on a thin pair in a fast move can be a long way below the trigger.
Crypto platforms add a third parameter that catches people constantly, the activation price. On Binance-style trailing stops you can tell the order to start trailing only after price reaches a level you choose, usually somewhere in profit. Until that level actually trades, the order exists but does nothing. I have seen traders set a trailing stop with an activation price above the market, mentally file the position as protected, and then watch a straight-down move sail through untouched because the trailing logic never armed. If the activation price never prints, you do not have a stop. You have a note to the exchange about something that might happen later.
Mark price, last price, and the "it never touched my level" problem
On perpetual futures you also choose which price series the trigger listens to. Last price is the most recent trade on that specific venue. Mark price is a blended fair value built from index prices across several venues, the same number the exchange uses for liquidations. The choice matters more for trailing stops than for fixed ones, because a trailing stop recalculates against every new extreme in whichever series it watches.
Trail off last price and a single wick on your exchange, one oversized market order into a thin book, can set a new peak and then trigger the callback on the way back down, all inside a candle that other venues barely noticed. Trail off mark price and you get the opposite confusion. Mark can touch a level that never prints on your chart, because your chart is almost certainly drawing last price. That mismatch is where most complaints about early triggers come from. Neither setting is wrong. Mark price is usually the saner default for perps since it ignores single-venue nonsense, but you have to accept that the number your order watches and the number your chart draws are two different series.
Equities have their own version of the gap. Most brokers trigger off the last sale, though some use bid or ask, which is worth confirming, and standard stop orders are typically only active during regular trading hours. A trailing stop does nothing for you across an overnight gap. If bad news lands after the close and the stock opens far below your trailed level, the order triggers at the open and fills near the open. The trail you thought was protecting you was fiction the whole time the market was closed. Trailing stops manage path risk inside a session. No stop order of any kind manages gap risk.
When trailing beats fixed
The rule set I actually use:
- The stop you place at entry should be fixed and structure-based. It marks the price where your idea is wrong. A trailing stop cannot do that job because it has no idea what your idea was.
- Add the trail once the trade is meaningfully in profit and the question changes from "was I wrong" to "how much of this move do I keep." Protecting open profit in a trend is the one job trailing stops are genuinely good at.
- Trends you cannot babysit are the strongest case. A breakout that keeps running, momentum continuation, a crypto position held over a weekend. The trail ratchets up while you sleep and a fixed stop does not.
- Ranges are the weakest case. In chop, the trail ratchets to the top of each rotation and a perfectly normal move back through the range takes you out near the bottom of your callback. A fixed stop under the range survives the same rotation.
- Around scheduled volatility, earnings, big economic prints, token unlocks, either widen the trail past the expected reaction or manage the exit manually. A tight trail into a known event is a donation.
Callback distances that survive normal volatility
The fastest way to ruin a good trailing stop is a callback tighter than the asset's ordinary breathing. If something routinely swings a few percent in a day, a one percent trail on a multi-day position gets decided by noise, and the noise does not care about your thesis. The first ordinary retracement in a healthy uptrend hands your position to someone else, the trend resumes without you, and you paid fees for the privilege.
The way I size it is to measure the pullbacks of the actual trend I am trying to ride. Every trend that lasted had retracements that did not end it. Pull up the last several legs, find the deepest pullback that still resolved higher, and set the callback a bit beyond it. If you want something more mechanical, take an average true range on the timeframe that matches your holding period and use roughly two to three times it as the trail. Both methods answer the same question, which is how far this asset moves against the trend while the trend is still fine. And if the callback you would need feels uncomfortably wide, that is usually a position sizing problem wearing a stop-placement costume. Cut the size, widen the trail, keep the same dollar risk.
Before I let any trailing stop rest unattended, I check five things. Which series triggers it, mark or last. Whether an activation price is set, and whether I genuinely want the order dormant until it prints. Whether the callback is wider than the pullbacks I measured. What the order becomes when it fires, market or limit, and if limit, how far the limit is allowed to chase. And whether there is a hard stop sitting underneath it for the scenario where the trailing order never arms. That last check exists entirely because of the activation price failure mode above, and it has mattered more than once.
One thing that surprised me while building trade execution at Blockcircle across a long list of venues is how little of this is standardized. Callback semantics, trigger series, tick-by-tick versus interval updates, whether the fired order is market or limit, every exchange makes slightly different choices and documents them unevenly. Those are the parameters worth rechecking every time you touch a platform you have not used before, because the defaults quietly differ.
None of this makes trailing stops a bad tool. Used as profit protection in a trend, sized off real pullbacks, triggered off a sane price series, and backstopped by a fixed stop, they do quiet, useful work. Used as a substitute for an exit plan, they mostly convert winning trades into small losing ones with extra steps. Spend the ten minutes reading how your platform defines the trigger before you trust one overnight. It is boring and it is worth it.