Safer way to trade in options

Try Ready-made Option Strategy


2X leverage on 200+ stocks

Try Margin Trading Facility

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).


Ready-made Option Strategies

The safer way to trade in options


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).

Sell SL Range
SL PriceMargin
5800Not Allowed

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%).

Quantity (in shares)Sell SL Range
SL PriceMargin
1003250Not Allowed

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.

Never miss a trading opportunity with Margin Trading Facility

Enjoy 2X leverage on over 200+ stocks


140 responses to “Bracket Orders (or OCO - One Cancels Other)

  1. I can see the option of Bracket Order (right click on a Nifty Call in Market Watch window), but nothing happens on clicking on it. What I am missing here?

  2. In order book snap above, i am confused a bit. buy order in 1st leg is executed. but net quantity is -100. BQ is 0 and SQ is 100.. isn’t it contradicting than the order executed.

        1. At the outset, I would like to thank you and Upstox team for the time and
          effort in bringing the bracket order.

          1. One clarification needed, in the article
          Example of a Bracket order
          Nifty May14 Contract at Rs 6760.
          We specify a Square Off Sell Order @ 10 Rs absolute profit (Rs 6770).
          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).

          Let us say, the price reaches 6769 and trailing stop loss has moved to 6764 (am I correct in understanding here) and if the price reverses to 6764, does the stoploss will also move down to 6760 or this will hit with partial profit at 6764.

          2. In the example of margin calculation, 15000, 22500 is
          understood, not getting the figure 7827.5 as to how this is arrived, please

          3. Is the bracket order is available for trading Nifty Options.

          4. Currently I am on freedom plan (1947) is this available or I have
          to switch over to other plan. I trade only in options so please suggest and
          procedure that I need to follow.

          Thanks and Regards

          1. Dear Jagannathan,

            1) SL will only trail up.
            2) Yes trailing SL will move to 6764 you understanding is correct. On price reverse SL will not move down, it will remain at 6764 only.
            3) Right now bracket order is not allowed on options, we will launch it soon.
            4) Bracket order is not available on freedom plan, you need to change the plan from freedom to pro or ultimate plan.


    1. Dear Nirmal,

      Sorry for the confusion, net quantity in this case is +50. While taking the screenshot few previous orders were also present in the order book, for that reason it is showing -100.


          1. I will give nism any futer possibility for full automatic Upstox nest trading ?

          2. Keep that certificate close to you. We offer automated trading for institutional firms already. It depends on rules and regulations to make it cheap for everyone. We are working on it.

        1. To have all orders operational and OCO happens on time, do we have to remain logged-in to trading terminal? or after placing BO, go log-off, everything will be taken care automatically?

          1. Hi Subhendru,

            In short, you can log off after placing the order. The system will take care of the OCO orders automatically even if you log off.

          2. Thanks for a great tool of Bracket order
            is bracket order can also work on commodities and currency ..?

  3. I am not sure if my query is relevant for your this post, if possible please reply. Could I do automatic trade of one scrip on the basis of movement of another scrip. Say, if nifty future is 7230, i wish if Nifty Future reaches 7300, then 7200 call buys automatically in my account. Or if it is possible through any other software please help me know admin and fellow traders.

    1. Hi Ashish,

      This is possible with algo trading. Alternatively I have seen many traders code this strategy using macros and they connect the macro to the front end. The benefit of this is that there is no algo approval needed.


      1. I am not from programming background, zero at Macro!

        Could i get such a Macro from anywhere, in which i just have to change the certain parameters of scrip and prices and expiry etc, and connect it (infact i didn’t understand connect connect with what / how :P)

          1. All is good but why should not full automatic Upstox nest trading Allow For Retail Trader ?

          2. In Bracket order i want to buy when the price goes above then i want to place a entry price then how can we place it , only limit option is available

          3. Dear Dany,

            Currently only Limit order option is available in bracket order, adding stop loss order also in bracket order is what we are currently working. This will take some time, we will keep you updated.


          4. Hello Sir
            Presently i changed my demat acc from vrntura to Upstox
            But i am facing a very big problam
            I trade in nifty and stock option b but in your software i dont found any option to select all script we can add one by one which take so much time and vry confusing .for eg in ventura softeare i want to buy sbin put then in few time i select all puts of sbin and add at a time and buy best 1 or which is most suitable with price n gap different bt here it take too much time to add one by one nd remove one by one and ptice also chane which i want to buy. Nd market watch also become diffcult
            Can you provide this option .

          5. hello sir,
            please tell me,is there a facility to post spread order or 2 leg order on android trading software or ios software on mobile or tab?,,,,,,,,,,,,,,i can trade spread nifty option order,or 2 leg order on windows nse now Upstox software.

          6. hello sir,
            could you tell me,are windows tablets or 2 in 1 tablets supports to trade-spread order or 2 leg order? .eg:- notion ink 2 in 1 intel windows 8.1 tablet.
            thank you

          7. Dear Francis,

            One of the option that might work, open the browser in your tablet and go to Upstox Nest, if that works and you able to place the order, so the next step is to place the 2 Leg order. The option for 2 leg order is available under F&O menu as spread order, while placing the order please select order type as 2L.


          8. Sir please help me once
            About above query i get call but that time i dont have then they say to me call again but i dont recive and i call back to Upstox helpline but they clearly say its not possible so please arrange a call once at 9252063717

          1. Could you help in any manner in this context ?

            Biggest flaw of manual changing of position is that, sometimes/often emotions or per-conceived notions overpower you, and in order save few bucks you end up losing big money!

          2. We’re working on pushing out better software that can help you do this. Probably something along the lines of alerts that get triggered and you can place the trade with a single click.

            Let me ask you this — how often do you trade on your mobile? Do you have an Android smart phone that you keep connected to the Internet? Maybe we can find a way to do this using mobile trading.

          3. I do use Now Online mobile version on Samsung Galaxy Core!

            I can check the price anytime and trade, that is not the problem, main thing is emotional control which is a bit hard in manual position changing, thats why i am looking for something, where trigger based trading can be done!

          4. Hi , can I trade basket order for positional trade or I have to close all trade by same day ?

          5. Dear Hitesh,

            Bracket orders are purely intraday orders. So whatever order placed through bracket order, you need to close the position, otherwise system will close it at 3:15 pm.


          6. When will bracket orders be available for Nifty options and stock options?

          7. Thanks for the BO. Now i should be able to move here and there after placing orders. I have a doubt in Trailing stop loss weather the price can only trail by 1 rupee in both absolute and tick option or by .05 paisa

          8. Dear Mohamed,

            Yes your understanding is correct, it will trail with minimum one rupee, irrespective of absolute or tick option. We are working to further bring down the minimum trail size.


          9. hello,

            what is the absolute and tick size for BO & CO for trading in currency?because unlike equity with 0.05 tick size, currency has tick size of .0025

          10. Dear Mohamed,

            Basically the logic is 20 ticks minimum required to trail the stop loss order, irrespective of the tick size of the instrument. So for currency it will be 20*.0025.


          11. Dear Balachandra,

            Bracket order currently not available for option trading. Good news is we are testing bracket orders for option’s, and hopefully we will launch it in couple of weeks for nifty and stock options both.


          12. Thanks for your prompt reply. I am a now user that is the reason i raised this concern. Have you considered offering margin against shares as a service? It will be great tool to get. Best out of our investment.

          13. Dear Santosh,

            Have you faced any issue with the NEST, if you can shift to NEST then easily you can avail this feature.
            Margin against shares is in the pipeline, it’s difficult as of now to give you any particular time frame that when it will go live, but definitely we are working on it.


          14. Hi Puneet,

            Very good explanation of Bracket Order. Will you be able to place an example of BO for currency. I am confused with absolute & tick value in currency.

            An example would be very helpful from your side.


          15. Dear Gayas,

            Basically the logic is 20 ticks minimum required to trail the stop loss order, irrespective of the tick size of the instrument. So for currency it will be 20*.0025.


          16. I am looking to trade around 25-30 securities in one go with bracket type orders. Is there any other way ?

          17. Hi Pooja,

            The basket order for bracket order is a bit complicated process as compared to normal basket. We have raised the request to our technical team, we will keep you updated.


          18. hi puneet sir,
            When we can get bracket order facility for web traders?please kindly provide barcket order to web based traders..

          19. What happens if the BUY order gets executed but the neither the SQUARE OFF order not the STOP LOSS order gets executed within the same day?
            Are the orders carried over to the next day?

          20. Hi Rajarshi,

            As bracket orders considered as a intraday order, in the above mentioned scenario, system will do the square-off at 3:15. This position will not be carried forward.


          21. Hi Punnet, I am looking to add 20-25 securities with bracket order in the basket per day. Is it possible through some other way ?

      2. Hi Puneet,

        Could you please give me a link where I can find an example of how to connect Macros to the front end.. I would great appreciate any practical example.


          1. Hi Sachin,

            Currently bracket order is only available on Nest trader, we are working to get it enabled for web, mobile version will take time.

            Good news is that we are testing cover order functionality with Limit orders, hopefully we will be able to provide this functionality by mid November.


          2. can i place bracket orders for intraday trading for stocks likes dlf and tata motors in nse and bse cash markets.

          3. Dear Sachin,

            At present bracket order is only available in Nest Trader, we are working to get it enabled on web soon.

            Cover order with Limit orders is due for the next release, we will update you once it is released.


        1. Interestingly, I have seen most of the traders prefer to first buy options. I am sure you are currently using cover order for selling options and enjoying the benefit of lower margin. Once it will get activate in bracket order, we will inform you.


    1. Dear Vivek,

      Yes bracket order works in a volatile market. it will be soon available for options also, most likely by end of September.

      Yes trailing SL also move upwards till the target order, it will never come down otherwise the whole purpose of trailing SL in bracket order will went for a toss.


  5. Say I buy a call at 100 and with profit target 50 and trailing SL 5. Suppose by 3.30pm, neither the SL is hit and the profit target is also not achieved. Then what happens to the position?

      1. Dear Mei R,

        Bracket order is not available for commodities, however we are in talks with the exchange to get it approved. Alternatively you can use the cover order for lower margins.


          1. I am getting the error “BO: Tick Size can’t be found.” Can bracket order be placed only during the market hours?

  6. If the BUY side of a Bracket Order is partially executed (for example 400 out of the desired 1000 quantity), are the SQUARE OFF Order and the STOP LOSS Order activated for the quantity (400) that has been bought?

      1. I made a Bracket Order for 1000 units (40 lots of lot size 25) of Nifty options. The order got executed in 18 steps and hence 18 different sets of Sell Order and Stop Loss Order were created.
        I have been charged the brokerage of ₹20 in each of these 18 mini-orders.
        The same thing happened with another order of 1000 units where the BUY order was executed in two blocks of 500 each and I was charged the ₹20 brokerage separately for each block.

        In my opinion, I should be charges ₹20 as brokerage for the entire 1000 units of Nifty options as it was a single order that I had placed.
        Is charging 18 x ₹20 the official RKSV policy or is it a software goof-up?

        1. So what happens here is, the charge of Rs. 20 is applied on every unique order number. When you make a bracket order that executes in parts — each part will have a separate order number associated with it (and a separate set of Take Profit/Stop Loss) and you get charged separately.

          Now, in a regular order (non-bracket), this doesn’t happen because a partial fill is generated within the same order number from the exchange. But it does happen on bracket orders because each partial “trade” becomes a new order at the exchange with it’s own square off / profit taking leg.

          What I can recommend is maybe you try out the Pro Plan wherein there’s a flat fee for unlimited trades. That way, if you use bracket orders heavily, you won’t pay brokerage with each leg.

          1. Bracket Orders is purely an Intraday product and thus cannot be converted. To carry over the position you need to square off the position and then re-initiate the position in Carry forward product which will require full margins.

  7. When the BUY side of a bracket order is executed, I have a change of mind and I want to carry over my position to the next day.
    Will it suffice to Cancel all the SELL orders?

    1. Bracket Orders is purely an Intraday product and thus cannot be converted. To carry over the position you need to square off the position and then re-initiate the position in Carry forward product which will require full margins.

  8. 1) Bracket order facility for web platform
    2) Some amount of margin leverage for Option buying (at least for NIFTY Index)

    Many of us are waiting for a long time for these two MAJOR features. Could you tell us when it will be available? Many thanks!!

      1. Hi

        Thanks for the reply. It shall be great to have BO on web platform by next month!

        Is there any particular reason why Option buying leverage is restricted to Cover orders and not extended to Bracket orders?

        In fact, Bracket orders deserve similar or more leverage as they entail lesser risk due to the trailing stop component which cover orders lack.


          1. If i want to buy 10000 ifci at 24.05 . stop loas at 23.95 t.p 24.15 … Can i use bracket order ???

        1. is bracket order facility now available for options , and please provide me link to download nest for my win7 desktop

  9. do upstocks provide margin benefits for buying and selling bracket orders in options of NIFTY AND BANK NIFTY contracts ?

    1. Bracket Orders (OCO) are a special kind of orders which are margin leveraged and are connected with its associated (Leg) Stoploss orders.
      Thus, no margin benefits are provided in OCO orders.
      In case the orders are traded in Delivery (C/F) mode, margin benefits are applied post trade.

  10. if i place a buy order for 20 lots of nifty with sl and target and it got executed one by one or we can say in some parts, then how is the brokerage will be calculated, will it be per executed order or only 20 from one side as i had placed the single order.

    1. In bracket order for every trade a Stop-loss and Square off order is generated and thus we will charge for each of the orders which gets traded. So basically for every different order number, brokerage will be charged.

  11. Hi am looking to join upstox. I wanted to know if basket orders are available in Nest platform. I usually have 10 or more equity positions overnight. I want to be able to enter all target and stop loss orders in one go at the start of the day using basket orders. Is this feature available?

  12. Dear sir on your demo web platform it seems that Bracket order has two types that is limit order and SL-limit order.My question is whether the same is applicable on live account or not?

  13. How to place oco order from mobile app for crudeoil futures on Mcx …I did not find OCO option from mobile app …Plz clarify

  14. for example if the price of a share is 156 and we want to cover order the somewhere else we need 563 rupees for 100 shares while at upstox we need 763

  15. Hi, Is it possible to place Trigger based entry to Bracket order?
    Ex: If Stock A is trading at 500Rs, but i want to enter trade through basket order only of Stock price reaches/cross 510 Rs.
    This is very usefull to place buy avove/sell below orders.
    If you do not support please support this.

  16. Hi,
    Can we partly Buy/Sell some qty’s in OCO order for taking partial profit, when we are profitable in an Sell/Buy order?

  17. Hi,
    today I have bought JSW steel 275 PE for 5.45 and Target sell 7.45 , stop loss sell 5.25 with trailing SL tick marked after buying JSW Not hit stop loss, and sold by 4.85 price. My question is why stop not hit (5.25 price) , directly hit 4.85. I’m frusteted my clint id 130911. it is the OCO order

  18. Can anyone explain me
    1) “Trigger Price”, “Average Price” and “price” in OCO order
    2) I placed an OCO order of 476.85 with target of 482.70 and SL of 471.85. Order hit the stop loss. when it hit the stop loss has to execute at 471.85 but it executed at 472.80.
    Can anyone explain it executed at 472.85 instead of 471.85.


  19. is there any minimum stoploss requirement in commodities for OCO orders?
    PLanning to switch from Fyers to Upstox!

Leave a Reply

Your email address will not be published. Required fields are marked *