In a dynamic market, where interest between collections shifts seemingly overnight, liquidity analysis plays a crucial role in successful NFT trading strategies. But what is liquidity? Why is it important for markets? And how does one use it to their advantage as they trade?
Let’s dive right in. 🌊
Let’s say you’re trying to sell a 3-bedroom house that has a 10-car garage. How much extra value does the massive 10-car garage add to that house? The answer will differ depending on who you ask. To most purchasers, it would add very little, as they only need a small garage if at all. However, to an active car collector, having the extra garage space could mean a lot!
That said, the number of active car-collecting house shoppers is much smaller than the total number of house shoppers out there, so it would take longer to find a buyer that would be willing to pay the premium due to the 10-car garage. Sure, the house can be sold quickly to any purchaser, but to receive the premium (or the highest value anyone would be willing to pay), you will have to sacrifice time on the market to find the buyer who values the garage.
The value of an NFT depends on the amount of time you are willing to wait for the right purchaser, which is why it is incomplete to consider valuation without considering liquidity, and vice-versa. There is a trade-off between how long it may take to sell, and the total price you will receive.
Just as a house with a 10-car garage might receive an extra 50% in sale price if you are willing to wait for the right buyer, to make an informed decision, you’d need to know how long that may take. You can imagine how important this is in markets, especially given how fast markets move and prices change. Is it worth waiting for the right buyer? Is there more upside selling this NFT immediately and jumping into a different collection? These are all important questions, but until now, the answers haven’t been immediately clear.
Most people try to get a sense of liquidity by eying the transaction history of the NFT collection being evaluated. Collections with hundreds of transactions per day can be assumed to be more liquid (ie, you don’t need to wait as long to find a buyer who’s willing to pay you the value of your NFT) than a collection with a few transactions per month.
To drill down into the liquidity level of a specific NFT, advanced traders may analyze the transaction history of NFTs with a specific trait shared by the NFT. For instance, a solid gold BAYC is much more valuable than a BAYC at the floor, but it will also be less liquid if listed at its fair market value.
There are a few simple technical metrics one can also use to measure the overall liquidity of a collection or trait within a collection. One that we’ve identified is the floor : ceiling ratio (which we’re also referring to as the liquidity ratio), which is calculated by dividing the floor listing price of the collection by the bid ceiling (or highest collection-wide offer). For example, if the floor of BAYC is 77.4 ETH and the bid ceiling of BAYC is 72.5 WETH, the liquidity ratio is 1.07. Likewise, if the floor of the Solid Gold Fur trait in BAYC is 750 ETH and the bid ceiling for this trait is 200 ETH, the liquidity ratio of the Solid Gold Fur sub-collection is 3.75. The lower the liquidity ratio is and closer to 1 it approaches, the more liquid the collection or sub-collection is. This signal helps one understand the level of demand for a collection relative to the level of market supply or willingness to sell.
Below is a non-exhaustive exhaustive list of other signals that help to indicate liquidity:
Price: we can reasonably think higher priced NFTs may take longer to find a buyer.
Collection: some collections are currently more popular than others.
Sales volume: amount of sales in the last week, day, hour, minute.
Bid volume: amount of bids in the last week, day, hour, minute.
Rarity: are there many NFTs similar to this one?
Listings: are there numerous competing NFTs currently for sale? What percent of the collection is for sale?
Bids: are there a lot of traders indicating they are looking to buy?
Discount: the premium or discount of the NFT to its current valuation.
Average floor sale time: the time delta between when a floor listing is posted and then sold.
Listing sales volume vs. offer sales volume: are most people accepting offers or purchasing spot?
Depth of the floor: what does the structure of floor listings look like? How would the floor change if some number of floor NFTs were purchased?
Depth of the bid ceiling: what does the structure of collection bids look like? How would the bid ceiling change if some number of collection bids were taken?
However, these simple metrics do not paint a complete picture and while they are helpful, they are far from the optimal solution. So how can we go deeper? To do this, we need to understand the properties of non-fungible assets.
In fungible markets, liquidity is usually a comparative measure: for example, a stock traded on an exchange is more liquid than a stock only traded over the counter (OTC). Additionally, analysis is much simpler because assets are completely fungible (one share of SPY is indistinguishable from another, and one 1 ETH = 1 ETH). In these markets, valuation is also much simpler: the current best estimate of value is the current price, so a liquidity analysis primarily looks to show how much of the asset you can buy or sell without moving the price of the asset.
Non-fungible markets are different: every single asset is unique. The liquidity functions much more like liquidity for a house. In order to determine liquidity for a specific NFT, one must assess the specific properties of this NFT, its market behavior, and its transaction history. Doing this for each listing in a collection is quite challenging and time-consuming for human traders, and in a market where timing is important, this can lead to subpar returns. This is why we’ve built a robust, machine learning-based liquidity analysis model: to give you superpowers for analyzing liquidity.
We have developed three distinct approaches which leverage machine learning to analyze the specific liquidity of each individual NFT in a collection in real-time. From here, you are able to dig deeper into the NFTs you are interested in, which is much more efficient than trying to assess the liquidity of all listings yourself.
Each of these approaches incorporate the same data we use to assess valuation for an NFT. More information on this can be found in our Valuation Analysis article.
Valuation + liquidity signals → sale time: Look at every sale that has happened, create a valuation for when the listing was added, and then add signals that you think best categorize how liquid that asset might be. Then calculate the time it took between the listing and the sale. Build a model that predicts the time it will take given the listing’s premium or discount and all other signals.
This is a very direct approach that gets right to the heart of the problem, but has some of its own potential drawbacks. The main concern with an approach like this is that we condition our sample data on an item being sold. There is a really interesting statistical phenomenon called adverse selection and this happens when your data sampling technique is not dictated by yourself, but by others. In this case our data sampling technique is dictated by the market. That condition (sample WHEN a sale happens) leaves the sampling out of our hands, and may over sample with conditions we are not controlling for.
Correcting for adverse selection: Same approach as number one, but change the sampling structure to include sampling from every single listing that has happened (in an attempt to address conditional bias on sampling only sales). For unsold listings change the time to a defaulted maximum.
This approach also has some drawbacks. It introduces a lot more data, and a lot of it is superfluous and unnecessary. Choosing how to properly address canceled listings, and repriced listings, introduces its own bias into the data. Although this addresses some of the conditional sampling bias of the first approach, the error estimate increases wildly and introduces your own sampling biases in how a sparse dataset is cleaned.
Learning listing-to-sale time buckets: Sample from every listing we see, and create defined time periods (such as 10 seconds, 1 minute, 10 minutes, 1 hour, 1 day, etc). Then, determine if the listing sold within that time period. Model the likelihood of sale given a valuation, for each time period and then output the liquidity curve as the connection of prices that have a 90%+ probability of selling within that time frame.
The drawbacks here are that the predetermined time periods can be clunky and untenable across many many different collections. Modeling and calculation time explodes with creating a unique training set for each time period which may not be suitable for real-time analysis. Additionally, data is incredibly sparse for sales compared to listings. Traditional techniques to deal with this include upsampling or oversampling which may bring in the initial conditional bias you were trying to remove.
While each of these approaches have their own drawbacks, we’ve found that together, they form the basis of a powerful system for analyzing the level of liquidity for NFTs in a collection in real-time.
Trading NFTs is ultimately about inventory management. After deciding to make a bet on a collection, having control over your entry point and exit point is paramount to the returns you’re able to realize.
Before buying an NFT, it’s a good practice to evaluate the liquidity of your own portfolio as well as the liquidity of the NFT. If you’re putting a substantial amount of your liquidity into an NFT that is less liquid, will you be able to react quickly enough if a better opportunity comes along? What’s the probability of such an opportunity coming along? These are questions that you must answer for yourself, but having done so, a solid grasp of liquidity of the NFTs you are considering and the ones you already hold is crucial for managing your NFT portfolio in an optimal way.
Likewise, before selling an NFT, consider how long you’re willing to wait for it to sit on the market. Do you feel good about the market holding steady or even increasing? Or would you prefer to exit quickly? After determining your desired timeline, you can input this into Atlas’ liquidity analysis tool to find the optimal listing price for the NFT. This way, you’ll be able to manage tighter, more process-driven strategies for inventory management of your NFT portfolio, and ultimately, your end returns.
Remember, executing trades on Atlas means you’ll be saving on gas with the most gas-efficient aggregator around, and you’ll also be earning points toward the eventual airdrop!
Atlas is a revolutionary trading and financial products platform for NFTs, powered by cutting-edge machine learning. The team is deeply technical with a strong track record of building great products, having founded or been on the founding team of an NFT unicorn, a DeFi unicorn, and a highly successful quantitative trading firm. We’ve been building NFT marketplaces since 2018, quant and AI trading strategies since 2010, and have scaled multiple products from 0 to millions. Join Atlas today and be a part of the future of NFT trading.