airswap / airswap-aips

AirSwap Improvement Proposals
22 stars 3 forks source link

AIP 39: Time-weighted Stakes for Points rewards #39

Open agriimony opened 3 years ago

agriimony commented 3 years ago

Summary

Rationale

In the current staking implementation, there are no incentives for stakers to maintain their staking position. Implementing a time-weighted points system will incentivize stakers to remain staked in the platform.

Specification

Points will be generated for voting based on the timestamp of the stake. For example, a tier based system which rises quickly and slowly tapers off above 100% could be used to reward stakers who have staked longer without over penalizing new stakers.

time staked % points generated
0 - 2 weeks 25
2 - 4 weeks 75
1 - 3 months 100
3 - 6 months 105
6 - 12 months 110
12 - 18 months 120
> 18 months 130

Credits

Thanks to Roll-Royce88 for bringing this topic up again and suggesting the points pay out table, greg for suggesting to preset the stake time to gain rewards.

Copyright

Copyright and related rights waived via CC0.

agriimony commented 3 years ago

greypixel Jun 12

I’ll play devil’s advocate:

Both an initial penalty, and making the maximum timeframe & multiplier large may discourage new stakers (initially their “return” will be diluted by long term stakers)

Your excellent dashboard 2 tells me that over the last 9 weeks, there has only been one week where unstaking has surpassed staking, and the majority of weeks, staking significantly outpaces unstaking.

Consdering the latter point suggests retaining existing stakers isn’t a problem, should we really be making a move that may discourage new stakers?

agriimony commented 3 years ago

greg Jun 18

Would it be possible to commit to a longer staking period and immediately earn the points multiplier? e.g a new user could stake for 18 months and receive 1.3 immediately? so rather than discouraging new users they would be incentivised to commit for longer?

agriimony commented 3 years ago

agrimony Jun 19

Actually… I really like this idea! We could simply allow users to set their own cliffs and reward in bonus points accordingly. The only draw back is that we would require a whole new staking contract again I think

If there’s a simple implementation which doesn’t require Re-staking I would be all for it

agriimony commented 3 years ago

agrimony Jun 21

Thanks for all the comments everyone. For simplicity, I’ve decided to go with option (1), which is an off-chain tier based reward system which should be simpler to implement in Activate.

Let’s KIV option (2) which I think would be nicer to implement once we have gotten additional specs compiled which necessitates a new Locker smart contract

Alternative staking contract

Alternatively, a different approach could be taken where stakers could choose to stake into different Locker contracts with preset minimum stake times - a longer stake time would reward more points per AST locked

Minimum stake time % points generated
1 month 100
3 months 105
6 months 110
12 months 120
18 months 130
agriimony commented 3 years ago

JBe Jun 24

there are no incentives for stakers to maintain their staking position.

I disagree, the incentive for staking is to direct the protocol and obtain points for doing so.

I am having a difficult time finding the net positive in this AIP.

agriimony commented 3 years ago

agrimony Jun 24

Ah should have clarified with the emphasis on maintaining the stake. There is an incentive in staking, but no incentive for long term staking.

For example, after 20 weeks a staker is free to vote, claim and unstake. 4 weeks later he can stake again, vote and claim the same points.

There is currently no reason for stakers to continue maintaining the stake after a longer period (and hence have a vested interest) in the platform.