A stake pool to delegate

2021-09-27

As one perspective of a stake pool operator (SPO), here is an article to help delegators choose a stake pool, and more importantly warn about a pool you should be cautious.

Terms regarding delegation

In intension to explain to delegators who are here for the first time looking for a pool to delegate, I would like to go through basic terms taking PoolTool, one of the famous sites, as an example. Please skip to the next section if you are already familiar.

* If you find any better explanation or mistake, please comment down below. I would very much appreciate it.

Pool ID: This is the identifier of the stake pool so using this as a search criteria will ensure you find the one you are looking for.

Epoch Fee: The cost to sustain the pool per epoch, which an SPO declares. 340 ADA is the minimum that can be set. * Referred at item #1 of “Calculation in reward distribution process" section.

Variable FeeCardanoscan calls it margin. It is fee subtracted for pool operation, maintenance, promotion, etc. It is recommended to set so the value reflects actual operation cost as well as taking ADA’s value into account. It is said that 0% is not good for the decentralization in terms of sustainability, but to compete against “big pools" in attracting delegators, some pool temporarily sets it 0% for promotion. Also, be aware that there are some malicious pools that change to 100% without informing to their delegators. * Referred at item #2 of “Calculation in reward distribution process" section.

Pledges: ADA the operator has declared to “invest" in own pool. The more pledge, the more rewards that can be expected. As of December in 2020 the influence is not huge yet. The a0 (0~∞) often referred is pledge influence index explained more details below. If actual pledge does not meet declared pledge, epoch’s reward will be none.

Epoch Blocks: The number of blocks generated per epoch; the more blocks produced per epoch, the more rewards distributed. Life time number of produced blocks is also shown.

Expected Reward: On Daedalus or Yoroi, you can see it shows how much reward is expected according to ADA delegated, under assumption that the pool is saturated.

ROS: Return Of Stake per epoch, the higher the percentage, the higher the reward being made. Recommended to see lifetime ROS rather than per-epoch base because for long term it is said ROS converges to certain percentage. It looks to be around 5%.

Live Stake: Total amount of stakes, pledge plus delegated stake.

Active Stake: The amount of stakes in a state that contributes to produce reward. Stake becomes active 2 epochs after delegation.

Saturation: When ADA amount staked at a pool exceeds certain level, reward does not increase but decrease. From the 6th Dec. 2020 onwards, k parameter will be 500, a pool saturation level becomes around 64 M. This is intended so that delegates spreads more widely and so more sustained pool emerges, which leads to secure network.

Rank: How it is calculated differs depending on which tools you are looking at. For example, Daedalus: “The rank is decided based on expected rewards with intended stake being delegated under condition where the pool is saturated. * When expected reward is 0 , the rank will be all the same."

Block generation is heavily dependent on a random factor called the Ouroboros Praos consensus algorithm. The evidence for this is seen when comparing pools with similar settings, ending up with different ROS and epoch blocks produced. When pools trying to take the same block, there can be slot battle and height battle.

Refference: Cardano Documentation

Delegation

You will be rewarded by the POS for delegating your ADA to a staking pool. Having an ADA means that you have the right and the obligation to participate in the protocol and create blocks. That right is owned by the holder in proportion to amount of ADA. The obligation can be delegated by delegating the ADA to a staking pool. That way, the pool will have a higher probability of meeting its obligations, producing blocks, and will be able to get paid for its block generation. Delegators participate in the network by delegation.

One important thing to be noted is delegation does not mean transferring ADA to a staking pool but delegating rights and obligation. Therefore, it is not a problem to change your delegation to another pool or sell your ADA at any time while you are delegating. The amount of stake is only reduced in proportion to sold or moved amount. If an operator tells you to transfer your ADA insisting to increase your assets, you should be cautious.

Calculation in reward distribution process

At the end of epoch,
1: A fixed fee is deducted and paid to the pool operator.
2: A delegation fee is deducted and paid to the pool operator.
3: Remaining ADA will be distributed to the delegators and the pool operator in proportion to the amount of delegation.

For instance, if reward: 1000 ADA; fixed fee: 340 ADA; and variable fee: 3%, at the end of epoch,
1: 340 ADA is subtracted to pool.
2: 3 % of the remaining 660 ADA, 19.8 ADA is paid to the pool.
3: The remainder, 640.2 ADA is distributed to operator and delegators, in proportion to their delegated amount.

From delegation to reward

* 1 Epoch = 5 Days
After you have delegated, it takes 15 to 20 days until rewarded. As the above diagram shows, it repeats itself every epoch until delegation is stopped. The calculations are taken care by protocol so the pool operator never interferes.

Many parameters, so which value should I use as a reference?

First of all, since there is a Staking Calculator, it would be a good idea to simulate how much reward you expect over time.

If you want to maximize your reward, the variable free and fixed fee are important as they reflect directly to your reward, as explained above. Lifetime ROS and block production are next factor to check because they tell if the pool is constantly producing blocks.

Reward is basically a “reward for block creation", so looking at epoch blocks and ROS tells the pool is more stable in producing rewards. The operator’s pledge is also a factor but the influence does not seem to be huge as of February 2021.

