tronprotocol / tips

TRON Improvement Proposals
238 stars 210 forks source link

TRC53:Optimize the current TRON delegation mechanism #53

Closed lvs007 closed 5 years ago

lvs007 commented 5 years ago
tip: 53
title: TRC53: Optimize the current TRON delegation mechanism
author: lvs007 <zy.liang.5@163.com>
discussions to: https://github.com/tronprotocol/TIPs/issues/53
category: TRC
status: final
created: 2019-07-31

Simple Summary

This doc describes a solution to optimize the current TRON delegation mechanism

Abstract

At present, the TRON's delegation mechanism is that the user votes for the node. If the node is elected sr, then each block will reward sr with 32 TRX, and the top 100 votes will receive additional rewards; if the node does not give the user dividends, then users can not get rewards, it can not improve the enthusiasm of users to vote, resulting in a lower mortgage rate on the whole network.

Current Situation

The current setting for block production rewards is 32 TRX per block. The block production cycle is 3 seconds. For every six hours, there will be two production cycles counting the votes without packing the blocks. Thus, the number of blocks packed by TRON blockchain is 86400 / 3 - 2 4 = 28792. Thus, the daily rewards for block production are 32TRX/block 28792 block = 921344 TRX. The voting rewards are 16 TRX per block. So the daily voting rewards stands at 16TRX/block * 28800 block = 460800 TRX.

Such incentive mechanism encourages nodes to participate in the election of supernodes. By being a part of the production process and benefiting from it, the nodes have a stake in the game and keep the network runs smoothly. Those who didn't get elected would also receive voting rewards depending on the number of votes they got. The combination of production rewards and voting rewards takes all parties in the network into consideration and provides an enabling environment for nodes to contribute to the TRON network.

Let's look deeper into the on-chain data and the operation of TRON blockchain. Currently, the volume of votes in the network is around 8.2 billion, taking up only less than 10% of the total number of votes. The reasons for such low participation, judging by the current operating parameters, is the low return rate. The daily voting rewards for each vote is 60672TRX / 8200000000 votes /day = 5.7584e-05 TRX/vote/day; the average annual return is 5.7584e-05 365 = 2.1%. Due to the unimpressive return rate, nodes that have TRX are not motivated to participate in the voting process. From the perspective of block production rewards, the first 27 supernodes receive a total number of 7.5 billion votes. With the same formula, the daily block production rewards are 921344TRX / 7500000000 votes / day = 1.2284e-04 TRX/vote/day, which means the annual rewards rate is about 1.2284e-04365 = 4.4%. The comparison shows that block production rewards are higher than voting rewards.

The other problem is that the first and the twenty-seventh nodes produce the same amount of blocks in one day. But the first supernode has a total of 520 million votes and an annual production rewards rate of 2.4%, the twenty-seventh supernode has 180 million votes and 6.9% production rewards rate. This data shows that the node with more votes is rewarded even less than those who have fewer votes, which creates an unfair situation.

Therefore, the incumbent incentive mechanism has the following three issues:

  1. High threshold for participating in the election Judging by the on-chain data, the 27th and the 28th candidate are 50 million votes apart. That's over 40% of the total votes of the 28th candidate. Because voting rewards is only half as much as the production rewards, the profit gained by the 28th candidate is significantly lower than that of the 27th candidate, which causes drastic competition for the slot of the 27th candidate. In order to keep its slot, the node that is elected as the 27th will try to safeguard its position and widen the gap between the 28th and itself.

  2. Rewards distribution are not fully decentralized. The current mechanism is to have both production rewards and voting rewards directly distributed to the nodes. This method can only achieve a certain level of decentralization instead of making the system fully decentralized, for the rewards cannot get to the individual voters. After the nodes obtain the rewards, they will distribute them to the voters. However, this process itself is centralized and out of the scope of blockchain management.

  3. On-chain governance and incentive mechanism not separated Under current mechanism, production reward is far higher than the voting reward. Those who are not able to take part in the on-chain governance have lost the interest and the will to contribute to the community, which in a way severs the connection between the government body and the entire community. In the long run, that will make TRON blockchain become a somewhat centralized ecosystem, dampening its long-term growth. Once a supernode is down, it will be hard to fill its place right away, undermining the efficiency of the network.

Motivation

Improve the mortgage rate of the entire network TRX, while increasing the user's income more fairly

Specification

Two types of rewards: block reward and voting reward. Block reward: the SR will get 16 TRX for each block it has generated. Voting reward: for each block, the most-voted 127 SRs will receive TRX in proportion to the votes they get. Each block will reward 160 TRX in total, and each SR will get (SR’s votes/ total votes) * 160 TRX. The rewarded TRX will not be added to the “allowance” field of the SR immediately. Users (including SRs) will have to withdraw TRX by themselves so that the rewards will show up on their account balance. Meanwhile, SRs can take a percentage of commission from the dividends distributed to the users. For the commission, SRs can specify a value from 0 to 100. 0 means that no TRX will be extracted from users’ dividends, while 100 means that all dividends will be taken by the SRs. Also, SRs can modify the percentage and the new percentage will take effect from the next maintenance period.

Algorithm

Dividends SRs:

