Swolecharts
Live crypto data · 10 exchanges

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.

Last 30 daysSource: exchange public APIsHourly snapshots, UTCAs of 09:02 UTC

Constituent changes as published by each exchange, detected by hourly snapshot. A removal is not a delisting. RSS feed.

Binance
569 / 571
perps, last snapshot complete2026-10-02 08:22Z
Bitget
813 / 813
perps, last snapshot complete2026-10-02 08:39Z
Bybit
783 / 783
perps, last snapshot complete2026-10-02 08:37Z
OKX
495 / 495
perps, last snapshot complete2026-10-02 08:27Z

Constituent changes · last 30 days

newest first · times in UTC · page 16

Exchange: 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.