Index and Exchange Rate Calculation

The index price is calculated based on the weighted average of the latest transaction prices from multiple exchanges. There is an index for every USDT-margined contract. For example, BTC/USDT contracts use BTC/USDT price as index.

[The above data and indicator contents may be adjusted in real time according to market conditions, and the adjustments will be made without further notice.]

Sample data sampling: get the latest price of the exchanges through API every 1 seconds (based on the index update interval).

Denomination currency: If the denomination currency of an exchange is different from the denomination currency of a trading pair, the denomination currency of the exchange will be converted into the denomination currency of the index price according to the exchange rate.

 

Exponential Exception Handling

  • The prices of a single exchange deviates significantly from other exchanges. Solutions are as below:

If there are more than 2 valid exchanges within the indices, when the price of a certain exchange deviates more than ±3% from the median price of all exchanges (including the above), for such exchange, its price will be calculated as ±3% of the median price of all exchanges (including the above):
For example: Let's say the BTC price of X exchange is 518 USD, and the prices of other exchanges are 500, 501, 502, 503, 504 (USD).
The median price of all exchanges (including the above) is 502.5, so the price of X exchange deviates from others by (518-502.5)/502.5=3.08%, which is more than 3%.
Instead of 518 USD, system will take 502.5*(1+3%) =517.57 as X exchange's price.
Therefore, the final index will be (517.57+500+501+502+503+504)/6=504.59 USD

If there are only 2 valid exchanges in the index (there are only 2 exchanges in the index, or due to market losses, some exchanges will be temporarily excluded). If the price deviation obtained by the two platforms is greater than 25%, it is considered that the price deviation from the index price calculated last time is normal, and the other one has an oolong index. At this time, the index price temporarily anchors the exchange with the normal price.

If the index price is based on the price of only one exchange at a time (all other exchanges have been abnormally removed). If the deviation between the obtained price and the index price obtained at the previous time is greater than 25%, it is considered that there is an oolong index, and the index price is taken from the previous time price.

  • The market data in an exchange is lost. Solutions:

If a certain exchange fails to obtain market data at a certain point in time (the exchange is closed, the market is interrupted, or an attack is encountered), the price at that point in time will be calculated based on the latest valid price obtained. If the valid data obtained by an exchange in the past 100 data points (10min) is less than 10 points (10%), we will consider the price of this exchange to be uninstructive and weight the price of the exchange. Temporarily adjusted to 0. After the exchange recovers data, if at least 90 of the past 100 data points are valid (90%), then we will restore the weight of the exchange.

  • The prices in a single exchange deviates significantly for a long time. Solutions:

When the price of an exchange deviates significantly from other exchanges for a long time, we believe that the price of that exchange may lose its guiding significance, and the sample and weight of the index will be adjusted. The specific adjustment plan is subject to the platform announcement.

 

Exchange Rate Calculation

The exchange rate for USDT-margined contracts is sampled from "HTX" at a speed of every minute.

https://api.huobi.pro/general/exchange_rate/list