Futures OCO Orders: One-Cancels-Other Explained
Learn how futures OCO orders link two instructions so one execution cancels the other, how profit-target and stop examples work, and what to verify after partial fills.
Direct answer
A futures OCO links two orders so execution of one cancels the other under the applicable rules. It can pair alternative exits, but you still need to verify fills, canceled quantity, and final position status.
OCO links alternatives rather than adding both outcomes
The CFTC glossary defines One Cancels the Other as a pair of orders where a fill in one causes the other to be canceled.
A common position-management example is a profit-taking limit linked with a protective stop.
The purpose is to express two alternative outcomes.
If the profit-taking order executes under the OCO rules, the linked stop should be canceled.
If the stop-side order executes first, the profit-taking order should be canceled.
Do not count both linked orders as two intended position reductions at the same time.
Worked example: one long contract with two linked exits
Assume you are long one futures contract from 5,000.
You create an OCO group with:
If the sell limit fills at 5,020, the long is closed by that execution.
With a hypothetical $20-per-point multiplier, gross P&L is:
(5,020 − 5,000) × $20 = $400.
The linked stop should then be canceled according to the OCO handling that was submitted.
If the stop-side exit executes first instead, the limit side is the order expected to be canceled.
- sell limit at 5,020
- sell stop at 4,980
OCO does not guarantee either exit price
The linkage controls what happens between the paired orders.
It does not turn a stop into a guaranteed execution price.
A stop order can follow its own trigger and execution rules.
A limit order can remain unfilled if compatible liquidity is unavailable.
The market can also move quickly between the trigger, exchange processing, and final fill.
Futures stop versus stop-limit orders explains the price risk of the stop side.
Futures market versus limit orders explains the limit side.
Partial fills need explicit reconciliation
Do not assume the label OCO tells you every partial-fill detail.
A platform can define when an OCO sibling is canceled, reduced, held, or otherwise handled.
If a multi-contract exit fills only part of its quantity, check what happened to the linked order and the remaining position.
For example, a long 5-contract position can become long 3 after a 2-contract partial exit.
The account still has exposure even if a sibling order changed state.
Check the broker's OCO documentation and the final order report rather than inferring behavior from the acronym.
Cancellation status matters after the first execution
An automated cancellation still needs to be visible in the final order record.
Confirm the order ID for each leg, execution quantity, remaining quantity, cancellation acknowledgement, and net position.
If one linked order filled, do not submit a replacement merely because the other order briefly still appears on screen.
Interface updates can lag the underlying order state.
Likewise, do not assume a canceled-looking line proves the position is flat.
Rejected versus unfilled futures orders explains why final status is more important than a transient display. [!TRYMARK] Reconcile one OCO exit Start long 1 at 5,000 with a 5,020 sell limit and 4,980 sell stop. Write the expected order and position states if the limit fills first, then repeat the exercise if the stop-side order executes first.
Use an OCO checklist
Confirm that the product, broker, and platform support the intended OCO behavior.
Record both linked order IDs.
Confirm quantity on both sides matches the intended position management.
Verify the price and trigger rules of each order separately.
Check whether partial fills change the sibling order.
After any execution, confirm the sibling's final status.
Reconcile the net futures position before sending another order.
Keep commissions, exchange fees, clearing fees, and slippage in the final P&L calculation.
This guide explains linked-order mechanics. It does not recommend a particular exit strategy.
Common questions
What does OCO mean in futures trading?
OCO means One Cancels the Other. Two orders are linked so that execution of one causes the other to be canceled under the applicable order-handling rules.
Can I use OCO for a futures profit target and stop?
Many platforms use OCO-style linkage for alternative exits such as a profit-taking limit and a stop. Confirm support and exact behavior with the broker or venue before relying on it.
Does OCO guarantee that I cannot get an unexpected fill?
No. OCO automates linked cancellation, but execution and cancellation still follow platform and venue processing. Check actual fills, partial fills, acknowledgements, and net position.
What happens if an OCO order partially fills?
Behavior can vary by implementation. The linked order may be canceled, adjusted, or handled under platform-specific rules. Verify the documentation and final order status for the actual system.