Say I have 1M Ada and I want to delegate to a single pool operator. I look at all the single pool operators and make a comparison. I have the choice between a pool with 100K stake and another pool with 50M stake.
If I delegate to the 100K stake pool then this pool will then have 1.1M total stake and will on average produce 1 block per epoch. 340 Ada will go to the pool operator and the other approx 340 Ada will go to me. So I will earn approx 340 Ada per epoch. (Or a bit less for the pool’s additional percentage cut.)
On the other hand, if I delegate to the other pool it will now have 51M stake and will earn me roughly 4.7% yield which is approx 640 Ada per epoch.
Both are single pool operators, so I can feel good that I am helping with decentralisation.
I agree with your arguments for decentralisation. However, I think the real threat to decentralisation is the likes of Binance and the coming threat enabled by smart contract staking.
Have you thought about how your stake pool will attract delegation from a defi lending platform with literally billions of Ada locked up as collateral?
sorry but that’s a non sense example, a 1M ada delegator could choose any 5-10M pool (with hundreds of other delegators to share the fixed fees with) and get almost the same rewards of a 40-50M pool and at the same time giving a nice boost to decentralization - if he’s more greedy he could choose one pool in the 10-25M range and he would still give a nice contribution to the network health. Doing so would cost him only a really slight percentage of rewards.
Choosing a 100k pool has no sense because it would be the only one paying for the fixed fees, making it obviously not economically viable.
Also 4.7% yeald it’s not a thing anymore, 100% performance epochs yeald more towards the 4% range as you can check in the graph posted by Colin in the first post.
As you says, Binance it’s a threat to decentralization, and implementing pledge as in the research papers would limit that behaviour to a certain extent (it would make convenient for them to fully pledge their pools and make it private instead of spin up tons of pools with 2 ada pledge)
to my experience that’s not true, look at my pool RoS before and after the Cardano Foundation delegation (the stake went from 4-5 to 18M), rewards for delegators remained quite constant, if the statement would be true they now should be making way more. What is true to my experience is that for small pools (2,5-5M range) rewards are more volatile - meaning that there can be very bad epochs and very good ones.
I apologize if I sounded harsh, english it’s not my primary language btw I tried delegating part of my bag recently to a 60M pool (due to Sundae ISO) and I haven’t noticed any major difference against my smaller pool, definitely I haven’t received double rewards. That’s also the weak point in the reasoning I’ve evidenced earlier, it assumes that small pools are small because they offer significantly lower rewards, implying that lowering fixed fees would bring delegators back. I don’t believe that narrative, but we’ll see if I’ll be right or not :))
Some great responses to this issue here, I just want to keep this simple without all the technical issues and say what I believe after running a Stakepool for 18 months.
First, we desperately need the changes to k and min Fee. We are well overdue a redistribution of the current stake and k at 1000 will give boost to so many operators. Yes, there are pool splitting possibilities, but this will not stop at least some of the redistribution and there are not insignificant cost implications with time and infrastructure in splitting pools.
Min Fee must change. The current structure was never meant to be a basis for major income and many pools are enjoying this luxury at the expense of smaller pools. This is a free market and any race to the bottom argument is nonsense. Stakepools are a competitive structure by design and there should not be protectionism in place for those that have made it so far. The variable fee allows the pool to set the fee based on the quality, services, and reliability of their pool. Good pools will do well if they have the desire. We urgently need the min fee to drop to 0 so that smaller pools and those entering the space have a non-zero chance of succeeding. Taking over half the rewards from a block as a min pool fee makes smaller pools totally unrealistic to delegators. Then there are pools like us who return most of this min fee and that takes hours of manual processing each time not to mention the accounting nightmares when you run your Stakepool as a business.
Finally, there are the potential regulatory concerns. Running a Stakepool will eventually attract the attention of regulators. Currently there is a lack of understanding by some small SPOs and we regularly see them advertising that they produce similar returns with time as large pools which is simply not true given the current min fixed fee.
The Cardano eco system should be a constantly evolving entity and this needs to encourage new Stakepools from entering without creating barriers.
This is an important topic, and we need to keep discussing this to get progress and show each other respect by listening to the views of all SPOs big and small.
I did the calculations with these assumptions:
As of last epoch, each block produced by a pool results in approx 636 Ada rewards. Calculations are based on 340 Ada min fixed fee and 0% variable fee.
Stake pool averaging 1 block per epoch:
1.08M total stake => Total rewards 636 Ada, delegator rewards 296. (2.00% yield for delegators)
Stake pool averaging 10 blocks per epoch:
10.8M total stake => Total rewards 6360 Ada, delegator rewards 6020. (4.07% yield for delegators)
Stake pool averaging 50 blocks per epoch:
54M total stake => Total rewards 31800 Ada, delegator rewards 31460. (4.25% yield for delegators)
From a delegators perspective: A pool with less than 10M total stake is not competitive.
You cannot mathematically justify a reason why k should be increased. 41 << 500. Sorry.
We don’t need to irritate or make participation difficult for anybody, even the multipools. As you correctly pointed out before, a reduction in K will benefit all smaller pools slightly, improve the network efficiency as a whole, and make life easier for large/multi-pool operators. A win-win-win change.
Only if mathematically justified.
You cannot mathematically justify a reason why k should be increased. 41 << 500. Sorry.
Yes! Sometimes quantitative metrics (like k-effective) should override emotional viewpoints.
Let’s handle this scientifically: One change at a time and measure results.
I appreciate your work on k-effective, however I don’t think lowering k will help with decentralization and I don’t believe that increasing network efficiency is an important metric to focus on over that.
Since k also effects pledge benefit via saturation level, lowering k will lower the effect of pledge which I don’t believe is helpful in the current environment of pledge splitting multipools. If we lowered k from 500 to 2*41 as you suggest, pledge would be less than 20% as effective as it is currently.
I also think the hardfork you mention to make pledge matter would be much further in the future than 10-20 epochs in your example, which is why I am in favor of attempting to use the tools we have currently. Increasing k makes relative pledge more valuable, this is a reason to “mathematically justify” increasing k, however whether it makes it valuable enough is up to each individual. Personally I think it is more important to start being willing to tune a0, if operators can split their pledge as much as they are to run 6+ pools then it seems like the perception of many is that pledge is not as valuable as it needs to be.
To me if that gradient field from 0-100% pledge and 0-100% delegation is accurate then it could benefit from revision. Clearly using this field the k-parameter is not driving real network decentralization.
How can we revise it though? Exactly what numerical value should we propose and why? We should both work on that.
I believe in the post you are referencing the mention of “higher pool saturation” refers to how much stake is in the pool, not to how high the saturation point is, because how much of your pledge benefit that you realize does indeed increase with total stake in your pool. What I am referring to is the saturation point that is determined by k, if this saturation point is lower while a pool’s pledge remains constant then they realize greater pledge benefit.
I agree that changing k alone is not driving decentralization where we want, this is after all only a single knob. Turning this knob up over time however has also increased the relative importance of the a0 knob which we have been reluctant to turn at all, I think it would be a mistake to reduce k without first trying to tune from the a0 perspective as well. We are also turning the min fixed fee knob, and while I don’t think this will drive stake away from where it is currently it should at least make people more open to a wider array of pools.
You have pointed out something that I hadn’t completely appreciated:
If K is increased then this makes it viable for more whales to earn increased yield through running private pools 100% pledged. With K=500 you have to be a mega-whale with 68M pledge to fully saturate your pool and get that extra yield. With K=5000 then now you only need 6.8M pledge to get this extra yield.
Also checkout the fantastic calculate created by @dstratio
The more we increase K within the current framework, the more whales will enter the range that can benefit from the far greater returns for 100% pledge.
If you think this doesn’t matter much then here is how I would game the system if I was a multi-pool operator with plenty of pledge:
Let’s say I had 17M Ada and K was increased to 2000. Now I can run a fully saturated pool with 17M pledge to earn extra yield. I would do that and also continue as a multi-pool operator with almost no pledge in my mult-pools for the community because these are still additionally profitable.
Hence, I think we need to be careful about increasing K within the current framework. And, I can definitely see reasons for reducing K within the current framework.
Agreed. Let’s both start making charts of the entire problem space at various values of the parameters just like @brouwerQ did. I’m working on that now. You should also!
Only the biggest most elite whales earning the best rewards (boost after >90% pledge >90% saturation) isn’t exactly ideal philosophically. That does not align with my concept of ‘fair’. I need to replicate the charts and work on some variations of the parameters (a0, k) generating the gradient field ( 0 to 100 pledge, 0 to 100 saturation ) for each.
Plugging some values into @dstratio calculator (leaving a0 unchanged at 0.3) and changing fixed fee to 30Ada.
K=1000, fixed fee 30Ada
K=1000, poolsize=34M, pledge=100K => Yield=4.28%
K=1000, poolsize=34M, pledge=1M => Yield =4.32%
K=1000, poolsize=34M, pledge=34M => Yield=5.55%
K=2000, fixed fee 30Ada
K=2000, poolsize=17M, pledge=100K => Yield=4.29%
K=2000, poolsize=17M, pledge=1M => Yield=4.36%
K=2000, poolsize=17M, pledge=17M => Yield=5.55%
The more we increase K the more whales can benefit from this increased yield by spinning up fully saturated private pools. Currently, with K=500 you need to be a mega-whale with 68M, so probably only IOHK OGs will have this and since they are building the system, I can live with it. However, if K was increased to 2000 or even 1000, there are many more whales large enough to exploit this.
Ada has a fixed cap supply so extra yield earned by some is at the expense of the rest of the community.
I support the fixed fee being reduced to 30. However, I do not support K being increased to 1000 or 750 within the current framework and incentive structure. In fact, I support K being reduced.
I keep on harping on about it, but the real threat is staking via smart contracts. These defi lending platforms are going to control literally massive amounts of Ada. They might start to make Binance look small.
The change in K will have no effect on fully saturated pools, but it could actually decrease a whale’s rewards. If somebody could only self-saturate 1 pool with ~68 million then after K change they can fully saturate 1 pool then half another, their total rewards will be less because ~20 million of their stake is now in a not saturated pool.
The reduction in fixed fee is absolutely essential. It needed to have been done a year ago. It’s been horribly damaging to the ecosystem, particularly by making pledge appear to not work. The ‘hurdle rate’ Colin wrote about also becomes the minimum accepted pledge value. Any pools with pledge below the hurdle rate are faced with the exact same challenge as a sybille attacker’s pool. They have to convince delegates to accept poor returns by promising better returns later. As pledged pools fail this challenge they leave an anecdotal record of poor returns that anybody can search and use as examples of pledge not working. A bad-actor in the system will always have an easier time attracting stake if put on a level playing field as others because they have no moral bottom and are willing to lie and cheat. The fixed fee was meant to deter a sybille attack, but ended up just forcing bad education onto delegates who are now more than happy accepting poor returns and thinking they are helping the network by doing so. The hurdle rate needs to always be set within the actual set of public pool pledge, which is about a million or less. So a change to 30 fixed OR LESS is a must.
Delegates have been seasoned to accept really poor returns because of the fixed fee. Besides changing parameters, there needs to be a huge push by IOG and the community to educated delegates on how parameters work and how each effects their rewards. Delegates say they want good returns, but don’t know how to get them.
When delegates try to get the best return on their stake they accidentally force pools to consolidate their pledge to compete with other high return pools. Unfortunately, the min fee has been too high, so even when pools consolidate their pledge they are below the hurdle rate.
Changing K will hopefully stimulate delegates to research new pools and begin staking rationally.
Sitting on the fixed fee change waiting for feedback is foolish. It needs to be changed today…
This comparison is wrong.The 1.1M stake pool will also have some epochs with zero blocks and some epochs with two (or more) blocks which will result in earning more than 340 ADA per epoch on average. You can’t ignore this at this scale.
OK @brouwerQ, say I have 1M Ada to stake. Please advise me what return I could expect from staking my 1M Ada to a pool with 100K total stake currently.