The starting cycle(current cycle) defaults to 0, and each time the maintenance period is changed, it is automatically incremented by 1 (that is, the current cycle is incremented by 1 for each maintenance period). After the user votes, the node is rewarded from the next maintenance period, the reward period is a maintenance period, the reward is recalculated in the next maintenance period, the reward period is also a maintenance period, and so on. Each block will give the generating block node and other sr dividends, give the generating block node 16TRX reward, and give the reward of the top 127 nodes 160TRX (according to the proportion of votes), one record per maintenance period for each node The format is: <key, value>, key:cycle + "-" + address + "-reward"; value: the number of TRX rewarded. In this way, the overall delegation mechanism dividend will be changed into a dividend for each block, which includes the 16TRX reward to the current generate block sr and 127 candidate sr nodes dividend 160TRX (the current generate block sr can get two dividends; other Candidate sr gets a bonus)

Dividends to users:

How to distribute dividends to users adopts active trigger mechanism: it is divided into three parts when the user re-votes when the user unfreezes when the user withdraws the reward Calculation Rules: Whether there is the last period (begin and end both exist and begin+1=end), if there is a need to calculate the dividends of this part, and calculate the current dividend from begin+1; if not, then from begin calculating the current dividends (this time you need to determine whether the current user's voting information is empty, if the empty setting is set begin=current+1, and return) And re-recording the start cycle(begin) of the vote, and the end cycle: end=begin+1, and the current user vote information

New block reword distribution plan:

The current block distribution plan is 32 TRX reword to SR who produce the block and 16 TRX reword equally distributed to SRs and stand-by SRs according to the voting number. To encourage SRs to have more voters, we will change the 32 TRX(reword to block producer) to 16TRX and 16TRX (reword to all SRs according to the voting number) to 160 TRX.

Advantages:

  1. A decentralized dividend distribution mechanism featuring fairness that encourages greater user participation. Moving the distribution process on the chain and keeping the record on the blockchain makes the rewards distribution completely decentralized and trackable.

  2. Greater voter turnout and higher delegation rate, which vitalizes the community and strengthens the economic system across the network

  3. Fewer unnecessary dividend distribution transactions, leading to less bandwidth consumption and thus a more robust network

  4. The foundation for more complex consensus and incentive plans, signaling more possibilities and convenience for future development

Future goals:

A Brand New Consensus Mechanism

A new hybrid consensus mechanism has been running smoothly on TRON for 15 months. The stability of the DPOS consensus mechanism plays a significant part in this success, but we should also notice there is room for the DPOS mechanism to improve - for example, shorter block confirmation time and SPV support.

Therefore, we plan on developing a new hybrid consensus mechanism based on DPOS+PBFT, under which the new automatic dividend distribution system will help to realize a new set of complex token dividend distribution rules.

The new hybrid consensus mechanism will help to expand the scalability of the TRON ecosystem, unify cross-chain protocols and improve DApp usability.

Punishment Mechanism

TRON’s sound progress is closely related to the stable and efficient block generation of our excellent SR nodes. That being said, we have also noticed a relatively high block missing rate and low packaging rate in some nodes due to undesirable equipment and network performance.

These nodes are slowing down the overall network speed, which can be harmful to the network and unfair to other SRs. To address this problem, we plan to introduce the automatic dividend distribution mechanism. By punishing unreliable and malicious nodes more directly, efficiently and accurately, the mechanism will be of great use in improving the performance of the whole network.

Proposal Prize Pool

As of today, 26 proposals have been initiated in the TRON network, each contributing to the development of the network. Nevertheless, we believe that the proposals can help us achieve autonomy in the community to a greater extent.

In order to encourage more community members to take part in the proposals, we plan to add a “prize pool” with an automatic dividend distribution scheme to the existing proposal mechanism. The prize pool will be created by each proposal initiator. SRs who actively participate in voting will receive incentives directly.

Moving on, we will also innovate and modify the way we organize proposals, e.g. participant eligibility, initiator eligibility, participant number, etc., so as to improve community activity and lower the cost for an efficient community autonomy.

Giving Back To The Community

The new delegation mechanism and staking rewards distribution mechanism will be an important milestone in the evolution of our TRON protocol. Fair and transparent reward distribution mechanism will attract a wide range of nodes to participate in the TRON Blockchain network governance. At the same time, excluding the dividend payout transactions, the operation of the TRON Blockchain network will be more efficient.

In order to express our gratitude to all SRs for their outstanding contributions to TRON networks over the past year, TRON Foundation proposes a 50 million TRX distribution:

The detail of the distribution rule is: SR(i) Reward = 50 millions * M(i) / N M(i) = The amount of blocks SR(i) has produced till Oct 15, 2019 N = The number of blocks all the SRs (exclude the GRs) have produced till Oct 15, 2019

For example, one SR produce 100,000 blocks in this period and the total amount of blocks all SR produced is 20,000,000, then this SR can receive 50 million * 100,000 / 2,000,000 = 2.5 million TRX.

The proposal will be created on about Oct 15, 2019. Only after the proposal is approved, so can the 50 million TRX distribution be executed.

unifi-protocol commented 5 years ago

To clarify,

The proposal for the "Dividends to SR's" is effectively unchanged, simply changing the naming from cycle to maintenance period and rewarding per period instead of every 6 hours.

Dividends to users is simply a distribution system and does not impact the way in which nodes generate rewards is this correct?

I can see the benefit in a standardized method of identifying when a reward period happens.

lvs007 commented 5 years ago

@sesameseed-org Dividends to users is simply a distribution system and does not impact the way in which nodes generate rewards is this correct? yes

lvs007 commented 5 years ago

At the same time, each user needs to pay a certain percentage of commission to sr. SR can set the commission rate

olenheim commented 5 years ago

Actually the key of this proposal is the commission mechanism.

As far as I know most of SR nodes have been using a paid vote mechanism to increase votes by running a dividend script or other sth. We intend to add this feature to our consensus directly. All the income of SRs will be distributed equally to ecah voter based on their votes. SR could only get the commission income.

Also every SR can adjust the commission rate. If you want to keep the status quo. the only thing you need to do is to set a 100 percent commission rate.

zhaohong commented 5 years ago

New block reword distribution plan:

The current block distribution plan is 32 TRX reword to SR who produce the block and 16 TRX reword equally distributed to SRs and stand-by SRs according to the voting number. To encourage SRs to have more voters, we plan to change the 32 TRX(reword to block producer) to 16TRX and 16TRX (reword to all srs according to the voting number) to 48 TRX.

unifi-protocol commented 5 years ago

The Proposal involvement program requires a user to Vote "yes" only as a "no" vote is currently non participating. The prize pool may not incentivize participation, rather incentivizing "Yes" votes on proposals, which are not always good for the network.

I feel a good reward mechanism would go to those building communities.

Activity in social media, development in the sr system, and diversity of voters (understanding this last metric cannot be tracked in a fair way unfortunately as it could be easily gamed).

Many SR's have less than 1000 voters today, with 11 having many thousands each. Many SR's do not provide community incentivization rewards, perhaps this prize pool should go to a metric that tracks community involvement or voter diversity?

fbsobreira commented 5 years ago

@zhaohong just to clarify the proposal:

  1. SR will get 16 rewards per block
  2. Wallet voting for a top 127 SR will get in the dividend pool of total votes which is made by 48TRX per block
  3. The delegation commission mechanisms will just be over VOTES REWARDS and NOT block rewards
  4. SR can take commission on votes rewards only if they decided to, and this must to be set in SR account
  5. All rewards will be set as allowance, not direct deposited in wallet
fbsobreira commented 5 years ago

@lvs007 will be good to have a better understanding of Punishment Mechanism. Do you have any ideas on this? I totally agree something should be done in this matter, maybe we could divide this into 2 threads...

zhaohong commented 5 years ago

@zhaohong just to clarify the proposal:

  1. SR will get 16 rewards per block
  2. Wallet voting for a top 127 SR will get in the dividend pool of total votes which is made by 48TRX per block
  3. The delegation commission mechanisms will just be over VOTES REWARDS and NOT block rewards
  4. SR can take commission on votes rewards only if they decided to, and this must to be set in SR account
  5. All rewards will be set as allowance, not direct deposited in wallet
  1. Wallet voting for a top 127 SR will get in the dividend pool of total votes which is made by 160TRX per block
  2. BOTH
shydesky commented 5 years ago

Voting rewards increase ten times more than before. It will attract more and more nodes participating in the TRON Network and voting.

bondibox commented 5 years ago

It's important to consider the details of the implementation. Right now the SR allowance is only seen as an availableBalance of accrued and unclaimed earnings - no breakdown of where the earnings came from. If the allowance mechanism is used to automatically distribute rewards to voters, it needs to be modified so that the transfer is seen on-chain.

bondibox commented 5 years ago

To encourage SRs to have more voters, we plan to change the 32 TRX(reword to block producer) to 16TRX and 16TRX (reword to all srs according to the voting number) to 48 TRX.

OK I get it. Increase vote rewards, increase participation, grow TRON ecosystem. But even if the SR was allowed to keep 100% of the block production rewards, at today's prices this is a shoestring budget for running an SR organization. Isn't an SR supposed to be able to fund development projects and community startups? In this scenario being an SR is good for little more than bragging rights and perhaps the ability to slough off your own token onto the voters. I worry that if the ultimate goal is to grow the TRON ecosystem whether this course of action isn't counterproductive in the long run.

fbsobreira commented 5 years ago

As discussed in Telegram, my option is that we should divide rewards in block and votes:

Block rewards is meant to be used for infra and technical aspects, so only SRs should get this, as they produce the block. No participation for voters.

I'm OK with vote rewards be sent directly to voters, and if SR states he is taking some commission to grow community, so be it.

fbsobreira commented 5 years ago

First draft had a number of 48TRX per block to voters pool. Now this number is settle to 160TRX. This is a huge increase, and will produce a big market inflation.

At 160TRX per block and at current total votes, the voter will get ~1.7% per month. If we going to change the rewards structure, we should start at the 48TRX, which is closer of what we now. Once the new mechanism is working, we could think of increase the rewards

shydesky commented 5 years ago

rewards

To encourage SRs to have more voters, we plan to change the 32 TRX(reword to block producer) to 16TRX and 16TRX (reword to all srs according to the voting number) to 48 TRX.

OK I get it. Increase vote rewards, increase participation, grow TRON ecosystem. But even if the SR was allowed to keep 100% of the block production rewards, at today's prices this is a shoestring budget for running an SR organization. Isn't an SR supposed to be able to fund development projects and community startups? In this scenario being an SR is good for little more than bragging rights and perhaps the ability to slough off your own token onto the voters. I worry that if the ultimate goal is to grow the TRON ecosystem whether this course of action isn't counterproductive in the long run.

Both SR and voters are important role in Tron BlockChain. Voters should trust the SR they vote to and get the corresponding staking profit. The dividend can not be distributed in a decentralized way right now. That is, we can ensure every voter has received the corresponding staking profit. So, the delegation rate is very low (just almost 8 percentages) in our network. Every SR can set their commission rate and it can be accessed on the BlockChain. I think the delegation rate will increase high after the new mechanism implemented and it will promote to grow TRON ecosystem. Btw, the vote rewarding is changed to 160 TRX, not the 48TRX.

shydesky commented 5 years ago

First draft had a number of 48TRX per block to voters pool. Now this number is settle to 160TRX. This is a huge increase, and will produce a big market inflation.

At 160TRX per block and at current total votes, the voter will get ~1.7% per month. If we going to change the rewards structure, we should start at the 48TRX, which is closer of what we now. Once the new mechanism is working, we could think of increase the rewards

The parameter can be adjusted and we can decrease to any reasonable value with proposals, but now attract more voters giving votes to their trusted SR is important I think.

ibnzUK commented 5 years ago

I want to share some calculations where I compared proposed mechanism to the current one. As an example to compare results, I use random SR - TRONLink (current rank 6) , and non elected SR Candidate TeamTronics (current rank 35)

image

SR TRONLink 338,768,997 votes (4.09%) SR Candidate TeamTronics 8,339,212 Votes (0.10%) br - block reward, vr - vote rewards

Current system Block rewards per day: 32 (TRX/block) x 20 (blocks/min) x 60 (min/hour) x 24 (hours/day) = 921,600 (TRX/Day) Vote reward per day: 16 (TRX/block) x 20 (blocks/min) x 60 (min/hour) x 6 (hours/election) x 4 (elections/day) = 460,800 (TRX/day)

Example 1

TRONLink SR has 338,768,997 votes, that is (4.09%) of all votes
vr: 460,800 x 4.09% = 18,847 TRX
br: 921,600 / 27 = 34,133 TRX
TOTAL PER DAY: 52,980 TRX

Example 2

TeamTronics has 8,339,212 Votes, that is (0.10%) of all votes
vr: 460,800 x 0.10% = 460 TRX
br: 0 TRX (not SR)
TOTAL PER DAY: 460 TRX

Proposed new system

Block rewards per day: 16 (TRX/block) x 20 (blocks/min) x 60 (min/hour) x 24 (hours/day) = 460,800 (TRX/Day) Vote reward per day: 160 (TRX/block) x 20 (blocks/min) x 60 (min/hour) x 6 (hours/election) x 4 (elections/day) = 4,608,000 (TRX/day)

Example 1

TRONLink SR has 338,768,997 votes, that is (4.09%) of all votes
vr: 4,608,000 x 4.09% = 188,467 TRX
br: 460,800 / 27 = 17,067 TRX
TOTAL PER DAY: 205,534 TRX

Example 2

TeamTronics has 8,339,212 Votes, that is (0.10%) of all votes
vr: 4,608,000 x 0.10% = 4,608 TRX
br: 0 TRX (not SR)
TOTAL PER DAY: 4,608 TRX

Verdict.

It is clear that all current SR’s and SR Candidates will benefit hugely from this new proposal.

The decision remains with the SR team if they wish to continue rewarding for votes to maintain their seat or if they wish to invest these increased rewards back into network infrastructure, projects in need of funding on the Tron network or engaging in community events and activities. While it benefits SR’s we as a community should welcome this change and encourage the SR’s to show how they plan to use their increased rewards.

fbsobreira commented 5 years ago

First draft had a number of 48TRX per block to voters pool. Now this number is settle to 160TRX. This is a huge increase, and will produce a big market inflation. At 160TRX per block and at current total votes, the voter will get ~1.7% per month. If we going to change the rewards structure, we should start at the 48TRX, which is closer of what we now. Once the new mechanism is working, we could think of increase the rewards

The parameter can be adjusted and we can decrease to any reasonable value with proposals, but now attract more voters giving votes to their trusted SR is important I think.

Problem is: its a new mechanism. We don't know if SRs will use the rewards or keep all TRX and distribute manually. Meaning that the increase of 10x in rewards could possible go directly the SRs not voters as the proposal wishes. As you said, we can set parameter as going.... so why start with 160TRX??? Lets start with what we have, or a little more. Confirm the new mechanism works, that SRs have actually set rewards to voters, and community is happy with it, ...then we can think of increase.

vniche commented 5 years ago

First draft had a number of 48TRX per block to voters pool. Now this number is settle to 160TRX. This is a huge increase, and will produce a big market inflation.

Also not in favour of such increase, imo first we should wait for the community to grow and ensure the initiative does the job, and only after that start changing this value.

shydesky commented 5 years ago

First draft had a number of 48TRX per block to voters pool. Now this number is settle to 160TRX. This is a huge increase, and will produce a big market inflation. At 160TRX per block and at current total votes, the voter will get ~1.7% per month. If we going to change the rewards structure, we should start at the 48TRX, which is closer of what we now. Once the new mechanism is working, we could think of increase the rewards

The parameter can be adjusted and we can decrease to any reasonable value with proposals, but now attract more voters giving votes to their trusted SR is important I think.

Problem is: its a new mechanism. We don't know if SRs will use the rewards or keep all TRX and distribute manually. Meaning that the increase of 10x in rewards could possible go directly the SRs not voters as the proposal wishes. As you said, we can set parameter as going.... so why start with 160TRX??? Lets start with what we have, or a little more. Confirm the new mechanism works, that SRs have actually set rewards to voters, and community is happy with it, ...then we can think of increase.

160 TRX is just a parameter, we can change it by the proposal if it is not reasonable. But we really want to contribute to the growth of the community and increase the rewards of SRs by making the new mechanism. This is maybe radical but we can not determine the 160 is not a reasonable value,unless we get some real data for analyzing after the new mechanism available.

zhaohong commented 5 years ago

If we going to change the rewards structure, we should start at the 48TRX, which is closer of what we now. Once the new mechanism is working, we could think of increase the rewards

Slight inflation is good for the economic system. If 160trx, the annual inflation rate is 1.8%, If it is the original 16trx, the inflation rate is about 0.5%. Considering that the trade will burn a lot of TRX, TRON ​ has almost no inflation. Compared to other systems, TRON's inflation rate is at a very low level. But increasing to 160TRX will bring great benefits to all sr and voters.

bondibox commented 5 years ago

The current system for rewards distribution to Super Representatives uses an allowance withdrawal mechanism. This allowance api offers no more information than current accrued balance and last withdrawal time. If this SR allowance mechanism is to be modified to split the allowance among the voters it is essential that it be able to provide information to voters as to how much was received from each voted SR.

PLEASE whatever route you take make it so that there is a viewable daily record of each voter's rewards breakdown. Knowing this information is essential to the voter rewards system.

We polled our Twitter community and with 60 votes it was evenly split between those who wanted the automatic vote rewards, and those who thought it was more important to have an accounting of how much was received and from which SR's those funds came from.

Also, the community should be made aware that this system might come with a restriction which limits allowance withdrawals to once every 24 hours. Would they find that overly restrictive?

shydesky commented 5 years ago

PLEASE whatever route you take make it so that there is a viewable daily record of each voter's rewards breakdown. Knowing this information is essential to the voter rewards system.

Thanks for your suggestions. We do not record every voter's daily rewards on the blockchain directly. It implements this by showing every SR commission rate and the total number of votes of SR , which let the voter know his voter reward indirectly. If one SR set the commission rate value 70%, it means that 30% of the votes reward is distributed to their voters. And every vote corresponds "30 % 7200 160 / total votes" reward every 6 hours, the "7200" is the count of blocks every 6 hours, and the "160" is the votes reward of one block. So every voter can calculate the reward if he knows the SR commission rate and the total votes of one SR. And these two data is opened up for everyone.

And we can promise the correctness of distributing rewards by the allowance mechanism. There are four periods in one day and the number of votes of SR is fixed in every period. So one vote reward can be calculated by " the whole votes rewards / the total number of votes". We record the allowance for every period, so it will not mix the votes reward of different periods even though the allowance is not withdrawal every 24 hours.

bondibox commented 5 years ago

Right now one problem we have are unscrupulous voters moving their votes during the maintenance cycle period in hopes of being rewarded by 2 different SR's. In fact, due to the pagination limitations of Tronscan, if they rapidly reduce their votes while the SR is fetching the vote tally they can be included several times in that SR's airdrop. So I know the benefits of this system are strong.

But what worries me are unscrupulous SR's who promise 100% rewards and then a minute before the maintenance cycle closes they change it to 50%, and a minute later they change it back. Unless you were watching at that exact moment you would never know. Voters will check their allowance and do the math and add up that someone didn't give what they said they were going to give but after that the forensic trail goes cold We have already had one SR who was so unscrupulous and we are bound to have more.

lvs007 commented 5 years ago

Right now one problem we have are unscrupulous voters moving their votes during the maintenance cycle period in hopes of being rewarded by 2 different SR's. In fact, due to the pagination limitations of Tronscan, if they rapidly reduce their votes while the SR is fetching the vote tally they can be included several times in that SR's airdrop. So I know the benefits of this system are strong.

But what worries me are unscrupulous SR's who promise 100% rewards and then a minute before the maintenance cycle closes they change it to 50%, and a minute later they change it back. Unless you were watching at that exact moment you would never know. Voters will check their allowance and do the math and add up that someone didn't give what they said they were going to give but after that the forensic trail goes cold We have already had one SR who was so unscrupulous and we are bound to have more.

Yes,But if SR modifies its commission ratio without telling the user, then they will lose their integrity and the user will not vote for them. Of course, how long to modify it, this can be discussed

bondibox commented 5 years ago

Yes OK that would be one solution, Limit Frequency of Modification to Commission Ratio, once every 24 hours.

tronvoter commented 5 years ago

Hello, I am a Tron Voter. I would just like to add that there does not seem to be anyone voicing the concerns or wishes of the voters. Tron only succeeds if people, many people see the value in choosing to use and invest in Tron. I believe this conversation represents SRs and large players, so I just wanted to add my two cents as someone who became curious about Tron several months ago and is now participating and voting and holding Tron. My points would be:

Those are my thoughts as a voter and just thought I would voice them. Thank you.

bondibox commented 5 years ago

@Tronvoter the only opnion you have expressed is that your opinion is not being sought. What exactly are you proposing?

tronvoter commented 5 years ago

@bondibox - My proposal would be that:

Example: A minimum set percentage of rewards would go to voters. A minimum set percentage would go to SRs and partners The adjustable commission for SRs would be adjust as they see fit, but would not exclude the voters of some set minimum share.

Under the above scenario all types of users of the Tron network are thought of and included. Thank you

lvs007 commented 5 years ago

@bondibox - My proposal would be that:

  • Voters should always receive something in any scenario.

Example: A minimum set percentage of rewards would go to voters. A minimum set percentage would go to SRs and partners The adjustable commission for SRs would be adjusted as they see fit, but would not exclude the voters of some set minimum share.

Under the above scenario all types of users of the Tron network are thought of and included. Thank you

Thank you for your reply.

The mission of the SR is to make sure the healthy development of TRON ecology. To attract more people to participate in community governance and construction, SR should set an example and give more feedback to the community. As a result, they have no guaranteed income.

Only SR delegate a certain number of TRX to show their recognition of TRON value, can they win the trust of users. Furthermore, the penalty mechanism we subsequently joined was also designed to better protect the revenue of voting users. Although the SR does not have a delegation, the penalty will have little impact on it with a small risk of having prevailed, finally sacrifice the voters.

cryptoguyinza commented 5 years ago

In the last 24 hours we have seen Binance join as a new Tron SR.

This is great as a large percentage of TRX is being frozen, the addition of Binance is welcomed.

However due to the size of the stake it has had some negative impacts

1.) Amount of bandwidth has decreased and cost per sun has increased image

