In futures trading, some users may encounter situations where a stop-loss order was configured, yet the position was still liquidated.
This is not a system malfunction. Such situations are typically caused by a combination of factors, including the dual-price mechanism, insufficient market liquidity, the full-fill protection mechanism, incorrect stop-loss placement, and the fact that liquidation risk controls always take priority over regular orders.
This article explains the most common liquidation scenarios and provides practical recommendations to help reduce liquidation risk.
Core Rule: The Dual-Price Mechanism
The platform uses two different price references for different purposes:
Liquidation Trigger: Mark Price
The Mark Price is calculated using a weighted average of prices from multiple major spot exchanges. It is designed to prevent abnormal liquidations caused by temporary price manipulation on a single order book and serves as the sole reference for liquidation decisions.
Stop-Loss Trigger: Last Price
All Take-Profit and Stop-Loss (TP/SL) orders on the platform are triggered based on the contract's latest traded price (Last Price).
Scenario 1: The Stop-Loss Price Is Too Close to the Liquidation Price
Root Causes
1. Insufficient Buffer Between Stop-Loss and Liquidation Price
TP/SL orders are conditional orders. Once the trigger price is reached, the system still requires time to generate and submit the closing order.
If the stop-loss price is set too close to the liquidation price, the market may reach the liquidation threshold before the stop-loss order can be fully submitted and executed during extreme volatility.
Since liquidation risk controls have a higher execution priority than regular orders, the liquidation engine will take over the position directly, preventing the stop-loss order from being executed.
2. Insufficient Liquidity Triggers Full-Fill Protection
Market stop-loss orders currently follow an All-or-None execution rule and do not support partial fills.
If there is insufficient order book depth to execute the entire position at once, and a partial execution would leave the remaining position immediately subject to liquidation, the system will automatically cancel the stop-loss order to prevent abnormal account risk.
Typical Status:
The stop-loss order shows "Triggered," but the order result displays "Cancelled," after which the position is taken over by the liquidation engine.
Example
- Position: ETH Cross Margin Long Position, 6x leverage
- Estimated liquidation price (Mark Price): 1,538 USDT
- Stop-loss setting: Market stop-loss trigger price at 1,539 USDT
- Market condition: A rapid decline with a 4.39% price swing
- Result: After the stop-loss was triggered, severe volatility and insufficient liquidity caused the order to be cancelled. The position was ultimately liquidated at 1,538 USDT.
Execution Flow
Last Price reaches stop-loss trigger price → Stop-loss condition is activated → System attempts full market execution → Insufficient liquidity detected / partial execution would lead to liquidation → System cancels stop-loss order → Position enters liquidation process
Scenario 2: Limit Stop-Loss Is Triggered but the Limit Order Is Never Filled
Root Cause
A limit TP/SL order is essentially a conditional limit order.
Once the trigger price is reached, the system places a closing limit order at the user-defined limit price rather than executing immediately at market price.
During highly volatile market conditions, the market may move beyond the specified limit price before the order is placed.
As a result, the limit order remains unfilled, the stop-loss is not actually executed, and the position continues to incur unrealized losses until it reaches the liquidation price.
Example
- Position: BTCUSDT Perpetual Long Position
- Liquidation price: 64,000 USDT
- Stop-loss trigger price: 65,000 USDT
- Closing limit price: 64,800 USDT
- Market condition: Price falls rapidly from 65,100 USDT to 64,500 USDT within a short period
- Result: The stop-loss condition is triggered, and a limit order is placed at 64,800 USDT. However, the market has already moved below that level, leaving no matching buy orders. The position remains open and is eventually liquidated at 64,000 USDT.
Execution Flow
Last Price reaches trigger price → Stop-loss condition is activated → System places closing limit order → Market moves beyond limit price → No matching counterparties available → Limit order remains unfilled → Price continues moving toward liquidation level → Position is liquidated and the stop-loss order is cancelled
Scenario 3: Stop-Loss Price Is Set Beyond the Liquidation Price
Root Cause
A stop-loss order must be placed on the safe side of the liquidation price.
Long Positions
The liquidation price is below the entry price.
The stop-loss trigger price must be higher than the liquidation price.
Short Positions
The liquidation price is above the entry price.
The stop-loss trigger price must be lower than the liquidation price.
If the stop-loss is placed on the wrong side of the liquidation price, liquidation will occur before the stop-loss condition can ever be met.
Once the position is liquidated, the associated stop-loss order is automatically cancelled.
Example
- Position: BTCUSDT Perpetual Long Position
- Liquidation price: 65,000 USDT
- Stop-loss trigger price: 59,990 USDT
- Result: The market reaches 65,000 USDT first, triggering liquidation. The stop-loss at 59,990 USDT never activates and is automatically cancelled after liquidation.
Execution Flow
Price moves against position → Liquidation price is reached first → Liquidation engine closes position → Incorrectly placed stop-loss order is cancelled automatically
Scenario 4: Mark Price Reaches Liquidation Level Before Last Price Reaches Stop-Loss
Root Cause
During extreme market conditions, spot market prices may move dramatically, causing the Mark Price to change rapidly.
However, due to factors such as large resting orders or temporary liquidity gaps in the futures order book, the Last Price may lag behind the Mark Price.
Since stop-loss orders are triggered only by the Last Price, liquidation may occur first if the Mark Price reaches the liquidation threshold before the Last Price reaches the stop-loss trigger price.
Once liquidation begins, any untriggered stop-loss order is automatically cancelled.
Example
- Position: SOL Cross Margin Long Position, 20x leverage
- Liquidation price (Mark Price): 143.00 USDT
- Market stop-loss trigger price (Last Price): 144.00 USDT
- Market condition: Spot markets experience a sharp decline, causing the Mark Price to drop immediately to 143.00 USDT. Due to strong bid support in the futures order book, the Last Price only falls to 144.10 USDT.
- Result: The Mark Price reaches the liquidation level first, triggering liquidation. Since the Last Price never reaches 144.00 USDT, the stop-loss is never activated and is eventually cancelled.
Execution Flow
Spot market declines sharply → Mark Price reaches liquidation threshold → Last Price lags behind and does not reach stop-loss trigger → Liquidation engine takes over position → Untriggered stop-loss order is cancelled
Futures Position Closing and Risk Control Rules
1. Order Conflict Rule
When multiple closing orders exist for the same position (such as limit close orders and TP/SL orders), the platform follows a First Triggered, First Executed principle.
Once any order is fully executed, all other associated orders are automatically cancelled.
2. Liquidation Has the Highest Priority
Liquidation risk controls always take precedence over user orders.
Once the Mark Price reaches the liquidation threshold, any pending, partially processed, or unfilled stop-loss orders will be terminated.
3. Full-Fill Protection
Market stop-loss orders do not currently support partial fills.
If available market depth cannot support a complete execution and a partial fill would cause the remaining position to be liquidated, the system will cancel the stop-loss order directly.
Risk Management Guidelines
To reduce the risk of stop-loss failure during extreme market conditions, users are advised to follow the guidelines below:
1. Place Stop-Loss Orders Correctly
- Long Positions: Stop-loss trigger price must be above the liquidation price.
- Short Positions: Stop-loss trigger price must be below the liquidation price.
2. Maintain a Sufficient Safety Buffer
Leave adequate distance between the stop-loss price and the liquidation price based on the asset's liquidity profile.
Major Assets (BTC, ETH, etc.)
Recommended buffer: At least 1%
Example:
- Long position liquidation price: 65,000 USDT
- Recommended stop-loss trigger price: At least 65,650 USDT
Altcoins and Lower-Liquidity Assets
Recommended buffer: At least 2%–5%
Assets with higher intraday volatility should use larger safety buffers.
3. Use Reasonable Leverage and Position Sizing
High leverage significantly reduces the distance between the stop-loss price and liquidation price.
Users are encouraged to:
- Use moderate leverage levels
- Maintain sufficient available margin
- Avoid overexposure during volatile market conditions
These practices can improve risk resilience and reduce the likelihood of forced liquidation.