Summary
This AIP proposes a simple proportional model which pays out rewards based on the user’s points vs the total amount of points.
Rationale
The current claims system makes it difficult for stakers to calculate exactly how much returns can be expected from participating in governance. The current rewards system relies on when a user decides to claim vs when other users decide to claim, as well as other external factors (e.g. when the next vote will be called, when new LPs come online). This means that the claimed amount (or optimum time to claim) is not easy to predict, and some stakers may feel disgruntled if they claim too early / too late
Specification
Proportional payout based on a simple linear model
The payout system is to be kept simple. All voting wallets will be allocated their claimable amount based on their proportion of points vs the total number of points for a given claiming phase.
a = Points / Total_Points
To help smaller stakers defray gas fees for claiming, a fraction of the rewards pool can be set aside and split equally among all wallets. This fraction, the gas rebate (x
), can be set by a simple community vote, but should be within 0 to 10. I suggest that x = 1
to start (i.e. 1% of the rewards pool will be used for gas subsidies). If we are on a monthly voting cycle, it should generate around 180k USD per month. 1% of this (1800USD) when split amount 100 staking wallets gives each staker an extra 18 usd to cover gas fees (approx 15 usd at current)
To prevent sybil attacks on the system, we should require a minimum stake of 100AST to qualify for the gas rebate (since the gas subsidy should be barely enough to cover the claim fees, attackers will not gain but instead legitimate voters will be harmed)
b = (Balance * x/100) / N
, where N
is the number of eligible wallets for a given claiming phase.
The final payout (Y
) claimable by each wallet will thus be given by the formula
Y = a * Balance * (1 - x/100) + b
Unclaimed balances will be accumulated to the next cycle. Stakers have n
months to claim outstanding rewards, after which any unclaimed amount will be returned to the rewards pool. *the time period n
to claim outstanding rewards can be modified by the community
Examples
Assuming that the reward pool is 180,000 USD and there are 100 stakers claiming the rewards.
If gas rebate = 1%
1,800 USD will be set aside for subsidizing gas fees (i.e. 18 USD per wallet)
The remaining 178,200 USD will be split proportionally according to the number of points and released to be paid out at the end of the claiming phase. With a total of 10M sAST, the payout would be as follows (assuming after spending 18 USD on gas)
100 points - 19.78 USD (1.78 after gas)
1,000 points - 35.82 USD (17.82 after gas)
10,000 points - 196.2 USD (178.2 after gas)
100,000 points - 1,800 USD (1,782 after gas)
1,000,000 points - 17,838 USD (17,820 after gas)
The gas rebate amount can also be set to 0%
In this case,
100 points - 1.80 USD (-$16.20 after gas)
1,000 points - 18.00 USD ($0 after gas)
10,000 points - 180 USD ($162 after gas)
100,000 points - 1,800 USD ($1,782 after gas)
1,000,000 points - 18,000 USD ($17,982 after gas)
Removing gas rebates may disincentivize smaller stakers from participation in community governance.
Problems
Smaller wallets might try to accumulate their gas subsidies to get a larger payout. We could simply roll unused gas subsidies back into the rewards pool, which ensures that any gas subsidy would only be applied once per claim event.
e.g. if the 100 points wallet does not wish to claim at this time, 18 USD will be sent back to the rewards pool and 0.27 USD will be accumulated to the next claiming cycle.
Considerations
This AIP previously included these other proposals, which have since been carved out into their separate proposals for easier voting. The proposed specification above assumes that these AIPs have been voted in and implemented.
1. Snapshot and consolidation of tokens into a single pool. (Called to vote in <AIP 26>)
2. Regular voting and claiming cycles to ensure equal spread of fees (Called to vote in <AIP 27>)
Credits
Thanks to many people for their contributions to this AIP
Copyright — All proposals are public domain via CC0.