Skip to main content

How DMM works

DMM Diagram

The Dynamic Market Maker (DMM) is an on-chain automated liquidity protocol that uses programmable pricing curves to try to improve capital efficiency from the constant product formula pioneered by Uniswap. Similar to Uniswap, it removes the need for trusted intermediaries, and prioritizes decentralization and security.

DMM's core improvements are its flexible fee adjustment and programmable pricing curve setups. The flexible fee approach helps reduce the impact of impermanent loss, while different pricing curve setups tailored particularly to the token pairs in the pool allows better capital efficiency.

Anyone can become a liquidity provider (LP) to a DMM pool by depositing an equivalent value of each underlying token in return for LP tokens. These tokens track pro-rata LP shares of the total reserves, and can be redeemed for the underlying assets at any time.

For each token pair, there are possibly many multiple pools with different configurations for the pricing curve. Pools are ready to accept one token for the other as long as the DMM formula is preserved. For more information on the programmable pricing curve formula, see Programmable Pricing Curve.

The DMM applies a dynamic fee to trades, which is added to reserves. This functions as a payout to LPs, which is realized when they burn their LP tokens to withdraw their portion of total reserves. For more information on dynamic fees, see Dynamic Fee.