If the fees are low, that leaves more ADA for distribution. However, from a stake pool operator’s perspective, fixed fee can be seen as capital to keep pool sustainable and reliable over the long term. If it is reliable, it will be able to provide a high reward in the long run.

Also, reward will decrease over time (gradually in the case of ADA), just like the half-life of Bitcoin. So it is important that a lot of people participate in it so that transactions increase and transfer fees increase, which becomes a part of your reward.

As you can see from experience, there are swings in the amount of reward in each epoch even when the same number of ADA is delegated. It is said that in short term, a reward could be a random value at reward day, but in long term, it will become close to the simulated value. This is why lifetime ROS becomes more important than per-epoch ROS.

A stake pool to avoid

The opposite view is that it is important to notice a pool to avoid in the long run. This is because the delegation takes place in a long term and it is difficult to monitor it everyday. It is not easy immediately to notice a good pool turn into a bad one.

Firstly, as mentioned earlier, you will not get a reward if the pledge does not meet the amount declared. Pool with enough pledge has a green check mark on PoolTool website.

Secondly, a saturated pool with its live stake in red has possibility to provide less reward than it could, and you might want to avoid a pool that is approaching saturation which is colored in yellow as well unless you can constantly monitor saturation. From my experience, 20-30% of reward is reduced by delegating to saturated pool.

Lastly, there are some pools turning suddenly to offer 100% of delegation fee when delegator might have become relieved after epochs. This falls under the “2: Mandatory fees are deducted and paid to the pool operator" part of the distribution process. If the delegation fee is 100%, the delegators will not receive reward for helping to generate blocks until he or she realizes that no reward is being received.

To avoid this, it is safer to pick a pool that updates us on the status of every epoch activities in an automated way. The PoolToolBot is useful because it sends you a notification when pool of your choice changes configurations. A pool with active community helps each other as well.

Pool with cheap fee and less pledge is sometimes controversial. Protocol allows it but it could lead to Sybil attack. The delegators have moral responsibility not to grow such a pool.

Saturation

6th Dec, 2020: K = 500, Saturated at around 64M

The announcement has been made to increase K, and since then the number of pools has risen. Partly, the large pools that worried to get saturated with more than 64M ADA as of December 6, have set up new pool for transfer delegates.

So let’s look at the pools that are currently (as of November 23, 2020) about to be saturated.
At this rate, by December 6, 2020, about 120 or so pools will be saturated, and about 180 by March, 2021, which will affect compensation. This will not result in a loss of ADA, but it will result in a loss of opportunity to earn reward. I am curious how much the rewards will be reduced if delegated to saturated pool (to be updated when the results are available) and when migration be made. December 6, 2020 is right around the corner, but surprisingly the delegation seems to be staying put.

(Updated December 23rd, 2020)

To see how saturation affects reward, I picked a pool with 150M active stakes. (Saturation level is about 64M)

After epoch 234, when k parameter became 500,

Delegator Rewards: 92.4k dropped to 39.8k (about 43% of reward received before saturation)
ROS%: 4.59% dropped to 1.95%

I also delegated to another pool with 2M pledge, 0% variable fee and 340 ADA for fixed fee.

Rewards: generally I used to receive 33 ADA but dropped to 23.5 ADA (about 70% of before saturation)
ROS%: used to be around 5% but dropped to 3.91%

Pool configurations and saturation percentages are all different and stake varies everyday. It is difficult to compare pools but at least the examples of saturated pools have shown very low reward. Therefore, it is important to monitor pool and k parameter, and move delegation accordingly.

Summary

In the end, it is up to delegators to decide what to focus on when picking a pool. They would focus most likely on reward, but also there are more to look at, such like operator activities, mindset, service for delegators, technical skills, availability of contacts, charitable activity, etc. Delegation is your asset. It is up to the delegator to decide where to delegate.

Studying Parameters

k(=500)
The k is number of pools when the network is fully saturated. December 2020, k has been changed from 150 to 500, and pool saturation level has become about 64M. A larger number of k leads to more widely spread decentralization however it affects the stabilization of the operator’s income.

d parameter
Decentralization parameter. For the stability of the network, IOG runs nodes and takes care of 40% of all block production (at the time of writing). At the beginning of the Shelley period, they were responsible for most of the block generation. This is centralized, but gradually the block production is more taken care by SPO (Stake Pool Operators), with decrease of the d value. It will gradually approach d=0 and will be zero by the end of March 2021.

a0=0.3 (takes values from 0 to infinity)

A0 represents influence of the stake pool operator’s investment (pledge) on the pool, which affects reward. The investment is needed to protect the Cardano network from Sybil attacks.
For example, if there is no investment or the influence of investment (a0) is too low, one stake pool operator could possibly create many pools, collect delegation and take over the network. If he or she successes to collect 51% it becomes a 51% attack. So it is important that decent amount of pledge is set and takes a part of producing rewards, attracting delegates.

Thank you for your time reading.
Hope you enjoy staking life and good return:)