Voting Dividend Mechanism on EOSForce Mainnet for a New Governance Dynamic
EOSForce adopts a new voting mechanism different from that of the EMLG mainnet for better governance
EOS.IO, the blockchain protocol, is created by blockchain solutions provider Block.one, but the company does not govern the EOS blockchain themselves. Rather, the blockchain is governed by a group of community nodes known as BPs (block producers) elected by token holders to activate and maintained the network. This means that in fact, every community can actiave their own EOS.IO mainnet and forms their own independent, parallel network kingdoms with independent “Constitution” for governance.
EOSForce mainnet constitution has many differences from the EMLG mainnet’s constitution. On the EOSForce mainnet, we adopts a new model of BP voting mechanism for what we believe to be a fairer governance structure. Here ar ethe key differences:
- On the EOSForce mainnet, 1 EOS token only bears 1 vote, whereas on the EMLG mainnet, 1 EOS token can be used to vote for up to 30 block producers. This can solve governance issues including BP cartel formation.
- On the EOSForce mainnet, users get compensated with BP reward dividend for voting for BPs, whereas users do receive no direct incentives for voting. This can solve the governance issues including lack of voter participation and BP power monopoly.
EOSForce Mainnet Voting Dividend Mechanism
Super Nodes produce EOS COIN (EOSC) on the EOSForce mainnet by the follow rules:
- Super Node produces 1 block every 3 seconds. Every block has a reward of 9 EOSC tokens.
- Super Nodes produce blocks in rotation.
The number of Super Nodes for each election is 23. Due to block production rotation, Super Nodes receive rewards in rotation. The number of EOSC tokens each Super Node receives is therefore:
(9*(60/3)*60*24)/23 = 11,269 EOSC
One portion of the Super Node reward goes to the node itself and the rest of the reward goes back to the voter community that voted for this node.
The amount of the EOSC given back to the voter community is called Bonus rate, so the daily dividend a voter community receives in total is:
11269 * bonus rate
The actual amount the BP receives itself is:
11269 * (1-bonus rate)
The higher the bonus rate a BP gives, the more dividends the voters receive. It is therefore a big attraction for token holders to vote for the node that offers the highest bonus rate.
However, for individual token holders, bonus percentage/annual rate is the main driver behind voter decision-making. The higher the annual rate, the more dividend a voter receives. The formula for calculating the rate is as followed:
annual rate =
(11269 * bonus rate) / the total number of votes the BP receives * 365
As you can see from the formula, annual rate is proportionate to bonus rate and negatively proportionate to the vote a BP receives, meaning that the the higher the bonus rate and the fewer the votes, the higher the bonus percentage.
This result has significant implications in creating a fairer BP election environment, because given the same bonus rate, the bottom-ranked BPs will have a higher bonus percentage due to their fewer votes received than the top-ranked BPs. So users are actually incentivized to vote for the lower-ranked BPs.
Voting Dividend Rewards
Bonus rate of a BP can most directly reflect the specific number of the dividend rewards. However, with fewer votes a BP receives, even though the bonus rate might be lower than its counterparts, the annual rate could rather be much higher.
The above BP ranking results (snapshot in July) show that the №3 BP gives a bonus rate of 70%, yet since its votes are fewer than №1 BP, its annual rate is higher.
Similarly, the bottom-ranked BPs’ annual rate easily exceed that of the top-ranked BPs. However, it is to be noted that once the bottom-ranked BP gets replaced by newly elected, the dividend rewards will stop with the block reward.
Except for the bonus rate, vote age and Super Node’s reward pool affect voting reward as well. Vote age is the time between the vote cast and the dividend reward distribution. When the reward is claimed by the voter, the vote age will be reset.
vote age = current time-vote cast time
Accumulated vote ages is regarded as the combined vote age accumulation from all the votes a voter has cast to the BPs.
Case Example
Assume that we set 1 as a vote is cast for a BP for 1 second in runtime, the nwe can get for User A for voting 10 votes for BP A and keeping the votes for 20 seconds, the accumulated vote age would be:
30 * 20 = 600
Then User A votes for BP A a second time 40 votes, after 30 seconds the accumulated vote age would be:
30 * (20+30) + 40 * 30 = 2700
The formula for calculating the accumulated vote age can be summarized as followed:
Voter total accumulated vote age = vote1 * (current time-vote cast time1) + vote2 * (current time-vote cast time2) + … + voten * (currrent time-vote cast timen)
When we claim our voting reward, the vote cast time will be reset to the current time and hence the total accumulated vote age will be reset to 0.
One thing to note here is that the voting reward is not distributed every time a new block gets produced, and it’s calculated based on 3 variables — accumulated vote age, BP accumulated vote age, and reward pool.
The voting reward a voter is able to receive is as followed:
(voter accumulated vote age/BP accumulated vote age) * reward pool
BP accumulated vote age is the vote ages of all the votes whose voting reward has not been claimed by the voter. Reward pool is the total number of EOSC tokens that have not been claimed by the voters.
After the voting reward claim, the voter’s accumulated vote age is reset to 0. BP accumulated vote age and reward pool will reduce accordingly.
So now let’s take a look at the effects each variable has on the voting reward dividend. The following data are extracted from the EOSForce mainnet in real time, and the vote age unit is set to 1 minute:
We can then get the following chart:
Question can be raised that whether a whale EOSC token holder claiming reward will negatively affect the reward dividend an average holder would receive. The answer is no. Let’s say that a whale token holder has an accumulated vote age of 100,000,000. Based on calculation, this whale holder would receive 678.241 EOSC tokens, and the reward we would receive would be:
(8640 / (908602835–100000000)) * (6162.5146–678.241) = 0.0586
Our reward dividend remains the same.
However, if a whale token holder votes for this BP 100,000,000 votes and holds them for 5 minutes, then our reward dividend would be:
(8640 + 3*5) / (9086028335+500000000) * (6162.5146 + 60/3*9) = 0.03897
Our reward dividend decreases this time.
It can therefore be deduced that when a whale holder votes for a BP, the reward dividend of an average voter decreases, at which time, the average voters can then opt out for other BPs to prevent a case of gaming votes.
- please refer tohttps://explorer.eosforce.io/#/en for the official vote age unit
In some cases, BPs will be replaced by newly elected candidates or BPs reduce the bonus rate. Here we can choose to retrieve the EOSC tokens, based on the following loss compensation calculation:
compensation retrieved = (annual rate / 365) * 3
So when do we decide to change our votes to new BPs?
Set the annual rate of the current BP as x1, the targeted BP annual rate as x2, the investment time in that new BP as y, and the number of retrieved EOSC tokens as n. Then it is when the following condition is met, we can change our votes and earn a higher voting reward:
n * x2 / 365 * y > n * x1 * (3+y) / 365 + 0.05(voting fee) * 3
Let’s take the example of №1 BP biosbpj and №19 BP eospaper:
When the number of voted token is larger than 10 EOSC and the expected invested time is larger than 10 days, given a unchaged reward, the reward dividend of changing votes to the new BP would be larger than not changing.
These are just some of the new governance dynamics created by the 1-token-1-vote and voting dividend mechanism on the EOSForce mainnet. Discover more yourself!
EOSForce mainnet token EOS COIN (referred to as EOSC) is currently on the following exchanges:
Thinkbit Pro: https://thinkbit.com
BitForex: https://bitforex.com
BTB.com: https://btb.com
Coinmex: https://coinmex.com
IDCM: https://idcm.io
Decentralized exchange
AWAKE Exchange : https://www.pgyer.com/awake
AWAKE Exchange Order Details:http://dex.eosawake.io/block
Browser
https://eosgod.one
https://explorer.eosforce.io
Wallet download
Official local wallet: https://github.com/eosforce/wallet-desktop/releases
Medishares wallet: http://www.medishares.org/wallet/
EOSForce media platform
Official website: eosforce.io
Forum: https://bbs.eosforce.io
Official Telegram group: https://t.me/eosforce_en
Weibo: https://weibo.com/eostio
Twitter: https://twitter.com/eosforce
GitHub: https://github.com/eosforce
Reddit: https://www.reddit.com/user/EOSForce
Steemit: https://steemit.com/@eosforce
Medium:https://medium.com/@eosforce.io