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 14Exchange: All · Binance · OKX · Bybit · Bitget Change: All · Added · Removed · Reweighted
| Time (UTC) | Change | Index | Constituent | Weight before | Weight after |
|---|---|---|---|---|---|
| Added | OKX BE-USDT-SWAP BE | OKX XBE/USDT spot | 0% | 0.8% | |
| Added | OKX BAND-USDT-SWAP BAND | KuCoin BAND/USDT spot | 0% | 17% | |
| Added | OKX AVGO-USDT-SWAP AVGO | OKX XAVGO/USDT spot | 0% | 20% | |
| Added | OKX ASTS-USDT-SWAP | OKX XASTS/USDT spot | 0% | 1.1% | |
| Added | OKX AMZN-USDT-SWAP AMZN | hyperliquid_linear_perpetual_oracle AMZN/USD oracle | 0% | 32% | |
| Added | OKX AMZN-USDT-SWAP AMZN | OKX XAMZN/USDT spot | 0% | 6.5% | |
| Added | OKX AMC-USDT-SWAP | Bybit AMC/USDT spot | 0% | 50% | |
| Added | OKX AMAT-USDT-SWAP AMAT | OKX XAMAT/USDT spot | 0% | 6.9% | |
| Added | OKX ALLO-USDT-SWAP ALLO | Gate ALLO/USDT spot | 0% | 20% | |
| Added | OKX AIXBT-USDT-SWAP AIXBT | Gate AIXBT/USDT spot | 0% | 13% | |
| Added | OKX AAOI-USDT-SWAP AAOI | OKX XAAOI/USDT spot | 0% | 3.6% | |
| Added | OKX A-USDT-SWAP A | Bitget A/USDT spot | 0% | 13% | |
| Added | Binance WCTUSDT WCT | binance_cross2 WCTTRY/USDTTRY cross | 0% | 3.8% | |
| Added | Binance RAVEUSDT RAVE | Coinbase RAVE-USD*uindex(USDUSDT) spot | 0% | 27% | |
| Added | Binance PUNDIXUSDT PUNDIX | Coinbase PUNDIX-USD*uindex(USDUSDT) spot | 0% | 19% | |
| Added | Binance PROVEUSDT PROVE | binance_cross2 PROVETRY/USDTTRY cross | 0% | 3.6% | |
| Added | Binance LISTAUSDT LISTA | binance_cross3 LISTATRY/USDTTRY cross | 0% | 1.8% | |
| Added | Binance KITEUSDT KITE | binance_cross2 KITETRY/USDTTRY cross | 0% | 4.1% | |
| Added | Binance CTRUSDT CTR | Coinbase CTR-USD*uindex(USDUSDT) spot | 0% | 31% | |
| Added | Binance CAKEUSDT CAKE | binance_cross2 CAKEBNB*BNBUSDT cross | 0% | 4.2% | |
| Added | Binance AWEUSDT AWE | Coinbase AWE-USD*uindex(USDUSDT) spot | 0% | 17% | |
| Added | Binance ATUSDT AT | binance_cross2 ATTRY/USDTTRY cross | 0% | 4.8% | |
| Added | Binance 1000CATUSDT CAT | binance_cross2 1000CATTRY/USDTTRY cross | 0% | 4.5% | |
| Added | Bitget ZRXUSDT ZRX | Bybit ZRX/USDT spot | 0% | 5.2% | |
| Added | Bitget ZRXUSDT ZRX | KuCoin ZRX/USDT spot | 0% | 4.8% | |
| Added | Bitget ZKUSDT ZK | MEXC ZKSYNC/USDT spot | 0% | 1.4% | |
| Added | Bitget ZBTUSDT ZBT | Bitget futures ZBT/USDT perp | 0% | 12% | |
| Added | Bitget ZBTUSDT ZBT | Gate ZBT/USDT spot | 0% | 1.2% | |
| Added | Bitget ZAMAUSDT ZAMA | KuCoin ZAMA/USDT spot | 0% | 4.9% | |
| Added | Bitget YGGUSDT YGG | Bitget YGG/USDT spot | 0% | 10% | |
| Added | Bitget YGGUSDT YGG | KuCoin YGG/USDT spot | 0% | 2% | |
| Added | Bitget XVGUSDT XVG | Binance XVG/TRY spot | 0% | 21% | |
| Added | Bitget XVGUSDT XVG | Bitget futures XVG/USDT perp | 0% | 27% | |
| Added | Bitget XTZUSDT XTZ | OKX XTZ/USDT spot | 0% | 5.7% | |
| Added | Bitget XRPUSDT XRP | Bitget XRP/USDT spot | 0% | 7.7% | |
| Added | Bitget XPINUSDT XPIN | KuCoin XPIN/USDT spot | 0% | 18% | |
| Added | Bitget XANUSDT XAN | KuCoin XAN/USDT spot | 0% | 24% | |
| Added | Bitget XAIUSDT XAI | KuCoin XAI/USDT spot | 0% | 4% | |
| Added | Bitget WOOUSDT WOO | Bybit WOO/USDT spot | 0% | 9% | |
| Added | Bitget WOOUSDT WOO | KuCoin WOO/USDT spot | 0% | 6.7% | |
| Added | Bitget WAXPUSDT WAXP | Gate WAXP/USDT spot | 0% | 5% | |
| Added | Bitget VETUSDT VET | Bitget VET/USDT spot | 0% | 1.3% | |
| Added | Bitget VANAUSDT VANA | Bitget VANA/USDT spot | 0% | 11% | |
| Added | Bitget VANAUSDT VANA | Bybit VANA/USDT spot | 0% | 16% | |
| Added | Bitget UBUSDT UB | KuCoin UB/USDT spot | 0% | 7.9% | |
| Added | Bitget TRBUSDT TRB | Bitget TRB/USDT spot | 0% | 1.7% | |
| Added | Bitget TRBUSDT TRB | KuCoin TRB/USDT spot | 0% | 3.1% | |
| Added | Bitget TOWNSUSDT TOWNS | Bitget TOWNS/USDT spot | 0% | 0.4% | |
| Added | Bitget TLMUSDT TLM | KuCoin TLM/USDT spot | 0% | 4% | |
| Added | Bitget STOUSDT STO | Gate STO/USDT spot | 0% | 0.4% |
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.