All-or-None Order
An order instruction requiring the full requested size to execute, whether immediately or over time, without ever accepting a partial fill.
An All-or-None order is an instruction requiring that an order's entire requested size be filled, with no partial fill (see Kaavon's "Partial Fill" glossary definition) ever accepted — but unlike a Fill-or-Kill (see Kaavon's "Fill-or-Kill (FOK)" glossary definition) order, which demands immediate full execution or outright cancellation, an All-or-None order can remain resting on the order book for some time, waiting for enough liquidity to eventually accumulate to fill the complete size all at once.
This distinction matters for traders who specifically need a complete, uniform execution size — for example, to avoid an awkward, mismatched partial position — but who are also willing to wait rather than requiring immediate execution the way a Fill-or-Kill order does. The tradeoff is that an All-or-None order may never execute at all if sufficient matching liquidity never materializes, leaving the trader with an open, unfilled order indefinitely.
Examples
- A trader needing an exact, complete position size but willing to wait might use an All-or-None order rather than a Fill-or-Kill order, which would cancel immediately if the full size can't fill right away.
- Unlike a Fill-or-Kill order, an All-or-None order can remain open on the book for an extended period, waiting for enough liquidity to eventually fill the entire requested size.