Staking Bonuses

The reputation and other statistics are used to alter the amount of collateral that must be staked. The higher the user’s reputation and the better they perform, the bigger the staking discount for every dataset. There are four components to the staking bonus: the user’s level, the user’s current coin balance in the CoinHolder, how often they participate in the system, and how quickly they respond to data that comes up.

The bonus works as a percentage that is built up from the components just enumerated. First, the user’s level is taken as the base. So without doing anything else, a level N user gets a bonus of N-1%. So a level 11 user will receive a 10% base bonus while a level 4 user will receive a 3% base bonus. From there, the user’s staking bonus is added. This is the bonus that was described above in the “Coins For Max Bonus” subsection of the “ODO Custodian” section. The staking bonus is added to the base bonus, and ranges from 0% to 4%. From there, the user’s responsiveness bonus is added in. This bonus is based on how quickly the user responds to new data requests.This value can be one of 0%, 1%, 3%, or 6%. The last piece is the bonus that tracks how often the user endorses data. This value applies multiplicatively to the value computed so far, and can be either 0%, 50%, or 100%, thus increasing the overall bonus by nothing, by half, or doubling it.

In order to store the history of a user’s interaction with the system, a pair of lists are used to track the user’s history. The most recent values are stored and then aggregated into blocks to smooth out any large variations and lessen the effects of short-term changes in endorsing patterns, such as when a provider gets busy and is not providing as often as they normally do. The aggregation blocks are used with decreasing weight to hold a relatively long history in a small amount of storage that also isn’t subject to too much variation from single values. Both the frequency and responsiveness histories are aggregated in this manner.

Last updated