Author | Andrey Andreev <[email protected] > |
---|---|
Last update | 2019-08-29 |
We have revised the proposal, added governance (remuneration management by WAVES holders), and described the motivation and goals in more detail.
Abstract
- We are proposing the introduction of a reward for blocks’ generators.
- This reward will be added to the blockchain with additional WAVES tokens.
- The amount of the reward will be regulated by miners’ voting.
Motivation and Purposes
The Waves economic system is designed so that free funds can be withheld from circulation, thus increasing demand for WAVES tokens. This is possible due to the leasing mechanism.
At the moment, however, this mechanism does not work well enough. Holders of WAVES do not seek to use available funds for staking and leasing sufficiently, because leasing does not generate much income. As of July 2019, income from staking (and leasing with 100% payments from node owners) was less than 1% per annum in WAVES.
We want to increase interest in staking and leasing and increase demand for WAVES by introducing a decentralized monetary policy that will increase the value of WAVES. This will be achieved by introducing a miner reward, which will be emitted for each generated block.
The reward amount will be managed by the Waves community through voting, thus introducing a decentralized monetary policy management.
Specification
1) Activation of functionality
When activating the functionality, the value of the miner’s reward should be set to N WAVES.
The initial value (when the functionality is activated) is N = 6 WAVES.
N = current miner’s reward
2) Changing the total amount of WAVES tokens
The total amount of WAVES tokens to be added to the miner’s reward should be increased by the amount of emitted coins.
3) Use of the coins by the miner
A miner receives a reward when they create a key block. The miner must be able to use the received reward in the first transaction of the first microblock created after the key block.
4) Interest and voting periods
After activation of this functionality for the period of T blocks, miners should be paid a fixed amount of reward. For V blocks before the end of the period, a vote must be taken among miners to change the amount of reward. At the end of the voting period ( V ), the results are applied for a new period of ( T ) blocks and are not changed until the end of the period. The new period comes every T blocks.
T - Period of validity of voting results. (100,000 blocks)
V – Voting period. (100,000 blocks)
5) Voting for the change in the amount of reward
During the voting period ( V blocks), miners should have the option to vote for a change in the reward amount by adding the proposed value of the change in the reward to the block header. It is not a negative number multiple of M that is accepted as a vote. This number describes the amount of reward in WAVES tokens, which, in the miner’s opinion, should be accrued when the block is created.
6) Determining the amount of reward
After the end of the voting period, the votes must be counted according to the following rules:
The miner’s ( K ) voice is compared to the current reward ( N ) in 3 categories:
- (Up) For increasing the amount of reward - K > N
- (Save) For keeping the current amount of reward - K = N
- (Down) For reduction of the amount of reward - K < N
The proportion of each category in relation to all votes is calculated. If more than 50% of miners have voted for an increase or reduction in the amount of reward, the amount of reward for the new period ( T ) shall be changed to M . In other cases, the current amount of reward shall be saved until the next period.
- (Up) For increasing the amount of reward - N + M = N_new
- (Down) For reduction of the amount of reward - N - M = N_new
If a miner votes with a ( K ) that is not a multiplicity of 0.5 WAVES, the block with that vote should be considered invalid and not accepted by blockchain.
M – Step of measurement of miner reward (0.5 WAVES)
N_new – Amount of reward after voting
The amount of reward cannot be lower than 0 WAVES.
7) REST API methods
The following REST API method must be provided:
- Current miner’s reward
- Amount of blocks before the next vote
Possibly needed methods:
- Miner reward and the period of validity of this reward at the specified height
- Current total supply of the WAVES tokens
- The supply of the WAVES tokens at the specified height
Designations used
Designation | Value | Description |
---|---|---|
N | On feature activation, 6 WAVES. Further values are determined by voting. | Current miner reward amount |
T | 100,000 blocks | Period of validity of voting results |
V | 10,000 blocks | Voting period |
M | 0.5 WAVES | Step of measurement of miner reward |
N_new | Further values are determined by voting. | Amount of reward after voting |
Rationale
With the introduction of the reward for block generators, the generation of blocks becomes profitable, as we estimate it will bring in 4.5% of annual income in WAVES, and in the beginning, up to 7.2%. This will attract new blocks’ generators (i.e. new nodes) into the Waves ecosystem and new participants willing to earn money. This should increase the demand for WAVES.
We expect that funds that were previously held on the exchanges will be rather staked or leased, which will reduce the supply of WAVES. This should activate the deflationary mechanisms of the Waves ecosystem.
We believe that most of the funds received as a reward for the block generation will not be put into circulation, but will be used for re-stacking and leasing. This proposition is based on the fact that, unlike Proof of Work, Proof of Stake does not require expensive computing equipment to generate blocks. Over the past month, more than 170 Mainnet nodes were generating blocks, and currently, they are not paid for block generation. They will not have the need to sell the rewarded WAVES, and the best strategy to increase their income is to re-stake/lease.
We chose a target annual revenue of 5% in WAVES to make staking/leasing attractive.
At the time of writing, the total generating balance is about 43.6 million WAVES. We expect a rapid increase in generating balance by 10-15 million WAVES after a successful vote for this functionality. Therefore, in order to ensure the target revenue of 5% per annum, we have chosen the reward for generating block 6 WAVES in the near future. (See the table below.)
Generating Balance, mil. WAVES
Block reward, WAVES | 43,6 | 55 | 60 | 70 |
---|---|---|---|---|
6 | 7.23% | 5.73% | 5.26% | 4.51% |
5 | 6.03% | 4.78% | 4.38% | 3.75% |
4 | 4.82% | 3.82% | 3.50% | 3.00% |
In order to manage the profitability of staking and leasing by WAVES holders, we are introducing a mechanism for selecting the amount of blocks generating reward, which is a community-driven monetary policy. Holders of WAVES will have the opportunity to vote to change the reward amount for generating the block.
Changes
- In the voting the miner specifies an integer value of the amount of reward.
- Voting period of validity
- Period of validity of voting results
- To change the amount of reward over 50% of votes are required