合約交易

指數價格計算

2025-03-13 12:00084

什麼是指數價格

指數價格是用來反映標的物在現貨市場的價格,通常會需要比較穩定的指數價格,而目前市場的交易所比較多,每家交易所的價格多少都會有點差異。因此,為了得到比較穩定的指數價格,Bitget 會使用主流交易所的現貨市場價格,透過加權計算獲得穩定的指數價格。

指數價格計算

Bitget 的指數價格,是透過取得目前主流交易所的現貨市場價格,並根據交易量來計算各個交易所的權重,再計算加權平均值來獲得最終的指數價格。

1. 交易所價格獲取

Bitget 目前接入了 BitgetBinanceCoinbaseOKXBybitGateioMexcBitfinexKraken 等多家交易所的現貨市場價格,並會即時接收各交易所的市場最新價格。

2. 權重規則

每家交易所的權重,根據交易所 24 小時的交易量計算得出,每 4 小時更新一次交易量和權重,權重的規則為:

交易所 A 的權重 = 交易所 A 24 小時交易量 /(交易所 A 24 小時交易量 + 交易所 B 24 小時交易量+...),此處分母為目前納入計算的交易所的交易量之和,分子為對應交易所的交易量。進行指數計算時,最多使用 6 家交易所。

3. 指數價格計算

a. 指數價格 = 交易所 A 現貨市場價格 * 交易所 A 權重 + 交易所 B 現貨市場價格 * 交易所 B 權重+...,其中交易所的權重總和 = 1。指數價格至少每 1 秒更新一次。

b. 特殊處理:

如果任何一個主要交易所的現貨價格與所有價格來源的中位數價格的偏差超過 5%,系統將移除偏離的交易所,直到其價格回歸到中位數的 2% 以內。

任何一家交易所的價格超過 15 分鐘未更新,也會自動移除。直到有新的交易,且新的價格在中位數的 2% 以內。

在極端行情下,Bitget 可能會物理移除交易所,或配置成固定的權重,以防止系統性風險。

當交易所清單的變化導致前後指數價格偏差大於 0.1% 時,Bitget 將會採用平滑機制,將原成分交易所計算得到的指數價格平滑過渡到新成分交易所計算得到的指數價格,以避免指數價格跳動。

c. 舉例

現貨交易所

交易對

現貨價格

權重

A

BTC/USDT

91,500

10%

B

BTC/USDT

91,495

20%

C

BTC/USDT

91,498

30%

D

BTC/USDT

91,502

10%

E

BTC/USDT

91,505

15%

F

BTC/USDT

91,490

15%

d. 根據以上交易所的情況,計算得到的指數價格 = 91,500 * 10% + 91,495 * 20% + 91,498 * 30% + 91,502 * 10% + 91,505 * 15% + 91,490 * 15% = 91,497.85

4. 極端行情如何計算

如果出現極端行情,外部市場沒有可信任的指數來源時,Bitget 可能會使用合約市場的價格,擬定合成指數價格,以確保合約正常運作而不受混亂價格的影響。

擬合價格算法

a. 透過合約市場的訂單簿,計算深度加權買價和深度加權賣價,並得到深度加權中間價 =(深度加權買價 + 深度加權賣價)/2,其中深度加權價計算所需的訂單簿深度,會根據不同交易對進行配置。深度加權價的計算方式與資金費率計算深度加權價的方式相同。

b. Tn 時刻的指數價格 = α × Tn 時刻的深度加權中間價 + (1−α) × Tn−1 時刻的指數價格,其中 α 為配置值,預設值配置為 0.1818,會根據當時的市場狀況,對此參數進行調整。

5. 價格轉換

如果交易所沒有想要輸出的計價單位的交易對,Bitget 會採用價格轉換邏輯,將交易所現有的計價單位的交易對價格,轉換為想要輸出的計價單位的價格。

例如:Coinbase 目前有 BTCUSD 的現貨市場價格,我們需要用 Coinbase 作為數據來源,得到 BTCUSDC 的指數價格。由於 USDC USD 不是同一個計價幣種,因此我們會將 Coinbase BTCUSD 現貨市場價格 * USD-USDC 的指數價格,以得到 Coinbase BTCUSDC 等值的現貨市場價格。其中 USD-USDC 的指數價格,會透過 BTCUSDC 的指數價格 / BTCUSD 的指數價格得出。