Comment on page
Each collection contained within the vault has an associated floor price which is frequently updated by the Oracle mechanism. To call the
redeem()function, a redeemer must input a number of
NFT Index Token equal to the highest value floor of any given NFT collection within the
MarketVault. At the end of the redemption process, the redeemer receives the difference between the value of the NFT obtained and the amount input.
The Chainlink VRF is a provably fair and reliable random number generator. It is funded via LINK tokens provided by the DAO through a subscription account. When
redeem()is called, the protocol escrows the
NFT Index Token of the redeemer and makes a call to the Chainlink VRF contract to provide randomness. This randomness is used to determine which NFT is redeemed from the vault. In a separate transaction, Chainlink VRF executes the callback function
fulfill(), providing the random number and transferring a random NFT to the redeemer.
Random redemption avoids the problem of providing free optionality to arbitrageurs. If participants redeeming
NFT Index Token were allowed to select any NFT for redemption, they could preferentially select those which have increased in value while avoiding those that have decreased relative to $NFT, siphoning value from the
The beta of an asset is its correlation to the overall market. The volatility of an optimal NFT index will map to the overall NFT market, i.e., (
). By preventing individuals from preferentially removing specific NFTs, this allows the index fund to maintain a collection representative of the overall market, allowing its volatility to track the broader market. Hence, random redemption preserves the beta of the index.