Order Types Explained: Market, Limit, Stop, Stop-Limit and OCO Brackets
An order is a promise about either price or execution, never both. The four types from zero, when each one fails you (slippage, no fill, a stop that never triggers), what CME does with a market order behind the scenes, and how a bracket ties two of them together.
Every order is a promise about one of two things: the price you'll get, or whether you'll get filled at all. No order type promises both, and most of the expensive surprises in a trading account come from expecting the promise the order didn't make. A stop-limit that never fills in a fast market, a market order filled ten ticks away at the open, a stop order that triggered on a wick and sold the low: each one did exactly what it was defined to do.
The four types
| Type | What you're telling the exchange | What it guarantees | Where it fails you |
|---|---|---|---|
| Market | fill me now at whatever is available | execution | price: in a thin or fast market the fill can be several ticks from the last print (slippage) |
| Limit | fill me at this price or better; otherwise wait | price | execution: price can touch your level and move on without filling you, because orders ahead of yours in the queue took the liquidity |
| Stop (stop-market) | when price trades at this level, send a market order | execution once triggered | price after the trigger, and the trigger itself: a single print at the level, including a wick, fires it |
| Stop-limit | when price trades at this level, send a limit order at this second price | a price ceiling or floor after the trigger | execution: if the market gaps or runs through the limit, the order sits unfilled while the position keeps losing |
The first two are entries and exits in their own right. The second two are conditional: nothing happens until price reaches the trigger, and then one of the first two is sent. Which one is sent is the whole difference between a stop and a stop-limit, and it's the difference that matters on the day it matters.
Market and limit: the trade-off in one line
A market order buys execution with price. At a normal moment on NQ, a one-contract market order fills at the ask, one tick above the last trade, and the cost is that tick. At 9:30 AM ET, during a news release, or in the overnight session, the book is thinner and the same order can fill two, five or ten ticks away. Nothing malfunctioned; the promise was execution.
A limit order buys price with execution. A buy limit at 23,000.00 fills at 23,000.00 or lower, never higher. What it doesn't promise is the fill: price can trade at 23,000.00 a hundred times and never reach your order if the contracts ahead of you in the queue absorb every seller. This is the "touched but not filled" experience, and it is the exchange working as designed, first in, first out at each price. To be sure of a fill with a limit, you place it a tick or two inside the level and accept the worse price, which is a market order with a ceiling.
Stop and stop-limit: what happens after the trigger
A stop order rests dormant until a trade prints at the stop price, then converts to a market order. For a stop-loss below a long, that means the position is closed at whatever price is available once the level trades, and in a fast move that can be well below the stop. It is also why stops fire on wicks: the trigger is a single print, not a close, so a spike that touches the level for a second is enough.
A stop-limit converts to a limit order instead, at a limit price you set below the trigger (for a sell). It protects you against being filled far from the stop, and it exposes you to not being filled at all. If price gaps through both the trigger and the limit, the limit order sits on the book above the market while the position runs. On a prop account governed by a drawdown, an unfilled protective order is the more expensive failure of the two, which is why most platforms default the stop-loss in a bracket to a stop-market.
Practitioners split here. Traders on thin or gappy instruments and those who've been filled twenty ticks past a stop lean toward stop-limits with a wide limit offset, treating the small risk of no fill as cheaper than the occasional terrible fill. Index futures day traders mostly run stop-markets, because NQ is liquid enough that the slippage on a stop is usually a tick or two, and the cost of a stop that fails to fill during a spike is the whole account.
What CME actually does with your order
The exchange doesn't run pure market orders. On CME Globex a market order is submitted as market with protection: it executes against the book up to a protection limit a fixed number of ticks from the best price, and anything left unfilled beyond that limit rests as a limit order at the protection price instead of chasing the market. A stop order is stop with protection, the same mechanism applied after the trigger. The practical consequence is that in an extreme move even a "market" order can end up partly unfilled at the protection price, which is a fill you'll see on the order tab as a limit you never placed.
CME also rejects orders priced outside a band around the current market, so a stop-limit with the limit too far from the trigger comes back rejected rather than resting. Platforms translate all of this for you, and most of the time you'll never see it; the reason to know it exists is that on the one day the market moves faster than the band, the order you thought was a market order behaves like a limit.
OCO and brackets
OCO, one-cancels-other, links two orders so that filling one cancels the other. Its everyday use is the exit bracket: a stop-market below a long and a limit target above it, tied so the survivor doesn't become a new entry. In NinjaTrader the bracket is the ATM Strategy, and that post covers what attaches to a fill and what survives a disconnect. The same link works on entries: a buy stop above a range and a sell stop below it as an OCO pair gives a breakout trade in either direction with the other side cancelled on the fill.
The bracket's two legs are the two conditional promises from the table above. The target is a limit, so it promises price and can be touched without filling; the stop is a stop-market, so it promises execution and can slip. Knowing which leg can do what is most of what it takes to leave a bracket alone once it's working.
Reading your fills
After the fact, every order leaves a record with the type, the submitted price and the fill price, and the gap between the last two is the one number worth tracking per order type. Market entries with a consistent tick of slippage are normal; market entries with three ticks at the open say something about when you're entering. Limit targets that were touched and not filled are a fact about queue position, not about the level; moving the target a tick inside the level trades a small amount of profit for a much higher fill rate. Stops that slipped more than two ticks on a normal day are worth a look at the time of day and what was on the calendar.
I enter with limit orders at a level or with a market order when the level is already trading, and every entry carries a stop-market and a limit target as an OCO bracket from the moment it fills. I don't use stop-limits for protection on NQ; the tick of slippage is a known cost, and an unfilled stop isn't a cost I'm willing to price.