-
Notifications
You must be signed in to change notification settings - Fork 334
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CIP-ShawnMcMurdo-FairMinFees #66
Conversation
The proposal includes a good economic analysis. As @shawnim suggests, changing the value of the minimum pool fee in line with changing fiat values makes economic sense. 50 ada is roughly equivalent to the original fiat value of this setting, which was based on information that was provided by early pool operators. The setting does interact with pledge to activate Sybil protection, so has some security implication, and this needs to be quantified before a decision on the actual value is taken. Intuitively, reducing the minimum fee to 50 ada should not be a major concern given the current state of the network, but care needs to be taken if the parameter is lowered close to zero. The proposed change to the influence factor formula (in a separate CIP) would alter the security analysis slightly (it should support lower settings of this parameter). The proposed new minimum variable cost parameter also seems sensible. If adopted, it would need to be included in the development plans for a new protocol version. It wouldn't be a technically difficult change, but would need some "plumbing" from the CLI/genesis file to the ledger implementation (analogous to the minimum pool cost). I will make sure the IOG team sees these proposals. |
@kevinhammond Thanks for the thorough response! |
@kevinhammond any updates on this research / who should be tagged from IOG? |
Is there a way to "kudos" or "vote" on CIP's? (I would +1 this one) |
This has been raised for discussion at the IOG Chief Scientist's Meeting next week. We will report back with comments and suggestions after that. |
I personally really like the proposal; it's a model change so needs to be reviewed by our researchers, but the economics of it make sense to me. +1 for this CIP. ;-) |
Was there any update on this? |
This was discussed at the last Editor meeting (23), please refer to the notes. |
There is a planned blog post from the IOG researchers that covers all issues to do with fees. This has not been released yet but please check the IOG Blog Posts. The team is sympathetic to maintaining a fair and consistent fee structure. |
Are there any updates on this or ETA on when there may be more info? (I saw the Stable Fees blog post, but I don't think it really addresses this issue). Between the min fixed fee and Daedalus ranking anyone outside of K as "expected rewards: 0" is incredibly difficult to get delegators as a small pool. I have a 0% fee, 40k pledge between owners, 18k additional stake from a friend and donate 30% of pool+owner rewards to charity. After many months, I still have zero other delegators, and honestly I probably wouldn't delegate to myself if it wasn't my pool as thing are. The large minimum fixed fee (over a third of the block reward for a pool producing <= 1 block per epoch) artificially prevents small pools from competing with large pools offered delegator rewards. The playing field is far from fair. Switching to a min variable fee instead would at least allow a small pool to accept a smaller fee at the start to offer rewards closer to those of big pools, which would help encourage people to delegate to them. |
There has been a related blog post pushed by IO regarding fees on June 10th here. |
@crptmppt I saw that post, but it sounds like that's some way off, and isn't really the same thing described here (switching from min fixed fee to min variable fee to have a more level playing field). A big reduction in min fixed fee would certainly be a step forward, but so far it feels like the can is just being kicked down the road whenever asked (it's been asked in many SPO calls). It would be great if there was a little more transparency around this - I see small pools retiring all the time 😔 |
@DanTup - I'll be wrapping up the notes from the last Editors meeting in 12 hours when I wake up - there are minor allusions to that pr or periphery - that a CIP has no guaranteed implementation path beyond getting an implementer (IO) choosing to implement it is also a choice by design. So the CIP framework is solely a visibility mechanism, not a control structure. I believe this PR is going to be merged next week from recent conversations - but as mentioned in the last 6/8 editors meeting the research was looking at it and some edge considerations were not satisfactory to the team (and so some other flavor of fees that will impact incentives might be preferred). Thanks for your patience and adding to the conversation! |
Understood - it was really an update on the research and specifically merging of this PR I was curious about. It's often mentioned in the SPO calls that this being looked at, but there is very little visbility for us outside so we don't know if anything is progressing. It seems like a big issue for small SPOs - they're coming up with all sorts of novel ways to pay fees back, but anything off-chain is hard for delegators to see, and requires trust. It's not clear to me if there's somewhere for SPOs to really be heard about issues like this (beyond raising it on SPO calls or posting here), or to lend weight to other peoples issues/ideas to show what's important to them. Thanks! |
I would like to know more about the statement "some edge considerations were not satisfactory". |
@@ -0,0 +1,150 @@ | |||
--- | |||
CIP: ? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
0023 (tentative)
@shawnim at the last meeting, beyond what was minuted here after your last comment: https://github.com/cardano-foundation/CIPs/blob/master/BiweeklyMeetings/06-08-2021.md#Followups ... some of the smaller SPOs had pointed out that the currently obligatory minimum fee of ₳340 is essential to their livelihood and/or balancing their operating costs. The term "race to the bottom" was mentioned in the context of a zero minimum fixed fee, since zero would effectively become the new obligatory value. Hence some small pool SPOs are for it and some are dead set against it. It sounded like @kevinhammond also had other "edge considerations" in mind: this is just the one I can personally confirm from ongoing contact with the SPO community. |
This makes no sense. A small SPO could set their variable fee such that they get exactly the same income as they would with the 340 fee based on their delegation, and it would provide exactly the same return to their delegators.
I keep hearing people say this said, but the the request is not to remove fees, it is to change from a minimum fixed fee to a minimum variable fee. There can't be a race to zero if you can't have zero. In my eyes, the only thing this fee does is prevent small pools from being able to compete with big pools for delegators. The more resistance I hear to this issue, the more I believe it's coming from big established pools, not small pools. There seem to be a lot of things that skew in favour of big pools (like the rankings in Daedalus, the delay in increasing K), and I'm certain I'm not the only small pool likely to throw the towel in if this continues to be the case 😞 |
Working with a group of small pool operators within the community I cannot understand how this could be in any way worse than the current situation nor do any of the pool operators I work with closely. If the Cardano Foundation is able to, please provide a list of small Pool Operators that have spoken against this CIP. I find this difficult to believe or understand that there could be many pools considered and I believe I could achieve a larger signed petition against what you have been led to believe. Yes the 340 ADA fee is beneficial to fund the running of the pool but it is focusing the majority of delegation in the hands of the few nearly saturated pools. We need to encourage wider delegation to move away from these pools for the sake of decentralisation of block production. |
Notes on Setting the Fixed Fee to zeroThis is a summary of the feedback I have received regarding min_pool_fee. It does not represent a unified view of researchers from Input-Output or the Cardano Foundation. This note might end up need to be moved into a separate CIP as setting the fixed fee to zero can be done on any epoch boundary, while adding support for a minimum variable fee is a hard-fork. SummaryThe current implementation of a minimum fixed fee is problematic for many reasons, detailed below. The open question is whether the benefits of a minimum fixed fee outweigh the governance considerations. Much of the feedback conceptually represented a preference between two approaches:
BackgroundThe min_pool_cost is the parameter that defines the minimum price level within the system. It is specified as a fixed amount of Ada that is taken from the pool rewards and given directly to the SPO. This fee was initially intended to represent the operational costs of pools but has not been maintained, so that relationship no longer is true. At the current settings, pools of less than 10 MM Ada will be unable to return any rewards to delegators within 4 years, effectively becoming private pools. The topic is highly controversial in that the min_pool_fee currently represents 70% of all fees paid to public SPOs and that percentage is increasing over time. Denominated in a volatile assetThe min_pool_cost is denominated in Ada but intended to represent real-world costs. This creates a natural drift over time due to moves in the price of Ada. Given the price appreciation of Ada in 2021, this minimum level is now many times the originally intended value. Does not work well over timeThe statically defined minimum level does not naturally evolve over time. As rewards decrease, any fixed fee represents an ever increasing portion of the rewards. While this is not in itself problematic, the inability for SPOs to rebalance the rewards for a pool will increasingly constrain the ability for pools to differentiate themselves economically. For example, by 2025, pools with less than one million Ada would be unable to share any rewards with delegators at all, and even now these costs represent a variable fee of more than 50% (making them highly unattractive for delegation.) Prevents Market ConsensusThe presence of a minimum price prevents a free-market supply/demand equilibrium from being reached, much like a minimum wage. While the value of a minimum wage is beyond the scope of this argument, one key element of any minimum wage system is that someone has to be responsible for determining and maintaining the right levels. Active GovernanceAs a consequence of the three previous points, a minimum fee level needs to be actively maintained and it's very presence means that distributed market price can not be used exclusively. Much like minimum wage in real-world economies, some group needs to be responsible for maintaining an appropriate level on a regular basis. If left to drift for extended periods, the minimum fixed fee will no longer remain fit for purpose. Setting the minimum to zero removes the need for that governance function to maintain this parameter. Hard to CompareThe minimum fixed fee makes it difficult to compare different stake pools as the impact changes based on pool size and over time. For example, In epoch 211, for a 10 MM Ada pool, the 340 minimum fee would have represented only a 4% percent fee. "Race to Zero" Variable FeesAn unavoidable consequence of having a very high fixed fee is a significant pressure on the fee that can be set to zero: the variable (or percentage based) portion of the rewards. While this could potentially be reduced by more active adjustment of the minimum fee, it is a concerning side-effect of the current unmanaged approach. Incentivizes Bad BehaviourWhile the discussion of certain ranking systems is beyond the scope of this CIP, ranking mechanisms such as the "non-myopic" rewards do not account for differences in the pool size when considering rewards. This causes some less optimal outcomes such as being able to split a large pool into two smaller ones, to take advantage of receiving a higher fixed fee twice, with no material loss in ranking. This again might be addressable by more active management of the minimum fixed fee by a governance function, it is symptomatic of the current unmanaged process. |
While not part of my notes on the minimum fixed fee, a minimum variable fee in contrast:
|
Thanks for the comprehensive analysis @Colin-Edwards-IOHK ! |
Absolute non-sense argument. Just look at the numbers which has been spit out by this proposed changes. The change basically ends up paying the larger pools 10 times more rewards than the smaller pools, while their cost is essentially the same. And this essentially sends message to the smaller pool to get lost and kill themselves. And this effect gets aggravated as the price of ADA increases. Most of the pools have a particular set of loyal delegators who stick around a particular cause and this change basically ignores that fact, and punishes the SPO and hands over the control via increased rewards to the larger SPO by giving them 10-20 times more rewards for no obvious reasons. So decentralization eventually means having handful of large pools and killing off all small operators. It is a race to minimum wage and this will destroy the entire ecosystem. |
Can you elaborate? This proposal does not reduce any pools fees, it changes the minimums they are allowed to charge. Today, small pools are forced to charge the delegators massive fees compared to large pools (whose fixed fee is spread between a large number of delegators and therefore has a tiny impact), making them far less competitive. Reddit is full of small pools coming with all sorts of ways of paying the fixed fee back to their delegators with NFTs, lotteries and other sharing. I don't believe for one minute that any small pool would be worse off with this minimum being removed, unless what they really mean is "I don't want other pools being able to undercut me", in which case I'd ask why large pools are allowed to stop small pools even being level with them without this change? |
6/29 Editors meeting (25) discussed this PR - see notes. (conversation might be ahead of meeting notes at this point, this is a reference) => PR to be merged as CIP-0023 (Draft) shortly |
In the meeting notes it says:
Is there any more information on what drives these viewpoints? They keep being repeated without much explanation. Why can't it be a free market, why does there need to be a floor? There are large pools with high fees that have plenty of delegators, so what is there to suggest that if small pools could have lower fees everyone would abandon the large pools? AdaPools had a Delegation Trend chart that shows that every epoch more delegation moves from small/medium pools to large pools: https://adapools.org/delegation-trend PoolTool publishes a graph showing the expected ROI that shows how bad it is for small pools. It feels like this can keeps being kicked down the road. If a variable fee is a requirement to lower the fixed fee, can we assume that it's unlikely to happen in the next 6 months due to Alonzo etc.? If so, it would be nice to know sooner rather than later, as it would likely make me reconsider whether it's worth continuing my pool 😔 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed, happy to see this merged as a draft CIP. To be discussed further with the research teams as for feasibility in terms of possible implementation in the core node.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a plausible, well-explained proposal.
Should this CIP be visible on https://cips.cardano.org/ ? I can't seem to find it there. |
@DanTup it is - check out https://cips.cardano.org/all/ Landing page on cips.cardano.org is building from the readme... this will be updated when notes are merged in tomorrow! |
@crptmppt ah, thanks - I had missed that :-) (although it's now on the homepage too - thanks!) |
…lus a couple we missed
…517) * top README: meeting #66 promotions + deprecations plus a couple we missed * CIP-0086 was promoted in prior meeting * update with current date Co-authored-by: Ryan Williams <[email protected]> * update date stamp on deprecation list + add date stamp to candidate list --------- Co-authored-by: Ryan Williams <[email protected]>
…e CIP promotions (cardano-foundation#517) * top README: meeting cardano-foundation#66 promotions + deprecations plus a couple we missed * CIP-0086 was promoted in prior meeting * update with current date Co-authored-by: Ryan Williams <[email protected]> * update date stamp on deprecation list + add date stamp to candidate list --------- Co-authored-by: Ryan Williams <[email protected]>
…e CIP promotions (cardano-foundation#517) * top README: meeting cardano-foundation#66 promotions + deprecations plus a couple we missed * CIP-0086 was promoted in prior meeting * update with current date Co-authored-by: Ryan Williams <[email protected]> * update date stamp on deprecation list + add date stamp to candidate list --------- Co-authored-by: Ryan Williams <[email protected]>
No description provided.