2.) This proposal suggests increasing vote reward from 16 trx to 160 trx. Then decreasing the block reward from 32 trx to 16 trx. Due to the size of the vote of an exchange the vote absorbs more than 50% of the vote reward. Below you can see the impact of the 12 billion vote in comparison to before.

image

Due to the difference, increasing vote reward and decreasing block rewards will move the focus more on rewards to enhance an exchange while less focus on the node and sustaining the tron network performance and security. This can also make more voters move off of Tron into exchanges which may cause more centralization.

Summary We need to going forward ensure a good balance between vote and block rewards so that exchanges can join and reward holders on the exchange, but at the same time while voters that vote directly on the network get rewarded slightly more to encourage more on chain transactions. so the ecosystem can grow.

Thanks

unifi-protocol commented 5 years ago

Staking is a fundamental utility of Tron like it is for many other blockchains, providing 3 core functions to the chain.

  1. It rewards nodes for operation of the network (often extended to the participating community).
  2. It lowers the circulating supply of the token on exchanges (as it is staked on the network)
  3. It encourages the community to interact with developers, the blockchain and ecosystem.

Every token holder can exercise a degree of influence about what happens on the network by utilizing these 3 functions.

Of these 3 functions, encouraging community interaction is the most critical to a blockchains ability to develop.

