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 allow better capital efficiency.

Anyone can create a pool or become a liquidity provider (LP) by depositing an equivalent amount of each underlying token in exchange for LP tokens. These tokens represent pro-rata LP shares of total reserves and can be redeemed at any moment for the underlying assets.

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.