In this article we show how the Net Asset Value (NAV) of the Scalara NFT Index can be determined. If the components of an index are not available on an exchange, calculating its NAV may be not as straightforward.
An index can be thought of as a basket of tokens. The Scalara NFT Index (NFTI) for instance is a basket that contains xTokens (xPUNK, xDOODLE, etc.) from the NFTX platform. Intuitively, the NAV of such a composite index is the sum of the value of all its constituents.
When buying an index tracking token on a decentralized exchange (DEX) the user doesn’t pay this NAV though, but instead the current market price quoted by the automated market maker on a specific DEX pool. This market price is deterministically set by the AMM by the current token ratio or liquidity distribution in the pool. If the market price is above the NAV, the token is said to trade at a premium, if it is below NAV, it is trading at a discount.
Therefore, keeping an eye on the difference between NAV and market price is important when investing in any index product.
For example, see below the spread between NAV and market price for DPI, the token tracking the DeFi Pulse Index:
Ignoring gas and platform fees, NAV is an approximation of the value of the assets that are necessary to mint an index token or that are received when redeeming (burning) it.
As written above, the NAV of an index token is defined as the sum of the values of its constituents:
To find the value of token T in the index, one has to multiply the weightfactor of T with the price of T. The weightfactor (not to be confused with the “weight” which typically refers to the percentage allocation) quantifies how many units of token T are in one unit of the index token. Since there is a streaming fee continuously deducted from the token balance, the index implementation protocol Kuiper introduces an IBRatio. The IBRatio is used to adjust the token balances so the weightfactors can remain constant between rebalances. At index inception the ratio is set to 1 and afterwards it is decreasing according to the streaming fee:
For simple indices, where the price of each constituent can easily be observed on a liquid trading venue, we could stop here. NFTI though adds more complexity to this simple formula because the index constituents, xTokens from the NFTX platform, are (as of now) not tradable and therefore finding their value requires further calculation steps.
Users receive NFTX xTokens for staking NFTX vTokens. vTokens are ERC-20 tokens that are minted for depositing an NFT in the respective NFTX vault. Similarly, vTokens can be used to redeem an NFT from the vault.
Using a simple no-arbitrage argument we can find an estimate for the value of a vToken: If the vToken is valued less than the floor price, one could buy the vToken, redeem an NFT and sell it for the floor price – making a profit. If the vToken is valued more than the floor price, one could buy an NFT at floor price, deposit it to mint a vToken and sell the vToken on a DEX – again, making a risk-free profit. This argument also implies that the NFTX vaults should only contain floor NFTs.
Of course this estimation is based on several assumptions – efficient markets, no transaction fees, instantaneous trading of NFTs at floor price, liquid trading of vTokens.
Furthermore, xTokens are accruing fees from Inventory Staking in the form of an increasing exchange ratio to vTokens. At the inception of the Inventory Staking program, staking 1 vToken of a given NFT would mint 1 xToken. As time passes, xTokens are earning more fees from activity on the NFTX platform. Therefore, 1 xToken will be worth more than 1 vToken. For example, as of writing 1 xPUNK is worth roughly 1.00920 PUNK. The current ratio is published on the NFTX Dashboard or can be inferred on Etherscan. Hence we have:
Putting it all together, the NAV of NFTI can therefore be estimated as:
IBRatio and weightfactors can be found on the Kuiper website by looking up NFTI’s Ethereum contract address:
v2xRatios for all NFT collections can be found on NFTX.io:
Floor prices of NFT collections can be found on most NFT marketplaces or analytics websites, e.g.:
The previous sections hopefully made it clear that a discrepancy between NAV and market price can indicate an arbitrage opportunity. In reality, of course, there are a lot more practical considerations to be made. Gas fees, bridging fees and delay, price impact, to name a few have to be considered. We will not get into details of the profitability of such strategies though.
None of the above should be considered investment advice. Please do your own research.
Scalara, a subsidiary of DeFi Pulse, creates and maintains indices for a decentralized world.