How to Set Take Profit and Stop Loss
Overview
Take Profit (TP) and Stop Loss (SL) allow users to automatically submit a close order when the price reaches a preset condition. TP/SL can be set when placing an opening order, or added to an existing position at any time.
The platform supports the following TP/SL setup methods:
1.Setting TP/SL when placing an order
2.Setting partial TP/SL on a position
3.Setting position-level TP/SL on a position
*TP/SL set when placing an order defaults to market close. Partial TP/SL on a position supports both market and limit close. Position-level TP/SL is fixed at 100% market close.
Section 1: How to Set TP/SL When Placing an Order
Setting TP/SL when placing an order means specifying the take-profit or stop-loss conditions for the resulting position at the same time as submitting the opening order.
Steps
Go to the Perpetual Contract trading page.
Select the contract you want to trade, e.g., XAUUSD Perpetual Contract.
Choose the trade direction, e.g., Open Long or Open Short.
Select the order type and enter the price, quantity, and other details.
Locate the "Take Profit / Stop Loss" section in the order panel.
Enable the take-profit or stop-loss setting.
Enter the take-profit trigger price or stop-loss trigger price.
Confirm the order details and TP/SL settings.
Click the order button to submit.
Once the opening order is filled, the TP/SL settings take effect.
📚Example
The current XAUUSD Perpetual Contract price is 6,000 USD.
A user plans to Buy to Open Long and sets:
Take-Profit Price: 6,200 USD
Stop-Loss Price: 5,850 USD
After the order fills, if the market price rises to 6,200 USD, the take-profit triggers and the system submits a market Sell to Close Long order.
If the market price falls to 5,850 USD, the stop-loss triggers and the system submits a market Sell to Close Long order.
Rules for TP/SL Set at Order Placement
1.TP/SL set when placing an order only takes effect after the opening order is filled.
2.If the opening order is not filled, the associated TP/SL will not take effect.
3.If the opening order is partially filled, the TP/SL typically takes effect based on the position formed from the actual fill.
4.TP/SL set at order placement defaults to market close.
5.After TP/SL is triggered, the system closes the position as quickly as possible at the best available market price.
6.Market close does not guarantee filling at the trigger price; the final fill price may be affected by market volatility and order book depth.
Section 2: How to Set Partial TP/SL on a Position
Partial TP/SL allows users to set a take-profit or stop-loss for a portion of an existing position. When the trigger price is reached, the system closes that specified quantity.
Partial TP/SL supports both market close and limit close.
Steps
Go to the Perpetual Contract trading page.
Find the position you want to set in the "Current Positions" section.
Click the "Take Profit / Stop Loss" entry for that position.
Select "Partial TP/SL".
Choose to set take-profit, stop-loss, or both.
Enter the trigger price.
Enter the close quantity or select a close percentage.
Select the close method: market or limit.
If limit close is selected, enter the order price.
Confirm the settings.
Click Confirm to save the partial TP/SL settings.
Partial TP/SL: Market Close
With market close selected, when TP or SL triggers, the system closes the specified quantity as quickly as possible at the best available price.
Market close prioritizes execution speed, but the final fill price may differ from the trigger price.
Partial TP/SL: Limit Close
With limit close selected, when TP or SL triggers, the system submits a limit close order at the user-specified order price.
Limit close offers price control, but does not guarantee execution. If the market moves quickly after triggering, the order may not fill or may only partially fill.
📚Example
A user holds a 1 XAU XAUUSD long position and wants to close 0.4 XAU when the price rises to 6,200 USD.
The user can set:
Take-Profit Trigger Price: 6,200 USD
Close Quantity: 0.4 XAU
Close Method: Market or Limit
When the market price reaches 6,200 USD, the partial take-profit triggers and the system closes 0.4 XAU using the selected close method. The remaining 0.6 XAU position is kept open.
Section 3: How to Set Position-Level TP/SL on a Position
Position-level TP/SL sets a take-profit or stop-loss for the entire position. When the market price meets the trigger condition, the system closes 100% of that position.
Position-level TP/SL is fixed at market close; partial quantity settings and limit close are not supported.
Steps
1.Go to the Perpetual Contract trading page.
2.Find the position you want to set in the "Current Positions" section.
3.Click the "Take Profit / Stop Loss" entry for that position.
4.Select "Position TP/SL".
5.Enter the take-profit trigger price or stop-loss trigger price.
6.Confirm that triggering will close the entire position at market price.
7.Click Confirm to save the position-level TP/SL settings.
📚Example
A user holds a 1 XAU XAUUSD long position and wants to close the entire position at 5,850 USD to manage risk.
The user can set:
Stop-Loss Trigger Price: 5,850 USD
Close Method: Market
Close Percentage: 100%
When the market price reaches 5,850 USD, the position stop-loss triggers and the system closes the entire position at market price.
Section 4: TP/SL Price Setting Rules
When setting TP/SL, the trigger price must be entered correctly based on the position direction.
Rules for Long Positions
For a long position, a rising price typically means profit and a falling price typically means a loss.
Therefore:
The take-profit price for a long position should typically be above the current price or entry price.
The stop-loss price for a long position should typically be below the current price or entry price.
📚Example:
A user opens a long position in XAUUSD at 6,000 USD.
The take-profit price can be set at 6,200 USD.
The stop-loss price can be set at 5,850 USD.
Rules for Short Positions
For a short position, a falling price typically means profit and a rising price typically means a loss.
Therefore:
The take-profit price for a short position should typically be below the current price or entry price.
The stop-loss price for a short position should typically be above the current price or entry price.
Example:
A user opens a short position in XAUUSD at 6,000 USD.
The take-profit price can be set at 5,800 USD.
The stop-loss price can be set at 6,150 USD.
Section 5: Validation Rules for TP/SL Settings
To prevent user errors, the system validates TP/SL inputs. Common validation rules are listed below.
1. Trigger price cannot be empty
After enabling take-profit or stop-loss, the corresponding trigger price must be entered.
If the trigger price is left blank, the system cannot submit the setting.
📚Example prompt:
Please enter the take-profit trigger price.
Please enter the stop-loss trigger price.
2. Trigger price must be greater than 0
The TP/SL trigger price must be a valid price greater than 0.
If the user enters 0, a negative number, or invalid characters, the system will prompt re-entry.
📚Example prompt:
Please enter a valid trigger price.
3. Trigger price must meet price precision requirements
The trigger price must conform to the price precision allowed for the current contract.
📚For example, if a contract supports a maximum of 2 decimal places, the trigger price cannot have more than 2 decimal places.
Example prompt:
Price precision does not meet the current contract rules.
4. Long position take-profit price must be above the current reference price
When setting take-profit for a long position, the TP trigger price should typically be above the current reference price.
If the long position take-profit price is at or below the current reference price, it may trigger immediately or fail to be set.
📚Example prompt:
Long position take-profit price should be above the current price.
5. Long position stop-loss price must be below the current reference price
When setting stop-loss for a long position, the SL trigger price should typically be below the current reference price.
If the long position stop-loss price is at or above the current reference price, it may trigger immediately or fail to be set.
📚Example prompt:
Long position stop-loss price should be below the current price.
6. Short position take-profit price must be below the current reference price
When setting take-profit for a short position, the TP trigger price should typically be below the current reference price.
If the short position take-profit price is at or above the current reference price, it may trigger immediately or fail to be set.
📚Example prompt:
Short position take-profit price should be below the current price.
7. Short position stop-loss price must be above the current reference price
When setting stop-loss for a short position, the SL trigger price should typically be above the current reference price.
If the short position stop-loss price is at or below the current reference price, it may trigger immediately or fail to be set.
📚Example prompt:
Short position stop-loss price should be above the current price.
8. Close quantity cannot be empty
When setting partial TP/SL, a close quantity or close percentage must be entered.
If the close quantity is left blank, the system cannot submit the setting.
📚Example prompt:
Please enter the close quantity.
9. Close quantity must be greater than 0
The close quantity for partial TP/SL must be greater than 0.
If the user enters 0, a negative number, or an invalid quantity, the system will prompt re-entry.
📚Example prompt:
Please enter a valid close quantity.
10. Close quantity cannot exceed the available close quantity
The close quantity for partial TP/SL cannot exceed the current position's available close quantity.
If the user-specified quantity exceeds the available close quantity, the system cannot submit the setting.
📚Example prompt:
Close quantity cannot exceed the current available close quantity.
11. Close quantity must meet quantity precision requirements
The close quantity must conform to the quantity precision allowed for the current contract.
For example, if a contract supports a maximum of 3 decimal places, the close quantity cannot have more than 3 decimal places.
📚Example prompt:
Quantity precision does not meet the current contract rules.
12. When limit close is selected, order price cannot be empty
When setting partial TP/SL with limit close selected, an order price must be entered.
If the order price is left blank, the system cannot submit the setting.
📚Example prompt:
Please enter the order price.
13. Order price must be greater than 0
The order price for a limit close must be a valid price greater than 0.
If the user enters 0, a negative number, or invalid characters, the system will prompt re-entry.
📚Example prompt:
Please enter a valid order price.
14. Order price must meet price precision requirements
The order price must conform to the price precision allowed for the current contract.
📚Example prompt:
Order price precision does not meet the current contract rules.
15. Limit close order price must align with the close direction
When partial TP/SL uses limit close, the order price must be within a reasonable range for the close direction.
Long position close direction is Sell.
Short position close direction is Buy.
To improve the chance of filling after triggering, users should set a reasonable order price. If the order price is too far from the market price, the order may not fill after triggering.
📚Example prompt:
The order price may prevent the order from filling. Please review before submitting.
16. Position-level TP/SL does not support modifying the close quantity
Position-level TP/SL is fixed at 100% close. Users cannot modify the close quantity or close percentage.
📚Example prompt:
Position-level TP/SL will close the entire current position.
17. Position-level TP/SL does not support limit close
Position-level TP/SL is fixed at market close; limit orders are not supported.
📚Example prompt:
Position-level TP/SL only supports market close.
18. Cannot set TP/SL when the position does not exist
If the position has been closed or does not exist, users cannot set position-level or partial TP/SL.
📚Example prompt:
Current position does not exist. Unable to set TP/SL.
19. Cannot set TP/SL when the contract is suspended or under maintenance
If the current contract is suspended, under maintenance, or in a restricted state, users may be unable to add or modify TP/SL.
📚Example prompt:
TP/SL is currently not supported for this contract.
20. Re-setting after a successful setting follows platform rules
If TP/SL has already been set for a position, the system may prompt the user to confirm whether they are adding, modifying, or replacing the existing setting.
📚Example prompt:
This position already has a TP/SL setting. Please confirm whether you want to modify it.
Section 6: How to View TP/SL After It Is Set
After TP/SL is successfully set, users can view it in the following locations:
1.Current Positions section
2.Active Orders or Conditional Orders list
3.TP/SL order list
4.Position details page
The exact display location may vary depending on the page layout.
Users can view the TP/SL trigger price, close quantity, close method, and order status.
Section 7: How to Modify or Cancel TP/SL
Modifying TP/SL
If TP/SL has not yet triggered, users can typically enter the TP/SL settings to modify the trigger price, close quantity, or order price.
After the modification is confirmed, the system will use the updated TP/SL conditions for trigger evaluation.
Cancelling TP/SL
If a TP/SL setting is no longer needed, it can be cancelled from the corresponding order or position page.
Once cancelled, the TP/SL will no longer trigger.
Section 8: Why Is the Fill Price Different After TP/SL Triggers?
The TP/SL trigger price is not necessarily equal to the final fill price.
If a market close order is submitted after triggering, the system fills as quickly as possible at the best available price. The final fill price may be affected by order book depth, market volatility, and order size.
If a limit close order is submitted after triggering, the system submits it at the user's specified order price. Whether it fills depends on whether the market price reaches the fillable condition.
Section 9: Key Considerations When Using TP/SL
TP/SL can help users manage risk, but cannot guarantee that losses will be completely avoided.
After TP/SL triggers, the final fill price may differ from the trigger price.
TP/SL set at order placement defaults to market close.
Partial TP/SL supports both market and limit close; users should choose based on their execution speed and price control needs.
Position-level TP/SL is fixed at 100% market close; it will attempt to close the entire position upon triggering.
Limit close does not guarantee execution; market close may result in slippage.