Last trade, index and mark price for each contract. Venues set margin and liquidations on the mark.
Snapshot of mark, index, and last trade prices with interval percentage changes and pairwise divergence ratios.
The 5m bar from 14:00 to 14:05 UTC on 14 May 2025, Binance BTC-USDT perpetual, from the free preview.
Step 1
The plain fields are each price's last value in the bar. At every close in the hour, mark and last were within $15 of each other and the index was above both.
Closing value of each 5-minute bar, over the hour up to this one.
Step 2
Step 3
Above 1, the mark moved more than the index, here by about 2%. The ratios become very large when the denominator is near zero, so use them only on bars that moved.
Step 4
BTC-USDT perpetual on Binance, 5m bars, 1 to 31 May 2025, from the free preview.
Bars by high-low range, calmest tenth to wildest tenth. Basis points.
The median gap between last and mark at a bar's close was 0.097 bps, 1 bar in 100 saw more than 2.71 bps, and the widest was 12.7 bps. Sorted by the bar's high-low range, the calmest tenth had 0.010 bps and the most volatile tenth 0.41 bps.
Liquidations trigger on the mark price. A stop set on the last price triggers on trades. The two are furthest apart on the most volatile bars.
last_price is the last trade, index_price the venue's spot index, mark_price the venue's price for margin. Each _pct_change field is its move over the interval.
The _ratio fields divide one move by another. mark_last_pct_change_ratio near 1 means the mark followed the trades. Far from 1 means the venue smoothed the move out.
The ratios grow very large when the move in the denominator is near zero. Filter on the size of the move before you read them.
Crypto perpetual exchanges use a mark price — a smoothed, manipulation-resistant reference — to calculate unrealized P&L and trigger liquidations. The underlying feed is the index price, typically a volume-weighted average of spot prices across major exchanges. The gap between mark, index, and last trade price is not just a data quality metric — it's a window into the mechanics of the liquidation engine.
The mark price was designed to prevent price manipulation of liquidation triggers. Without smoothing, a single large trade on one exchange could trigger liquidations of positions sized many multiples larger. This is a real attack vector: Aitken, Cumming & Zhan (2015) documented end-of-day price manipulation in equity markets, and the incentive structure in crypto (where triggering a liquidation can be directly profitable through the resulting cascade) makes it even more relevant.
The smoothing algorithm (typically an EMA of the index price with exchange-specific parameters) creates a deliberate lag between market reality and the reference price used for liquidation calculations. This lag is a feature, not a bug — but it has observable consequences.
Mark price > last trade price: The official reference is above current market reality. Longs are being credited higher unrealized P&L than their actual position would fetch. Shorts face the inverse. This configuration delays long liquidations while accelerating short liquidations — an asymmetric effect that can suppress natural deleveraging during a downturn.
Last trade price > mark price: The market has moved up faster than the smoothing can track. During rapid upward moves, this creates a temporary safe harbor for shorts: their liquidation price hasn't caught up to reality yet. When the mark finally converges, a burst of liquidations hits — the "catch-up cascade."
Mark-index divergence: When the exchange's mark price persistently deviates from the index, it signals either a calculation methodology issue or deliberate exchange behavior. Monitoring this helps identify periods where the liquidation mechanism is operating with unusual latency.
We compute how synchronously mark and index prices move. During calm periods, the ratio is near 1.0 — both prices track each other closely. During fast markets, the ratio deviates, and the magnitude of deviation reveals the liquidation engine's effective lag. This is when watching the mark-trade divergence is equivalent to watching the liquidation engine's processing delay in real time.
When the gap closes rapidly after a period of divergence, a wave of liquidations either just executed or is imminent. This has the flavor of the "endogenous" liquidity crises described by Danielsson, Shin & Zigrand (2012): the system's own risk management rules amplify the initial shock.
References:
# Install the Aperiodic CLI into ~/.local/bin
mkdir -p "$HOME/.local/bin"
curl -fsSL https://raw.githubusercontent.com/aperiodic-io/cli/main/install.sh | INSTALL_DIR="$HOME/.local/bin" bash
export PATH="$HOME/.local/bin:$PATH"
# Free preview — no API key required
aperiodic derivative_price --preview \
--exchange binance-futures \
--symbol perpetual-BTC-USDT:USDT \
--interval 5m \
--timestamp exchange \
--start-date 2025-05-01 \
--end-date 2025-05-31 \
--output-dir ./data && echo "Saved to $PWD/data"