The Virtual Automated Market Maker (vAMM)
NFT Perpetuals protocols today use a modified virtual AMM (vAMM) model for price discovery and store all the traders’ collateral in a smart contract vault. It acts as an independent settlement market where all profits and losses are directly settled in the collateral vault.
From a high level, vAMMs have the following features:
- No liquidity or liquidity provider is required.
- Powered by the same constant product formula, x*y = k, as typical AMMs.
- Traders are long or short a given asset by depositing collateral.
- Prices on vAMM get updated every time a trade is executed.
The vAMM model, which was initially developed by Perpetual Protocol and subsequently iterated by Drift Protocol, allows for a unique trading mechanism in which the loss of one trader is the gain of another. This approach eliminates the need for liquidity providers (LPs) and the maintenance of a liquidity pool, as fees are directed elsewhere. This feature is particularly beneficial for perpetual futures platforms as it enables trading with leverage and shorting without the risk of impermanent losses to the LPs. In contrast, traditional AMMs for perpetuals are limited by the pool’s liquidity, which restricts the amount of open interest that can be generated. The vAMM model overcomes this limitation.
vAMM’s Constant Product Formula
Similar to traditional AMMs such as UniSwap v2, vAMMs utilize a constant product formula x*y=k, where x represents the synthetic asset that reflects the collection’s floor price, and y denotes ETH. The creator of the AMM sets the initial x and y values, which are evenly split in terms of their values.
When a perpetual futures position is established in a vAMM, the user deposits collateral y into the vault and receives an equivalent value of the desired trading asset, x. The values of both x and y in the vault are adjusted, but the constant k remains unchanged, resulting in a bonding curve determined by the constant product formula.
The bonding curve is what determines the execution price for each trade on the vAMM, which varies based on the amount of the x and y assets in the vault.
Oracle (Spot) Pricing of NFT Perpetuals Futures Platforms
Outside of the vAMM, projects like NFTPerp also use an internal Oracle for real-time price quotes of the underlying NFTs, with a customized price feed filtering out wash trades and other outliers to create a True Floor Price Oracle.
Tribe3, on the other hand, has implemented a proprietary Oracle construct that utilizes the mid-price of bids and asks (of the underlying NFTs) as the base data, with a dynamic TWAP period.
More details on NFT perps will be made available for all PRO members in an upcoming PRO report.