Index price

You may have heard of the term oracle price. Oracle price and index price mean the same thing.

The index price is the reference price used to ensure market stability and calculate funding rates.

Desirable properties of an index price are

  • tradable: must be at or near a price at which the reference asset can be traded

  • robust: cannot be easily manipulated

  • timely: must reflect market information quickly

  • understandable: must be easily understood by traders

The index price on Butter.xyz is a weighted combination of recent sales prices and current listings prices.

Sales window

Specifically, Butter.xyz maintains a sales window of the last 50 transactions of sales and calculates an exponentially-weighted average of the price over these transactions. Transactions whose sale prices are far outside the exponentially-weighted average are excluded.

Current listings

We aggregate listings data from major marketplaces (Blur, OpenSea, X2Y2, and LooksRare) and calculate a combined floor price. To prevent manipulation of listings data, we require that any included listing is at least 15 minutes old. As another robustness precaution, we take two measures of listings liquidity, and if either is not met, we decrease the weight of the listings price in the index price calculation. The first is a measure of the number of listings relative to the collection size, and the second is a measure of the listings depth.

Additional robustness measures

The same token ID cannot be included multiple times in either sales or listings in a 15-minute window. This prevents manipulators from repeatedly trading or listing the same tokens to manipulate the index price.

Last updated