# How are the stake pool rewards calculated?

If you have checked our infoblock about the history of rewards, you already know how the pot is composed and what are the sources of rewards distributed to operators

If you have checked our infoblock about the history of rewards, you already know how the pot is composed and what are the sources of rewards distributed to operators

the incentive mechanism is the main engine of the public blockchains

the incentive mechanism is the main engine of the public blockchains

10%

2%

5%

It is through it that operators are rewarded for the service and encouraged to act in favor of the protocol

### Rewards

10%

2%

5%

It is through it that operators are rewarded for the service and encouraged to act in favor of the protocol

### NETWORKS SUCH AS:

6.25 BTC

2 ETH

32 TRX

16 XTZ

+ 2 XTZ per endorsement

Bitcoin

Ethereum

Tron

Tezos

### Networks such as:

6.25 BTC

2 ETH

32 TRX

16 XTZ

+ 2 XTZ per endorsement

Bitcoin

Ethereum

Tron

Tezos

pay a fixed rewards per block produced

?

?

?

?

# ?

?

?

### ?

In the Cardano blockchain, the reward mechanism is one of the most important security components of the Ouroboros protocol

developed through extensive scientific research to ensure that the mechanism leads to a decentralization of the network in the long term

Different from other blockchains, the distribution of rewards is not fixed per block

Different from other blockchains, the distribution of rewards is not fixed per block

### THE AMOUNT OF PARTICIPATION of the STAKE POOL

Instead, the rewards distributed to stake pools and their delegators involve

# +

$$f$$

$$(s, \sigma)$$

