CIP#10 - Update y pool A from 2000 to 1000

Summary:

In an attempt to push DAI closer to peg, we want to update the “A” variable on y pool from current 2000 to 1000. This will increase the % of DAI share in pool, and also make DAI more expensive to purchase (but cheaper to add). This incentivizes selling DAI into the pool.

Abstract:

Update A from 2000 to 1000

Motivation:

The y pool is currently very liquid and given the high “A” this means that DAI can be bought for “cheap”, the proposed change will make it more expensive and hopefully help push DAI to peg.

One caveat to this, is that it does effect “virtual” profits. So right after the switch it will appear as if there is a “loss” even though this is just temporary. This will also immediately be offset by CRV incentives.

Specification:

Commit A 1000 on y pool only

For:

Decrease A, increase % DAI in y pool

Against:

Temporary “virtual” loss for LPs, will be near immediately offset by LP incentives.

Poll:

https://dao.curve.fi/vote/ownership/5

6 Likes

I support the motivation behind this, but how does the underlying mechanism actually work? I read the StableSwap whitepaper and contract code but still haven’t developed an intuition for how A is optimized.

Could you please explain so that we can better understand the ramifications?

Are we really to believe the goal of this proposal is to help DAI keep its peg? Isn’t the new ETH vault strategy to mint a ton of DAI just to farm CRV faster?

I second this, it would be nice if a dev could explain what we are actually voting for / or against.

In general I feel there is very little discussion before there is a vote. I am not that quick to make up my mind and I like to read different perspectives.

This can increase the tvl of curve and bring dai back to balance.

Interesting: It would be a problem for the yETH strategy if there is not enough DAI left in the pool to deposit back into the CDP if people remove their liquidity.

yETH paused at the moment.

Again, I would appreciate it if these things were discussed a bit more before we vote on stuff noone else but the devs understand.

1 Like

We will have an announcement in the coming hours regarding the situation with yETH vaults.

1 Like

I’m in favor of this proposal. However, I think the “For” section above is a little misleading. Reducing the value of A for the pool will increase demand for DAI and the DAI price, so it doesn’t help DAI directly.

It helps reduce risk for Yearn, Maker and Curve by reducing the likelihood of the y pool not having enough DAI to withdraw if yETH needed to reduce its leverage. Still a great idea, just not sure about the explanation.

3 Likes

Here’s my take on what’s going on:

Since there seems to be a lot of conspiracy theories going on here, decided to publish a quick article on how the vaults actually work;

No, this change does not impact current functionality of yVaults, nor is it required. This will allow the curve ecosystem to have more DAI, and take away a current source of very cheap DAI, while this is definitely beneficial for both yETH and yearn, it is not a requirement, and yearn is not the only benefactor here.

The only point where it does impact is with less DAI, the vaults are less likely to pivot. Meaning that with current A, the vault is more likely to stay in curve.fi/y

There seems to be a lot of “anti-sentiment”. If you really want to get rid of yearn, the solution is simple;

  1. Allow enough liquidity for yearn to exit cleanly instead of over time.
  2. Vote for yearn gauges to be 0

Voting against this, will not allow more DAI, which will also further provide “cheap DAI” in this pool. Which will also force yVaults to stay longer since cheap DAI is more profitable.

2 Likes

I’m here from telegram and I don’t quite understand what is the need all out of a sudden for yEarn to change this parameter. From what I understand this proposal will allow yEarn to flood more DAI into the pool and farm more CRV, this is putting more sell pressure for CRV again.

I’m against it!

good job. i will vote for.

I’m not sure if we have a really great explanation anywhere about how A works and influences the proportion of tokens in a pool. Why is the A in the y pool 2000, but sUSD pool is only 100?

Currently the pool proportion in y pool is like 2% DAI and in sUSD pool is 14%. Yikes, that’s a difference.

So my layman understand (and having seen it in practice) understanding of A is as follows;

So higher A is better when coins are at peg. Meaning with high A the pool assumes all the assets are as close to 1 as possible. Low A is the opposite.

So the high A of y pool, has essentially allowed arbitragers to keep getting DAI for 1, when in fact they should have been paying 1.01 ~ 1.02. So by bringing A lower, it makes DAI more expensive to buy. But, since y pool is incredibly low on DAI, it also makes DAI nice to sell to it. This will keep the pool more evenly spread between assets, which I generally think is positive for all LPs, will remove a source of cheap DAI from the market (good for DAI). And create a healthier balance of assets.

