Incentive-based stable coin designs.

sasha ivanov
6 min readMay 25, 2022

--

Stable coins are important in crypto, there’s no price peg on the consensus level, so you really need a decentralized asset with a stable price. Someday we’ll crack this problem on a consensus level, but for now we have to contend with smart contract “algorithmic” stable coins and fiat backed stable coins. Leaving aside backed coins (in reality they are just e-money), let’s focus on how we can build a working smart contract based stable asset.

Let us focus on incentive based stable coins, with price stability mechanisms based on arbitrage opportunities and similar incentives. There’s an alternative to them as well, namely assets based on overcollateralization and margin calls, for example one of the first algorithmic stable coins DAI.

In case of DAI stable coin is backed by 2x collateral in Ethereum, if Ethereum price falls stable coin can be liquidated and taken out of circulation by granting access to the collateral and offering to liquidate it with a 5% discount. This is a very solid set-up, keeping the stable asset really fully-backed at all times, therefore making it much easier to maintain the peg, that is keep the market price of the asset close to $1.

We may say that it is also incentive-based, since the liquidation is triggered by an arbitrage opportunity. There are a few drawbacks to this set-up, though. One of them is unnecessary liquidations that can happen due to Ethereum volatility. Also probably the only incentive to issue DAI is a long ETH position, when issued DAI is used to buy more ETH and issue some more DAI again.

Another approach to building a stable coin is to create an incentive for arbitrageurs to bring the stable coin price back to peg, that is $1 (from below, since if the stable coin costs more than $1 additional issuance easily restores the peg). Most of those designs stem from Basis protocol, an unlaunched project from several years ago. The basic idea is pretty simple — when the stable coin gets de-pegged you bet that it will return to peg and it becomes a self-fulfilling prophecy. You buy it with a discount and sell it when it reaches $1, making a profit.

The incentive might be too weak though; basically all traders should bet on the coin returning to peg to make it work. As an improvement we might consider backing the coin with a volatile asset (like in DAI) and creating an incentive to recapitalize the stable coin, that is adding more volatile collateral, if the collateral price goes down and the collateralization is not sufficient to restore the peg. It can be done, for example, by issuing “bonds” when the backing becomes insufficient, and selling them for the backing asset, thus adding more collateral, increasing the backing and thus bringing the coin back to peg. When the peg is back “bonds” can be liquidated with a profit.

This set-up looks solid, at least superficially. Looking more closely we notice that there’s no real incentive to issue the coin; that can be remedied by using an interest bearing asset as collateral, or providing additional incentives for the sable coin itself (for example, providing liquidity farming opportunities for the stable coin). In case when an interest-bearing volatile asset is used, a stable coin becomes interest-bearing as well, effectively we “wrap” the volatile asset and turn it into a stable coin, keeping its staking properties. In this case there’s an incentive to issue a stable coin that pays yield (for example a native token of a POS chain can be wrapped like that).

But now a more serious problem comes up — how strong are those incentives? Are they strong enough to bring the coin back to peg at all times? What if we have some kind of a black swan situation, is the system robust or fragile?

Turns out that those set-ups can turn out to be quite fragile in reality. For example, they don’t really take into account automated on-chain market making pools, where exchange rates are determined through the pooled asset balances. It is possible to heavily skew the exchange rate by just withdrawing enough liquidity from one side of the pool. In this case we have a spurious arbitrage which is to be eliminated if the stable coin set-up is sound, but there are quite a few caveats here — de-pegging can affect the price of the volatile asset that backs the stable coin, this, in turn, can make restoring the peg harder. If we allow unlimited redemption of the stable coin we can easily run into a “death spiral” situation, when bringing the coin away from peg de-pegs it even harder. We have all kinds of non-linear phenomena here, and need to be really careful.

On top of that, external conditions are changing in crypto. More new different types of liquidity pools can emerge, collateral prices can change uncontrollably (although a properly built stable coin should create a demand for its collateral as well) etc. You just can’t predict it all and have to adjust along the way. Stable coins built as DAOs solve this, the community can decide on how the stable coin parameters should change according to the current situation. This is akin to what central banks do in terms of monetary policy, it’s an art, not a science.

Issuance, as a rule, restores the peg. Redemptions take the collateral out and bring the system farther from balance. All protocol operations have to restore the peg, otherwise incentives may just turn out insufficient in some situations. A simple way to do that is to connect the issuance and redemptions to an auxiliary asset, which can also double as a governance and even recapitalization token of the protocol.

When you want to make a redemption you need to hold the auxiliary token, which can be bought for the stable coin collateral asset. The redemption volume can be tied to the token amount you hold. If you want to redeem some stable coins you effectively have to recapitalize the collateral, by virtue of buying the auxiliary asset. All your operations (in case the parameters are attuned correctly through the DAO governance) lead to the peg being restored.

On top of that, there have to be different types of incentives, not only long term incentives that are realized when the peg is reached. Holding the auxiliary asset can bring you yield, there is the economy of issuance and redemption fees that can be used to incentivize the auxiliary asset holding, and, therefore, issuance.

To summarize, the ideal set-up of an incentive based algorithmic stable coin looks something like this:

  • It is backed by a volatile asset with an APY. It gets wrapped into a stable coin which, in turn, pays APY as well, on a protocol level, without external pools.
  • There’s an incentive to issue the stable coin since it is interest-bearing on the native level. This also creates a demand for the volatile asset that is used as collateral.
  • There’s an auxiliary token which controls the issuance and redemption, and may double as a governance and recapitalization token. It can be issued only in certain conditions, for example when stable coin backing becomes insufficient and recapitalization is needed
  • There’s an incentive to hold the auxiliary token that comes from the stable coin economy itself, for example part of the issuance and redemption fees are distributed to the token holders
  • All stable coin operations effectively lead to recapitalization and maintaining the peg, even redemptions.
  • All parameters have to be tweaked according to the market conditions through a DAO, part of the internal fees should be spent on incentivizing external exchange pools.
  • We do not need overcollateralization or even 100% collateralization at all times; the goal is to be able to honor all redemptions requests that are effectively controlled by the auxiliary token. Economy of the coin works with all collateral levels.

In a nutshell: There has to be incentive to issue the stable coin; there cannot be any incentives to bring the stable coin price further away from the peg; we have to accept the fact that the protocol parameters could be tuned according to the changing external conditions.

This vision is going to be implemented in the next Neutrino protocol update. Let your stables be $2 :)

--

--