Immediate or cancel, usually shortened to IOC, allows whatever eligible quantity can execute immediately and cancels the remainder. Fill or kill, or FOK, requires immediate execution of the entire specified quantity or cancellation of the whole order. The key difference is whether an incomplete immediate fill is acceptable.

CrowdSent logo

Neither instruction supplies a price by itself, and neither guarantees that liquidity will exist when the order arrives. To understand the outcome, read timing, quantity and price conditions together. The worked examples use a simplified market and make the assumed available liquidity explicit.

Three fields, three different questions

An order’s side and size say what quantity is being bought or sold. Its price instruction specifies which prices are permitted. Its time-in-force or execution condition says how long it can remain eligible and whether an incomplete immediate execution is allowed.

The Nasdaq Canada advanced-order description explains IOC as executing eligible quantity with the residual canceled, and FOK as executing entirely or returning canceled in its order book. That is a useful concrete venue example, not a promise that every broker routes these instructions in the same way.

The SEC’s FOK definition likewise requires immediate execution in full or cancellation without a partial execution. The practical test is therefore not merely whether the desired price appeared on a screen. It is whether the whole required quantity was executable under the applicable conditions.

Our market order versus limit order guide covers the separate price dimension. In the following scenarios, every order is a buy limit order so that the price boundary remains visible.

Scenario one: immediate or cancel accepts the available portion

Imagine an order to buy 300 shares with a limit of 20.05. Immediately executable offers in our hypothetical market are 80 shares at 20.00, 120 at 20.03 and 150 at 20.08.

Assume all stated quantities are accessible to this order, there are no competing changes and the venue allows the relevant aggregation. The first two levels are within the 20.05 limit. The third is too expensive.

An IOC instruction can therefore fill 200 shares: 80 at 20.00 and 120 at 20.03. Their cost is 1,600 plus 2,403.60, or 4,003.60 before fees. The quantity-weighted average price is 20.018.

The unfilled 100 shares are canceled. The final accounting is requested 300, executed 200 and canceled 100. The resulting purchase is 200 shares, not zero shares and not the full 300.

The word canceled often creates confusion here. It applies to the remainder, while completed executions still count. An order record that displays both fills and a cancellation can be completely consistent. Read the quantities before interpreting a final status label.

Scenario two: FOK rejects an incomplete result

Keep the requested 300 shares, the 20.05 limit and the same assumed offers. Only 200 shares are executable within the limit. That is insufficient to satisfy a 300-share FOK instruction.

Under these conditions, the whole order is canceled without a fill. It does not first buy 200 and then cancel 100, because that would violate the full-quantity requirement. It also does not wait indefinitely for the remaining 100 to appear.

The final accounting is requested 300, executed zero and canceled 300. The outcome differs from an immediate or cancel order even though the side, price limit, requested size and visible offers were identical.

This difference has a direct reconciliation consequence. Someone examining only the canceled status could miss a 200-share IOC purchase, while someone assuming every immediate order takes available liquidity could incorrectly invent a FOK purchase. The execution record resolves both errors.

These examples show behavior under stated rules. They do not establish that partial execution or no execution is universally preferable. That depends on the purpose of a specific order and the constraints that apply to it.

Scenario three: enough quantity within a different limit

Now change the buy limit to 20.08 while keeping the requested size at 300. In the same static example, the order can access 80 shares at 20.00, 120 at 20.03 and 100 of the 150 shares offered at 20.08.

The total cost would be 1,600 + 2,403.60 + 2,008 = 6,011.60 before fees. The average is approximately 20.0387. Both immediate or cancel and fill or kill orders can fully execute under these deliberately specified conditions.

The example does not mean a FOK order must trade at one single price or with one counterparty. The relevant requirement is the entire quantity under the permitted execution process. Whether multiple orders or price levels can be combined is governed by the market’s rules.

It also does not mean increasing a limit creates liquidity. We changed which existing hypothetical offers were acceptable. In a live market, those offers may change, disappear or be unavailable through the chosen route before execution.

A screenshot is therefore evidence of what a display showed at a time, not a reservation of inventory for a later instruction. Our slippage guide explains why reference observations and actual execution reports must remain separate.

Do not substitute all-or-none without reading the rules

