收益发放过程
探索 GYD 代币分发和收益分配的过程。
收益发放过程
收益会定期以半自动化方式发放给 sGYD 持有者和 GYD 流动性提供者。收益发放到一组场所(定义为包括 sGYD 和所有支持池子的 gauge 的集合),用户随后可以领取这些收益。具体过程如下:
一个链下程序观察之前评估周期内(通常为一周)的历史时间加权 GYD 持仓。
一个链下程序还会计算在相同时间段内累积到 GYD 储备的利润(按日计算)。
基于这些值,以及配置的权重和安全参数(见下文),计算所有场所的 GYD 发放量。
一个链上合约(GydDistributor)会铸造新的 GYD,并将其分发到不同的场所。这些新的 GYD 仍由储备的盈余价值支持。
对于 sGYD,GydDistributor 添加一个流(见下文),该流在预定的发放时间窗口内(通常为一周)发放 GYD。sGYD 会通过在时间窗口内持续增加其兑换率来反映发放的 GYD 数量。
对于资金池,GYD 会被存入相应的资金池 gauge,并在接下来的一周内分发。
收益分配公式
关于管理收益分配到场所的具体公式和代码,请参见 Reserve Yield Emission Scripts 仓库。
以下是这些公式的简要描述:
储备利润是通过 Dune 查询计算的,该查询每日计算 (1) GYD 的未偿余额和 (2) GYD 储备的持有量及其价值。超额储备是 (2) 和 (1) 之间的差额。储备利润是评估时间段内超额储备的差值。
储备利润的一部分(
profit_share
配置键,目前为 90%)分配给各场所,剩余部分(目前为 10%)保留在储备中。这些金额将根据以下权重规则分配到不同的场所:
默认情况下,分配是根据每个场所的时间加权 GYD 持有量比例进行的。
然而,分配受到 APR 上限的限制。APR 在此处指的是评估期内每单位 GYD 持有的平均 APR:
所有 sGYD 部署的总量上限为
sgyd_max_apr
(目前为 20%)。所有资金池的总量上限为
pools_max_apr
(目前为 4%)。如果只有一个 APR 上限受限,则其他场所可能因此实现更高的 APR。
如果两个 APR 上限都受限,发放的 GYD 数量将少于没有 APR 上限时的发放量;未发放的部分将保留在储备中。
最后更新于