Topics
    Introduction to Take Profit and Stop Loss (Perpetual and Futures Contracts)
    bybit2024-02-01 09:33:53

    Bybit's upgraded Take Profit/Stop Loss (TP/SL) function offers you the ability to manage your risks more effectively by enabling you to set TP/SL orders simultaneously. With that, you can pre-set your TP/SL orders while placing a Limit order, Market order or Conditional order directly from the order zone. Additionally, you can also modify the TP/SL price before the order is filled.

    • Take Profit orders are filled when prices reach a predetermined level. This feature enables traders to lock in profits and exit the trade. 
    • Stop Loss orders, on the other hand, are filled when prices reach a predetermined level, protecting traders from excessive losses by automatically exiting the trade.



     

    There are two (2) options for applying for your TP/SL orders:
     

    1. Entire Position - The TP/SL applies to the entire position. This setting will allow you to place a single TP/SL order per position. When the TP (or SL) Trigger Price is reached, the Entire Position will always be closed via a Market order.


    2. Current Order/Partial Position - The TP/SL applies to the current order quantity. This setting will allow you to place multiple TP/SL orders per position. When the TP (or SL) Trigger Price of individual TP/SL orders are reached, their respective TP/SL order quantities will be closed via either Market or Limit orders, and the corresponding SL (or TP) order will be canceled.

     

    Read More

    How to Set Up and Modify Your TP/SL (Perpetual and Futures Contracts)


     

    Note: The TP/SL of Spot Trading is different from that of Perpetual and Futures Contracts. To view the details of TP/SL of Spot Trading, please visit here

     


     

    Key differences between the upgraded TP/SL and the previous TP/SL function:

     

    Upgraded TP/SL

    Previous TP/SL

    Settings

    Users can set the TP/SL for Entire Position or Partial Position freely.

    Users will need to manually select the TP/SL preference to either TP/SL for Entire Position or Selected Position. 

    Trigger by

    1. ROI (%)
    2. Change (%)
    3. P&L

    1. Price
    2. ROI (%)

    Reference PriceLast Traded Price, Mark Price or Index PriceLast Traded Price, Mark Price or Index Price

    TP/SL Type

    1. TP/SL via Conditional Market order is supported

    2. TP/SL via Conditional Limit order is supported (only apply to Partial Position)

    Only support TP/SL via Conditional Market order 

    TP/SL Preference

    Entire Position

    Partial Position

    Entire Position

      Selected Positions

    Order execution logic once the trigger price is reached

    TP/SL for the entire position will be triggered and the position will be closed via a Market order.

    The individual TP (or SL) order will be triggered and the respective order quantities will be closed via either Market or Limit orders based on the settings.

    TP/SL for the entire position will be triggered and the position will be closed via a Market order.

    The individual TP (or SL) order will be triggered and the respective TP/SL order quantities will be closed via Market order.

    The maximum quantity of TP/SL orders that can be simultaneously placed

    Only one TP/SL order can be placed per position.

    Multiple TP/SL orders can be placed per position.

    Only one (1) TP/SL order can be placed on the existing position. 

    Up to 20 TP/SL orders can be placed.

     

    Add the position size to an existing position

    The quantity of TP/SL orders will adjust to match the size of open positions.

    The adjustment of the size of open positions does not affect the quantity of TP/SL orders.

    The new TP/SL price set on the new order will replace the existing position TP/SL price after the new order is filled.

    The TP/SL set on the new order will apply to the increased contract size after execution and will exist independently of the position.

    Reduce the Position size on an existing position 

    The quantity of TP/SL orders will adjust to match the size of open positions.

    The adjustment of the size of open positions does not affect the quantity of TP/SL orders.

    The quantity of positions will be reduced based on the order quantity of the closing order, and the TP/SL price will not be affected.

    After partial closing, the quantity of the first (based on the earliest order placement time) set of TP/SL orders will be reduced until it equals the quantity of the existing position.

     

    Example 

    Here are several scenarios below to help you better understand the TP/SL function on Bybit.

     

     

    Scenario 1: Holding multiple TP/SL orders at the same time.

    Assuming the current market price of BTC is $25,000, trader A holds a long open position of 1 BTC and has multiple TP/SL orders at the same time as follows:

     

    TP/SL order A

    • TP/SL Preference: Partial Position (via Conditional Market order)
    • TP Trigger Price: $26,000,
    • Qty:  0.5 BTC

     

    TP/SL order B

    • TP/SL Preference: Partial Position (via Conditional Limit Order)
    • TP Trigger Price: $30,000
    • Order Price: $30,500
    • Qty: 0.5 BTC

     

    TP/SL order C

    • TP/SL Preference: Entire Position
    • SL Trigger Price: $23,000
    • Qty: 1 BTC

     

    The TP/SL function operates as follows in the following market conditions:

     

    a) When the market price of BTC reaches $26,000, TP/SL order A is triggered and closes the position of 0.5 BTC at the market price. Trader A has a remaining position of 0.5 BTC. At this time, TP/SL orders B and C remain valid.

     

    b) When the market price of BTC reaches $27,000, trader A manually closes 0.1BTC, and the remaining position is 0.4 BTC. At this time, TP/SL orders B and C are still in place.

     

    c) When the market price of BTC reaches $30,000, the TP/SL order B is triggered and a $30,500 TP limit order B will be placed into the order book to await execution. 

    • If the price reaches $30,500, the TP limit order B will be filled and the remaining 0.4 BTC position will be closed. At this time, TP/SL order C is canceled automatically.  
    • If the price does not reach $30,500 but falls back to $23,000, the TP/SL order C for the entire position is triggered, that is, the remaining 0.4 BTC are closed at the Market price. At this time, TP limit order B and the excess portion (0.1 BTC) of order C will be canceled. 

     

     

    Scenario 2: A TP/SL order already exists, and a new order with TP/SL (current order) is filled.

    Assuming the current market price of BTC is $25,000, trader A currently holds a long open position of 1 BTC and the TP order is as follows:

     


    TP/SL order A

    • TP/SL Preference: Partial Position (via Conditional Market order)
    • TP Trigger Price: $26,000 
    • Qty: 0.5 BTC

     

    Trader A has now placed a Limit order to buy 1 BTC at the price of $24,000 with a new TP price of $27,000 and an SL price of $22,000 for a quantity of 1 BTC (Current Order).

     

    The TP/SL function operates as follows in the following market conditions:

    a) When the market price drops to $24,000, the position of 0.5 BTC is partially filled, and the current open position size will become 1 BTC. In addition, a new TP/SL order will be placed as follows:

     

    TP/SL Order B

    • TP/SL Preference: Partial Position
    • TP Trigger Price: $27,000
    • Qty: 0.5 BTC
    • SL Price: $22,000
    • Qty: 0.5 BTC

     

    b) When the market price of BTC reaches $26,000, TP/SL order A is triggered and closes the position of 0.5 BTC at the Market price. Trader A has a remaining position of 0.5 BTC. At this time, TP/SL order B remains valid.

     

    c) When the market price of BTC reaches $24,000, the remaining 0.5 BTC Limit order will be filled and another TP/SL order C with 0.5 BTC will be placed. At this time, Trader A's position size increases to 1 BTC, with two (2) TP/SL order B and C.

     

     

    TP/SL Order C

    • TP/SL Preference: Partial Position
    • TP Trigger Price: $27,000
    • Qty: 0.5 BTC
    • SL Price: $22,000
    • Qty: 0.5 BTC

     

     

     

    Scenario 3: A set of TP/SL orders already exists and a new order with only SL order for entire position is filled

    Assuming the market price of BTC is $30,000, Trader A holds a long open position of 1 BTC with a TP/SL order as follows:

    • TP/SL Preference: Entire Position
    • TP Trigger Price: $35,000
    • SL Trigger Price: $20,000
    • Qty: 1 BTC

     

    Trader A then places a Limit order to buy 0.5 BTC at $28,000 with the following new SL order.

    • TP/SL Preference: Entire Position
    • SL Trigger Price:  $18,000
    • Qty: 0.5 BTC

     

    When the market price of BTC reaches $28,000, the Limit order is fully filled. The position size increases to 1.5 BTC. The new SL order will replace the existing TP/SL order as follows. The old TP and SL order will be cancelled.

    • TP/SL Preference: Entire Position
    • SL Trigger Price: $18,000
    • Qty: 1.5 BTC

     

     

     

    Scenario 4: Placing an order with TP/SL for current order upon order creation

    Trader A placed a 0.8 BTC of limit buy long order at $30,000, with a set of TP/SL for current order upon order creation as follows:

     

    TP/SL Order A

    • TP/Sl Preference: Current Order
    • Quantity: 0.8 BTC
    • TP (Limit): Trigger Price = $40,000 ; Order Price = $41,000
    • SL (Market):Trigger Price = $20,000

     

    Assuming the price reach $30,000, the buy long order filled and the TP (limit) and SL (market) is placed. The TP/SL function operates as follows in the following market conditions:

     

     

    a. When the price reaches $40,000, the TP order is triggered and a limit close order with $41,000 order price will be placed into order book to await execution. At this time, the corresponding SL (Market) order with $20,000 trigger price will be cancelled even though the TP limit order is not filled yet. This is because the system treat this set of TP/SL order as a whole. When the TP Trigger Price is reached, the trigger condition is considered fulfilled and the corresponding SL order will be canceled.

     

    intro TPSL 01.png

     

     

     

    b. If the Trader A do not want his SL order to be cancelled right after the TP order is triggered, even if it’s not filled, Trader A can either set the TP and SL orders separately, or use the Close by Limit Order on the position tab to set a TP order.

     

    intro TPSL 02.png

     

     

    FAQ

    How to check my current TP/SL orders and orders history?

    For untriggered TP/SL orders, you can check from Current Orders record while for triggered or cancelled TP/SL orders, you can see this from Order History.

     

    intro TPSL 03.png

     

    intro TPSL 04.png

     

     

    Why the total order quantity can be set for TP/SL partial position exceeds the contract quantity of my opened position?

    Traders can set multiple TP/SL and specify the order quantity via partial position mode. The order quantity for TP/SL partial position will be executed according to the specified order quantity or the maximum of the contract quantity of your open position, whichever is lower, and the corresponding SL (or TP) order will be canceled. No opposite direction of the position will be created.

     

     

     

    Why is the SL price equal to the liquidation price of my position when I choose 50% SL?

    This happens when traders use the maximum leverage allowed. Taking the BTCUSDT contract as an example, under the minimum risk limit level, the maximum leverage that can be used is 100x. The Initial Margin required for 100x is 1%, and the Maintenance Margin required is 0.5%. 

     

    As we can see, the required Maintenance Margin (0.5%) is 50% of the Initial Margin (1%). Therefore, traders can observe the scenario where the SL price is the same as the liquidation price.

     

    Notes:

    – Liquidation will be triggered whenever the Mark Price reaches the liquidation price, regardless of the ROI%/PnL shown for the position.

    – Stop Losses that are worse than the liquidation price may not be triggered, and will be canceled once liquidation takes place.

     

     

     

    Why does the system allow traders to set an SL price that is worse than the liquidation price?

    Every trader may have a different trading strategy, and Bybit does not want to restrict traders. Therefore, the system allows you to set your preferred SL price, even if it's worse than the liquidation price. However, it's important to note that you should check the SL price of your positions before confirming to ensure that your desired SL price is set correctly.

     

     

     

    What happens to my TP/SL (for Entire Position) if my position size is greater than the maximum order quantity?

    Take BTCUSDT as an example. Assuming the maximum order quantity per order is 100 BTC and a trader has a position size of 1,000 BTC, the system will first submit a 100 BTC order into the order book. After the 1st order is executed, the system will then resubmit another 100 BTC order, and so on. Due to this nature, any remaining unclosed orders are still exposed to risk and subject to liquidation. The system will resubmit a TP/SL order with the maximum order quantity until the entire position is fully closed or liquidated, whichever occurs first. 

     

    Please note that for Perpetual and Futures Contract trading under a Unified Trading Account, the submission process is capped at 6 times. For any remaining unclosed position size, traders will need to manually close it by submitting a new order.

     

     

     

    Why was my position liquidated despite having a Stop Loss set? 

    One possible reason could be that the trader selected a different reference price to trigger the Stop Loss, which could have caused the position to be liquidated. Bybit uses the Mark Price to trigger liquidations. For more information, please refer to this article.

     

     

     

    I am using the Mark Price as the reference price for my Stop Loss and the Stop Loss Price is set before my liquidation price. Why am I still getting liquidation?

    This can happen in the event that the system detects that executing a Stop Loss will lead to a greater margin loss as compared to your position margin. When the best available price in the order book is worse than the position’s bankruptcy price, the Stop Loss order will be filled at a price point that will lead to a greater margin loss as compared to the initial position margin. As such, if this Stop Loss is allowed to be executed, a margin loss deficit will occur and additional funds will have to be deducted from your available balance to cover the additional losses. Hence, the system will instead register this as a liquidation so that the deficit will be absorbed by the insurance fund.

     

     

     

    Why was my position liquidated even though the price chart did not reach my liquidation price?

    Please note that Bybit uses the Mark Price to trigger liquidation and not the Last Traded Price. For more details, please visit here.

    Was it helpful?
    yesYesyesNo