← Glossary

Immediate-or-Cancel (IOC)

Orders & execution

Immediate-or-Cancel, usually written IOC, is an instruction you attach to an order that tells your broker's system: fill whatever part of this you can right now, and cancel the rest instead of leaving it sitting on the order book.

It belongs to a category called "time in force," which is just the rule that says how long an order stays active before it's pulled. A normal limit order might stay open all day or until you cancel it. An IOC order effectively lives for a fraction of a second — it hits the market, takes whatever matching shares or contracts are available at your price or better, and anything left unfilled disappears rather than waiting for the next buyer or seller to show up.

The nuance that trips people up is the difference between IOC and a related instruction, Fill-or-Kill (FOK). FOK demands the entire order be filled immediately or the whole thing is cancelled — no partial fills allowed. IOC is more forgiving: partial fills are fine, it just refuses to let any leftover quantity rest on the book waiting for a future match. So if you send an IOC order for 1,000 shares and only 300 are available at your limit price, you walk away having bought 300, with the other 700 cancelled automatically, not lingering as an open order.

IOC is a control on patience, not on price. You still set a limit price (or trade at the market), but the IOC tag decides what happens to the unfilled remainder, not how aggressive the price itself is.

Why it matters on the desk

Day traders use IOC to avoid getting a stale, half-forgotten order sitting on the book after a fast-moving entry or exit attempt — it guarantees you know instantly how much filled and are never left with a resting order in a market that's already moved on.

An example

Suppose a stock is trading at $50.10 and you place a buy limit order for 500 shares at $50.10 with an IOC instruction. If only 200 shares are available at that price the moment the order reaches the exchange, you get filled on 200 and the remaining 300 are cancelled immediately — you don't end up with a resting order at $50.10 that could fill later if the price comes back down.

Learn it by trading it.

Every term in this glossary shows up daily on our live desk.

Watch a morning, free