IBKR's extended-hours price collar can silently cancel a resting stop order — no error, no notification
Wanted to write this up properly since it's a real platform behavior that can bite you even if you're not doing anything unusual — just holding a position with a normal resting stop order.
Here's what actually happens: during an extended-hours price move, IBKR's own price collar mechanism can reject a routine update to a resting stop order and, as a side effect, cancel the entire order server-side. No error message anywhere. No notification to the account, no alert in TWS that I could find after the fact. If you're not actively watching your open orders screen at that exact moment, you'd have no way of knowing — the position just sits there with real shares and zero downside protection until you happen to check.
I only caught it because I'm running an automated system that checks positions against their expected stops on a schedule — traced it back to the collar specifically by going through IBKR's own order history after noticing the stop had gone missing, since nothing in the live data pointed at the cause directly.
Went looking afterward for whether this was a known issue and found several older threads (some multi-year-old at this point) of other people independently describing the exact same thing — a stop that was there, then wasn't, with no warning. So this isn't a one-off glitch, it's a real recurring gap in how this particular rejection gets surfaced to the account holder, or rather, doesn't.
If you place stops manually and check your account reasonably often, the practical mitigation is simple: after any extended-hours volatility on something you're holding, it's worth double-checking your open orders rather than assuming a stop you placed is still there. If you're running anything unattended — even a simple script, not just a full trading bot — the real risk is higher, since nothing will tell you it happened; you'd only find out when the position's already fully exposed.