All-or-none, or AON, addresses full quantity, but the label by itself should not be assumed to describe the same duration as FOK. In general educational descriptions, AON may be able to wait for a complete fill, whereas FOK imposes immediate completion or cancellation.

Actual implementations can combine conditions differently. The Nasdaq options rules specify that an AON order in that particular framework may only be entered as IOC and describe how eligible quantities can be aggregated. This is precisely why a glossary cannot replace the applicable venue specification.

Before comparing order types, record the instrument and market as well as the acronym. A broker interface can offer only a subset of a venue’s supported instructions or apply additional routing constraints. Unsupported combinations may be rejected rather than converted into what the customer imagined.

If the order is routed, also distinguish a customer-level instruction from individual routed messages. The description of one exchange’s order book does not automatically describe the entire broker’s execution process across multiple destinations.

Reconcile immediate or cancel and fill or kill quantities

Use three separate totals: original quantity, cumulative executed quantity and remaining quantity. Then identify what happened to the remainder: still active, canceled, expired or rejected. A status word without those totals is an incomplete explanation.

In our first example, 300 requested equals 200 executed plus 100 canceled. In the second, 300 equals zero executed plus 300 canceled. In the third, 300 equals 300 executed with nothing left over.

These identities are useful when checking a downloaded activity record. Keep order identifiers and execution identifiers distinct because one order can generate several fills. Do not average fill prices without weighting by the corresponding quantities.

Finally, separate a request from an acknowledged result. Sending a condition, cancellation or replacement does not establish that it was accepted exactly as intended. Check the accepted fields and final reports, particularly if any part of an earlier order could already have executed.

The reliable reading sequence is price eligibility, immediately available quantity, permitted aggregation, and final executed amount. That sequence explains IOC and FOK outcomes without treating either acronym as a guarantee of speed, price or a completed position.

Frequently asked questions

Can an immediate or cancel order fill completely?

Yes. IOC permits a full immediate fill when the entire quantity is available under the accepted conditions. It also permits a partial fill or no fill. Only the portion that does not execute immediately is canceled.

Can a fill or kill order have a partial fill?

Under the standard FOK condition, no. It must execute the specified quantity immediately in full or be canceled without a partial execution. If a record appears inconsistent, first verify the accepted condition, order identifier and venue-specific implementation.

Does immediate or cancel determine the highest price I can pay?

No. The price instruction is a separate part of the order. A buy limit supplies a maximum execution price, while IOC supplies an immediate-execution condition. Always read the combination rather than assuming the timing acronym includes a price cap.

Why does a canceled IOC order still show a position?

The cancellation can refer only to its unfilled remainder. If 200 of 300 requested shares executed before the other 100 were canceled, the purchase remains 200 shares. Read cumulative fills and holdings rather than interpreting canceled as no transaction.

Does FOK require one counterparty at one price?

Not necessarily. It requires completion of the full quantity under the permitted execution process. Whether eligible liquidity can be aggregated across orders or levels depends on the venue and instruction. The worked example states that aggregation assumption explicitly.

Is FOK the same as all-or-none?

They both involve full quantity, but duration and permitted combinations can differ. General AON descriptions can allow waiting, while FOK requires immediate completion. Some venues require AON to carry IOC, so check the specific market rather than relying on the name.

Why can a visible quote fail to produce an IOC fill?

The quote may change before arrival, sit beyond the limit, be inaccessible through the route or fail another eligibility condition. A display is not reserved liquidity. Compare the order’s accepted terms with its actual execution time and reports.

Does immediate mean a guaranteed number of milliseconds?

The acronym is an execution instruction, not a universal end-to-end latency promise. Submission, routing, validation and matching involve the relevant systems. Consult the venue and broker documentation instead of attaching a fixed time interval to the word.

Can I safely resubmit the original size after a partial IOC?

Do not infer the needed quantity from the original request alone. First establish the cumulative executions and current position. Reusing the original size after an earlier partial fill could create a total position larger than the originally contemplated amount.

What should an IOC or FOK reconciliation contain?

Record the accepted type, side, quantity, limit, venue or route, timestamps, individual fills and canceled amount. Check that the original quantity reconciles with the final outcomes. This makes a partial fill distinguishable from a full rejection or cancellation.

For another way to organize your market research, explore CrowdSent. Use sentiment alongside original economic releases and your own checks.

Educational information only. This article does not provide investment advice or predict market returns.