Perp index constituent changes
A perpetual's mark price is built from an index: a weighted basket of spot prices from several exchanges. This page lists every constituent the exchange added or removed, and every weight move of at least 5 percentage points, newest first.
Constituent changes as published by each exchange, detected by hourly snapshot. A removal is not a delisting. RSS feed.
Constituent changes · last 30 days
newest first · times in UTC · page 16Exchange: All · Binance · OKX · Bybit · Bitget Change: All · Added · Removed · Reweighted
| Time (UTC) | Change | Index | Constituent | Weight before | Weight after |
|---|---|---|---|---|---|
| Reweighted | Bitget ADIUSDT | intrinio ADI/USD unknown | 37% | 30% | |
| Reweighted | Bitget ADIUSDT | pyth_pro ADI/USD oracle | 27% | 20% | |
| Reweighted | Bitget ADBEUSDT | dxfeed ADBE/USD unknown | 37% | 30% | |
| Reweighted | Bitget ADBEUSDT | massive ADBE/USD reference | 37% | 30% | |
| Reweighted | Bitget ADBEUSDT | pyth_pro ADBE/USD oracle | 27% | 20% | |
| Reweighted | Bybit AEHRUSDT | kaiko KK_RFR_AEHRUSD reference | 50% | 33% | |
| Reweighted | Bybit AEHRUSDT | Pyth Equity.US.AEHR/USD oracle | 50% | 33% | |
| Reweighted | Bybit ADIUSDT | Bybit futures ADIUSDT perp | 100% | 10% | |
| Reweighted | Bybit ADBEUSDT | kaiko KK_RFR_ADBEUSD reference | 43% | 26% | |
| Reweighted | Bybit ADBEUSDT | Pyth Equity.US.ADBE/USD oracle | 43% | 26% | |
| Reweighted | Bitget ACTUSDT ACT | Binance ACT/USDT spot | 75% | 81% | |
| Reweighted | Bybit AAPLUSDT AAPL | kaiko KK_RFR_AAPLUSD reference | 30% | 20% | |
| Reweighted | Bybit AAPLUSDT AAPL | Pyth Equity.US.AAPL/USD oracle | 30% | 20% | |
| Reweighted | Bybit AAOIUSDT AAOI | kaiko KK_RFR_AAOIUSD reference | 34% | 22% | |
| Reweighted | Bybit AAOIUSDT AAOI | Pyth Equity.US.AAOI/USD oracle | 34% | 22% | |
| Reweighted | Bybit AALUSDT | Pyth Equity.US.AAL/USD oracle | 100% | 50% | |
| Reweighted | Bitget AAPLUSDT AAPL | Binance index AAPL/USDT index | 33% | 20% | |
| Reweighted | Bitget AAPLUSDT AAPL | Hyperliquid AAPL/USD unknown | 33% | 20% | |
| Reweighted | Bitget AAPLUSDT AAPL | pyth_pro AAPL/USD oracle | 33% | 20% | |
| Reweighted | Bybit 1000TURBOUSDT TURBO | Binance TURBOUSDT spot | 57% | 64% | |
| Reweighted | Bitget AAOIUSDT AAOI | dxfeed AAOI/USD unknown | 30% | 20% | |
| Reweighted | Bitget AAOIUSDT AAOI | pyth_pro AAOI/USD oracle | 40% | 30% | |
| Reweighted | Bitget AAOIUSDT AAOI | tiger AAOI/USD unknown | 30% | 20% | |
| Reweighted | Bitget 1000CATUSDT CAT | MEXC 1000CAT/USDT spot | 76% | 70% | |
| Reweighted | Bitget 10000NEXUSDT NEX | MEXC 10000NEX/USDT spot | 69% | 56% | |
| Reweighted | OKX ZM-USDT-SWAP | Binance index ZM/USDT index | 77% | 22% | |
| Reweighted | OKX ZM-USDT-SWAP | kaiko_reference_rate ZM/USD reference | 10% | 24% | |
| Reweighted | OKX ZM-USDT-SWAP | Pyth ZM/USD oracle | 10% | 24% | |
| Reweighted | OKX ZHONGJI-USDT-SWAP | Binance index ZHONGJI/USDT index | 45% | 50% | |
| Reweighted | OKX ZHONGJI-USDT-SWAP | okx_linear_perpetual ZHONGJI/USDT perp | 5% | 50% | |
| Reweighted | OKX ZHIPU-USDT-SWAP ZHIPU | hyperliquid_oracle ZHIPU/USD oracle | 45% | 50% | |
| Reweighted | OKX ZHIPU-USDT-SWAP ZHIPU | okx_linear_perpetual ZHIPU/USDT perp | 5% | 50% | |
| Reweighted | OKX XOM-USDT-SWAP | kaiko_reference_rate XOM/USD reference | 43% | 19% | |
| Reweighted | OKX XOM-USDT-SWAP | ondo_ticker XOM/USD reference | 43% | 18% | |
| Reweighted | OKX XOM-USDT-SWAP | Pyth XOM/USD oracle | 7.7% | 35% | |
| Reweighted | OKX XLE-USDT-SWAP | Binance index XLE/USDT index | 25% | 17% | |
| Reweighted | OKX XLE-USDT-SWAP | hyperliquid_oracle XLE/USD oracle | 17% | 28% | |
| Reweighted | OKX XLE-USDT-SWAP | kaiko_reference_rate XLE/USD reference | 27% | 19% | |
| Reweighted | OKX XLE-USDT-SWAP | Pyth XLE/USD oracle | 27% | 19% | |
| Reweighted | OKX XIAOMI-USDT-SWAP | Binance index HK1810/USDT index | 40% | 50% | |
| Reweighted | OKX XIAOMI-USDT-SWAP | okx_linear_perpetual XIAOMI/USDT perp | 5% | 50% | |
| Reweighted | OKX XBI-USDT-SWAP | Binance index XBI/USDT index | 50% | 16% | |
| Reweighted | OKX XBI-USDT-SWAP | Pyth XBI/USD oracle | 50% | 26% | |
| Reweighted | OKX WMT-USDT-SWAP | Binance index WMT/USDT index | 57% | 49% | |
| Reweighted | OKX WMT-USDT-SWAP | kaiko_reference_rate WMT/USD reference | 18% | 9.7% | |
| Reweighted | OKX WMT-USDT-SWAP | ondo_ticker WMT/USD reference | 3.9% | 9.1% | |
| Reweighted | OKX WEN-USDT-SWAP | Binance index WEN/USDT index | 65% | 59% | |
| Reweighted | OKX WEN-USDT-SWAP | okx_linear_perpetual WEN/USDT perp | 35% | 6% | |
| Reweighted | OKX WDC-USDT-SWAP WDC | hyperliquid_oracle WDC/USD oracle | 30% | 25% | |
| Reweighted | OKX VRT-USDT-SWAP | Binance index VRT/USDT index | 49% | 42% |
Method. Each exchange's public index-constituents API is read once an hour for every perpetual it lists. Added and removed constituents are always listed; weight moves only when they reach 5 percentage points. A removal is recorded only from a complete snapshot. The first snapshot of each perp is the starting composition, not a change. Event ids (the row anchors and RSS guids) never change.
How to read it. Index constituents decide which spot prices feed a perp's mark price. Exchanges sometimes change constituents before other listing changes, but a removal on its own says only that the index stopped using that source. Constituent changes as published by each exchange, detected by hourly snapshot. A removal is not a delisting.
Index constituent changes FAQ
What is a perpetual's index?
Exchanges do not liquidate on their own last traded price. They use a mark price built from an index: a weighted average of spot prices from several exchanges, with outlier guards. Each exchange publishes the current constituents and weights through its public API.
How are changes detected?
Hourly snapshots of each exchange's index constituents API. A constituent is added when it first appears, removed when a complete snapshot no longer lists it (a failed or partial snapshot never counts as a removal), and reweighted when its weight moves at least 5 percentage points. A change can be up to an hour old when it shows here.
Does a removed constituent mean the coin is leaving that exchange?
No. Exchanges add and drop index sources for many reasons: thin or stale books, a source exchange's maintenance, or a routine rebalance. A removal here only means the index stopped using that source.
Is there an RSS feed?
Yes: /mark-price-xray/changes/rss.xml carries the newest 50 changes and accepts the same ?venue= filter.