Favoring stability and composability over volatility and speculation
Ever since the explosion of DeFi in the summer of 2020, we have seen a plethora of money enter decentralized finance protocols. Fast forward to now and there is ~$250b locked across a wide range of DeFi protocols. DeFi protocols blossom on DEXes and these rely on Automated Market Makers (AMMs) to function.
But there was a problem with these AMMs. They rebalance with every crypto swap/trade. With every sale, the price goes down. The more liquidity in the liquidity pool, the better, as the price doesn't slip/rebalance as much. For illiquid pairs mean buyers and sellers get a worse deal. You sometimes see this when buying microcaps. DEXes ask you to adjust slippage tolerance, which basically means the price of your asset is changing due to your trade.
With stablecoins, liquidity is even more important, as they need to hold a constant $1 price. If there's not enough liquidity, the price on DEXes fluctuates all over the place due to slippage and AMM rebalancing. A $1 stable coin trading for $0.85 is not a stablecoin.
Of the ~$250b locked across a wide range of DeFi protocols, ~9% (23B) resides in Curve Finance, which has become the dominant AMM/DEX for stablecoins.
So what is Curve Finance?
Curve finance introduces is essentially a DEX (decentralized exchange) platform introducing a different automated market maker (AMM) algorithms to DeFi, allowing for a lower slippage and lower fee exchange between like assets. Users with idle reserve assets can deposit their coins into Curve and earn trading fees along with governance tokens.
It is DeFi's second-biggest protocol by TVL, with over $15b in liquidity, and has stablecoin and reserve asset liquidity across Ethereum, Avalanche, Arbitrum, and other chains. Curve has many similarities to Uniswap and Balancer but differentiates itself by only accommodating liquidity pools made up of similarly behaving assets like stablecoins, or wrapped versions of like assets such as wBTC and tBTC. This approach allows Curve to use more efficient algorithms, and feature the lowest levels of fees, slippage, and impermanent loss of any decentralized exchange (DEX) on Ethereum.
Although CRV doesn’t dominate DEX’s in total volume, when you look at it on a per pair basis you can see that CRV outperforms all other DEX’s by a large margin. This makes it an extremely attractive place to provide liquidity.
Some protocols use the standard model, incentivizing liquidity with their native token. But Curve is different from other DEXes. Curve distributes $CRV to some liquidity pools, and it allows token owners to vote on how many $CRV tokens each pool gets (via gauges). So if your pool gets enough votes, you don't have to incentivize liquidity using your own token. You can incentivize with Curve's token. This means the votes by $CRV holders allow protocols to save money. Which makes the votes themselves WORTH money.
Let’s begin with a quick refresher on how AMMs work and then we can focus on how Curve achieves lower risk and higher efficiency than other AMMs in the DeFi ecosystem.
How AMMs Work
Automated market makers (AMM) allow digital assets to be traded permissionlessly and automatically by using liquidity pools instead of trading between buyers and sellers. At its core, a liquidity pool is a shared pot of tokens. Users supply liquidity pools with tokens, and the prices of the tokens in the pool are determined by a mathematical formula. By tweaking the formula, liquidity pools can be optimized for different purposes. Anyone with an internet connection and some ERC-20 tokens can become a liquidity provider by supplying tokens to an AMM’s liquidity pool. Liquidity providers normally earn a fee (paid by traders who interact with the liquidity pool) for providing tokens to the pool.
To gain a better understanding of Curve.fi’s features, let’s stack the better known Uniswap’s features against its own to see what only Curve.fi has to offer:
Multiple stablecoins including USDT, USDC, and PAX, have existed in Ethereum DeFi for years now, Yields offered by early money markets (Nuo, Compound v1, etc.) would often differ by multiple percent. (E.g. you could earn 5% on USDC or 8% on USDT.) The issue was, there wasn’t a decentralized and simple way for users to change one stablecoin for the other. Uniswap charged 30 bps trading fees and slippage was poor due to a lack of capital efficiency. Users that wanted to swap USDC for USDT for instance would need to use a centralized exchange, OTC channels, or pay well in excess of 0.3% to capture the interest rate spread. There was no AMM for stablecoins. Launched in early 2020, Curve introduced a new AMM invariant called StableSwap. StableSwap offers users the ability to provide and seed liquidity of like assets (USDC and USDT or WBTC and renBTC, for instance), and trade those assets with low slippage.
The issue with traditional AMM designs (namely Uniswap’s constant function/CFMM model) is that it places liquidity across the entire curve from 0 units to ∞ units. This doesn’t make sense for like assets which, 99% of the time, trade between 100 bps of one of each other.
StableSwap changes this by centralizing liquidity of like assets around one, offering liquidity near that range two orders of magnitude better than v2. The StableSwap whitepaper describes it as “using Uniswap on X leverage.”
The StableSwap invariant also allows for multi-asset pools. Its historically most popular pool the “3Pool” allows for low slippage swaps between USDC, USDT, and DAI. Others allow for swaps between wrapped Bitcoin types, Ethereum derivatives, and foreign currency stablecoins. So to recap: StableSwap allows for low slippage trades with minimal trading fees (0.04% on most pools) between like assets.
The Curve team also recently introduced Curve v2. Curve v2 introduces a new AMM invariant called CurveCrypto, which attempts to apply principles from StableSwap to pools that don’t have pegged assets.
By design, Curve v1 only worked for like assets. It made little sense to seed liquidity to a pool where assets differ dramatically in unit price. v2 introduces liquidity concentration for non-like assets (e.g. WBTC, ETH, and USDT).
This new iteration of the DeFi protocol introduces dynamic trading fees, an internal price oracle, and a repricing algorithm to achieve more capital efficiency around market prices.
In August 2020, the Curve protocol started its journey toward decentralized governance by launching a decentralized autonomous organization (DAO) to manage changes to the protocol. Most DAOs are controlled by governance tokens that give voting rights to holders of the tokens. In this case, the Curve DAO is controlled by the CRV token.
The CRV token can be bought as well as earned through yield farming. By providing DAI to a designated Curve liquidity pool, you earn the CRV token on top of fees and interest. Yield farming the CRV token increases the incentives to become a Curve liquidity provider, as you not only gain a financial asset but also ownership of a strong DeFi protocol.
Anyone with a minimum number of CRV tokens that are vote-locked is able to propose an update to the Curve protocol. Updates can include changing fees, changing where fees go, creating new liquidity pools, and adjusting yield farming rewards. Holders vote to reject or accept a proposal by locking up CRV tokens. The longer the CRV token is locked up, the more voting power it has.
Uniswap vs. Curve.fi: A Comparison of Key Features:
1. Stablecoin Swap:
In the case of Uniswap, it only allows direct trading against ETH (Ethereum). So, say, when you are trading your USDT for USDC, you essentially have to go through not one but two trades-
Firstly, USDT gets traded for ETH
Then ETH gets traded for USDC.
Curve.fi allows direct trading between stablecoins, so when you’re trying to trade between USDT and USDC, you can do that directly through a liquidity pool. This is obviously a more hassle-free way to go about stablecoin swapping.
three reasons make Curve difference with other protocols in Defi:
1. Curve focuses only on the niche market as a stable asset with a formula optimised for slippage reduction.
2. Curve allows users to provide liquidity by one or many assets. Curve automatically split token to difference tokens which match the rate in pools.
For example, uUSD pool has four assets: $USDT, $USDC, $TUSD and $sUSD with rates of 22.35%, 11.13%, 8.54%, 57.98% respectively. A user deposits 10.000 $USDT into the sUSD pool, Curve automatically splits 10.000USDT to 223.5 $USDT, 111.3 $USDC, 85.4 $TUSD and 579.8 $sUSD
3. Curve is the Yield Aggregator which can help LPs receiving transaction fees and lending interest rate from Compound or yEarn Finance
Stable Liquidity Pools
Compared to other AMM platforms, the Curve model is particularly conservative in that it avoids volatility and speculation in favor of stability.
On AMMs like Curve, liquidity pools are constantly trying to “buy low” and “sell high.” Here’s a refresher on how that rebalancing functions, this time with USD-pegged stablecoins USD Coin (USDC) and DAI. If you were selling DAI on Curve, you would trigger this series of events:
More DAI is added to the pool
The pool becomes unbalanced because there is now more DAI than USDC
The pool sells DAI at a slight discount compared to USDC to incentivize balance
The pool rebalances its ratio of DAI to USDC
By selling DAI at a discount, the pool is trying to restore the pool to its original state. Because assets in the Curve pool are stable to each other in price, trading between them causes minimal volatility compared to other AMM liquidity pools. Volatility is high on AMMs like Uniswap or Balancer, where liquidity pools can be made up of any token. By limiting the pools and the types of assets in each pool, Curve minimizes impermanent loss, an AMM phenomenon in which liquidity providers suffer a loss in token value relative to the market value of that token from volatility in a liquidity pool.
However, impermanent loss is not always negative. Volatility and slippage present opportunities for users who try to profit from entering and exiting a liquidity pool at the right time. By trading off the high risk — and sometimes high reward — aspect of volatility, Curve instead attracts liquidity providers using what’s called DeFi composability. This means you can use what you have invested on the Curve platform to earn rewards elsewhere in the DeFi ecosystem.
Unlike Uniswap or Balancer, Curve doesn’t try to keep the values kept in different assets always equal, or proportional to each other (i.e., balanced). This allows Curve to concentrate liquidity near the ideal price for similarly priced assets (in a 1:1 ratio) to have liquidity where it is needed the most. Thus, Curve can achieve a much higher liquidity utilization than otherwise possible with those assets.
The like-asset approach to AMMs isn’t limited to stablecoins. Tokenized versions of bitcoin (BTC) such as wBTC and renBTC also make up Curve’s liquidity pools. Compared to a stablecoin, bitcoin is highly volatile, but the Curve method still works because tokens in Curve pools don’t need to be stable — they just need to be stable relative to other tokens in the same pool. In other words, wBTC and renBTC can be in the same Curve liquidity pool, whereas wBTC and USDC would not be a functional combination.
So we know Curve.fi uses liquidity pools to allow users to trade stablecoins. Now, let’s talk a bit about liquidity pools, for those new to Ethereum’s DeFi (decentralized finance) world.
Liquidity pools are essentially pools of different tokens locked in a smart contract (an automated program that self-executes when all pre-determined terms and conditions are met). Curve.fi has a bunch of different pools that offer different ranges of risks on returns.
Let’s take a Curve.fi pool of DAI and USDT for example.
Now, DAI and USDT both are supposed to hold the same value as one US dollar, so 1 DAI = 1 USDT (the prices of these two stablecoins keep fluctuating by fractions, but they are usually the same. For example, at the time of writing this post, 1 DAI = 1.020100 USDT), and this pool is going to have similar numbers of DAI and USDT in it. Presume there are 1000 DAI and 1000 USDT coins in the pool.
Suppose Trader X comes and swaps 100 USDT for 100 DAI from the pool. Now the pool has 900 DAI and 1100 USDT in it. It isn’t balanced anymore. What happens now is that the price for DAI drops by a bit, so that another trader may be willing to swap their DAI for USDT, and this keeps on occurring until the pool is back to having a balanced ratio of 1:1 between the DAI and USDT it contains.
Before you decide which pool to invest in, you can see the current standing of coins in each pool and trade in the pool that would give you the most profit. There are seven Curves. fi pools in total at the moment, each of them with different risk returns. You can find out more about finding the right pool to invest in here.
How Do Liquidity Providers Profit?
The following are the ways a liquidity provider can benefit from a Curve.fi pool:
Every time someone exchanges their stablecoins through a pool, the liquidity provider gets a transaction fee. All Curve.fi pools thus earn interest from trading charges.
If you deposit a stablecoin in a liquidity pool that at the time is lower in number compared to the other ones, you earn a deposit bonus.
Similarly, if you withdraw the stablecoin that is greater in number inside a pool, you earn a bonus. Basically, if you help balance a pool, you get a bonus.
Some pools give incentives when you invest in them.
In some pools, you can also earn interest from lending.
On an AMM exchange such as Uniswap, you can earn fees whenever a trade is made. On Curve, trading fees are lower than they are on Uniswap, but you can also earn rewards from outside of Curve with interoperable tokens.
For example: When DAI is lent out on the Compound platform, it is exchanged for a liquidity token called cDAI, which automatically accumulates interest for the holder. Holding cDAI means you have a right to withdraw DAI from Compound plus interest. Curve users are able to use cDAI in its liquidity pools, thus achieving the second layer of utility and potential earning from the same amount of investment.
For every trade on $CRV, liquidity providers (LPs) earn a % of the fees in CRV tokens giving additional yield to LPs which further incentivizes liquidity. The distribution of these fees depends on $CRV governance.
$CRV holders have an option to lock their tokens in exchange for $veCRV, the governance token for the $CRV ecosystem. $veCRV voters ultimately influence the distribution of $CRV liquidity incentives as well as pools.
As Curve Finance’s influence in DeFi grows, so does the value of governing the protocol and controlling liquidity incentives. This has led many protocols to begin to hoard $CRV to increase their influence on governance.
The Gauge ultimately controls liquidity and incentives in the $CRV ecosystem. Therefore, protocols trying to maximize liquidity and TVL want to have as much influence over the Gauge as possible.
This brought about the curve wars.
All these protocols share a common goal. That goal is to have the most volume and liquidity. The easiest way to do so is simple; offer the highest yield and incentives.
Yield -> TVL -> Token go up
As a result, protocols have begun to bribe $veCRV holders by offering tokens in exchange for their $veCRV. This gives protocols more influence on governance as well as gives $veCRV holders additional yield.
Protocols have also attempted to accumulate $CRV. Convex and yEarn finance created a vault where users could get additional yield by depositing their $CRV than they would otherwise, allowing the protocol to increase its influence.
Should You be Investing in Curve.fi?
The DeFi world is still relatively new. What works now, might not work tomorrow. With Curve.fi, all investors must remember the following:
You should only invest in a pool that matches your risk appetite.
The security audits don’t do away with all chances of hacking/frauds. You can never be absolutely sure that the Curve.fi smart contracts would remain invulnerable. If an attack does happen, you stand to lose your assets.
When you’re joining a pool, you must know that you might also have to deal with systemic risks from the coins inside the pool.
Also, it is very important to know that Curve.fi pools have so far held and transferred around millions without any attacks on the funds; and it’s probably safe to say that it’s not for the lack of effort on the hackers’ parts, seeing the amount of money on offer.
So if you can afford it, starting out by investing in a relatively low-risk Curve.fi pool might be an excellent idea.
So use cases:
Bridging: Certain cross-chain bridges (e.g. RenBTC with REN) requires specific wrapped assets to allow for the transfer to occur. Users can swap their WBTC to renBTC, then redeem it for BTC on the Bitcoin mainnet, for instance.
Interest Rate Arbitrage: As mentioned early in this newsletter, interest rates between like assets differ on money markets and pools. In high rate environments, spreads often expand and Curve can help users capture the best rates.
Removing Friction on Yield Farming Certain yield farms and protocols only accept specific stablecoins. Users can swap their DAI for USDC, for instance, to access certain yield farms, then swap back to realize their yield in another asset
Best-rate DEX Trading: Due to the vast variety of liquidity in DeFi, rates between pairs like ETH-USDT and ETH-USDC can differ. Aggregators like 1inch can use Curve pools to swap between like assets to achieve the best trading rates.
Entering and Exiting Staked Derivatives: Protocols like Lido introduce staked derivatives like stETH, which package the yield earned in ETH 2.0, into a rebasing asset on the Ethereum mainnet. Users can easily enter and exit staked derivatives via Curve pools.
Curve is now one of the most popular platforms in DeFi because it favours stability and composability over volatility and speculation. Its composable elements make it an interconnected hub of the DeFi ecosystem, and with the CRV token as a governance mechanism, it is an exceptionally decentralized organization that belongs to its users.
If you want to learn more about governance mechanics, tokenomics, etc. you can check it out here. The documentation (both the docs and the whitepapers) is pretty extensive and might be hard to understand at first, so please take caution when interacting with protocols on-chain and understand all risks before doing so.
Credits go to xxvvwrt, Jack Niewold, Nick Chong, Jme, Crypto8fi and so many others for providing some materials in which this article was based on. They’re jolly good Chads. Give them a follow while you’re at it!