An active community utilizing blockchain resources is fundamentally what makes a rich DPOS system effective. Though large entities provide stability, institutions may discourage community engagement with the blockchain by interfering with the action of direct participation itself. An individual must take actions take to stake (creating a wallet, interacting with others, exploring the ecosystem) these well worn paths by the community become the underlying foundation of the blockchain itself.

Fewer users interacting with the chain because institutions provide easier means may reduce individual usage. As such, the ability for developers / dapp’s to be used and community building can be effected, ultimately impacting the value of the token, and the reason to stake in the first place. Less individual staking erodes the ability of communities to form.

Tron today is its community, this fact needs to highlighted in the proposed reward model.

I suggest a model that would reward those that participate as an individual significantly more than if they were to participate through a medium (institution) as this will encourage community forming, dapp usage and overall encourage growth of the chain.

This model should include a more significant Block reward in relation to candidate reward than originally proposed.

An example follows:

  1. Block Rewards to 64trx per block.

  2. Candidate rewards: a. I propose a diminishing reward curve that still increases the reward as percentage climbs so as not to encourage the creation of multiple SR's while incentivizing those that are within the top 127, while increasing voter diversity. b. Candidate rewards to 160 trx per block

Screen Shot 2019-09-30 at 8 02 37 PM

  1. A community engagement plan in which funds are specifically reserved to encourage community participation and voting (less of an optimization mechanism than a general fund that should be created to directly support communities and the messaging around voting, decentralized governance, etc. As much funding should be put into supporting community growth as in to attracting stable institutional SR's). a. I would also encourage Tron Foundation themselves to participate in SR voting in a more public way, in which they vote for communities and encourage the advancement of teams that share the vision of a more decentralized ecosystem.

Thank you,

Juliun

OgreAbroad2 commented 5 years ago

Very well articulated, well done!

While it is important to attract institutional money to the network, I agree that it is equally important, if not moreso that communities feel that their voices can be heard.

It is vital that the top SR spots not only rely upon block rewards, but have a business model which will allow them to become successful businesses which are running an SR.

I feel that SesameSeed is one of the few who are doing that correctly, and should be used as a model for the Tron Foundation to encourage the growth of SRs internally. If we allow the top SR positions to be taken over by existing businesses, we risk turning over the management and future of our Network to the type of thinking which is threatening financial systems across the globe.

If the network users who are staking their Tron independently take a back seat to institutions, the DPOS model fails.

shydesky commented 5 years ago

forward ensure a good balance between vote and block rewards so that exchanges can join and reward holders on the exchange, but at the same time while voters that vote directly on the network get rewarded slightly more to encourage more on chain transactions. so the ecosystem can grow.

thanks for your analysis! The Binance node with 12 billion votes is amazing, it may cause more centralization when the exchanges take the majority of votes. We should regard these situations as an important problem. From the new mechanism, we should realize that voter rewards are fixed. The reward of one vote is the same between the SRs with different votes. But the block rewards is different between the two SRs with different votes. The fewer votes' SR will get more block rewards actually when calculated one vote, so, I think this may be an advantage to the small SR, it may attract more nodes if they set a low commission rate.

shydesky commented 5 years ago

Very well articulated, well done!

While it is important to attract institutional money to the network, I agree that it is equally important, if not moreso that communities feel that their voices can be heard.

It is vital that the top SR spots not only rely upon block rewards, but have a business model which will allow them to become successful businesses which are running an SR.

I feel that SesameSeed is one of the few who are doing that correctly, and should be used as a model for the Tron Foundation to encourage the growth of SRs internally. If we allow the top SR positions to be taken over by existing businesses, we risk turning over the management and future of our Network to the type of thinking which is threatening financial systems across the globe.

If the network users who are staking their Tron independently take a back seat to institutions, the DPOS model fails.

yes, the SesameSeed is a very successful SR who finds a perfect business model, they attract a lot of voters. We are open to any individual and any institutions that are willing to devote to the Tron network. Exchanges are important role in our ecosystem and should be welcome if they can make more users participate in the network. And we should let some wallet users easily to use the Tron blockchain and get corresponding vote rewards.

tronicvote commented 5 years ago

This is a good proposal. Hopefully we see more rotation of SR, too many have got complacent thinking they deserve a place and do nothing for us the community. I would like to see more competition

diovann commented 5 years ago

Staking fundamental utility of TRON is the best way of encouraging community interaction and sesame seed deserves to be a successful SR.

shydesky commented 5 years ago

This is a good proposal. Hopefully we see more rotation of SR, too many have got complacent thinking they deserve a place and do nothing for us the community. I would like to see more competition

yes, competition is extremely important. SR with less useful value to the Tron network must be replaced by others.

shydesky commented 5 years ago

seed

let's see what will happen after the proposal got approved.

simbadMarino commented 5 years ago

I think the same as sesameseed, we need to push for individuals participation, TRON moto is "decentralize the web" and we should stick to that imho. Let's work for a different proposal that pushes more to community nodes than large institutions nodes

tronicvote commented 5 years ago

Yes. Teams like Tron-Society and community node are available to us day in day out always helping and supporting tron

shydesky commented 5 years ago

I think the same as sesameseed, we need to push for individuals participation, TRON moto is "decentralize the web" and we should stick to that imho. Let's work for a different proposal that pushes more to community nodes than large institutions nodes

individuals participation does not just mean the node becomes an SR. We should let more user use our Tron network, use DAPP.

shydesky commented 5 years ago

Yes. Teams like Tron-Society and community node are available to us day in day out always helping and supporting tro

simbadMarino commented 5 years ago

Exactly, totally agree!

On Tue, Oct 1, 2019, 23:17 Alpha notifications@github.com wrote:

I think the same as sesameseed, we need to push for individuals participation, TRON moto is "decentralize the web" and we should stick to that imho. Let's work for a different proposal that pushes more to community nodes than large institutions nodes

individuals participation does not just mean the node becomes an SR. We should let more user use our Tron network, use DAPP.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/tronprotocol/tips/issues/53?email_source=notifications&email_token=ACVBLDCSMPBJNIAHLG4AN4DQMQOEJA5CNFSM4IIDD2EKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEADPQFQ#issuecomment-537327638, or mute the thread https://github.com/notifications/unsubscribe-auth/ACVBLDDJR6J67BZBYDCXHK3QMQOEJANCNFSM4IIDD2EA .

ray-hash commented 5 years ago

Currently, voters' compensation has been reduced by about 20 percent. They are holders who have freeze and voted in real Tron wallets, not in exchange wallets. I think there should be more of these holders, but it's a pity that they are disadvantaged by the exchange.

skypeople

And the network is damaged by unused bandwidth freezes.

I don't think negatively about Binance participation. More exchanges can participate.

I agree with the graph @sesameseed-org "Candidate TRX Generated " you suggested.

ibnzUK commented 5 years ago

I suggest instead of implementing parameter for each SR - TRON themselves reward voters for participation.

Those 160 TRX Voter rewards per block could be automatically redistributed to every voter. (hourly, daily, each cycle). In this case, no matter who you vote, you are getting rewards from TRON for staking (freezing and voting) The amount of TRX each voter receive would depend on VOTE % each SR has

In the current system, SRs have to compete with others just to get elected. Competition between SRs is mainly on who pays most, we have seen SRs paying 80%, 100%, 300% even 500% for votes leaving them in a position where they are no longer able to pay expenses or cover running costs. (especially with TRX at 0.013$), Some SRs had to pay from own pockets, there is also an SR who took loan just to stay in the competition.


ADVANTAGES:

It would be easier for newly SRs to say 'thank you' to the community, they would not have to worry about airdrop scripts and calculations.

There would be a requirement for ALL SRs to share voter rewards, this would eliminate vote-buying and corrupted election discussions.

At the moment only few SRs share rewards, but many users vote for SRs like BitTorent, JustinSunTron, Tronlink, even binance and get nothing for participation. Automatic vote redistribution from TRON would make every voting for any SR profitable.

This would attract more new Voters, SR candidates, new SR's, new projects. This would also bring more new users to use tron dapps.

Voters would split their votes and make their decisions based on community plans, missed blocks and not just vote for those who pay most. (even while missing blocks). Especially new voters would read SR community plans, join communities and actually learn more about TRON then just keeping their funds on exchange.

Automatic redistribution from TRON would also benefit SRs. For their hard work and productivity with block rewards they would not have to worry any more about vote-buying. Especially community SRs might invest some of their block rewards back to infrastructure, community, development, TRON network growth itself.

Voting on TRON should also bring more big players (whales) where they see benefits and annual returns in voting - stacking on TRON.

Those SRs who are missing block would not survive long from block rewards, a mistake like this would instantly punish SR financially.


DISADVANTAGES:

Many voters would vote based on the calculation for who pays most, because of daily or even hourly vote migration from SR to SR this would make constant SR rotation

Extra 1,681,920,000 TRX would have to be minted and dumped to circulation each year based on formula: Vote reward per year: 160 (TRX/block) x 20 (blocks/min) x 60 (min/hour) x 6 (hours/election) x 4 (elections/day) x 365 (days per year) = 1,681,920,000 (TRX/year)

Vote-buying on TRON would still exist, but at least it is renamed to Stacking and Rewarding and is done directly by authority.

As Jason pointed, there would be many unnecessary transactions and extra load on the network just by sending rewards to voters daily.

bondibox commented 5 years ago

@ibnzUK I was incorrect on two counts. First is the automatic rewards distribution would use the SR allowance mechanism which is on-chain and under-the-hood. As you know, deposits to the allowance are not transactions, just the withdrawal is. As long as certain remedies are implemented this is a good solution. Those remedies are: 1) Displaying all SR's current reward distribution breakdown on the voter page, and 2) Restricting the SR's ability to change that reward to once every 24 hours.

