Note: The original author is Vitalik Buterin, the co-founder of Ethereum.
Special thanks to Dan Robinson, Hayden Adams, and Dankrad Feist for their feedback and review.
The recent LUNA debacle, which resulted in losses of tens of billions of dollars, has sparked a firestorm of criticism against the category of "algorithmic stablecoins," with many arguing that they are "fundamentally flawed products." Greater scrutiny of DeFi financial mechanisms, especially those that strive to optimize “capital efficiency,” is very welcome. And a greater acknowledgment that current performance is no guarantee of future returns (or even a complete crash in the future) is more welcome. What goes so wrong, though, is that people paint all automated pure-crypto stablecoins with the same brush and dismiss the entire category.
While there are plenty of automated stablecoin designs that are fundamentally flawed and doomed to collapse, there are many more theoretically survivable but high-risk stablecoins, and there are also plenty of stablecoins that are theoretically very healthy and have survived in practice extreme test of crypto market conditions. Therefore, what we need is not stablecoin boostism or stablecoin doomsdayism, but a return to principle-based thinking . So, what are some good principles for assessing whether a particular automated stablecoin is truly stable?
For me, I started testing to see how stablecoins respond to two thought experiments.
What are automated stablecoins?
For the purposes of this article, an automated stablecoin is a system with the following properties:
- It issues a stablecoin that tries to target a specific price index. The usual target is $1, but there are other options. If the price deviates in either direction, there are targeting mechanisms that consistently push the stablecoin price towards the index. This makes ETH and BTC not stablecoins (duh).
- The target mechanism is fully decentralized and has no protocol-level dependencies on specific trusted actors. In particular, it must not rely on asset custodians. This makes USDT and USDC not stablecoins.
In practice, (2) means that the target mechanism must be some kind of smart contract that manages some reserve of cryptoassets and uses these cryptoassets to prop up prices when prices fall.
How does Terra work?
Terra-style stablecoins (roughly the same as seigniorage shares, though with many implementation details different) work through a dual-coin model, which we refer to as stablecoins and volatilecoins (in Terra's case, UST is the stablecoin and LUNA is the fluctuating currency). Stablecoins use simple mechanisms to maintain stability:
- If the price of the stablecoin exceeds the target value, the system will auction new stablecoins (and use the proceeds to burn fluctuating coins) until the stablecoin price returns to the target.
- If the price of the stablecoin falls below the target value, the system will repurchase and destroy the stablecoin (issuing new fluctuating coins to fund the destruction) until the stablecoin price returns to the target value.
What is the price of Volatcoin now? The value of volcoins may be purely speculative, relying on the assumption that there will be greater demand for stablecoins in the future (which would require burning volcoins to issue). Alternatively, the value of volcoins could come from fees: transaction fees for stablecoin <-> volcoin transactions, or annual holding fees charged to stablecoin holders, or both. But in all cases, the price of the fluctuating coin comes from anticipation of future activity in the system.
How does RAI work?
In this post, I focus on RAI rather than DAI, as RAI better embodies the pure "ideal type" of collateralized automation stablecoins, backed only by ETH. While DAI is a hybrid system backed by centralized and decentralized collateral, this is a reasonable choice for their product, but it does make analysis trickier.
In RAI, there are mainly two types of participants (there are also holders of FLX, which is a speculative token, but they play a less important role):
- RAI holders hold RAI, the stablecoin of the RAI system.
- RAI lenders deposit some ETH into a smart contract object called a "safe". They can then withdraw 2/3 ETH worth of RAI (for example, if 1 ETH=100 RAI, if you deposit 10 ETH, you can withdraw about 667 RAI). If the lender repays its RAI debt, the ETH can be recovered in the same way.
There are two main reasons to become an RAI lender:
- Long ETH: If you deposited 10 ETH in the example above, and withdrew 500 RAI, you would end up with a position worth 500 RAI, but with a risk exposure of 10 ETH, so for every 1% change in ETH price, the The position will rise or fall by 2%.
- Arbitrage: If you find that your fiat-denominated investment is going up faster than your RAI, you can borrow RAI, put your money into that investment, and profit from the difference.
If the price of ETH falls, and the safe no longer has sufficient collateral (that is, RAI debt is now more than 2/3 of the value of ETH deposited), a liquidation event will occur. By offering more collateral, the safe is auctioned off for others to buy.
Another major mechanism to understand is the redemption rate adjustment. In the case of RAI, the target value is not a fixed amount of dollars, instead it moves up or down, and the rate at which it moves up or down is adjusted according to market conditions:
Thought experiment 1: Even in theory, can stablecoins safely withdraw all users?
In the non-encrypted real world, nothing lasts forever. Companies always fail, either because they couldn't find enough users in the first place, because the strong demand for their product no longer exists, or because they were replaced by a stronger competitor. Sometimes, there are partial meltdowns where the company falls from mainstream status to niche status (eg MySpace). These things have to happen to make room for new products. But it’s important to note that in the non-crypto world, users are usually not too hurt when a product shuts down or hits a landslide. Of course there were a few people who fell through the cracks, but overall the shutdown was orderly and the problems were manageable.
But what about automated stablecoins? What happens if we look at stablecoins from a bold and radical perspective, that the ability of the system to avoid crashing and losing large amounts of user funds should not depend on a constant influx of new users? Let's see!
Can Terra land safely?
In the case of Terra, the price of Luna (LUNA) is derived from expectations of fees for future activity on the system. So what happens if expected future activity drops to near zero? The market cap of the volatile coin (LUNA) will drop until it becomes very small relative to the market cap of the stablecoin. At this point, the system will become extremely fragile, and a small downward impact on the demand for stablecoins may cause the target mechanism to issue a large amount of Luna, which will lead to hyperinflation of Luna. Stablecoins also lose value over time.
The collapse of the system can even become a self-fulfilling prophecy: if the system seems likely to collapse, it will reduce users' expectations of future fees, which is the basis of the value of the volatility currency, thereby further pushing down the market value of the volatility currency, Making the system more vulnerable could eventually lead to a crash, as we saw with Terra in May.
First, the price of volatile coins fell, and then, stable coins started to shake. The system attempts to support the demand for stablecoins by issuing more fluctuating coins. As users' confidence in the system was low, which resulted in few buyers, the price of volcoins dropped rapidly. Finally, once the price of volatile coins approaches zero, stablecoins also collapse.
In principle, if demand falls very slowly, the expected future fees of a volatilecoin and its market cap equivalent to a stablecoin could still be large, so the system will continue to be stable at every step of its decline. But this slow decline in success is less likely than a more likely scenario of a rapid drop in user interest followed by a bang.
Safe Fall: At each step, there is enough expected future revenue to justify the volatility coin's market cap being sufficient to keep the stablecoin safe at its current level.
Insecure Descent: At some point, there is not enough expected future revenue to justify enough volatility coin market cap to keep the stablecoin safe, so a crash is possible.
Can the RAI land safely?
The safety of RAI depends on assets outside the RAI system (ETH), so it is easier for RAI to land safely. If the decline in demand is unbalanced (thus, holding demand falls faster or loan demand falls faster), the redemption rate will be adjusted to balance the two. Lenders hold leveraged positions in ETH rather than FLX, so there is no risk of a positive feedback loop where a drop in confidence in RAI leads to a drop in demand for loans.
If, in the extreme case, all demand for holding RAI disappears at the same time, and there is only one holder, the redemption rate will skyrocket until eventually every lender's coffers are liquidated. The remaining single holders will be able to buy safes in a liquidation auction, use their RAI to instantly liquidate their liabilities, and withdraw ETH. This gives them a chance to get a fair RAI price and get paid in ETH from the safe.
Another extreme case worth examining is RAI becoming the main application of Ethereum. In this case, it is expected that there will be less demand for RAI in the future, which will lower the price of ETH. In extreme cases, there could be a cascade of liquidations leading to chaotic collapse of the system. But RAI is much more resistant to this possibility than Terra-style systems.
Thought Experiment 2: What would happen if you tried to offer 20% annual interest on a stablecoin?
Currently, stablecoins tend to be pegged to the US dollar, with RAI being a minor exception, as its peg adjusts up and down based on the redemption rate, and the peg starts at $3.14 instead of $1 (the exact starting value is Friendly concession, since a true math buff would choose tau = 6.28 USD). But they don’t have to be, you can peg a stablecoin to a basket of assets, a consumer price index, or some arbitrarily complex formula (“an amount sufficient to buy the value of {global average CO2 concentration minus 375} hectares of Yakut forest land”). As long as you can find an oracle to prove the index and get people to participate in all aspects of the market, you can make a stablecoin like this work.
As a thought experiment to assess sustainability, let's imagine a stablecoin with a certain index: the number of dollars growing by 20% per year. In mathematical language, the exponent is
USD, where t is the current time in years and t0 is the time the system was started. A more interesting option is
USD, so it starts out like a USD-denominated stablecoin, but USD-denominated returns are growing at 4% every year.
Clearly, there is no real investment that returns anywhere near 20% per year, and absolutely no real investment that returns 4% per year forever. But what happens if you try it?
I will claim that there are basically two approaches to a stablecoin trying to track such an index:
- It charges holders some kind of negative interest rate to offset the dollar-denominated growth rate built into the index.
- It became a Ponzi scheme, giving stablecoin holders staggering returns for a while, until one day it suddenly crashed.
It should be easy to understand why RAI is (1) and LUNA is (2), so RAI is better than LUNA. But it also shows a deeper and more important truth about stablecoins: For a collateralized automated stablecoin to be sustainable, it must somehow control the possibility of implementing negative interest rates. A version of RAI that programmatically prevents the implementation of negative interest rates (which early single-collateral DAI basically did) would also turn into a Ponzi scheme if pegged to a rapidly appreciating price index.
Even outside of the crazy assumptions that you build a stablecoin to track a Ponzi index, the stablecoin has to somehow be able to handle situations where demand for holding exceeds demand for borrowing even at zero interest rates. If you don't, the price rises above the peg, and the stablecoin becomes vulnerable to price movements in both directions, which are very unpredictable.
Negative interest rates can be achieved in two ways:
- RAI style, with a floating target that falls over time if the redemption rate is negative;
- Actual balances will decrease over time;
Option (1) has UX flaws where the stablecoin no longer clearly tracks "$1" and option (2) has developer experience flaws, but choosing one of the two seems inevitable - Unless you go the MakerDAO route and become a hybrid stablecoin that uses both pure crypto and a centralized asset like USDC as collateral.
What can we learn?
In general, the crypto industry needs to move away from the attitude of relying on endless growth for security. Maintaining this attitude by saying "the fiat world works the same way" is certainly unacceptable, since the fiat world is not trying to provide faster than normal economic growth for anyone (except those who deserve the same venomous criticism) except in isolated cases).
Instead, we should evaluate the safety of a system by looking at its steady state, or even its pessimistic state under extreme conditions, and ultimately whether it can be safely shut down. If a system passes this test, that doesn't mean it's secure. It could still be vulnerable for other reasons (such as an insufficient collateralization ratio), or have code bugs or governance bugs. But robustness to steady state and extreme cases should always be the first thing we check.