Bracket Orders (or OCO - One Cancels Other)

Blog | imported-posts


We just launched Bracket Orders earlier this week. Let's go over what they are and how they can help you. A bracket order can be used to limit your loss and lock in a profit by "bracketing" an order with two opposite-side orders. Through this order type, you can place three orders at one go:

  1. The Position Initiation Order (your buy or sell order)
  2. Square Off Order (also known as a Take Profit Order)
  3. Stop Loss Order

The Position initiation order can only be a Limit order. Once that order gets filled by the market, our system will automatically send two orders -- a Square Off Order (which will also be a Limit order) and the Stop Loss order (this will be Stop Loss Market order) based on the parameters set by you. When any of the two orders get traded, the other one will automatically get cancelled by the system. Because of this nature, bracket orders also are termed "One Cancels Other" or OCO.

Another neat feature of Bracket Orders is that you can make your Stop Loss order a Trailing Stop Loss (TSL) order. What that means is that if the stock moves in a profitable direction (up if you placed a buy order, down if you placed a sell order), the stop loss will automatically adjust itself to your benefit! Say, you bought a stock at Rs. 100 with a Trailing Stop Loss at Rs. 80 and a Square Off at Rs. 120. If the stock moves to Rs. 110, then the Trailing Stop Loss will move up to Rs. 90 and your Square Off will stay at Rs. 120!

Both the Square Off Order The Square Off Order Price and Stop Loss Trigger Price are set using the following parameters. Before placing a Bracket Order, you need to tell the system, how to adjust the trailing stop loss as the price moves up and down. Here are the possible ways you can tell the system to adjust the Trailing Stop Loss:

  1. LTP plus Absolute: the system will take the Last Traded Price for trades done for the Order and add the absolute price as desired.
  2. LTP plus Ticks: the system will take the Last Trade Price for the trades done for the Order and add the number of ticks mentioned while placing the order.
  3. ATP plus Absolute: the system will take the Average Traded Price for trades done for the Order and add the absolute price as desired.
  4. ATP plus Ticks: The system will take the Average Traded Price for trades done for the order and add the number of ticks mentioned while placing the order.
  5. Trailing Stop Loss ticks: Trailing tick in Bracket Order is defaulted to a minimum of 20 ticks, that in absolute terms for the NSE exchange comes to 1 rupees (20 ticks*0.05 Rs =1 Rs), even when the user has given less than 20 ticks the system will consider 20 ticks as trailing stop loss by default.

Difference between Absolute and Tick for Bracket Order

When configuring a bracket order, the system lets you specify the Stop Loss and the Take Profit order in either absolute measures or tick measures. What does this mean?


If you select absolute and enter a value of 5, it stands for Rs. 5. A value of 5 in "Absolute" mode for Square Off orders means that the Square Off order will be placed at Rs. 5 of the traded price. If your order got traded at the market at Rs. 101, your square off order will be placed at Rs. 106.


Ticks are just a different way of measuring rupee value. One tick is equal to 5 paise (1 tick = .05 rupee). If you select tick and enter a value of 40 ticks, it stands for Rs. 2 (40 ticks * 0.05 rupee per tick).

Placing a Bracket Order in NEST

You can open a bracket order window in three ways:

  1. Right-clicking on a scrip in Market Watch --> Selecting Bracket Order --> Buy/Sell Bracket Order.
  2. Click on the Orders and Trades menu --> Select Bracket Order --> Buy/Sell Bracket Order.
  3. Using the shortcut key Shift+F3 for buy and Shift+F4 for sell.


Please place your Bracket Order on the entry screen above using the parameters described at the beginning of this post.

Please note that in the case of Stop Loss orders, if selecting "Absolute", both the Stop Loss value and Trailing Ticks value will be set in absolute value (Rs) terms. If you select "Ticks", both the Stop Loss value and Trailing Ticks will be set as per Ticks.


Modifying a Bracket Order

You can modify the limit price of the first leg of a bracket order, if it is not fully traded. In case the first order is fully traded, you will be able to modify the limit price and trigger price of the profit-booking and stop loss order respectively.


Exit Bracket Order

Bracket Orders cannot be cancelled. Instead, they can be "exited." Click on the "Exit" button from the Order Book to exit a Bracket Order. If you exit from a Bracket Order and your initial order was never traded, it will cancel the initial order. If the initial order was traded, then the system will modify the Square Off order from Limit to Market and cancel the Stop Loss order. This will execute the Square Off order in the market to close your position and close any open orders.

Example of a Bracket order

Let's run a complete example: Using the above diagram, we place an initial buy bracket order for a Nifty May14 Contract at Rs 6760. We specify a Square Off Sell Order @ 10 Rs absolute profit (i.e. take the profit if the price reaches Rs 6770 or above). We also specify a Stop Loss @ 5 Rs absolute with a trailing tick value of Rs.1 (meaning the stop loss will trail up/down every time the price moves by Rs. 1).

Once we press "Submit", the Bracket Order algorithm will send the first order (Buy Nifty May 14 Contract @ 6760). After the original order has been traded, the Bracket Order algorithm will immediately send the corresponding Square Off (Take Profit) and Stop Loss orders. The Square Off Sell Limit order is sent @ Rs 6770 and the Stop Loss Sell Order is sent @ 6755.

Now imagine the price moves to 6760.5 - in this case, absolutely nothing changes to the trailing stop loss since the price has not moved by Rs 1. If the price now moves to 6761, the trailing stop loss algorithm automatically adjusts the stop loss price from Rs 6755 to Rs 6756. The trailing stop loss algorithm will keep trailing the underlying price in one rupee increments up until 6769 Rs (1 rupee shy of the 6770 Take Profit/SquareOff order).

These two orders will remain in place until either the Stop Loss or Square Off order gets hit. When one gets hit, the  algorithm automatically cancels the other.

Margin requirement for bracket order

An example is the best way to show the margin requirements for a Bracket Order. Let's say you place a buy Bracket Order on Nifty Futures where the Last Traded Price (LTP) of Nifty was Rs. 6,200. Risk rules dictate that the stop loss order must be within 5% of the price.

The margin calculation is calculated as the higher of:

  1. Price difference (in %) between Leg 2 SL order and Leg 1 Last Traded Price * 1.5
  2. Minimum Margin % of the value traded

The applied margin is as displayed below for different stop loss prices (minimum margin is 2.5% for Nifty Futures).

[table id=52 /]

Example of a Bracket Order: Equities

A client places a buy Bracket Order on INFY where the LTP of INFY is 3665, and she would be allowed to place a stop loss order in the range of up to 10 % downside; therefore, she can place a sell stoploss at a price of 3482 or above. The applied margins are as displayed below for different stop loss prices (Minimum margin is 5%).

[table id=53 /]

You can grab margin files at our Dropbox.


Bracket Orders will help protect you from steep losses and capture profits when you don't want to actively monitor the market. They also come with the additional benefit of Trailing Stop Losses which reduce the size of your potential losses when the market moves in your favour. Once you get the hang of using them on NEST, you will start to realize why they are so powerful for the active trader.

Download IconDownload the Upstox App Today