OCO (One-Cancels-Other) Order
A pair of linked orders where the execution of one automatically cancels the other, commonly used to set both a take-profit and stop-loss simultaneously.
See OCO (One-Cancels-Other) Order in real trade signals
Tradewink uses oco (one-cancels-other) order as part of its AI signal pipeline. Get signals with full analysis — free to start.
Explained Simply
An OCO order lets you place two conditional orders at the same time: typically a limit order above the current price (take-profit) and a stop order below it (stop-loss). When one fills, the other is automatically canceled.
Example: You buy AAPL at $200. You place an OCO with a limit sell at $220 and a stop-loss at $190. If AAPL hits $220, you take profit and the $190 stop is canceled. If AAPL drops to $190, the stop executes and the $220 limit is canceled.
OCO orders are essential for day traders who cannot monitor every position. Not all brokers support native OCO — some require bracket orders which accomplish the same goal.
What Is an OCO Order?
An OCO (one-cancels-other) order is a pair of linked orders where the execution of one automatically cancels the other. The most common use case is simultaneously protecting a position with both a take-profit target and a stop-loss: placing a limit order above the current price and a stop order below it as a linked pair. Whichever condition is met first triggers its execution, and the unfilled order is immediately canceled. This eliminates the risk of both orders filling if price gaps through both levels, and removes the need to manually cancel the surviving order after one executes. OCO orders are supported natively by most major brokers, though the exact implementation and naming conventions vary — some platforms call the same concept a bracket order when combined with the original entry.
OCO vs Bracket Orders
A bracket order extends the OCO concept to include the original entry order as well: it places an entry order plus two linked exit orders (profit target and stop-loss) as a single package. When the entry fills, the two exit orders automatically become active as an OCO pair. This simplifies the entire trade lifecycle into one submission. OCO orders, strictly speaking, only define the relationship between two exit orders — they assume you are already in the position. Bracket orders are the preferred mechanism for algorithmic trading systems because they atomically define the entire trade`s risk parameters at entry. If the entry order is not filled (e.g., a limit entry that expires), the OCO exit orders are also canceled automatically, preventing orphaned orders in your account.
Broker Support and Implementation Differences
OCO order support varies across brokers. Alpaca, Interactive Brokers, TD Ameritrade, and most professional platforms natively support OCO and bracket orders. Some retail brokers (and certain crypto exchanges) do not have native OCO but provide bracket order interfaces that accomplish the same result. A few platforms only allow conditional orders that simulate OCO behavior through polling — these are inferior because there is a gap between when one order fills and when the other is canceled, creating a brief window of risk. In crypto, most CEXs support OCO; DEXs do not — exits must be managed off-chain. Tradewink`s TradeExecutor handles the variation by placing native OCO when the broker supports it and implementing server-side cancellation logic when it does not.
OCO Orders for Day Trading
OCO orders are especially valuable for day traders who cannot monitor every open position simultaneously. Rather than watching price action and manually placing a stop-loss after each entry, OCO allows the trader to pre-define both the reward and risk parameters at the moment of entry. This enforces discipline by making the risk-reward ratio explicit before the trade is entered. A well-designed OCO setup specifies a 2:1 or 3:1 reward-to-risk ratio — the profit target is two to three times the distance to the stop-loss. This ensures that even a 40% win rate produces net profits. Tradewink`s day trade pipeline calculates stop-loss and profit target levels from ATR and support/resistance analysis, then submits them as a bracket order with OCO exit logic for every executed trade.
Advanced OCO Strategies
Beyond the basic take-profit / stop-loss pairing, OCO logic extends to more sophisticated exit strategies. Scale-out OCO: instead of one profit target, place multiple OCO-linked limit orders at different price levels to scale out of a position incrementally while keeping a trailing stop. Re-entry OCO: after a target is hit and the position is closed, an OCO can link a re-entry limit order below with a cancellation trigger above — automatically setting up a re-entry on pullback while canceling if price moves further away. Dynamic OCO: some algorithmic platforms support modifying OCO orders in real time as price evolves, moving stop-loss levels to break-even or trailing the profit target upward. Tradewink`s SmartExecutor supports dynamic trailing stop updates that cancel and resubmit the stop leg of the OCO as the trade progresses.
How to Use OCO (One-Cancels-Other) Order
- 1
Understand OCO Structure
An OCO (One Cancels the Other) order links two orders together. When one order executes, the other is automatically cancelled. Most commonly used to set a take-profit and stop-loss simultaneously — whichever triggers first cancels the other.
- 2
Set Up an OCO for Trade Management
After entering a long position at $50: place a sell limit at $54 (take-profit) and a sell stop at $47 (stop-loss) as an OCO pair. If $54 is hit, the stop at $47 cancels automatically. If $47 is hit, the take-profit at $54 cancels.
- 3
Use for Entry Triggers
If you're watching a consolidation and want to trade the breakout in either direction: place a buy stop above resistance and a sell stop below support as an OCO pair. Whichever breaks first, you're in — and the opposite entry cancels.
Frequently Asked Questions
What is a one-cancels-other (OCO) order?
An OCO order links two orders together so that when one is executed, the other is automatically canceled. The most common use is pairing a limit sell order (take-profit) above the current price with a stop sell order (stop-loss) below it. If price rises and triggers the take-profit, the stop-loss is canceled. If price falls and triggers the stop-loss, the take-profit is canceled. This prevents both orders from filling simultaneously and removes the need to manually cancel the surviving order after one executes.
What is the difference between an OCO order and a bracket order?
An OCO order defines only the exit side of a trade — it links a profit target and a stop-loss for a position you are already in. A bracket order includes the original entry order plus the two linked exit orders as a package. When you submit a bracket order, you are defining the entry, the take-profit, and the stop-loss simultaneously. When the entry fills, the exits activate as an OCO pair. If the entry does not fill, the exit orders are automatically canceled. Bracket orders are more complete and are preferred for algorithmic trading systems.
Do all brokers support OCO orders?
Most major stock brokers support OCO orders natively (Alpaca, Interactive Brokers, TD Ameritrade, E*TRADE, Schwab). Some platforms use different terminology — calling them `bracket orders` or `conditional orders`. Crypto exchanges vary: Binance, Coinbase Advanced, and Kraken support OCO; decentralized exchanges (Uniswap, Curve) do not support conditional orders at the protocol level. When a broker does not support native OCO, trading systems like Tradewink implement server-side logic to cancel the surviving order immediately after one leg fills.
Can an OCO order guarantee my stop-loss fills at the specified price?
No — an OCO stop-loss uses a stop order (market or stop-limit), which has the same execution behavior as a standalone stop. A stop-market order in an OCO is guaranteed to fill but not at a specific price, meaning in fast-moving or gapping markets you may receive a fill worse than the stop level. A stop-limit order in an OCO specifies a minimum fill price but may not fill at all if price gaps past the limit. Most traders use stop-market orders in OCO setups to ensure execution. In highly volatile conditions (earnings gaps, circuit breakers), even stop-market orders can slip substantially.
How Tradewink Uses OCO (One-Cancels-Other) Order
Tradewink uses bracket orders (which include OCO logic) when executing day trades. Every entry is paired with a calculated stop-loss and target. When a broker supports OCO natively, both exit orders are placed simultaneously. For brokers without OCO, Tradewink manages the cancellation logic server-side.
Trading Insights Newsletter
Weekly deep-dives on strategy, signals, and market structure — written for active traders. No spam, unsubscribe anytime.
Related Terms
Learn More
Stop-Loss Strategies: 7 Methods to Protect Your Trading Capital
Learn the best stop-loss strategies for day trading and swing trading. From ATR-based stops to trailing stops, percentage stops, and AI-driven dynamic exits.
Risk Management for Day Traders: The Complete Guide (2026)
Learn the essential risk management techniques that separate profitable day traders from those who blow up. Covers position sizing, stop placement, daily loss limits, and portfolio heat management.
Previous
Descending Triangle
Next
GTC (Good-Till-Cancelled)
See OCO (One-Cancels-Other) Order in real trade signals
Tradewink uses oco (one-cancels-other) order as part of its AI signal pipeline. Get daily trade ideas with full analysis — free to start.