Rocket Pool Rewards Claim Architecture

Rocket Pool Rewards Claim Architecture

Abstract:

Node operators stake RPL alongside their ETH to secure user pool deposits. They also receive RPL rewards in exchange for providing this additional security to the network, the user deposit pool and the solvency of rETH. The structure and cadence for depositing and withdrawing RPL, as well as claiming rewards is detailed below.

Depositing RPL:

Node Operators deposit RPL along with their 16 ETH when initiating validators. The RPL is not however staked to individual validators, instead it is democratised across all validators that a node operator is running. This means that as a node operator setting up 5 validators (16 ETH x 5 = 80 ETH), a minimum stake of 8 ETH worth of RPL (80 ETH * 10%) is required in order to instantiate these validators and begin earning rewards. The node operator may choose to deposit up to 150% of the value of their ETH stake in order to receive maximum RPL rewards and further protect the user pool from slashing. (Meaning for the 5 Validator node operator, they could deposit up to a maximum of 120 ETH worth of RPL)

Node operators can choose to top up their RPL stake at any time, up to the 150% bound. They may do this due to RPL price depreciation causing their overall collateralisation ratio to fall, or simply to increase their allocation of rewards proportional to the rest of the node operator group.

RPL Rewards:

Rewards period: Proposed at one week.

Claims Period: 4 * Rewards Period (one month).

Once a node operator deposits ETH and RPL and begins running validators, they are required to wait until the start of the next rewards period (one week) to begin accruing rewards. This is essentially down to the technical implementation of the rewards architecture, in order to calculate the proportional reward for each node operator, we must know the number of operators and their respective RPL stake for the entire rewards period, meaning one cannot enter during a period, they are added to the queue and enter the pool at the beginning of the next.

Node operators are able to claim rewards accumulated via RPL staking once per claims period (currently proposed at four weeks ). After staking ETH and RPL for four weeks or more, they will be able to claim rewards on a rolling basis (always claiming the trailing period’s rewards). The cadence for claim periods is set at the time of initial deposit, and continues on the monthly basis.

There are three options when claiming RPL rewards:

  • Claim rewards and re-stake to increase collateralisation.
  • Claim rewards (withdraw only the RPL accrued as rewards).
  • Claim rewards and withdraw stake (withdraw rewards plus an amount of staked RPL down to 10% )

Withdrawing RPL:

Node Operators are able to withdraw RPL from the system once per period, after they have been staking for one period or more. They are able to withdraw RPL down to the 10% minimum collateralisation ratio. Once a withdrawal request is made, the withdrawal will be subject to a cooldown period of one period.

This cooldown requirement has been implemented for the reasons detailed below:

  • To mitigate potential congestion issues caused by node operators constantly depositing and withdrawing RPL in order to maintain exposure to rewards whilst staying as close as possible to the minimum threshold (minimum capital requirement to access rewards).
  • To prevent governance attacks caused by node operators acquiring (through flash loans and similar methods) large amounts of RPL in order to swing governance votes before dumping immediately after the vote.
  • To allow governance time to react to any occurrences related to mass deposits/withdrawals which might endanger the stability or solvency of the network.
  • To reduce complexity in the implementation of the genesis rollout of Rocket Pool’s staking and governance architecture.
2 Likes

@James
Can a new Rocket Pool validator can only start validating when a new reward period starts?
Does that mean that, if a new period just started, it might take up to a week for a new validator to become active? Or can the minipool start validating, but will take up to a week to become eligible for rewards?
If the minipool can’t actually start validating, such a delay is less than ideal - it adds friction and up to a week of missed potential staking rewards. Not much in the grand scheme of things perhaps, but it’s not great UX when node operators want to spin up a new minipool, because of large rETH demand for example.

@Pieter
The minipool will begin validating on ETH2.0 and accruing staking emissions when it is initiated, but won’t begin accruing RPL rewards until the start of the next rewards period.

This is essentially down to the technical implementation of RPL rewards. We need to know the proportional RPL stake of each validator compared to the total for the entire period in order to calculate proportional rewards within the contract and keep everything on chain!

Great, if the minipool can already be activated and start validating for ETH rewards, I don’t see any problem with a small delay in accruing RPL rewards. :slight_smile:

Couple of questions:

  1. What happens exactly if your collateralisation ratio drops below 10% minimum? You don’t get RPL staking rewards and that’s it? Do you still get the eth2 validator staking rewards?

  2. How long do you have to fix your ratio before the punishment kicks in? Especially if it’s due to the price being unstable.

  3. I don’t quite understand the 10%-150%. Are the rewards proportional to however much RPL one stakes vs the total pool? I.e. if everyone stakes only 10%, that essentially maximizes their returns at 5% inflation per year since we’re all equally putting in 10% collateral ratio. With that in mind, assuming for the first year, eth returns >5%, as a node operator, I have to find a balance between the 5% RPL staking reward (with the expectation that the price goes up exponentially faster than eth) vs >5%+commission eth staking. It’s not like 5% will all go to just the node operators, lets assume only 50-60%. So it’s more like 3% RPL staking vs >5%+commission ETH. -> Am I understanding this correctly?

  1. Validators which sit below the 10% threshold continue to earn ETH2 rewards but don’t earn RPL rewards for the period that they’re under the 10% minimum.

  2. Rewards are calculated on a weekly basis, this means that if your ratio is below 10% at the start of a period, you won’t earn rewards for that week. The delay on withdrawals has been implemented to protect against gaming of this system by node operators depositing RPL to capture rewards, then withdrawing immediately afterwards.

  3. The rewards are calculated based on your proportional RPL stake compared to the total pool. We’re modelling out a few scenarios (individual vs total pool stake) which should provide more clarity on the expected rewards at different stake levels. Essentially, node operators will want to maximise their stake % in order to capture more of the overall pool rewards, but there will likely be a point where diminishing returns kick in depending on the behaviour of other node operators.

65% of the 5% inflation is allocated to node operator rewards (585,000 RPL/year). This allocation is split proportionally between node operators.

1 Like