Steem奖励计算(公式版)

tukey(25)
Published in
#python
Words
526
Reading
3 min
Listen
Play
9y

 基础版规则:主要针对奖金池、文章奖励、投票者奖励

1.奖励池总数

M=c*N 

M:生成总奖金N:新生成区块的数量c:自定义常数
2.所有用户对单篇文章奖励权重

R=∑i*n*l 

R:文章奖励权重

i:取值为+1或-1,赞成为+1,反对为-1;

n:该投票用户拥有的VESTS数量;(1 SP 约等于2045 VESTS)

l:该投票用户投票时消耗能量的百分比;
3.单篇文章奖励调整后权重

V=(R+S)^2-S^2=R^2+2RS 

原始V:如果奖励权重R为正数,先对奖励权重进行转换:

V:转换后奖励权重 

R:奖励权重 

S:构造常量,取2E10

4. 单篇文章奖励金额

M_i=M×V_i/∑_1^nV_n 

Mi:单篇文章奖励金额;

M:奖励池内总金额;

Vi:当前文章的转换后奖励权重;

∑_1^nV_n  :全站所有待发奖文章的转换后奖励权重的总和。

5.投票奖励分配第一次发奖时,作者至少 75% ,投票者最多 25% 第二次发奖时,全归作者。
6.单篇文章的所有投票者奖励权重

每篇文章有个投票奖权重总计(以下简称权重总计),投票者按权重来分配投票奖。

F=(∑_1^nV)/(∑_1^nV+2×S) 

文章权重总计 =赞成票的贡献值之和/( 赞成票的贡献值之和 + 固定参数 2*S )

7.单一投票者的投票奖权重

W_i=∆F×f 

投票者投票权重 =(文章新的权重总计 -文章老的权重总计)*反向竞价比例其中,反向竞价比例

反向竞价比例 f=100% if  △t>30 else △t/30 

按上述公式,在不考虑反向竞价的情况下,先投票的投票人投票奖权重较高;
8.单一投票者奖励发放

U_i=M*0.25*W_i/(∑_1^nW_n ) 

单一投票者奖励=总奖励*25%*该投票者的投票奖权重*所有投票奖的权重总计投票能量 

Steem奖励计算(公式版) | Ecency