The other way I was wrong is that currently, all rewards go out as airdrops, which are transactions on the network. So the new system would actually cut down on unnecessary transactions.

As for your other points: Under current rewards system, if all SR's shared the same amount of their voter and block rewards, the incentive would be to vote for the 27 SR because their block component is a higher percentage of their total rewards, and all vote rewards (per voter) are equal among SR's. Under the proposed change where block rewards are cut in half and voter rewards are increased 10x, the amount of SR earnings-per-vote is nearly identical among all SRs (and even among all non-SR candidates), as Justin says it will create a "neutral community." Since the automatic rewards seems to encourage SR's to differentiate between block income and vote income, with the tendency to keep the block rewards and share 100% of the voter rewards, then the voter reward does become exactly equal among all 127 SR candidates. That's a good thing.

shydesky commented 5 years ago

Reasonable distribution mechanism guarantees the "neutral community", I think

bondibox commented 5 years ago

Instead of tossing out random amounts, perhaps we should start with an intention, define limitations, and then do some calculations. For example, I do believe the goal of neutral community is what we should strive for. And that means a combination of rewards which ensures, or at least makes more likely, that SRs will copy each other’s rewards plans. I think the plan most likely to be adopted is the 100% voter rewards back to voters, 100% of block rewards to the SR. If you make the SR reward too much they may be tempted to give some to the voters and throw off the balance between candidates. The limitations are the acceptable inflation to the Tronix supply.

On yesterday's Keiser Report the guest was touting the Lightning Network's staking without capital risk feature as if it was the greatest thing since sliced bread. They are setting the bar, and we have to raise the bar. Whatever interest rate Lightning pays for staking we should beat that, and then set the SR reward to the max amount within acceptable inflation.

I think what we need to do is reverse-engineer the rewards by starting with what we want for an inflation rate and what we want for a staking ROI

Lightning network gives 1%, they will advertise that, I think we should try to advertise 1.5%

E.g. someone staking 100k TRX at the end of the year should have 1,500 TRX for a 1.5% interest rate.

With 20 Billion votes, a shared 32 TRX per block reward that is allocated 100% to the voters will yield a 1.6% annual interest.

921600 x 365 days a year = 336,384,000 TRX per year 336,384,000 / 20 Billion = 1.68%

I recommend increasing the vote portion of the reward commensurate with total votes to where the voter reward is kept at 1.5%

Binance accounts for less than 10% of TRX trading volume. If all exchanges are able to stake their TRX we should expect 2x, or 3x increase in staked TRX, therefore whatever amount we choose we should be prepared to increase in 2x or 3x to maintain a consistent ROI as the 32 TRX per block (or whatever) gets shared among more voters.

priasetia commented 5 years ago

Ow