Price system overview
Futures trading on this platform uses 2 price types, each serving a distinct purpose:
Price | Purpose | Data source |
Index price | Reflects the fair spot price and serves as the basis for other prices. | Weighted average of spot prices from multiple exchanges. |
Mark price | Calculates a user's unrealized PnL and determines whether liquidation should be triggered. | Calculated based on the index price and basis rate. |
The last price of a futures contract may deviate from the fair spot price due to short-term market volatility. If it is used directly as the basis for forced liquidation, unnecessary liquidation may occur. Therefore, the platform uses the mark price anchored to the spot index to provide a more stable liquidation reference.
Index Price
Definition: The index price is the weighted average of quotes from multiple mainstream spot exchanges and is designed to accurately reflect the fair spot price of each currency. All USDT-margined futures on this platform are priced using the USDT index price.
Update frequency: Once per second.
Price protection mechanism:
Scenario 1 - Large quote deviation on an exchange: If the spot price of an exchange deviates by more than 5% from the median of all constituent exchanges, the quote from that exchange is considered abnormal. The system will use median × (1 ± 5%) as the effective quote from that exchange for index calculation until its quote returns to within 5% of the median, at which point its actual quote will be used again.
Scenario 2 - Exchange price not updated for an extended period: If the price from an exchange has not been updated for more than 1 minute, this is considered a liquidity issue or service interruption, and the quote weight of that exchange will be reduced to 0, excluding it from index calculation. Once its trading activity resumes and no abnormalities occur for 3 consecutive minutes, it will be included in the calculation again.
Example: For the BTCUSDT index, if the index consists of 5 constituent exchanges and the median is 20,000 USDT.
If the price deviation of exchange A is +7% (exceeding the 5% threshold), then the upper limit of A's effective quote is 20,000 × 1.05 = 21,000 USDT
Mark Price
Definition: To improve the stability of the futures market and reduce unnecessary liquidation during abnormal market volatility, we use the mark price to calculate a user's unrealized PnL.
Perpetual futures mark price
Formula: Mark price = Index price x (1 + Basis rate)
Basis rate = 5-minute moving average of [(Futures mid-price - Index price) / Index price]
Where Futures mid-price = (Best bid price + Best ask price) / 2
That is: Basis rate = 5-minute moving average of [((Best bid price + Best ask price) / 2 - Index price) / Index price]
5-minute moving average calculation rules:One data point is collected every 5 seconds, with a total of 60 data points collected over 5 minutes.The arithmetic average of the basis rate over the previous 5 minutes from the current time is calculated in real time and updated every 5 seconds.If data collection fails at a given time, the previous valid value is used.
Price protection: If the mark price deviates from the latest price by more than ±2%, then: clamp(Mark price, Latest price × 0.98, Latest price × 1.02)
Delivery futures mark price
For delivery futures, until the final 30 minutes before expiry, the mark price is calculated in the same way as for perpetual futures.
Within the final 30 minutes before expiry: Mark price = Estimated delivery price
Estimated delivery price: At the time T(n), the estimated delivery price is the arithmetic average of the spot index prices from the 1st second to the nth second.Estimated delivery price = [Index(1) + Index(2) + ... + Index(n)] / n
Final delivery price: Within the final 30 minutes before expiry, one spot index price is taken every second, for a total of 1,800 data points. The arithmetic average is used as the final delivery price.