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 19:32 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-01 19:22Z
Bitget
813 / 813
perps, last snapshot complete2026-10-01 18:39Z
Bybit
783 / 783
perps, last snapshot complete2026-10-01 18:37Z
OKX
495 / 495
perps, last snapshot complete2026-10-01 19:27Z

Constituent changes · last 30 days

newest first · times in UTC · page 6

Exchange: All · Binance · OKX · Bybit · Bitget   Change: All · Added · Removed · Reweighted

Time (UTC) Change Index Constituent Weight before Weight after
Reweighted OKX ORDER-USDT-SWAP ORDER Bitget ORDER/USDT spot 18% 5%
Reweighted OKX OFC-USDT-SWAP Gate OFC/USDT spot 20% 25%
Reweighted OKX OFC-USDT-SWAP MEXC OFC/USDT unknown 20% 25%
Reweighted OKX OFC-USDT-SWAP OKX OFC/USDT spot 40% 50%
Reweighted OKX NEO-USDT-SWAP NEO Binance NEO/USDT spot 33% 39%
Reweighted OKX NEO-USDT-SWAP NEO KuCoin NEO/USDT spot 17% 3.6%
Reweighted OKX NEO-USDT-SWAP NEO OKX NEO/USDT spot 32% 39%
Reweighted OKX NAVER-USDT-SWAP binance_linear_index NAVER/USDT index 64% 100%
Reweighted OKX MOONSHOT-USDT-SWAP bitget_linear_perpetual MOONSHOT/USDT perp 33% 50%
Reweighted OKX MOONSHOT-USDT-SWAP okx_linear_perpetual MOONSHOT/USDT perp 33% 50%
Reweighted OKX LUNR-USDT-SWAP okx_linear_perpetual LUNR/USDT perp 1.5% 11%
Reweighted OKX LGELECTRONICS-USDT-SWAP binance_linear_index LGELECTRONICS/USDT index 63% 100%
Reweighted OKX LA-USDT-SWAP LA Bybit LA/USDT spot 33% 27%
Reweighted OKX KR200-USDT-SWAP hyperliquid_oracle KR200/USDT oracle 45% 50%
Reweighted OKX KIOXIA-USDT-SWAP KIOXIA hyperliquid_oracle KIOXIA/USD oracle 50% 67%
Reweighted OKX KIOXIA-USDT-SWAP KIOXIA okx_linear_perpetual KIOXIA/USDT perp 50% 33%
Reweighted OKX JP225-USDT-SWAP JP225 hyperliquid_oracle JP225/USDT oracle 45% 50%
Reweighted OKX INFQ-USDT-SWAP okx_linear_perpetual INFQ/USDT perp 8% 2.9%
Reweighted OKX GRVT-USDT-SWAP GRVT Bitget GRVT/USDT spot 22% 17%
Reweighted OKX GRVT-USDT-SWAP GRVT Coinbase GRVT/USD spot 33% 25%
Reweighted OKX GRVT-USDT-SWAP GRVT OKX GRVT/USDT spot 44% 33%
Reweighted OKX GPRO-USDT-SWAP Binance index GPRO/USDT index 40% 71%
Reweighted OKX GPRO-USDT-SWAP hyperliquid_oracle GPRO/USD oracle 5% 20%
Reweighted OKX CGNX-USDT-SWAP Bitget CGNX/USDT spot 5.9% 11%
Reweighted OKX CGNX-USDT-SWAP kaiko_reference_rate CGNX/USD reference 37% 44%
Reweighted OKX CGNX-USDT-SWAP massive CGNX/USD reference 37% 44%
Reweighted OKX AZTEC-USDT-SWAP AZTEC KuCoin AZTEC/USDT spot 14% 22%
Reweighted OKX AMC-USDT-SWAP massive AMC/USD reference 20% 9.2%
Reweighted OKX AI-USDT-SWAP AI Binance AIGENSYN/USDT spot 44% 50%
Reweighted OKX AI-USDT-SWAP AI Coinbase AI/USD spot 33% 50%
Reweighted Binance ZKPUSDT ZKP Binance ZKPUSDT spot 43% 51%
Reweighted Binance VELODROMEUSDT VELODROME Binance VELODROMEUSDT spot 65% 54%
Reweighted Binance SPORTFUNUSDT binance_alpha FUNUSDT unknown 16% 23%
Reweighted Binance SPORTFUNUSDT Binance futures SPORTFUNUSDT perp 16% 23%
Reweighted Binance SPORTFUNUSDT Bitget FUNUSDT spot 16% 23%
Reweighted Binance RPLUSDT RPL Binance RPLUSDT spot 50% 59%
Reweighted Binance PUNDIXUSDT PUNDIX Binance PUNDIXUSDT spot 65% 80%
Reweighted Binance HOMEUSDT HOME Binance HOMEUSDT spot 54% 65%
Reweighted Binance EULUSDT EUL Binance EULUSDT spot 74% 61%
Reweighted Binance DOTUSDT DOT Binance DOTUSDT spot 43% 49%
Reweighted Binance CTRUSDT CTR binance_alpha CTRUSDT unknown 31% 45%
Reweighted Binance CTRUSDT CTR Gate CTR_USDT spot 19% 27%
Reweighted Binance BANDUSDT BAND Binance BANDUSDT spot 65% 54%
Reweighted Binance AGLDUSDT AGLD Binance AGLDUSDT spot 59% 50%
Reweighted Bitget WOOUSDT WOO Binance WOO/USDT spot 71% 58%
Reweighted Bitget WETUSDT WET Bybit WET/USDT spot 33% 20%
Reweighted Bitget WETUSDT WET MEXC WET/USDT spot 33% 20%
Reweighted Bitget WETUSDT WET OKX WET/USDT spot 33% 20%
Reweighted Bitget WCTUSDT WCT Binance WCT/USDT spot 76% 65%
Reweighted Bitget USUALUSDT USUAL Binance USUAL/USDT spot 75% 84%

·

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.