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 |
|---|---|---|---|---|---|
| Reweighted | Bybit POPMARTUSDT | Binance index popmartusdt index | 90% | 30% | |
| Reweighted | Bitget LINEAUSDT LINEA | Binance LINEA/USDT spot | 64% | 69% | |
| Reweighted | Bybit POETUSDT POET | kaiko KK_RFR_POETUSD reference | 40% | 32% | |
| Reweighted | Bybit POETUSDT POET | Pyth Equity.US.POET/USD oracle | 40% | 32% | |
| Reweighted | Bybit PHAROSUSDT PHAROS | OKX PROS-USDT spot | 88% | 98% | |
| Reweighted | Bybit PDDUSDT | kaiko KK_RFR_PDDUSD reference | 30% | 50% | |
| Reweighted | Bybit PDDUSDT | Pyth Equity.US.PDD/USD oracle | 30% | 50% | |
| Reweighted | Bybit PATHUSDT | kaiko KK_RFR_PATHUSD reference | 44% | 89% | |
| Reweighted | Bybit OKTAUSDT | kaiko KK_RFR_OKTAUSD reference | 80% | 53% | |
| Reweighted | Bitget JCTUSDT JCT | binance_alpha ALPHA_466/USDT unknown | 40% | 50% | |
| Reweighted | Bitget JCTUSDT JCT | Bitget JCT/USDT spot | 15% | 25% | |
| Reweighted | Bitget JCTUSDT JCT | MEXC JCT/USDT spot | 15% | 25% | |
| Reweighted | Bitget IRYSUSDT IRYS | MEXC IRYS/USDT spot | 15% | 22% | |
| Reweighted | Bitget IRYSUSDT IRYS | OKX IRYS/USDT spot | 52% | 73% | |
| Reweighted | Bitget INUSDT IN | Bitget IN/USDT spot | 12% | 21% | |
| Reweighted | Bitget INUSDT IN | Gate IN/USDT spot | 44% | 54% | |
| Reweighted | Bitget IDOLUSDT | Gate IDOL/USDT spot | 32% | 25% | |
| Reweighted | Bitget IDOLUSDT | MEXC IDOL/USDT spot | 50% | 43% | |
| Reweighted | Bybit MINIMAXUSDT MINIMAX | Binance index minimaxusdt index | 45% | 20% | |
| Reweighted | Bybit MINIMAXUSDT MINIMAX | hyperliquid_oracle MINIMAX/USD oracle | 45% | 20% | |
| Reweighted | Bybit MEITUUSDT | Bybit futures MEITUUSDT perp | 100% | 10% | |
| Reweighted | Bybit MEITUANUSDT | Binance futures meituanusdt perp | 32% | 5% | |
| Reweighted | Bybit MEITUANUSDT | Binance index meituanusdt index | 63% | 10% | |
| Reweighted | Bybit MAVIAUSDT MAVIA | Bybit MAVIAUSDT spot | 66% | 59% | |
| Reweighted | Bybit MAVIAUSDT MAVIA | Gate MAVIA_USDT spot | 8.6% | 16% | |
| Reweighted | Bitget HAEDALUSDT HAEDAL | Binance HAEDAL/USDT spot | 64% | 73% | |
| Reweighted | Bybit MASKUSDT MASK | Binance MASKUSDT spot | 48% | 53% | |
| Reweighted | Bitget GUNUSDT GUN | Binance GUN/USDT spot | 75% | 68% | |
| Reweighted | Bitget GRVTUSDT GRVT | Bitget GRVT/USDT spot | 25% | 20% | |
| Reweighted | Bitget GRVTUSDT GRVT | KuCoin GRVT/USDT spot | 25% | 20% | |
| Reweighted | Bitget GRVTUSDT GRVT | MEXC GRVT/USDT spot | 25% | 20% | |
| Reweighted | Bitget GRVTUSDT GRVT | OKX GRVT/USDT spot | 25% | 20% | |
| Reweighted | Bybit LUNA2USDT LUNA2 | Binance LUNAUSDT spot | 62% | 70% | |
| Reweighted | Bybit LENOVOUSDT | Bybit futures LENOVOUSDT perp | 100% | 10% | |
| Reweighted | Bybit LAOPUUSDT | Bybit futures LAOPUUSDT perp | 100% | 10% | |
| Reweighted | Bybit KUAISHOUUSDT | Binance index kuaishouusdt index | 90% | 30% | |
| Reweighted | Bybit JCTUSDT JCT | MEXC JCTUSDT spot | 31% | 37% | |
| Reweighted | Bybit INXUSDT INX | MEXC INXUSDT spot | 45% | 38% | |
| Reweighted | Bybit INUSDT IN | MEXC INUSDT spot | 59% | 79% | |
| Reweighted | Bybit INTUUSDT | Pyth Equity.US.INTU/USD oracle | 90% | 100% | |
| Reweighted | Bybit ILVUSDT ILV | Binance ILVUSDT spot | 74% | 87% | |
| Reweighted | Bybit ICNTUSDT ICNT | Bybit ICNTUSDT spot | 56% | 69% | |
| Reweighted | Bybit ICNTUSDT ICNT | Gate ICNT_USDT spot | 25% | 31% | |
| Reweighted | Bitget ETHWUSDT ETHW | OKX ETHW/USDT spot | 44% | 53% | |
| Reweighted | Bybit HORIZONUSDT | Bybit futures HORIZONUSDT perp | 100% | 10% | |
| Reweighted | Bitget EPICUSDT EPIC | Binance EPIC/USDT spot | 77% | 85% | |
| Reweighted | Bitget ENSOUSDT ENSO | Binance ENSO/USDT spot | 68% | 74% | |
| Reweighted | Bybit HANAUSDT HANA | Gate HANA_USDT spot | 49% | 57% | |
| Reweighted | Bybit HANAUSDT HANA | MEXC HANAUSDT spot | 33% | 43% | |
| Reweighted | Bitget EDGEUSDT EDGE | Bitget EDGE/USDT spot | 20% | 25% |
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.