NftFi and Floor Price Oracles
This is an unrolled Twitter thread, the original thread can be found here:
https://twitter.com/john_iller/status/1633944117104320516
-
AML/CFT stands for "the scariest acronym we could come up with to trample the 4th amendment and surveil every financial transaction"
-
Ironically, DeFi and crypto so far has promoted the US dollar's global supremacy. Thus crypto *is* a national secu… https://t.co/Oo995Vh7dC
-
Would be cool if you could choose your own moderation and recommendation algorithm. Or a marketplace of open sour… https://t.co/y9dEC5YKMA
-
A common sense fix that was long overdue. Progress 📈 https://t.co/DxhLG14QLm
-
Great technical overview of the upcoming Shanghai hardfork by @jameshe_eth outlining how withdrawals will work in… https://t.co/syXCF6P25J
-
I guess now we know why @BrianBrooksUS quit ...
-
DeFi 3.0? 4.0? I don't even know but tokenomics are maturing and a growing number of protocols are cashflow posit… https://t.co/Dcf2TNgVnm
-
I'm thinking this spike in Dogecoin block size are ordinals inscriptions for $DOGE https://t.co/t1idWh1mNn
-
Things We're Reading - March 2023 https://t.co/4PnUD9ux1J Featuring articles or threads by: @CryptoHayes… https://t.co/VMxoBaVemH
-
Crypto always gets singled out for some reason. I’ve never heard calls for more efficiency in banking or gold min… https://t.co/tV0vT62tKn
As NFTfi continues to boom, the NFT floor price is becoming a critical data point with millions of dollars depending on its accuracy.
🧵 about NftFi, floor price, and how some floor price oracles calculate it.
Features @dropsnft, @nftperp, @NFTX_, and @HookProtocol
Some background – the floor price is the lowest price for an NFT within a collection. Often people use lowest asking price (sale price).
The trade volume at/near the floor price is increasing, meaning NFTs are becoming more fungible in general.
There's also more trading happening *below* the floor, i.e. sellers accepting offers below the listed price. Price is increasingly set by sellers, not buyers.
Thus a good floor price uses actual trading activity where buyers/sellers meet a fair price.
Why do we need to know the floor price?
In addition to being useful for buyers and sellers of NFTs, the emerging sector of NftFi includes novel derivative applications such as lending/borrowing, fractionalization, perpetual swaps, and more.
This means you can get exposure to NFTs in novel ways – e.g. smaller traders can get exposure to CryptoPunks, BAYC, etc without spending over 70+ ETH to own one.
This increases participation while also ultimately making the market more efficient.This also means you can financialize your NFT without having to sell the underlying NFT.
People get emotionally attached to their NFTs or even build brands around them. If that NFT greatly increases in value, you can now monetize the NFT without parting with your beloved JPEG.
But using an oracle comes with risk – how can you be sure that the price is accurate?
Some NftFi projects are calculating their own *non-manipulated* floor price and reporting the price feed using @chainlink. They might also average this value with other price oracles.
This is the approach taken by @dropsnft – a protocol that allows lending/borrowing/financializing of NFTs.
DropsDAO is in architecture to @compoundfinance and relies on a price feed for liquidations. @dropsnft pioneered a solution to calculate the spot floor price.
In general, the approach taken by @dropsnft is to take each sale thru multiple steps and weed out trades that don’t pass all the checks:
1. Check the sale wasn’t a wash trade
2. Remove extreme outliers – those below 5% or above 950% of the floor
3. Remove “probable” outliers
Getting into the weeds a bit, the “probable” outliers are weeded out by calculating a rolling acceptable price range using the Sample Standard Deviation and maintaining a rolling average using a Truncated Mean.
https://en.wikipedia.org/wiki/Standard_deviation#Estimation
https://en.wikipedia.org/wiki/Truncated_mean
If a sale is lower than 75% of the moving average and outside the standard deviation range, the sale is weeded out as a probable outlier.
Lastly, they keep a list of the last 10 trades that pass the checks, and the lowest one is the floor price, updated every 4 hours.
Their oracle works like @dropsnft's but they have tweaked certain risk parameters on a collection-by-collection basis.
@nftperp also keeps track of a rolling acceptable range with an added a "sensitivity multiplier" to vary the range by collection.
Given the massive disparity in unit size, volume, etc among NFT collections, and perps needing a very live oracle, this seems like a good move.
@NFTX_ is a platform for fungible ERC-20 (vTokens) that represent underlying NFTs. This is a form of fractionalization where each token gives you a share of ownership over a pool of NFTs. Users can redeem 1 vToken for an NFT in the pool.
As a bonus, the price of these vTokens should give a good metric for the floor price, as arbitrageurs can profit off of any price difference between ERC-20 and floor.
The vToken price tracks the floor price quite well for collections with high liquidity and low vault fees.
On some collections with a higher unit size, or where the arbitrage trade is too costly, the vToken price can deviate from the floor price dramatically, usually expressed by a much lower sell price.
As these vaults grow in liquidity, I expect these gaps in the spread to close.
@HookProtocol is an NFT options platform that determines floor price without oracles at all.
The day before an auction expires, the underlying NFT is listed for sale and an auction begins, which determines the settlement price. Thus the floor is decided by traders in real time.
Without getting into the inner workings of options, this works like getting paid to sell an NFT (at a fixed later date) with a minimum reserve price.
This also means the NFT must be used as collateral. While this sidesteps the oracle risk it introduces other tradeoffs.
I’m excited for these and other projects to build solutions that accurately report the floor price. Over time, these will become battle tested and allow NftFi markets to flourish.