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 12Exchange: All · Binance · OKX · Bybit · Bitget Change: All · Added · Removed · Reweighted
| Time (UTC) | Change | Index | Constituent | Weight before | Weight after |
|---|---|---|---|---|---|
| Added | OKX POET-USDT-SWAP POET | okx_linear_perpetual POET/USDT perp | 0% | 50% | |
| Added | OKX ORCL-USDT-SWAP ORCL | hyperliquid_oracle ORCL/USD oracle | 0% | 38% | |
| Added | OKX ORCL-USDT-SWAP ORCL | OKX XORCL/USDT spot | 0% | 7.2% | |
| Added | OKX OFC-USDT-SWAP | KuCoin OFC/USDT spot | 0% | 20% | |
| Added | OKX NVDL-USDT-SWAP | okx_linear_perpetual NVDL/USDT perp | 0% | 50% | |
| Added | OKX NBIS-USDT-SWAP NBIS | OKX XNBIS/USDT spot | 0% | 8.6% | |
| Added | OKX MRVL-USDT-SWAP MRVL | OKX XMRVL/USDT spot | 0% | 10% | |
| Added | OKX MOONSHOT-USDT-SWAP | bybit_linear_perpetual MOONSHOT/USDT perp | 0% | 33% | |
| Added | OKX KSTR-USDT-SWAP | hyperliquid_oracle KSTR/USD oracle | 0% | 40% | |
| Added | OKX KIOXIA-USDT-SWAP KIOXIA | okx_linear_perpetual KIOXIA/USDT perp | 0% | 35% | |
| Added | OKX KAT-USDT-SWAP KAT | KuCoin KAT/USDT spot | 0% | 14% | |
| Added | OKX JP225-USDT-SWAP JP225 | hyperliquid_oracle JP225/USDT oracle | 0% | 100% | |
| Added | OKX IWM-USDT-SWAP | okx_linear_perpetual IWM/USDT perp | 0% | 31% | |
| Added | OKX IREN-USDT-SWAP IREN | OKX XIREN/USDT spot | 0% | 2.8% | |
| Added | OKX IBM-USDT-SWAP IBM | hyperliquid_oracle IBM/USD oracle | 0% | 50% | |
| Added | OKX IBM-USDT-SWAP IBM | OKX XIBM/USDT spot | 0% | 8.3% | |
| Added | OKX HYUNDAI-USDT-SWAP | hyperliquid_oracle HYUNDAI/USDC oracle | 0% | 55% | |
| Added | OKX GEV-USDT-SWAP | OKX XGEV/USDT spot | 0% | 14% | |
| Added | OKX EWT-USDT-SWAP | okx_linear_perpetual EWT/USDT perp | 0% | 10% | |
| Added | OKX DGAI-USDT-SWAP DGAI | Kraken DGAI/USD spot | 0% | 33% | |
| Added | OKX DDOG-USDT-SWAP | okx_linear_perpetual DDOG/USDT perp | 0% | 40% | |
| Added | OKX CSOPSKHYNIX2L-USDT-SWAP | okx_linear_perpetual CSOPSKHYNIX2L/USDT perp | 0% | 35% | |
| Added | OKX CRWD-USDT-SWAP CRWD | OKX XCRWD/USDT spot | 0% | 10% | |
| Added | OKX COST-USDT-SWAP | okx_linear_perpetual COST/USDT perp | 0% | 42% | |
| Added | OKX COHR-USDT-SWAP COHR | OKX XCOHR/USDT spot | 0% | 2.5% | |
| Added | OKX CGNX-USDT-SWAP | Gate CGNX/USDT spot | 0% | 25% | |
| Added | OKX BSP-USDT-SWAP | okx_linear_perpetual BSP/USDT perp | 0% | 29% | |
| Added | OKX ARM-USDT-SWAP ARM | OKX XARM/USDT spot | 0% | 7.3% | |
| Added | OKX AMD-USDT-SWAP AMD | OKX XAMD/USDT spot | 0% | 4.7% | |
| Added | OKX AIXBT-USDT-SWAP AIXBT | KuCoin AIXBT/USDT spot | 0% | 15% | |
| Added | OKX AI-USDT-SWAP AI | KuCoin AI/USDT spot | 0% | 22% | |
| Added | OKX ADBE-USDT-SWAP | okx_linear_perpetual ADBE/USDT perp | 0% | 50% | |
| Added | Binance XANUSDT XAN | Coinbase XAN-USD*uindex(USDUSDT) spot | 0% | 34% | |
| Added | Binance UMAUSDT UMA | Coinbase UMA-USD*uindex(USDUSDT) spot | 0% | 15% | |
| Added | Binance MAVUSDT MAV | binance_cross2 MAVTRY/USDTTRY cross | 0% | 5.1% | |
| Added | Binance FIGHTUSDT FIGHT | Coinbase FIGHT-USD*uindex(USDUSDT) spot | 0% | 20% | |
| Added | Binance EULUSDT EUL | Coinbase EUL-USD*uindex(USDUSDT) spot | 0% | 18% | |
| Added | Binance ENSOUSDT ENSO | binance_cross2 ENSOTRY/USDTTRY cross | 0% | 4.2% | |
| Added | Binance CVCUSDT CVC | Coinbase CVC-USD*uindex(USDUSDT) spot | 0% | 18% | |
| Added | Binance CUSDT C | binance_cross2 CTRY/USDTTRY cross | 0% | 4.8% | |
| Added | Binance CLANKERUSDT CLANKER | Coinbase CLANKER-USD*uindex(USDUSDT) spot | 0% | 32% | |
| Added | Binance CATIUSDT CATI | binance_cross2 CATITRY/USDTTRY cross | 0% | 3.6% | |
| Added | Binance BIRBUSDT BIRB | Coinbase BIRB-USD*uindex(USDUSDT) spot | 0% | 18% | |
| Added | Binance ASRUSDT ASR | binance_cross2 ASRTRY/USDTTRY cross | 0% | 5.7% | |
| Added | Binance ARXUSDT ARX | Coinbase ARX-USD*uindex(USDUSDT) spot | 0% | 25% | |
| Added | Binance AGLDUSDT AGLD | Coinbase AGLD-USD*uindex(USDUSDT) spot | 0% | 15% | |
| Added | Binance 1MBABYDOGEUSDT | binance_cross2 1MBABYDOGETRY/USDTTRY cross | 0% | 4.2% | |
| Added | Bybit CTRUSDT CTR | Coinbase CTR-USD spot | 0% | 35% | |
| Added | Bybit CTRUSDT CTR | Gate CTR_USDT spot | 0% | 28% | |
| Added | Bybit CTRUSDT CTR | KuCoin CTR-USDT spot | 0% | 5.2% |
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.