The objective of this post is to describe 1) why blockchain networks should have a stable native currency, 2) why being a native currency is good for a stable currency, and 3) different categories of stable currencies. This post is not meant to be exhaustive, but to lay out a framework for thinking about different types of stable currencies.
PART I: Justification of Stable Native Currencies
To start I want to distinguish between two types of money: assets and currencies.
You have probably heard about three aspects of money:
- store of value
- unit of account
- medium of exchange
To be good at #1, something has to hold value over time. To be really good at #1, something has to grow in value. Think about it. Most people store a little bit of money in their checking account. But mostly you store money in ways that are expected to grow (e.g., your stock portfolio). Unfortunately, things which grow in value tend also to be volatile, and volatile things are not usually good at #2 or #3.
Let’s take Bitcoin as an example. Many people who hold bitcoin do so because they expect it to grow in value. But this means it is also volatile. Volatile assets are not good as a unit of account, so no one sets prices in bitcoin. Furthermore, it can be psychologically unsettling to buy everyday things with something you view as an asset.
Granted, people do buy things with bitcoin, but it is not really common. So Bitcoin is fine as an asset, but it is not a great currency.
Most digital tokens are better at being assets because they hold the possibility of future growth. Some tokens (i.e., stablecoins) are better at being currencies because they are liquid and have a stable, predictable value. Tokens that try to do both generally won’t do either very well (or will fail at one and do great at the other).
Assets prioritize growth, while currencies prioritize stability. Both assets and currencies benefit from liquidity.
Native Currency
Now let’s talk about the difference between native tokens and non-native tokens. ETH is the native token on the Ethereum network. It has a few key characteristics that aren’t shared by other tokens that are created by smart contract (i.e., non-native tokens). The distinctive characteristics of a native token can include:
- Gas fees are paid in the native token
- Native token transfers are less expensive that other token transfers
- Rewards to validators are distributed in the native token
- Security is achieved by requiring validators to stake the native token (in proof-of-stake)
Stable Currencies should be Native
Because of the distinctive characteristics above, native currencies can have advantages over non-native currencies. These include:
- native tokens have built-in demand because they are used for paying gas, this built-in demand can reduce volatility (better stability)
- transactions in a native token do not require holding two different tokens (better liquidity)
- transactions in a native token are cheaper (better liquidity)
Because native tokens can have better built-in stability and liquidity than non-native tokens, they have advantages over non-native tokens as stablecoins.
Native Currencies should be Stable
Ok, so it is better for stable currencies to be native, but is it better for native currencies to be stable? Yes. Here are some reasons why:
- paying rewards in a stable currency makes the benefits of staking/mining more predictable, which can stabilize the network
- stable currencies are better for proof-of-stake
Let’s talk a little more about that second point. The reason for staking in a proof-of-stake network is to ensure that validators have a reason to be honest.
If the token required for staking has a volatile value, two things can happen. First, when the value of the token starts to decrease, people will want to sell, and this selling action can cause people to unstake. This can reduce the security of the whole system. So a volatile staking token = volatile security.
PART II: Categorization of Stable Native Currencies
Ok, so native currencies are great. But how do you make one? Well, you take a currency, and then you stabilize it.
Stabilization Location
There are three places where a stabilization mechanism can reside: in-chain, on-chain, and off-chain. That is, just like tokens, the stabilization mechanism can be either in the network or on the network (i.e., smart contracts). Unlike the token itself, the stabilization mechanism can also be off the network. So we have the following category definitions:
- An in-chain stabilization mechanism in the network code
- An on-chain stabilization mechanism uses a smart contract for stabilization
- An off-chain currency stabilization mechanism uses external decisions and/or interventions
Below is an overview of some of the advantages and disadvantages. The list is not meant to be exhaustive, and obviously these aren’t all binary issues. This is just an attempt to express that each type has pros and cons. It is likely that all three can find a useful niche in the marketplace.
The additional categories below are relevant both to native currencies and non-native currencies.
Categories of Stability Definition
In addition to where the stabilization happens, we can also categorize stable currencies based on how stability is defined. Categories of stability include:
- Currency-pegged
- Commodity-pegged
- Market-pegged
Most people are familiar with currency-pegged stablecoins because they are the most common type. Most of them are pegged to the US Dollar. When people who are uncomfortable with dollar-pegged stablecoins think about alternatives, they usually think of some kind of commodity-pegged alternative, but I am not aware of any major working examples. Icewater is building a market-pegged stablecoin (i.e., based on interest rates).
Here is a quick comparison of the different types:
Categories of Stabilization
Most stabilization mechanisms work by adjusting supply in response to demand. However, there are different ways of doing this. These include:
- Collateral-based stabilization
- Rebasing
- Equity-based stabilization
- Debt-based stabilization
Note that debt-based stabilization is an Icewater innovation that I don’t expect you to be familiar with. It is an algorithmic stabilization method with safeguards to prevent a death-spiral.
Here’s a quick comparison of the different types:
Categories Appropriate for a Native Currency
In my view, many of these categories are useful, but some of them are not appropriate for a native currency. For example, in the long run, it is not appropriate for a native currency of a decentralized blockchain to have off-chain stabilization. However, either in-chain or on-chain are suitable.
Similarly, a native currency should not be pegged to another currency. Some commodity-based systems are acceptable (e.g., a hypothetical system based on computing power might work), and market-based stability definition is also acceptable.
Finally, with respect to the type of stabilization, a currency that is used for proof-of-work staking should not use rebasing because it is not a good store of value. Equity-based stabilization has proven to too vulnerable to death spirals (at least so far), so it is probably not appropriate for stabilizing a native currency. Collateral-based systems are okay for an L2, but probably not appropriate for an L1.
So what are we left with as models for a native currency? It should either be in-chain or on-chain. It should have either a commodity-based or a market-based stability definition, and it should have a a debt-based or a collateral-based (for L2 only) stabilization mechanism. At Icewater, we are currently focusing on building an on-chain mechanism that uses a market-based stability definition, and debt-based stabilization.