For the complete documentation index, see llms.txt. This page is also available as Markdown.

质押仓位

Staked position 包

该包提供操作质押仓位的接口。主要入口是 StakedPosition 结构体。

开立仓位

用户可使用 stake 函数开立仓位。开立时需以毫秒为单位指定锁定期限,且锁定期限必须在 Afterburner 金库配置所设的范围之内。

锁定的仓位将按所配置的 Afterburner 金库乘数获得额外奖励。

收取奖励

奖励收取分三个阶段:

  • 用户先调用 begin_harvest<STAKE> 函数;

  • 针对每种奖励,用户调用 harvest_rewards<STAKE, REWARD> 函数,以获取按类型 `Coin<REWARD>` 累计的奖励;

  • 最后调用 end_harvest 函数完成流程,该函数会发出相应事件。

Strict 实现下,用户可随时领取奖励。

Relaxed 实现下,用户只有在仓位解锁后才能领取奖励。

追加质押

用户可随时使用 deposit_principal 函数增加仓位的质押数量。为锁定中的仓位追加质押后,锁定期会重新计算。

提取质押

用户可使用 withdraw_principal<STAKE> 函数提取质押本金。仓位必须处于解锁状态才能提取。

质押在 Strict Afterburner 金库中的仓位,无法在锁定期结束前解锁。

延长仓位锁定

用户可使用 renew_lock 函数延长锁定期。

合并仓位

用户可使用 join 函数将两个仓位合并。合并后的仓位取两者中较晚的锁定开始时间和较长的锁定期限。

拆分仓位

用户可使用 split 函数将一个仓位一分为二。累计奖励按拆分数量占质押总量的比例在两个仓位之间分配。其余参数与原仓位保持一致。

关闭仓位

用户可使用 destroy 函数删除不再活跃的仓位。被销毁的仓位不得残留任何本金或奖励。

Last updated