Normally we would not have noticed this, but given the large influx of DAI from yETH it became very apparent that we need to suggest a change, since as we expect more money to flow in, we will see this in other areas as well. An example is Binance adding USDT staking via curve. Their deposits will be one sided, if they were to use a lop sided pool (like y), they would have large slippage and this could set them off from using it in the future.

From my observation I think since curve is turning into almost a savings account / trade platform / stable coin meta basket, this change is important.

If you look at mStable for example, you can essentially assume A is 9999, this is why one side of the basket is often completely empty, and they are left with 1~2 assets. We want to prevent this and make the usage and adoption of yUSD (output LP token from y pool) more widely used and adopted.

7 Likes

Thanks a lot for taking the time to explain.

I (start) to understand that there is a general flaw of the y pool concerning DAI, because DAI “trades” too cheap once it is above peg, so it will always be drained and scarce.

I assume A can fix this? Would be nice if someone from curve would comment @charlie_eth @michwill @kendrickllama

On a general note, the need for discussion is not necessarily “anti-sentiment” or “anti-core”. I don’t like to see these silos formed. But, personally I need to know both sides to take decisions and thus often assume a devil’s advocate position for better understanding.

I hope you understand that you and YFI are a huge player and thus have to tread extra carefully if you don’t want people to feel pushed around. The fact that concern by CRV holders exists does not mean it cannot be resolved.

I would love if we could align the YFI and CRV community (because I am part of both) to leverage each others interests mutually.

3 Likes

I am with @andre.cronje here. IF we want to limit yearn’s access to curve we don’t need to use complicated second order mechanisms like pool parameters.

The better tool is to adjust the gauges for yearn.

Again: IF we would like to be protectionists. I believe it’s better to collaborate and find a sweet spot together.

1 Like

I am using the yETH strategy since months and started off with only 3333 DAI in the y pool. I can confirm that what you describe became apparent even to me with such low amount. So after this discussion I will vote FOR.

1 Like

On a somewhat unrelated, but related note, y pool has also become something closer to a stable savings account and meta stable coin for yearn and a lot of other communities. So having a more equally proportioned pool gives a lot more safety and security. We have been building and integrating a lot of solutions ontop of y specifically because till now, it served that purpose so well. I have no objections to all veCRV holders to vote for 0 CRV rewards for y pool, but I would like to keep using it as the defacto meta stable pool + savings account. And as we see more pools being added, such as dforce and idle, the arbitrage opportunities will increase. I would love to continue using y pool as the safety net we have been using it for since inception.

4 Likes

Thanks for the detailed reply Andre. I agree that low A factor will help keep the proportion of coins within y pool closer together (DAI would gain in share, USDT would drop in share) and am more sympathetic to your proposal.

However, I don’t think there’s ever been “cheap DAI”. Arbitrageurs are keeping the pools in line, just try each pool in turn.

While the A factor influences the bonus/slippage when swapping coins, the market still determines the price. The A factor helps control how far the DAI % of pool will drop before the bonus (to deposit DAI) or slippage (to withdraw DAI) kicks in enough to effectively match market price (~1.01 or ~1.02 recently).

If the A factor of y pool suddenly dropped to 100, there would be a sudden, brief advantage to deposit ~100m DAI and withdraw ~150m USDT to get bigger bonuses.

Helpful link for everyone: https://www.curve.fi/stableswap-paper.pdf search “amplification” it’s about 2 sentences.

4 Likes

I hardly agree with the @andre.cronje’s assumption. I couldn’t get the point that A helps the price of DAI to be pegged 1$.

There are lots of arbitrage in current market economy. If DAI’s price is 1.05$, market decides it valued as so, not Curve y pool. Less A is just deleverage the effective liquidity of pool, which gives more tolerance in large volume trade and less slippage cost. Nothing is related to the DAI price determination.

If DAI is valued higher than 1$, it is just because there are more demand and less supply of DAI. The price should be stabilized by MakerDAO (probably apply negative interest?), not here. Nothing we can do using AMM liquidity pool.

1 Like