EIP-20: Changing incentives to build liquidity

Authors: @Mike, with input from @sabretooth

TL;DR

ESD has matured and the protocol needs to adapt to handle new supply and demand requirements. Suggestions are provided to incentivise liquidity to handle supply and demand crises.

Current situation

A stablecoin should have the ability to be redeemed for $1 worth of USD. Getting an algo stablecoin to work is tough; market dynamics are impossible to predict and change at different scales. To achieve this aim the path is roughly: speculation > liquidity > stability. ESD just underwent a long expansion phase where speculative value pushed fomo valuation on the market price of ESD resulting in reflexive growth of the ESD market cap. With the price now <$1.00, the future speculative value of ESD is greatly discounted.

ESD has undergone several expansion + contraction cycles. The following chart illustrates the price history during this time. There have been protocol changes since the start of that blue line, however note how the current contraction phase (greyed rectangle) is playing out:

During the previous expansion phase, one of the first use-cases for ESD appeared in the form of a farm for a Basis.cash clone - the red circle in the diagram. It can be seen how that reversed the trend and prolonged the expansion. This was a sign of things to come; ESD has been used in many other farms since, and is now included in Cream, has a Curve Metapool and is being actively arbed in things like the Stabilize pool.

And…?

This increased supply and new integrations and applications for ESD are welcome, however they incur supply and demand effects that the system isn’t optimised to handle.

The current contraction mechanism dis-favours liquidity provision, both by a lack of incentives and that the less liquidity the less costly it is to move back to the peg (see second chart below). And it does this precisely when a deep liquidity pool is required to handle a scenario of less demand.

The above chart shows liquidity levels in the ESD-USDC Uniswap pool, hi-lighting some tops and lows. The following chart outlines the price effect on buys and sells from the peg for various sizes of the liquidity pool (happy to have someone check my math, just ask for the spreadsheet):

image

Before looking at solutions, one more chart, a supply schedule with various permutations. A small elephant in the room can be seen in that right hand column.

Solutions

Various solutions have been presented in this forum and on the Discord and are summarized below. They range from incentivizing a stability pool (the DAO) to more complex lockup and distribution solutions. Bear in mind the supply schedule and other numbers presented above, the code complexity to achieve them, and that an iterative process is generally being followed at ESD.

Before listing off some of the ideas collected from the community, it is worth mentioning the Reserve and EIP-12. The reserve can be used to aid with supply regulation, something that is not actively done by the protocol during contraction in the current implementation.

The following are ideas from around the community:

  1. Incentivize the DAO during contractions: an indirect method whereby the DAO acts as a stability pool, rewarding people for parking unused ESD rather than selling it. This is simple to implement and doesn’t have to have a large effect on the supply.

  2. Flip the reward scheme such that DAO and LP rewards are given out during contraction and then disbursed during expansion to bonded DAO and LP. Unbonders would lose any unredeemed rewards; if rewards go directly to wallets as coupons do, this strategy could mitigate supply crises during expansion.

  3. A person should be indifferent to investing above the peg or below the peg, the potential rewards should be roughly similar. Hence we allocate a half of expansion rewards for “stakers” who stake into a pool when twap is below 0.97, staking is only open below 0.97.

  4. Track DAO and LP bonds during contraction and either reward only those positions during expansion or don’t let people bond at all when the TWAP > $1.00.

  5. Some mix of the above where rewards can be tracked based on when bonded (expansion vs contraction) and how long it has been bonded for.

Some combination of the above - in particular those that encourage liquidity above and below the peg - along with the Reserve should help to keep ESD more tightly bound to the peg*. In addition, depending on the solution it might be worth considering the supply change limit.

*Bear in mind that the Reserve is meant to step in on wider swings from the peg

Discussion

Most of these aren’t trivial suggestions, and more than anything the goal of this was to paint a state of the current situation, to ask if it is time to reward consistent deep liquidity and to bring together some of the discussion of how to handle this from around the community.

My personal take is:

A stablecoin should have the ability to be redeemed for $1 worth of USD. A person should be indifferent to investing above the peg or below the peg, the potential rewards should be roughly similar. Lower emissions, reward DAO and LP all the time , and have the reserve work to control excess supply through mint-and-burn.

4 Likes

Can we also add the intended/unintended consequences of these ideas. Also It would be nice to point out how drastic these to the code base, v2 approaching, swift action may be more fruitful.

My proposal, EIP-21, will incentive the DAO during contractions while having a potentially very large effect on supply by incentivizing burning for coupons even during the first contraction epoch.

1 Like

Thank you @Mike for kicking off the discussions. I believe it is better to start having a more broad discussion on under the peg mechanisms, and especially mechanisms that recognise the reflexive nature of ESD.

I believe that mechanisms(such as the current coupon system) that rely on time/price discovery under the peg, letting reflexivity take hold under the peg inevitably lead to pro-longed slumps.

I agree with @Mike that we need a mechanism that immediately over-incentivises holders to “backstop” the price to prevent a reflexivity under the peg situation.

Very interesting proposal here in EIP-21 by Matty : EIP-21: Compounding Coupon Interest During Contraction (Reverse DAO)

Thanks for the comment 488nm (blue laser?).

I definitely appreciate the codebase issues and on the one hand the Reserve is already coded. For flipping the reward scheme it would depend on how it is applied. If rewards are for “later”, this is more complex than just providing “now”, but could tap into the coupon mechanism. Rewards during contraction are credited similar to coupons and then dispersed during expansions in much the same manner as they are now.

