如何计算ALGO挖矿收益
每个块的固定奖励计算方式为 (奖励池 / 奖励周期)。-请注意,这一计算在开始时,每个奖励期只进行一次。
TEU 在每个块上通过对系统中在该块的所有UEUs的求和来计算。
每个用户对每个块的奖励计算为(UEU/TEU)*每个块的固定奖励。这个计算是为每个用户执行每个块,以考虑到不断变化的帐户余额。
如何发放奖励
Algo的最小可除单位是微Algo(10^-6)。我们计算每个区块的奖励,而且在一些区块中,MEU的帐户不会从该块的奖励中获得完整的Algo。因此,一旦一个MEU获得一个完整的Algo奖励,Algorand协议就会添加到一个帐户的待定奖励中。为了跟踪本应在前几个块中分发的奖励,但并不是由于奖励金额小于微Algo,块头保持了“frac”字段。前一个块的frac字段中的值被添加到块授予的奖励中,因此最终,即使是这些较小的剩余奖励也会被分配。
奖励分配时间。Algorand协议计算每个区块的奖励,但它可能需要几个街区,直到一个MEU产生一个完整的微Algo,允许奖励被添加到所有符合条件的帐户。分配时间是TEU在系统中的一个函数。当所有TOKEN流通时,TEU最多可达10B。假设每个街区有20个阿尔戈斯获得奖励,那么每个收入单位需要500个街区才能积累1个微型阿尔戈。每5秒生成块,奖励每500*5秒=41分钟。
从Algorand BlockChain提取奖励数据
每个块包含以下字段,可以使用SDK、curl或RESTAPI(例如/v1/块/{圆形})
- Reward*每个MEU自创世以来赚取的微Algos数量
- Rate:该区块的奖励总额
- Frac 阿尔戈斯的最小可除单位是微阿尔戈(10^-6)。然而,因为我们计算每个街区的奖励,有一些情况下,一个帐户在MEU不会赚到一个完整的微Algo。此字段保存该数字,直到达到一个完整的microAlgo,并支付给用户。
待定奖励、索取奖励和帐户余额的详细信息可供查询。这可以使用SDK、curl或RESTAPI来完成。所有这些都利用了REST路径/v1/帐户/{Address}.
当您查询一个帐户时,您将发现四个奖励和平衡相关的字段。
- 数额:该数字表示用户余额+无人认领的等待奖励。
- 此数字表示用户的余额,而没有未被要求的待偿奖励。
- Pendingrewards:这个数字表示无人认领的待偿金。
- 奖励:此数字表示该帐户经过一段时间获得的总奖励。
当交易发生时,就会要求奖励,因此也可以查询从该事务中获得的奖励。这可以使用sdk、curl或RESTAPI(例如/v1/帐户/{地址}/Transaction/{txid}).
当您查询事务时,您将发现三个与奖励相关的字段。
- closerewards(可选):整数CloseReward是应用于CloseRemainderTo帐户的无人认领的未决奖励的金额,作为此事务处理的一部分。格式:uint 64
- torewards(可选):整数奖励是作为此事务的一部分应用到to帐户的未声明的未决奖励的金额。格式:uint 64
- romrewards(可选):整数奖励是作为此事务的一部分应用到FROM帐户的待定奖励的金额。格式:uint 64
当某个地址包含在事务的到、来自或关闭参数中时,未声明的未决奖励由地址声明。这意味着,如果不首先要求任何无人认领的待偿报酬,就不可能进行交易。如果有无人认领的未决奖励要申请,它们将在交易中注明,并在查询该事务时可用。