vAMM model

  • Updated

Key terms

AMM: Automated market maker, a type of exchange where trades are made against a pool of liquidity with prices set automatically based on the makeup of the pool.

Orderbook: A list of orders posted by traders that will be matched with other traders whose orders coincide.

Maker: A person who creates an order for traders to trade against, or provides liquidity for traders to trade against.

Taker: A person who trades against an order created by a maker, or against liquidity provided by makers.

 Perpetual Protocol v2 uses Uniswap v3 for processing trades, so a basic understanding of how trading works on Uniswap is helpful. Here's a helpful video explainer and blog post

Learn more about how Perpetual Protocol uses Uniswap v3: Perpetual + Uniswap

Trades on Perpetual Protocol are performed using an AMM with virtual tokens, hence the term vAMM. This makes trading a bit different from order book based exchanges (CLOB).

Guaranteed Liquidity

The key advantage of AMM-based exchanges is you can always place your trade right away, no matter the size.

However, the size of the trade will affect the price impact of the trade—that is, how much your trade will move the asset price. So it is key to take note of the estimated price impact of your trade before placing it.

Price Movement

On an AMM style exchange, price only moves when a trade is made. The percentage the price moves for each trade is called price impact. The price impact is determined by the size of the trade and the available liquidity.

  • Small trade size + large liquidity available = small price impact
  • Big trade size + small liquidity available = large price impact

Price on the AMM does not follow spot prices on its own, and requires arbitrageurs to make trades, keeping the AMM price close to spot.

Price Ranges

Perpetual Protocol benefits from concentrated liquidity resulting from range pricing on Uniswap v3. This means that liquidity is placed in price ranges set by liquidity providers, called makers.

Your trade will always use liquidity from the current price range. If your trade is very large and exhausts liquidity in the current price range, you will cause the price to cross into other ranges.