Yes, I like this idea however it does nothing to handle the liquidity issues. Obviously we need tools to get out from under the peg, however:

A stablecoin should have the ability to be redeemed for $1 worth of USD

At some point the system needs to be able to handle large buys and sells not with these tools, but with deep liquidity. The tools can be used for crises, not for some whale exiting their 3mm position. IMO :slight_smile:

(Disclaimer, I haven’t read the new V2 proposal yet but will shortly :blush:)

I really like the idea of incentivizing the DAO during contractions. Does it seem logical that there’s a big risk that we could blow past the peg (>1.00) and have the opposite problem that we’re having now where it’s difficult to get below 1.00? Perhaps the DAO rewards could be a function of the current TWAP price? Eg. The rewards at 0.50 would be much greater than the rewards at say 0.99. This function should probably aim to be conservative intially and take locks into account. I think this addresses @sabertooth’s idea of the DAO serving as a “backstop” to some degree.

It’s also hard to present this solution without addressing LP. I think ideally the DAO would bring us close to the peg (but not above) and LP would serve as the mechanism to keep us there. So LP incentives would have to align with this change also. I think this is where #2 would come in where LP rewards are given under peg and disbursed over peg. Additional incentives would probably be needed to give us the bump needed to hover around the peg. Eg staking as you mention in #3.

There’s a lot to unpack so I’ll stop here for now. :smile:

I think we ought to let people bond into the DAO at any time, for governance purposes. Letting people bond in and get the weirdly high expansion rewards during expansion did seem to cause problems with being persistently above the peg, until we weren’t. Redirecting that (energy? greed?) in a way that pulls people into the DAO when we’re under the peg instead does seem like it might help.

I think we could use some kind of counter system to track which addresses had their last bonding event before the start of a current expansion. But right now the reward is implemented by making the DAO pie higher, and everyone’s ESDS balances represent their share of the pie. If you try to leave some people out of an expansion, you have to figure out how to make their ESDS different than everyone else’s, and how to remember that 2 years later when they decide to finally unbond. I’m not particularly enthused about trying to implement that in efficient Solidity.

These sound implementable, except for the rewards going directly to wallets (because there’s no guarantee of a per-user transaction to bump everyone’s stored balances, and the ESD token doesn’t have a way to fake it when balances are queried).

But then you have the problem of everyone sitting around with a jillion theoretical ESD stuck in the DAO/in rewards. There needs to be a rate limit on how fast it comes out when an expansion starts, or it will immediately tank the peg. How do you sequence the disbursement of rewards in a fair way among participants, and how do you prevent the theoretical rewards eventually due from compounding to values much larger than the rate at which they can be safely disbursed?

One idea was to structure it like coupons - or normal farming, I suppose. Funds are disbursed like coupons or farming rewards that you have to collect.

Good point!

There is something like this functionality included in the code for EIP-18.

For me this was all about LP, to be honest.

I responded to some of your comments above; wrt this, I asked Scott and he said,
"v2 is agnostic on LP incentivization. the community has been rapidly iterating what it thinks is the best way to handle liquidity provisioning, so we thought it better to defer to what the community thinks is best and bolt that into the system."

There is no incentive to keep ESD bonded under peg, and coupons bought with DAO esd does not fix the oracle price. If code does not force this, there is no way to stop withdrawals. I think a limited window of opportunity to bond is the only way ESD can keep DAO in place which also prevent people milking the system.

One extreme solution could be replacing ESDs with UNI-LP shares and creating a true 1-token system. Then coupon ESD can only be either free market esd or bought from the pool. This is also a form of fractional reserve policy.

1 Like

Okay so I think EIP-22 is definitely moving us in the right direction in terms of incentivizing people to stay in the DAO to a point and it may help with the peg. I’m not sure how much it will prevent people from dumping after a large expansion so we’ll have to see how that plays out.

In terms of LP though, does it solve anything? Given that LP rewards are only paid out when TWAP > 1, I still don’t see how that change is going to limit price volatility and help keep us at peg but maybe I’m not seeing something? For example, look at the following diagrams.

This diagram shows that ESD dropped below peg on dec 27th:

This diagram shows that a steep drop in liquidity quickly followed:

To make things worse, this was followed be a dramatic exit from the DAO:

Am I wrong to think that EIP-22 may get us closer to the peg but it still falls short in incentivising LP in the event we are below peg? I feel that we still need a solution to give some padding around the peg to ensure some level of stability to pad against post expansion phases where people are inevitably going to exit after making some profit.

I think EIP-22 is one step, and LP will be another step. Thanks for more data there :).

Thanks, Mike for kicking off this discussion.

Right now the rewards aim to adjust the # of tokens so that the current market cap divided by the new # of tokens equals $1. How would rewards be measured for giving out when the price is <$1?

The idea of only rewarding people who bonded/LPed below $1 is interesting and may attract more purchasing/bonding/LPing below $1. I think I like point the best of all the suggestions, and I’d be open to this. However, it seems that as soon as the peg drops below $1, all currently bonded/LPed tokens should qualify for future rewards, right?

As mentioned by someone else, I agree that bonding should always be open for governance purposes.

If you’re looking for things that’ll incentivize liquidity providers to remove liquidity when you are below the peg and add liquidity when you’re back above the peg; you should check out what http://fei.money is doing which is pretty interesting.

It’s a smart contract owned LP which adds/removes liquidity based on what is best for the protocol.

We at MahaDAO are also considering it for the ARTH protocol.