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 · OKX · last 30 days
newest first · times in UTC · page 18Exchange: All · Binance · OKX · Bybit · Bitget Change: All · Added · Removed · Reweighted
| Time (UTC) | Change | Index | Constituent | Weight before | Weight after |
|---|---|---|---|---|---|
| Reweighted | OKX SNDK-USDT-SWAP SNDK | Binance index SNDK/USDT index | 43% | 31% | |
| Reweighted | OKX SNDK-USDT-SWAP SNDK | hyperliquid_oracle SNDK/USD oracle | 26% | 51% | |
| Reweighted | OKX SNDK-USDT-SWAP SNDK | okx_linear_perpetual SNDK/USDT perp | 19% | 10% | |
| Reweighted | OKX SMH-USDT-SWAP SMH | hyperliquid_oracle SMH/USD oracle | 43% | 56% | |
| Reweighted | OKX SMH-USDT-SWAP SMH | okx_linear_perpetual SMH/USDT perp | 19% | 11% | |
| Reweighted | OKX SMCI-USDT-SWAP | Binance index SMCI/USDT index | 100% | 79% | |
| Reweighted | OKX SKUU-USDT-SWAP | Binance index SKUU/USDT index | 50% | 73% | |
| Reweighted | OKX SKUU-USDT-SWAP | okx_linear_perpetual SKUU/USDT perp | 50% | 27% | |
| Reweighted | OKX SKHYNIX-USDT-SWAP SKHYNIX | Binance index SKHYNIX/USDT index | 44% | 50% | |
| Reweighted | OKX SKHYNIX-USDT-SWAP SKHYNIX | okx_linear_perpetual SKHYNIX/USDT perp | 41% | 50% | |
| Reweighted | OKX SKDD-USDT-SWAP | Binance index SKDD/USDT index | 50% | 100% | |
| Reweighted | OKX SHOP-USDT-SWAP | Binance index SHOP/USDT index | 100% | 53% | |
| Reweighted | OKX SAMSUNG-USDT-SWAP SAMSUNG | Binance index SAMSUNG/USDT index | 30% | 53% | |
| Reweighted | OKX SAMSUNG-USDT-SWAP SAMSUNG | hyperliquid_oracle SAMSUNG/USDC oracle | 60% | 41% | |
| Reweighted | OKX ROK-USDT-SWAP | Bitget ROK/USDT spot | 60% | 36% | |
| Reweighted | OKX ROK-USDT-SWAP | Gate ROK/USDT spot | 2.1% | 24% | |
| Reweighted | OKX RKLB-USDT-SWAP RKLB | Binance index RKLB/USDT index | 45% | 33% | |
| Reweighted | OKX RKLB-USDT-SWAP RKLB | okx_linear_perpetual RKLB/USDT perp | 3.6% | 11% | |
| Reweighted | OKX RIVN-USDT-SWAP RIVN | Binance index RIVN/USDT index | 100% | 48% | |
| Reweighted | OKX RIOT-USDT-SWAP | okx_linear_perpetual RIOT/USDT perp | 100% | 50% | |
| Reweighted | OKX RECALL-USDT-SWAP RECALL | Bybit RECALL/USDT spot | 27% | 33% | |
| Reweighted | OKX RDDT-USDT-SWAP | Binance index RDDT/USDT index | 96% | 50% | |
| Reweighted | OKX RAM-USDT-SWAP | Binance index RAM/USDT index | 69% | 99% | |
| Reweighted | OKX RAM-USDT-SWAP | okx_linear_perpetual RAM/USDT perp | 31% | 1.1% | |
| Reweighted | OKX QQQ-USDT-SWAP QQQ | Binance index QQQ/USDT index | 71% | 62% | |
| Reweighted | OKX QQQ-USDT-SWAP QQQ | okx_linear_perpetual QQQ/USDT perp | 19% | 33% | |
| Reweighted | OKX QNT-USDT-SWAP QNT | hyperliquid_oracle QNT/USD oracle | 50% | 96% | |
| Reweighted | OKX QNT-USDT-SWAP QNT | okx_linear_perpetual QNT/USDT perp | 50% | 4.5% | |
| Reweighted | OKX QCOM-USDT-SWAP | Binance index QCOM/USDT index | 45% | 54% | |
| Reweighted | OKX QCOM-USDT-SWAP | hyperliquid_oracle QCOM/USD oracle | 51% | 11% | |
| Reweighted | OKX QCOM-USDT-SWAP | okx_linear_perpetual QCOM/USDT perp | 2.7% | 12% | |
| Reweighted | OKX PURR-USDT-SWAP PURR | Bitget PURR/USDT spot | 23% | 29% | |
| Reweighted | OKX PURR-USDT-SWAP PURR | Bybit PURR/USDT spot | 46% | 36% | |
| Reweighted | OKX PURR-USDT-SWAP PURR | okx_linear_perpetual PURR/USDT perp | 31% | 36% | |
| Reweighted | OKX PROVE-USDT-SWAP PROVE | OKX PROVE/USDT spot | 17% | 25% | |
| Reweighted | OKX POET-USDT-SWAP POET | Bitget POET/USDT spot | 37% | 19% | |
| Reweighted | OKX POET-USDT-SWAP POET | Bybit POET/USDT spot | 63% | 30% | |
| Reweighted | OKX PLTR-USDT-SWAP PLTR | Binance index PLTR/USDT index | 50% | 56% | |
| Reweighted | OKX PLTR-USDT-SWAP PLTR | okx_linear_perpetual PLTR/USDT perp | 50% | 31% | |
| Reweighted | OKX PENG-USDT-SWAP | Binance index PENG/USDT index | 74% | 100% | |
| Reweighted | OKX OUST-USDT-SWAP | Gate OUST/USDT spot | 19% | 71% | |
| Reweighted | OKX OUST-USDT-SWAP | okx_linear_perpetual OUST/USDT perp | 41% | 3.1% | |
| Reweighted | OKX ORCL-USDT-SWAP ORCL | Binance index ORCL/USDT index | 58% | 37% | |
| Reweighted | OKX ORCL-USDT-SWAP ORCL | okx_linear_perpetual ORCL/USDT perp | 24% | 18% | |
| Reweighted | OKX ONDS-USDT-SWAP | Binance index ONDS/USDT index | 69% | 100% | |
| Reweighted | OKX ON-USDT-SWAP ON | Bybit ON/USDT spot | 50% | 100% | |
| Reweighted | OKX OKTA-USDT-SWAP | Bitget OKTA/USDT spot | 100% | 50% | |
| Reweighted | OKX OKLO-USDT-SWAP | Bitget OKLO/USDT spot | 100% | 57% | |
| Reweighted | OKX OFC-USDT-SWAP | Gate OFC/USDT spot | 25% | 20% | |
| Reweighted | OKX OFC-USDT-SWAP | MEXC OFC/USDT unknown | 25% | 20% |
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.