What Is an OCO Order?

A One-Cancels-the-Other (OCO) order is a conditional trading instruction that combines two pending orders: when one is executed, the other is automatically cancelled.

Traders use an OCO order to bracket price moves—such as setting a profit-taking limit and a protective stop—ensuring that only one outcome can occur.

By employing an OCO trading strategy, you lock in potential gains while capping losses without having to monitor the market constantly.

This dual-leg approach is ideal for volatile instruments or when reacting swiftly to key price levels.

Why Use an OCO Order?

  • Automation: Eliminate manual intervention by pre-defining both exit points.
  • Discipline: Enforce your risk management rules (see our Risk Management Strategies guide).
  • Flexibility: Ideal for range-bound markets or breakout scenarios where speed matters.

Ready to try OCO orders?
Open a free demo account and practise risk-controlled trading today.

How OCO Orders Work

An OCO (One-Cancels-the-Other) order pairs two pending orders—typically a limit order and a stop order—so that the execution of one immediately cancels the other. Here’s the step-by-step process of how to place OCO orders:

  1. Select Your Instrument
    Choose the asset you wish to trade (forex, commodities, indices, etc.).
  2. Define Your Limit Order
    – Set a profit-taking price.
    – Example: “Sell at 1.2100” if you’re long on EUR/USD.
  3. Define Your Stop Order
    – Set a protective stop-loss price.
    – Example: “Sell at 1.1950” to limit downside.
  4. Activate OCO Functionality
    – In the order ticket, tick the “OCO” checkbox or select “One-Cancels-the-Other” from the order-type dropdown.
    – Both legs will appear side by side.
  5. Review and Confirm
    – Ensure your limit and stop levels reflect your risk-reward profile.
    – Click “Place Order” to submit the OCO order.

Once submitted, the platform monitors both levels simultaneously. If price hits your limit target, your stop-loss leg is cancelled automatically—and vice versa—allowing for hands-off execution.

Want to master OCO orders?
Open a demo account and try placing an OCO order risk-free.

Key Use Cases & Market Scenarios

Range-Bound Trading
When markets oscillate between support and resistance levels, an OCO order lets you capture reversals without constant monitoring.

  • Example: EUR/GBP trading between 0.8600 and 0.8700. You place a “Sell Limit @ 0.8700” to take profit at resistance and a “Sell Stop @ 0.8575” to guard against a breakdown below support.

Breakout Strategies
In anticipation of a breakout, bracket price action with an OCO order to profit from either direction.

  • Example: Crude oil consolidates at USD 70.00. You place a “Buy Limit @ 70.50” to catch an upside breakout and a “Buy Stop @ 69.50” (effectively a stop-loss on a failed rally) to limit losses if the price reverses.

News-Driven Volatility
Major economic releases or earnings reports can trigger sharp moves. OCO orders automate exits around expected volatility spikes.

  • Example: Ahead of a central bank rate decision, you hold a long position in S&P 500 futures. You set a “Limit Sell @ 5 180” for profit and a “Stop Sell @ 5 000” to limit downside if markets react negatively.

Ready to apply OCO orders in different market conditions?
Open a demo account and test your strategy today.

Step-by-Step Platform Tutorial

WebTrader Platform

  1. Log In & Select Market
    – Sign in to your AvaTrade account and go to “Markets.”
    – Click the instrument you wish to trade (e.g. EUR/USD, Gold).
  2. Open Order Ticket
    – Hit the “Trade” button.
    – In the order-type dropdown, select “OCO (One-Cancels-the-Other).”
  3. Configure Limit Leg
    – Enter your profit-taking price under “Limit Price” (e.g. 1.2100 for EUR/USD).
    – Specify your volume (lots or units).
  4. Configure Stop Leg
    – Enter your protective stop-loss under “Stop Price” (e.g. 1.1950).
    – Ensure volume matches the limit leg.
  5. Set Optional Parameters
    Time in Force: GTC (Good ’Til Cancelled) or choose an expiry date.
    Trailing Stop: toggle on if you want your stop to trail price moves.
  6. Review & Submit
    – Verify both prices, volumes and settings.
    – Click “Place Order” to send your OCO order.

Mobile AvaTrade App

  1. Open the App & Choose Asset
    – Launch the AvaTrade App, tap “Markets” and select your asset.
  2. Initiate an OCO Order
    – Tap the pencil-and-paper “Order” icon.
    – Choose “OCO Order” from the list.
  3. Enter Order Details
    – Tap “Limit Price” to set your take-profit level.
    – Tap “Stop Price” to set your stop-loss level.
    – Confirm the lot size for both legs.
  4. Advanced Options
    – Tap “More Options” to select order duration or add a trailing stop.
  5. Place Order
    – Review the summary showing both legs side by side.
    – Swipe the “Place Order” button to confirm.

Risk Management & Best Practices

