Decreasing Rewards for Delegators as an Incentive for Sustainable Delegation

Motivation

With the move of many delegators due to the SundaeSwap ISO (The current situation from the perspective of a small pool operator), the issue of small pools struggling to get delegations to run in a profitable way has become more pressing again.

There is a proposal for a CIP to make the rewards more fair to delegators of small pools (Prepay Min Fixed Fee CIP) and on the other hand a proposal to let SPOs throw out delegators to (inter alia) combat over-saturation of pools (CIP Add the ability for SPO to refuse stake addresses).

Cardano runs on a proof of stake protocol. So, ability to produce blocks should always scale with delegated stake. Delegators should be incentivised to delegate to pools that have a perspective of operating in the long term, that are operated by people competent in administrating them, but also to delegate to smaller pools that fulfil these conditions.

The saturation is meant to partly achieve that goal by disincentivising delegations to pools that already have a certain amount of stake. But this punishes not only the new delegators, but all delegators of that pool, even the pledge of the pool operators. Although they can’t do anything about the over-saturation due to newer delegations.

Idea

If rewards would decrease for newer stake in a pool, be higher for earlier stake in a pool, there would be an incentive to find a pool that on the one hand does not have too much stake already so that the delegation will be one of the early ones with higher rewards, but on the other hand also one that will run sustainable for a longer time, so that there will be no necessity to switch pools and perhaps become a later stake in the new pool with less rewards.

There is a trade-off, here, because you would still want a pool that produces blocks regularly, so that you are not dependent on luck that much, which is another reason to find a sustainably operated pool.

The decrease should not be too steep in the beginning. You would not want to punish delegators in the second million of stake of a pool compared to the ones in the first million too much. But it could be steeper closer to the saturation. People should really look for pools that are not close to saturation.

This would work in addition to saturation, but also as a replacement for saturation. If done in addition, saturation would still also punish old delegations, but at least that punishment would partly be outweighed by the advantages of early delegation, especially for the pledge which will nearly always be the very first delegation to a pool.

Caveat 1: You could be pushed to the less favourable part of the reward function by earlier delegators increasing their stake. That can probably not be avoided and adds to the reasons for not making the function too steep in the mid-early parts. It also adds to the incentive to look for a pool, where it is not too unprofitable if this happens, one that has a middle-high stake or a low stake, but looks promising.

Caveat 2: When switching wallets, you have to start anew and could lose a good position in a stake pool. Can also hardly be avoided. Incentivises taking good care of your wallet and learning how to protect it. Also, it shouldn’t be prohibitively hard to find a new pool as long as new ones start operating.

Status

This is just an idea right now. Happy to discuss if and how it would be feasible.

Distributing by age of stake will obviously be a more complicated algorithm at the very heart of the reward calculation process.

Also, the concrete formula will have to be found.

4 Likes

I have to say i do like the idea.

1 Like

The idea seems good at the first sight, but this will make the multi-pools create new stake pools even sooner than now, in order for the delegators to have better rewards.
Many multi-pools SPOs are creating now new stake pools a long way before being close to saturation, to benefit from the 340 ADA minimum fixed fee (read below for an example calculation proving this). With this proposal, they will have another excuse to do it (while they benefit from the fixed fee of the new stake pool): to provide better rewards for their delegators. Combined with the pre-paid fixed fee CIP, this will have the opposite effect in the end: multi-pools will create more stake pools and will get a larger proportion of the total rewards each epoch. Small single stake pools will have an extra disadvantage: their fees will be reduced.

I searched for a big stake pool on pooltool.io for an example. This stake pool with 64.6M total delegation in Epoch 315 had 43.2k ADA total rewards from 66 minted blocks. This stake pool has a variable fee of 1%.
The total rewards for this stake pool were 340 ADA from the fixed + 428.6 ADA from the margin, 768.6 ADA (in reality a few extra ADA from the pledge rewards, but insignificant for our example).
If instead of this stake pool, there would have been 2 stake pools with the same fees and the same total delegation (split between them) and the same total number of blocks (33 per stake pool), the rewards would have been 552,6 per stake pool (340 + 212.6), so 1105.2 ADA in total instead of 768.6 ADA.
For 3 stake pools instead of 1 or 2 in the same conditions, the total rewards would have been 1441.8 ADA instead of 768.6 ADA or 1105.2 ADA. ( 3 x (340 + 140.6)).
This show how important the 340 ADA minimum fixed fee is in making the multi-pool SPOs split their stake pools to maximize rewards. And this proposal will just give them an extra excuse to do it.

The only things that will discourage pool splitting will probably be reducing the minimum fixed fee of 340 ADA and increasing the pledge’s effect on rewards (but the latter will disadvantage small stake pools, which cannot afford s big pledge).

1 Like

It seems to me that every incentive for people to start a new small pool is also an incentive for multi-pools to fork another one, and vice versa.

To be honest: I don’t think that multi-pools per se are a problem. I’d rather have a competent pool operator run three or four pools than someone who has to be guided through editing their .bashrc by the Cardano Forum run a single pool.

The problem are the very large pools of Binance and company. And I don’t know if we can fight them with parameters. As long as there is little incentive to move ADA from the exchanges and high risk in doing so (as evidenced by the scams, hacks, and sometimes just catastrophic user errors we are diagnosing here every day), they will always have a high stake (don’t know if it is “risk to network security/decentralisation” high). This will probably only change if there are more use cases for having ADA outside of the exchange.

I don’t know if I endorse the pre-paid fixed fee CIP. If you think that this is also a problem with my idea, then I do not understand. Multi-pools and small pools will both still get rewards proportional to their stake. There is no change. (They might even get a little higher rewards, because the pledge is nearly always the oldest delegation.)

Also then: Binance have enough ADA lying around that they could probably also optimise for higher pledges. They might need to sacrifice part of their pools if they need liquidity unusually fast, but even this sacrifice could be optimised, so that most of their pools still fulfil their pledge.

I did not say that multi-pools per se are a problem. But creating multi-pools just to “exploit” the protocol and get more rewards seems to be against what Prof. Aggelos Kiayias recommends.

2 Likes

I am not really fond of the idea for multiple reasons:

  1. It is complicated for delegators to understand how much rewards they can expect. Especially if they have multiple wallets. It is just not really user friendly
  2. The major issue that we want to solve here (i think) is to make sure delegators delegating to a small pool (say 1m stake) will not lose a lot of rewards due to the fixed fees and for that reason skip smaller pools. So the clean solution should be found here. Either by removing the min fixed fee or something else that doesn’t make it more complicated to understand for the delegators
  3. This concept will push pools to split their pools much faster than is defined by K and result in less pools reaching saturation levels (which is desired).
1 Like

Not necessarily.

The concrete occasion was the other proposal trying to avoid over-saturation losses by allowing to kick out delegators without asking them.

My other main thought was to incentivise delegation to smaller pools in general. (Yes, as a side effect that incentivises multi-pools to split earlier. Not avoidable. Everything that incentivises small pools also does it for simulations of small pools by multi-pools.)

There already are tools to predict rewards. Lots of them. And people who more feel like they are paying customers to Cardano get very annoyed if the predictions are not fulfilled.

Yes, but the main effect would also be that small pools – not only simulations of small pools by splitted multi-pools – fare better on the predicted rewards comparison.

If that is not intended (which might be true according to the blog post linked above), that’s fair enough.

If the system optimises towards k pools that are close to (even a bit over) saturation, that’s okay, but then the warnings to enthusiastic pool operators should maybe much bigger that their effort does not make so much sense if they do not see an opportunity to attract tens of millions of stake.

1 Like