保险库

保险库包

此软件包提供了与保险库操作的接口。主要入口点是AfterburnerVault结构 —— 一个用户可以将类型为Coin<STAKE>的代币存入其中的保险库。。任意数量的奖励可以添加到保险库,并按照每个奖励发行计划定义的速率分配给抵押者。用户在进入保险库时可以锁定其位置以获得额外奖励。根据Strict实施情况,奖励随后可在任何间隔内领取;根据Relaxed实施情况,在锁定期结束后才能领取奖励。

严格 vs 宽松执行

Afterburner 保险库允许用户锁定其位置,以利用乘数来获得更多奖励。然而,在快速变化的 DeFi 环境中,锁定资产的典型问题是可能会出现另一个更有利可图的机会,用户可能会错过这个机会。

为了解决这个问题,我们提出了 Vault 的宽松变体 —— 用户可以在锁定期结束前解除他们的位置。在这种情况下,用户只能收到因为该位置被锁定时段而获得的额外奖励。

相反地,Afterburner Vault 还设有严格版本 —— 用户只能在锁定期结束后才能解除并撤回他们的位置。

~~~~~~~

对于严格执行,用户可以随时领取奖励。

对于宽松执行,用户只能在位置解锁后才能领取奖励。

~~~~~~~

创建保险库

使用 new<STAKE> 的方法负责创建保险库。它创建一个没有发行的新保险库。其中一个参数是lock_enforcement,它可以启用Strict(lock_enforcement = 0)或Relaxed(lock_enforcement = 1)类型的保险库的创建。在保险库被创建后,必须通过执行share_vault函数来共享。

为了使一个保险库正常运作,奖励发行应该由保险库所有者初始化。这可以通过调用initialize_reward<STAKE, REWARD>方法来实现,该方法允许设置发行计划、发行速率和发行延迟。

~~~~~~~~

排放时间表 - 两次排放事件之间的时间间隔,以毫秒为单位。

发射率 - 发射事件中发射的硬币数量。

发射延迟 - 开始发射前的时间段。

~~~~~~~~

添加和增加奖励

所有者可使用 add_reward<STAKE, REWARD> 方法向保险库添加额外奖励,或使用 increase_emissions_for<STAKE, REWARD> 函数增加奖励排放。

Last updated