Ethereum brought DeFi to birth and the decentralized exchanges (DEXes) are the hard points of DeFi. Uniswap’s Automated market makers (AMM) DEX has a great effect on the DeFi landscape. Uniswap’s AMM model was followed by several decentralized exchanges (DEX) DeFi protocols on Ethereum and are still followed by newly launched DeFi projects. One of them is Curve Finance, a UniSwap-like exchange for stablecoins.
These AMM DEX protocols are often compared for meaningful competition with centralized exchanges (CEX). But there is one segment where DEXes are already showing great potential and that is stablecoin trading. Curve Finance is at the forefront of this space. By focusing on stablecoins, it’s able to offer traders extremely low slippage, and liquidity providers enjoy little-to-no impermanent loss. Let’s take a look at Curve Finance.
What is Curve Finance?
Curve Finance, launched in January 2020, is an automated market maker (AMM) protocol designed for swapping between stablecoins with low fees and slippage. Curve can be called Uniswap for stablecoin trading. Due to the way the pricing formula works on Curve, it can also be extremely useful for swapping between tokens that remain in a relatively similar price range.
Curve is not only a great platform swapping between stablecoins but also different tokenized versions of a coin. For example, Curve is one of the best DeFi protocols to swap between different tokenized versions of Bitcoin, such as WBTC, renBTC, and sBTC. Curve supports DAI, USDC, USDT, TUSD, BUSD, and sUSD, as well as BTC pairs, and it lets users trade between these pairs extremely quickly and efficiently.
Curve Finance was introduced by Russian physicist Michael Egorov, the CTO of a computer and network security company called NuCypher. The documentation of the protocol describes Curve Finance as an exchange liquidity pool on Ethereum. Compared to other DeFi protocols, where Uniswap focuses on maximizing available liquidity, Curve’s algorithm emphasizes more on minimizing slippage. Therefore, with the Curve, traders save more.
Curve Finance protocol is currently ranked at number five in terms of total value locked (TVL). According to DeFi Pulse, $5.61 billion are locked on Curve liquidity pools, which makes it the second-largest Ethereum DEX after Uniswap. According to sources, each trade on the platform incurs a 0.04% trading fee that goes directly to liquidity providers.
So let’s take at its main components.
Curve StableSwap Exchange
StableSwap was the previous name of Curve as its white paper explains StableSwap. So, the StableSwap exchange is the core of the Curve Finance ecosystem. StableSwap is a decentralized exchange contract and performs the core functionality of the protocol.
The white paper describes StabeSwap as:
“StableSwap provides a mechanism to create cross-markets for stable[1]coins in a way which could be called “Uniswap with leverage”. It is a fully autonomous market-maker for stablecoins with very minimal price slippage, as well as an efficient “fiat savings account” for liquidity providers on the other side.”
According to the white paper, the constant-product pricing algorithm used by Uniswap or a generalized invariant of constant product used by Balancer to support more than two coins in a pool, is suitable for assets like ETH and tokens, it does not work well for something which is meant to be stable.
So, Curve Finance has its middle-ground invariant called StableSwap invariant that is used to stabilize the number of tokens in a pool. Curve achieves extremely efficient stablecoin trades by implementing the StableSwap invariant, which has significantly lower slippage for stablecoin trades than many other prominent invariants (e.g., constant-product).
Curve Pools
As Curve Finance is an AMM protocol, it uses liquidity pools instead of order books to facilitate trades. A Curve pool is essentially a smart contract that implements the StableSwap invariant and therefore contains the logic for exchanging stable tokens. While all Curve pools implement the StableSwap invariant, they may come in different pool flavors.
There are three types of pools on the Curve: Plain pools, Lending pools, and Meta pools.
Plain Pools
The simplest Curve pool is a plain pool, which is an implementation of the StableSwap invariant for two or more tokens. The key characteristic of a plain pool is that the pool contract holds all deposited assets at all times.
Liquidity providers can provide liquidity in one, two, or more than two tokens.
Lending Pools
These pools contain lending functionality, whereby the underlying tokens are lent out on other protocols like Compound or Yearn. The main difference to a plain pool is that a lending pool does not hold the underlying token itself, but a wrapped representation of it. Currently, assets from the lending pools are lent out four DeFi protocols: Compound, Aave, Yearn Finance, and Cream.
This means LPs on Curve earn in two ways. Every time someone makes a trade on Curve, liquidity providers get a small fee split evenly between all providers. LPs who provide liquidity to lending pools, also receive interest generated on lending in addition to fees from token swaps in the pool.
Metapools
According to the documentation, “A metapool is a pool where a stablecoin is paired against the LP token from another pool, a so-called base pool.” When a user provides liquidity to a pool, he receives 3CRV LP tokens. These LP tokens may then be deposited into a metapool, which always contains a stablecoin and an LP token.
By depositing the LP token in a metapool, they receive a metapool LP token which can be staked in the metapool’s liquidity gauge for CRV rewards. New CVR tokens are minted in a minter contract that generates new CVR according to liquidity gauges.
This way, metapools provide an opportunity for the base pool liquidity providers to earn additional trading fees by depositing their LP tokens into the metapool.
Curve DAO (CRV) Token
CRV is the native governance token of CurveDAO, a decentralized autonomous organization (DAO) launched in August of 2020. The main purposes of the Curve DAO token are to incentivize liquidity providers on the Curve Finance platform as well as getting as many users involved as possible in the governance of the protocol.
According to the documentation, CRV has three main uses: voting, staking, and boosting. Those three things require users to vote lock their CRV and acquire veCRV. veCRV stands for vote-escrowed CRV.
CRV token can be staked (locked) on Curve Finance to receive trading fees from the Curve protocol. One of the main incentives for CRV is the ability to boost users’ rewards on their provided liquidity. Vote locking CRV allows users to acquire voting power to participate in the DAO and earn a boost of up to 2.5x on the liquidity you are providing on Curve. Once CRV holders vote-lock their veCRV, they can start voting on various DAO proposals and pool parameters.
A total of 3.03 billion CRV tokens will be minted. According to CoinMarketCap, nearly 1.4 million CVR tokens are in circulation.
Cross-Asset Swaps
Cross-asset swaps are a new type of swaps on Curve using Synthetix as a bridge. Curve Finance launched cross-asset swaps in January of 2018 to provide swap services to crypto whales.
Cross-Asset Swap allows one to swap a large amount of BTC or ETH to stablecoins, with little or zero slippage. If someone is swapping involving millions, it is impossible to have little or zero slippage in Uniswap or centralized exchanges like Binance. Curve’s cross-asset swap can provide swapping services involving million with very low slippage and low fees
Curve integrates with Synthetix to allow large-scale swaps between different asset classes with minimal slippage. Curve protocol can perform fully on-chain cross-asset swaps at scale with a 0.38% fee.
For example, if a user wants to exchange A for D, then A and D: (i) must be of different asset classes, (ii) must be exchangeable for a Synthetic asset within one of Curve’s pools.
According to the documentation, swapping A for D will be a four-step process:
- A will be exchanged for B on Curve itself, a synth of the same asset class as asset A.
- B will then converted to C, a synth of the same asset class as D.
- A settlement period passes to account for sudden price movements between B and C.
- Once the settlement period has passed, C is exchanged on Curve for the desired asset D.
Each unsettled swap is represented by an ERC721 non-fungible token (NFT). Each NFT has a unique token ID. Token IDs are never re-used. The NFT is minted upon initiating the swap and burned when the swap is completed.
Important Links
Website: https://curve.fi/
Whitepaper: https://curve.fi/files/stableswap-paper.pdf
Technical Documentation: https://curve.readthedocs.io/index.html
Non-Technical Documentation: https://resources.curve.fi/
Twitter: https://twitter.com/CurveFinance