Effective use of an OCO order hinges on sound risk management. Here are key considerations and best practices when placing OCO orders on AvaTrade:

  • Match Position Size to Your Risk Profile – Always calculate your position size based on the distance between your entry price and stop-loss level. This ensures that, if the stop leg of your OCO order is triggered, your maximum loss remains within acceptable limits.
  • Allow Sufficient Price Buffer – Avoid setting stops too tightly. Account for typical market noise—wider stop levels reduce the chance of being stopped out prematurely, especially in volatile instruments like forex or crude oil.
  • Use Trailing Stops Judiciously – A trailing stop leg can lock in profits as the market moves in your favour. However, if the trail distance is too small, routine retracements may cancel your limit leg before you capture meaningful gains.
  • Be Wary of Gaps and Slippage – During major news releases or thinly traded sessions, price gaps can cause slippage beyond your stop-loss level. Consider widening your stop or reducing position size around high-impact events.
  • Avoid Over-Leverage – Since OCO orders automate exits, it can be tempting to increase leverage. Maintain a conservative leverage ratio to prevent margin calls if both legs are challenged by sharp market moves.
  • Review Orders Before Sleep or Weekends – If you leave orders running unattended, especially over weekends or beyond your trading time zone, be aware of extended gaps when markets reopen. Consider cancelling OCO orders ahead of major market closures.

Protect your capital with disciplined use of OCO orders.
Open a demo account and practise placing OCO orders with robust risk controls.

Comparison with Other Order Types

OCO vs OTO (One-Triggers-the-Other)

  • OCO links two pending exit orders; execution of one cancels the other.
  • OTO links an initial entry order to one or more exit orders; when the entry is filled, the exit orders become active.
  • Use Case: OCO for exits only; OTO to chain entry and exit in a single workflow.

OCO vs Bracket Orders

  • Bracket Order is a broader term encompassing an entry order with both a profit-taking limit and a stop-loss attached.
  • OCO is effectively the exit component of a bracket order; some platforms refer to “bracket” and “OCO” interchangeably.
  • Use Case: Choose bracket orders when placing both entry and exit in one go; use standalone OCO when you already hold a position.

OCO vs Limit and Stop Orders

  • Limit Order executes only at your specified price or better.
  • Stop Order becomes a market order once your stop price is hit.
  • OCO bundles one of each to automate both profit capture and risk control in one instruction.

Platform Support and Complexity

  • Native OCO: AvaTrade’s web and mobile platforms support OCO out of the box.
  • MT4/MT5: Requires an EA or script to link two pending orders.

Key Takeaway:
OCO orders streamline exit strategies by combining a limit and a stop in one single, automated instruction—offering greater discipline and efficiency compared to placing each order separately.

Real-World Example: Simulated Trade

Imagine you enter a long position on EUR/USD at 1.2000 ahead of a key ECB announcement. To automate your exit, you place an OCO order with:

  • Limit Sell @ 1.2150 (profit target)
  • Stop Sell @ 1.1900 (risk control)

Scenario A – Bullish Outcome

Price rallies post-announcement, hits 1.2150:

  • Your limit leg executes, locking in a 150-pip gain.
  • The stop-loss leg at 1.1900 is automatically cancelled.
  • Result: +150 pips, no further market exposure.

Scenario B – Bearish Outcome

Surprise dovish tone pushes EUR/USD down to 1.1900:

  • Your stop-loss leg executes, limiting the loss to 100 pips.
  • The limit leg at 1.2150 is cancelled.
  • Result: –100 pips, protected from larger drawdown.

This OCO bracket ensures you never end up with both legs filled, maintaining discipline and hands-off risk management.

Summary & Next Steps

You now understand how an OCO order bundles a profit-taking limit and a protective stop into one automated instruction, bracketing price moves and enforcing discipline. Key takeaways:

  • Use OCO for range-bound, breakout or news-driven scenarios.
  • Configure your position size and stop buffer to align with your risk profile.
  • Compare OCO with OTO, bracket, and standalone stop/limit orders to choose the best workflow.

Next Steps:

  1. Practise: Open a demo account and place OCO orders on web, mobile or MT4/5.
  2. Refine: Experiment with trailing stops and different market conditions.
  3. Explore: Read more about Risk Management Strategies to enhance your trading discipline.

Open a free demo account and start mastering OCO orders today!

FAQ

  • What happens if only one leg of my OCO order is partially filled?

    If one leg is partially executed, AvaTrade automatically cancels the remaining volume on the opposite leg once your specified price level is reached.

     
  • Can I modify one leg of an active OCO order?

    Yes. On web or mobile, locate the active OCO order in your “Open Orders” list, click “Modify,” adjust the desired leg, and confirm. The other leg remains linked.

     
  • Are OCO orders guaranteed to execute at my exact price?

    OCO orders are subject to market conditions and liquidity. In fast markets or news events, slippage can occur, so consider adding a small buffer to your price levels.

     
  • Can I use trailing stops in an OCO order?

    Absolutely. Enable “Trailing Stop” on the stop-loss leg when configuring your OCO. As the price moves in your favour, the stop level will follow at your chosen distance.