Take profit and stop loss
Set automatic exit prices on a new order or an open position, and what happens when they trigger.
TP/SL service on Arc Testnet: Available
What is it?
A take profit (TP) closes your position automatically when the price reaches your profit target. A stop loss (SL) closes it when the price moves against you to your limit.
When a trigger price is reached, the TP/SL service sends a market order to close the position, bounded by 1% slippage and, if you set one, by your Limit Price. If the book can't fill within that bound, the close fails and you get a failed notification. The service runs off-chain and is operated alongside the exchange.
Why would I use it?
- To lock in profit without watching the market.
- To limit a loss if the market moves against you.
What do I need?
How do I set TP/SL?
On a new order
- Tick Take Profit / Stop Loss
It appears when Reduce Only is off.
- Choose Price or ROE %
- Price: enter TP Price and/or SL Price.
- ROE %: enter TP ROE % and/or SL ROE %. The app converts each to a trigger price and shows it.
You can set one leg or both.
- Place the order
As soon as the order is accepted (for a limit order, even before it fills), the app asks your wallet to sign the TP/SL, sized to this order.
On an open position
- Open the TP/SL dialog
In the positions table, click Add (or the edit icon) in the TP / SL column.
- Set the triggers
Enter a TP Price and/or SL Price, or a target gain or loss in % or USD. Trigger by chooses whether the trigger follows the index price (the default) or the last traded price.
- Optional: amount and limit price
- Configure Amount closes only part of the position. The amount applies to both the take profit and the stop loss.
- Limit Price sets the worst price the close may fill at. For a long it must be no higher than the trigger price × 1.05 (5% above); for a short, no lower than the trigger price × 0.95 (5% below).
- Confirm
Press Confirm and sign in your wallet. To remove TP/SL, clear both prices and confirm.
What should I expect?
- From the positions table, a toast (Orders confirmed) confirms the change. Either way, the TP / SL column shows your trigger prices within a few seconds (up to about 30).
- When a trigger fires, you get a notification such as Take Profit triggered or Stop Loss triggered. The close shows in Trade History as TP Triggered or SL Triggered.
- When a take profit and a stop loss are created together, they are linked: when one fires, the other is cancelled.
- Editing TP/SL replaces the existing legs. The app cancels each existing leg, which takes one wallet signature per leg, then creates the new set with another signature. If the last step fails (for example, you reject the signature), the app tells you the position now has no TP/SL and offers to try again (see below).
- When an order adds to an existing position on the same side, TP/SL added in the order form replaces all of that position's existing TP/SL: both existing legs are cancelled (one signature each), even if you enter only one leg. The new legs close only this order's size. If a limit order fills only partly, its TP/SL is still sized to the full order. To protect the whole position, check or reset TP/SL from the positions table afterwards (see Place an order).
- You can mute TP/SL notifications on the Settings page (G then S); see Notifications.
What can go wrong?
Greyed-out TP/SL checkbox: Not available on this network yet
Why: The TP/SL service can't be reached, or TP/SL is not supported on this network.
Place an opposite limit order (with Reduce Only for market-style exits) or watch the position manually. Check back later.
Order placed — TP/SL NOT set
Why: Your order went through, but the TP/SL request failed or its signature was rejected.
Set TP/SL on the open position from the positions table.
Your previous TP/SL was cancelled, but the new TP/SL could not be set, so this position has NO TP/SL now.
Why: While editing, your old TP/SL was cancelled, but the new one was not created, usually because the last signature was rejected.
- From the order form: the error stays on screen with Set TP/SL again, which sends the same request again.
- From the positions table: the TP/SL dialog stays open with this message, so confirm again.
Approve the signature. Until you do, the position has no TP/SL.
Take Profit failed / Stop Loss failed notification
Why: The trigger fired but the closing order could not be executed.
Check the position. If it is still open, close it manually or set new triggers.
A price field turns red
Why: In the positions-table TP/SL dialog, a long's take profit must be above the Trigger by price (index or last) and its stop loss below it (the reverse for shorts). The order form does not check this; a wrong-side trigger there is rejected after the order is placed (Order placed — TP/SL NOT set).
Move the price to the correct side of the current price.
How do I recover?
- TP/SL missing after placing an order: add it from the positions table.
- Trigger failed: close the position manually (Manage positions).
- Wrong trigger: edit the TP/SL. The new set replaces the old one.