Stop loss and take profit on Binance futures

Updated:

A stop loss and take profit on Binance futures are two conditional orders that close a position without you. The stop loss limits your loss when the price moves against you. The take profit locks in profit when the price reaches the level you wanted. For a short they sit the opposite way from what many people expect: the stop is above the entry price and the take profit is below it.

Where they go for a short

A short makes money when the price falls, so:

  • the stop loss sits above the entry price: if the price rises to it, the position is bought back at a loss;
  • the take profit sits below the entry price: if the price falls to it, the position (or part of it) is bought back at a profit.

This is an illustration of the mechanism, not advice: you short at 100 with a 20% stop loss and a 10% take profit. The stop is at 120 and the take profit at 90. If the price goes up to 120, the position closes at a loss; if it goes down to 90, it closes at a profit.

What "20%" in a stop means

A detail people often get wrong: in Snapback the stop loss is set as the price move against you, not as a share of your deposit or margin. The available levels are 10%, 15%, 20%, 25% and 30%. The loss on that move also depends on leverage. For example, at 3x leverage a 20% price move against the position costs about 60% of that position's margin (before fees). More in Binance futures leverage and liquidation.

Order types

Binance places a stop and a take profit as conditional market orders: STOP_MARKET (the stop) and TAKE_PROFIT_MARKET (the take profit). When the price reaches the set level, the exchange sends a market order to close. Two consequences follow.

  1. The fill price can differ from the trigger price. In a fast move or a thin order book the fill is worse. This is slippage, and it affects both the stop and the take profit.
  2. Which price triggers the order. Snapback sets the stop and take-profits to trigger on the mark price, not on the last trade. The mark price is less sensitive to single sharp spikes, but it is not flawless either.

Binance has moved these orders to a separate conditional-order mechanism (the Algo Service), but for a user they look like an ordinary stop and take profit. The bot uses exactly that mechanism.

The stop closes the whole position

In Snapback the stop order is placed with the "close position" flag (closePosition): it always closes whatever remains, however much that is. This helps when the entry order fills only partly or when take-profits have already closed part of the position: the stop does not need recalculating.

Several take-profits

Instead of one take profit, the bot can place two or three at different levels and divide the size between them. In the bot wizard, in the Exit block, there are two fields.

  • "Take profit, %": the distance to the last take-profit. The ones in between are spaced evenly. As an illustration: if the last take-profit is 9% and there are three, the levels will be 3%, 6% and 9% below the entry.
  • "How many take-profits and how we split the size": the allowed splits are:
  • one take-profit: 100;
  • two take-profits: 50/50, 60/40, 70/30;
  • three take-profits: 34/33/33, 57/29/14, 50/30/20, 20/30/50.

The take profit can be set from 1% to 20%.

The last slice always takes the remaining size, so rounding does not leave "dust" on the exchange. Stop and take-profit prices are rounded so that risk does not increase: the stop triggers no later than planned, and the take profit does not take more than planned.

Exchange limits

Every coin has a minimum order value (MIN_NOTIONAL). If, with a fine split like 57/29/14, the smallest slice falls below that minimum, the exchange rejects that take profit. That is why the wizard shows, next to each split, the position size it starts to work from. If the position is too small, the trade does not open at all: the service reports it instead of opening a position with part of its protection missing.

What happens when a take profit fills

A take profit closes its part of the position. The stop keeps guarding the rest. If breakeven is switched on for the bot, after the chosen take-profit the stop moves to the entry price (adjusted for fees): see how a breakeven stop loss works. When the last take profit fills, the bot cancels all other orders on the coin: futures have no "one filled, the other cancels" link (OCO), so the bot cleans up the leftovers itself.

What not to expect

  • A stop does not guarantee that the loss equals the percentage you chose: in a sharp move the fill can be worse.
  • A take profit does not guarantee the price will reach it. The price can reverse earlier.
  • A stop and take-profit pair that looked good on past data will not necessarily work going forward. You can check settings against history with a crypto backtesting tool.
  • Protection works while the service and the exchange are available. How the service behaves during failures is described in how a trading bot protects a position.

Frequently asked questions

What is the difference between a stop loss and a take profit?

A stop loss closes the position when the price moves against you, to limit the loss. A take profit closes it when the price reaches the profit you wanted.

How do I set a stop loss and take profit on Binance futures?

When you open an order, or on an existing position, you set trigger prices for the stop and the take profit. In Snapback the bot places them for you right after the entry order fills.

Does a stop loss always close at the exact price I set?

No. A stop order triggers at the market, and in a fast move the fill can be worse than the trigger price. This is called slippage.

How many take-profits can I set?

In Snapback you can choose one, two or three take-profits with a preset split of the size, for example 50/50 or 34/33/33.

Read also