$$= \frac{R}{1 + a_0} \cdot \left( \sigma' + s' \cdot a_0 \cdot \frac{\sigma' - s' \frac{z_0 - \sigma'}{z_0}}{z_0} \right)$$

To understand the mechanism, we can look in detail at the components that are used in the calculation and how each one influences the rewards

$$f$$

$$(s, \sigma)$$

$$= \frac{R}{1 + a_0} \cdot \left( \sigma' + s' \cdot a_0 \cdot \frac{\sigma' - s' \frac{z_0 - \sigma'}{z_0}}{z_0} \right)$$

We will first consider how the reward of the stake pool is calculated as a function of stake

$$f$$

$$(s, \sigma)$$

$$= \frac{R}{1 + a_0} \cdot \left( \sigma' + s' \cdot a_0 \cdot \frac{\sigma' - s' \frac{z_0 - \sigma'}{z_0}}{z_0} \right)$$

is a function that calculates the rewards of each entity in the network based on two factors of the stake pool ...

$$f$$

$$(s, \sigma)$$

$$f$$

the stake pool's pledge

the total stake of the stake pool

$$(s, \sigma)$$

$$f$$

Both values ​​are relative to the total ADAs in circulation, meaning they represent a fraction of the amount the stake pool controls of existing coins

$${s}$$

$$f$$

The fraction referring to the pledge represents the stake delegated by the pool operators themselves

$$(s, \sigma)$$

$$f$$

represents the total delegated stake, including the pledge and the stake of the delegators

$$\sigma$$

$$(s, \sigma)$$

$${s}$$

$$f$$

$$(s, \sigma)$$

If there was only one stake pool, we could distribute the entire pot of rewards to this one regardless of other factors

$$= {R}$$

Let's assume that this pot contains a total of 200 thousand ADAs

$$f$$

$$(s, \sigma)$$

$$= {R}$$

Let's assume that this pot contains a total of

To divide the pot proportionally to the relative stake of each entity, we need to consider the parameter σ multiplying the total rewards in the pot

$$= {R} \cdot$$

$$\sigma$$

$$f$$

$$(s, \sigma)$$

$$= {R}$$

Vamos supor que esse pote contém um total de

$$= {R} \cdot$$

$$\sigma$$

Ignoring pledge for now, if a stake pool holds 1% of all circulating ADA

$$\sigma = 0.01$$

$$f$$

$$(s, \sigma)$$

$$= {R}$$

Vamos supor que esse pote contém um total de

$$= {R} \cdot$$

$$\sigma$$

$$\sigma = 0.01$$

it would receive 1 % of the pot

$$(s, \sigma)$$

$$f$$

$$= {200000} \cdot {0.01}={2000}$$

The problem that emerges from associating the rewards in a directly proportional way is that stake pools with higher stakes always receive most of the rewards

becoming larger and possibly centralizing the network through huge entities

To control the growth of the rewards of a single stake pool, there is the concept of a saturation point that limits the reward gain

$${z_0}$$

$${z_0}$$

= saturation point

Currently, it corresponds to approximately

## 0.667%

Through this parameter, we limit the amount of stake considered in the calculation of rewards up to a maximum of 0.667% of total ADA

σ

σ'

to denote that participation will be capped by the saturation point

Let's put a line

σ

σ'

$${z_0}$$

$$\sigma = 0.01$$

$$(s, \sigma)$$

$$f$$

$$= {200000} \cdot {0.0667}={1334}$$

$$f$$

$$(s, \sigma)$$

$$= {R} \cdot$$

$$\sigma'$$

= saturation point

In our previous example, a stake pool would be limited to receive a maximum of

$${z_0}$$

$$\sigma = 0.01$$

$$f$$

$$(s, \sigma)$$

$$= {R} \cdot$$

$$\sigma'$$

$$(s, \sigma)$$

$$f$$

$$= {200000} \cdot {0.00667}={1334}$$

= saturation point

The purpose of the pledge is to protect the network from a Sybil attack

However, we are not yet considering how the pledge influences the calculation of rewards

providing greater rewards for operators who commit and delegate their own funds to the stake pool and discouraging the creation of several pools with low stake

$${a_0}$$

as the pledge influence factor, currently set to

$${a_0}$$

The Ouroboros protocol implements the parameter

$${a_0} = {0.3}$$

Writing the reward calculation function including the pledge influence factor and the stake pool pledge

Let's skip the saturation point, for now, to try to keep it simple

$$f$$

$$(s, \sigma)$$

$$= \frac{R}{1 + a_0} \cdot \left( \sigma + s \cdot a_0 \right)$$

$${a_0}$$

The last changes we need to make to the formula are related to the saturation point, which also needs to be included in the calculation

$${z_0}$$

$${s}$$

$${s'}$$

multiplying one more term to finally get to the final form of the reward function

We limit the pledge to the saturation point in the same way as we did with the total stake

$${s}$$

$${s'}$$

$$f$$

$$(s, \sigma)$$

$$= \frac{R}{1 + a_0} \cdot \left( \sigma' + s' \cdot a_0 \cdot \frac{\sigma' - s' \frac{z_0 - \sigma'}{z_0}}{z_0} \right)$$

Note that if the pledge influence factor is null

$$f$$

$$(s, \sigma)$$

$$= \frac{R}{1 + a_0} \cdot \left( \sigma' + s' \cdot a_0 \cdot \frac{\sigma' - s' \frac{z_0 - \sigma'}{z_0}}{z_0} \right)$$

$${a_0}=0$$

we have again the reduced form

$$f$$

$$(s, \sigma)$$

$$= {R} \cdot$$

$$\sigma'$$

Since the rewards of a stake pool are calculated with the function described, the value obtained is adjusted by a performance factor that weights the rewards in relation to the number of blocks produced

β

σ

Produced Blocks

21600

representing a fraction in the form of

This factor is calculated by

fraction of blocks produced by the pool in a epoch

β

σ

Produced Blocks

21600

the fraction of relative stake controlled by the pool

β

σ

This factor is calculated by

They are fractions that must obtain the same value over time

β

σ

so that the fraction of blocks generated is proportional to the controlled stake

β

σ

## slots

Since the drawing of slots to define the entities that will produce blocks works like a lottery, sometimes a pool can produce more or less blocks than expected

## slots

but on average the performance factor should be equal to 1 for pools with ideal performance

but on average the performance factor should be equal to 1 for pools with ideal performance

Since the drawing of slots to define the entities that will produce blocks works like a lottery, sometimes a pool can produce more or less blocks than expected

There is a difference in the reward for generating more or less blocks, but there is no fixed value of rewards as in other networks

In the long run, the reward is proportional to the stake controlled by the stake pool

There is a difference in the reward for generating more or less blocks, but there is no fixed value of rewards as in other networks

In the long run, the reward is proportional to the stake controlled by the stake pool

## EVERYBLOCK

feito por