收益发放过程
探索 GYD 代币分发和收益分配的过程。
最后更新于
探索 GYD 代币分发和收益分配的过程。
最后更新于
收益会定期以半自动化方式发放给 sGYD 持有者和 GYD 流动性提供者。收益发放到一组场所(定义为包括 sGYD 和所有支持池子的 gauge 的集合),用户随后可以领取这些收益。具体过程如下:
一个链下程序观察之前评估周期内(通常为一周)的历史时间加权 GYD 持仓。
一个链下程序还会计算在相同时间段内累积到 GYD 储备的利润(按日计算)。
基于这些值,以及配置的权重和安全参数(见下文),计算所有场所的 GYD 发放量。
一个链上合约(GydDistributor)会铸造新的 GYD,并将其分发到不同的场所。这些新的 GYD 仍由储备的盈余价值支持。
对于 sGYD,GydDistributor 添加一个流(见下文),该流在预定的发放时间窗口内(通常为一周)发放 GYD。sGYD 会通过在时间窗口内持续增加其兑换率来反映发放的 GYD 数量。
对于资金池,GYD 会被存入相应的资金池 gauge,并在接下来的一周内分发。
关于管理收益分配到场所的具体公式和代码,请参见 。
以下是这些公式的简要描述:
储备利润是通过 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 上限时的发放量;未发放的部分将保留在储备中。