· four exchange APIs · rebuilt daily

The finding
Perpetual exchanges trigger liquidations using mark price, not last traded price, preventing temporary order book wicks from closing positions.
Mark price combines index spot prices with a moving average funding basis.
Last traded price reflects only the most recent fill on that single order book.
Perpetual swap venues maintain two distinct price feeds for every contract. The last traded price is the exact valuation at which the most recent trade executed on the local order book. If a trader submits a market order that clears out available bids, the last traded price drops instantly to match the lowest fill.
Evaluating liquidations directly on last traded price exposes positions to order book manipulation and local liquidity cascades. A single large market sell order could lower the last traded price by 8% for a few milliseconds before market makers replenish bids. If liquidations relied on last traded price, that flash wick would force-close leveraged positions across the entire exchange.
Mark price solves this by isolating margin calculations from local order book depth. Venues build the mark price by taking an index price—a weighted average of spot prices across major spot exchanges—and adding a smoothed funding rate basis. The basis represents the perpetual contract's average premium or discount relative to spot over time.
Worth knowing
Last traded price governs your execution fills, but mark price governs your account margin ratio and liquidation checks.
Consider a 1 BTC long position opened at 60,000 USDT using 20x leverage. The initial margin required is 3,000 USDT. The venue sets a maintenance margin requirement of 0.5%, which equals 300 USDT for a 1 BTC position.
Liquidation occurs when position equity falls to or below the maintenance margin. Position equity equals initial margin plus unrealised profit or loss based on mark price.
Equity = 3,000 USDT + (Mark Price — 60,000 USDT)
Setting equity equal to the 300 USDT maintenance margin yields a mark price liquidation trigger of 57,300 USDT.
57,300 USDT = 60,000 USDT - (3,000 USDT — 300 USDT)
In Scenario A, a large market sell order hits the local perpetual order book. Last traded price drops to 56,500 USDT for one block execution. However, underlying spot markets remain stable, keeping the spot index at 59,800 USDT. Mark price holds at 59,800 USDT. Because mark price remains above 57,300 USDT, no liquidation occurs.
In Scenario B, spot markets fall globally. The spot index drops to 57,200 USDT. Mark price adjusts downward to 57,200 USDT. The exchange liquidation engine immediately force-closes the position, even if local order book bids on the perpetual contract temporarily hold last traded price at 57,600 USDT.
Where this goes wrong
Relying on last price stop-loss orders will not protect against mark price liquidations if index spot prices garget down faster than local order books fill.
When a mark price liquidation triggers, the exchange closes the position using market orders or takes over the inventory via an insurance fund. Liquidated positions incur taker fees calculated against the executed trade value.
Fees and holding costs vary across derivative venues. Current perpetual fee schedules and live 8-hour funding rates show significant structural spread between exchanges.
| Venue | Futures Maker Fee | Futures Taker Fee | BTC 8h Funding Rate | ETH 8h Funding Rate |
|---|---|---|---|---|
| Bybit | 0.020% | 0.055% | +0.0006% | -0.0018% |
| MEXC | 0.000% | 0.020% | +0.0037% | +0.0011% |
| OKX | 0.020% | 0.050% | +0.0030% | +0.0057% |
| Bitget | 0.020% | 0.030% | +0.0025% | +0.0080% |
Holding long positions in high-volatility regimes requires monitoring funding yield alongside mark price distance. For BTC, holding long on Bybit costs +0.0006% per 8 hours versus +0.0037% on MEXC. For ETH, holding long on Bybit yields +0.0018% per 8 hours due to negative funding, while Bitget charges long holders +0.0080% per 8 hours.
What to do instead
Verify whether your venue triggers stop-loss and take-profit orders on mark price or last price in account contract settings.
Mark price protects traders from local order book wicks, but it introduces distinct failure modes during extreme market dislocating events.
The primary failure mode occurs when a perpetual contract trades at a persistent, aggressive premium or discount to spot markets. Because exchanges smooth the funding basis using a moving average—often over a 15-minute to 8-hour window—mark price lags true market clearing prices during rapid, sustained trend shifts. If the local perpetual order book drops 10% while spot moves slowly, mark price remains higher than last traded price. Short positions may face unexpected liquidations even as the contract trades lower on the local venue.
A second failure mode involves index constituent manipulation. If a spot exchange within the venue's index calculation suffers from thin liquidity, targeted buying or selling on that single spot order book skews the global index price. This artificially moves the perpetual contract's mark price, triggering liquidations on the derivative exchange without any volume trading on the derivative contract itself.
No. Perpetual exchanges use mark price exclusively to evaluate position margin and trigger liquidations. Last price only determines execution price when orders fill on the order book.
Your chart was set to display last traded price instead of mark price. A sharp movement in global spot index prices moved the mark price to your liquidation threshold while local trades on that venue traded at a different level.
Yes. Mark price includes a smoothed funding basis component added to the spot index price. During extreme market skew, mark price can diverge from index spot price by several tenths of a percent.
Open the order entry panel on your trading venue and locate the conditional order triggers section. Toggle the trigger price dropdown from Last Price to Mark Price before setting your stop boundary.