This proposal is to increase the dp limit to 5,000 ETH from the current setting of 2,000 ETH. The max limit was designed to restrict the amount of the regular ETH left unstated, thus nonproductive at generating returns.
Increasing the dp limit will allow for more efficient and larger deposits by Institutional, DAO, and private whale depositors into the dp. As an example, to reach our unofficial goal of becoming 22% of the amount of ETH staked on the beacon chain (2.8M ETH) we would require 690 full dp deposits at the current setting. (2.8M - 100K / 2 / 2K max deposit). Increasing the limit to 5k would allow us to accomplish the same in only 270 transactions.
Increasing the dp limit does present a small potential reduction risk on the regular APR but only occurs when the dp has a positive balance. We can calculate the potential impact on regular APR due to the under-utilized ETH.
A) 2,000 ETH in dp / 100k staked ETH = 2% non working capital (current dp limit settings)
B) 5,000 ETH in dp / 100k staked ETH = 5% non working capital (proposed dp imit setting)
I am assuming a beacon chain ETH APR of 4.95% (current yield). Scenario A generates a 4.85% APR (100k*4.95% / (100k + 2000), which is a reduction of 10 basis points (bp) under the ideal situation of all regular ETH effectively staked.
Scenario B returns a reduced 4.71% APR (100k*4.95% / (100k + 5000). This is a 14 bp reduction in APR from scenario A.
- This is a worst-case calculation, and such a reduction in APR only occurs when the NO queue is empty, and the dp is full.
- We have 1500 ETH in rETH eth2 rewards as nonworking on the beacon chain already (but so does every other staking service).
- When we first increased the dp limit to 2,000 ETH the protocol was at a TVL of 2,080 ETH or a 96% nonworking capital setting. (Nov 2021 Transaction Link)
- In retrospect, we should not have set it at some fixed amount, but rather, we should have put it at some percentage of the value of rETH TVL. Setting the dp limit at some fixed number will mean that the amount of deposit as a % of TVL will always decrease unless we periodically update the value.
If the contract supports it, I’d be much more in favor of a variable DP based on the amount of ETH staked, where the percentage drops as more ETH is staked.
For example, 2k ETH DP @ 50k ETH staked is 4%, but at 500k ETH staked the DP might only be a 15k ETH DP, which would be 3%.
Percentage of rETH TVL is the ideal metric but it could also introduce complexity and require audits. I’m concerned about having too small of a DP if everyone wants to unstake from RP some time after withdrawals are enabled.
I’m in favor of changing the limit to 4,000 or 5,000 first. Would like to hear what other factors the core team and community are considering for raising the limit.
I would support the increase to 5000 ETH.
I think I like the idea of manually (through governance) increasing the DP size periodically over some variable limit personally. TVL doesn’t change that quickly, so it wouldn’t be a huge hassle to put it to a vote every handful of months or whenever it makes sense to. A variable DP seems like it would add unneeded complexity, though I don’t really have a hard stance there. In the meantime, 5k ETH at 5% max non working capital sounds reasonable, especially since it looks right now like that won’t be an issue in the near term, and by the time it is TVL will be that much higher.
Good work @ken! I don’t see a realistic reason why we shouldn’t do this. I also generally agree with the sentiments above from @brentmw1 concerning fixed vs dynamic pool limits.
I fully support of this proposal. 5000 ETH seems like a reasonable first step.
I support increasing the DP to 5k
I support increasing the dp limit to 5,000 ETH or even higher.
i think 5k i better than 2k.
i also think that we could leave the dp at 2k but have a DP for the DP that doesnt has any reward until it makes it to the ODP.
But in order to avoid loosing time 5k seems fine.
I support increasing the limit to 5k. We can look for a more elegant solution down the road but this is a good step.
I agree with others’ sentiments here and would vote for increasing to a 5k dp. I like the idea of a dynamic dp in theory, but for starters I think increasing it manually to 5k is good enough. We can gauge the impact of the 5k change first before moving into something more (and potentially needlessly) complex.
I support this proposal but feel we should move to a dynamic limit (2-5%) with a floor of 2k to improve scaling. We can start with a manual increase as a trial.
Long term, I’d prefer that we make small changes to allow deposits up to deposit pool + minipool queue. I think that solves what is likely to be the bigger sticking point.
For now - increase to 5k and manually tweak based roughly on total rETH value sounds great.
I don’t disagree, but just trying to understand in the context of the dp being virtually empty over the past several weeks. Is it felt that there will again soon be pressure on the 2000 limit?
IMO it’s not so much that we expect the DP to fill up again, it’s that we need to create space for large depositors to participate, otherwise we’re losing out on that segment of the market.
Part of the reason that stETH has been so successful is that they can ingest 30k ETH in a single deposit. Large depositors simply can’t participate with Rocket Pool unless they jump through massive hoops.
I also expect we won’t see a consistently full DP for … a long time.
Worth noting this isn’t just theory, but also observed reality. We saw a whale rETH minter a couple weeks ago while the pool was empty with a queue (like now) who had to split their deposits up (5k ETH total). This is exacerbated by the way the minipool queue gets paired; right now only up to 2 minipools get matched per deposit, so we can get an odd case where the pool is nearly full but the queue is large, so we can’t burn rETH and we can only mint small amounts of rETH. Luckily we had some community members choose to manually match the minipool queues (taking on a significant gas cost themselves), but that’s not an ideal solution, and still took hours for folks to opt to do this.
This sort of inconvenience may be rare, but those rare cases are extremely valuable to the protocol.
Would like to see the queue for NO’s awaiting refunds cleared before increasing the deposit pool limit. Otherwise, those NO’s might never receive their 16 ETH refund.
Full disclosure: I’m one of those NO’s awaiting a refund who made the mistake of depositing 32 ETH and now regret it.
If anything, increasing the DP would make it more likely that we’d quickly refund 32 ETH minipools.
Thank you for the considered proposal.
The core team have discussed the idea and based on your numbers we agree that the time is right to increase the deposit pool limit to 5k ETH. I mentioned in Discord that I am keen for this to be the first official Snapshot vote. Once the vote is successful, we would update the parameter on mainnet.
We are scoping out what potential changes can go into the Atlas release and one or both of these are candidates:
The idea of using TVL to dynamically change the deposit pool limit is good because we would not have to update it manually and it enables a fixed impact on the rETH APR. The impact ratio could still be configurable by governance. This reduces the regular maintenance that governance has to do but still gives governance the power to tweak as needed. We would have to use the number of active minipools as a proxy for TVL but it is doable.
We have also discussed a change to the protocol, allowing a dynamic limit upwards from a base. Essentially what @Valdorff said. The idea is to have a min deposit limit (5k) but the limit increases based on the amount of ETH in the minipool queues. This way, the limit is based on Rocket Pool’s capacity and does not effect the APR further.
As we scope out Atlas we will know what we can fit into the release.
Agree with increase in DP for reasons stated above better than I could. See y’all in snapshot voting.