与Helio协议的相互作用

关于互动的更多信息,请参考Helio协议文档页

第一步:抵押BNB

为了抵押他们的资产,用户通过HelioProvider::provid()智能合约发送一定数量的BNB。这些资产将通过VAT::frob()智能合约锁定在MakerDAO内,有效地进行抵押。在这个过程中,中间的aBNBc和ceABNBc代币被应用于内部Helio协议逻辑。

第二步:用抵押的BNB借入HAY

为了针对抵押资产借入HAY,用户向Interaction::borrow()智能合约发送一个交易,以产生特定数量的HAY,以换取将其抵押品锁定在ceVault中。Helio协议在MakerDAO内计算出当前的HAY值。计算时考虑到了借款限额,即用户抵押的总资产的价格*抵押率(Helio协议设定的固定金额)。

抵押品比率是用户抵押品价值的百分比,决定了用户的最大借贷限额。目前的数值是抵押品价值的66%。当借入的HAY价值高于用户抵押品当前价值的66%时,抵押品比率被用于触发清算过程,并有安全保证金。

Helio协议通过VAT::frob()向用户借入的HAY金额。然后通过Join::exit()将借来的HAY发给用户。

第三步:为借来的HAY索取奖励

借用HAY的用户可以获得HELIO代币的奖励,并可以随时领取。

为了索取HELIO代币到他们的钱包,他们向HelioRewards::claim()智能合约发送一笔交易。HelioRewards更新奖励池大小和奖励率,并通过HelioToken::transfer()将待领的用户奖励转移到用户的钱包。

第四步:偿还债务和累积的利息

为了偿还借来的HAY和累积的利息,用户发送一个HAY给Interaction::payback()智能合约,后者又通过HAYJoin::join()将HAY转移到MarkerDAO金库,并通过VAT::frob()从用户的债务中减去偿还的HAY金额。

第五步:提取抵押品

随着HAY的归还和利息的支付,用户可以提取全部或部分BNB抵押品回到他们的钱包。一旦所有的HAY被完全偿还,用户可以向HelioProvider::release()发送一个交易,启动提款过程。HelioProvider通过Interaction::withdraw()获得ceABNBc,通过VAT::frob()解锁资产,并通过VAT::flux()将资产从CDP引擎转移到MakerDAO的保险库。然后HelioProvider将ceABNBc交换为aBNBc,并解锁aBNBc以释放BNB给用户。

第六步:清算

当带安全保证金的抵押品的当前价值低于HAY的借款金额时,清算过程可由任何人通过Interaction::startAuction()触发。触发荷兰式拍卖(又称清算过程)的清算人可以获得奖励(小费+筹码)。小费和筹码由Helio治理部门设置,目前分别为300美元和拍卖中的债务额的%0.1。

Helio将被清算的抵押品的起始拍卖价格设定为等于(current_collaterral_unit_price * buf),其中buf是一个类似于清算罚款的参数,由Helio管理部门设定,目前是抵押品价值的2%。

然后,Helio协议让清算人通过buyFromAuction()来购买大于尘埃(目前是1美元)的任何金额。如果清算人提出的价格>=当前_拍卖抵押品_单位价格,Helio协议就会将用户的抵押品的要求金额卖给清算人,用ceABNBc交换aBNBc并将aBNBc发送到清算人的钱包。实际上,清算人购买的是aBNBc,他们以后可以兑换BNB或持有以积累更多的BNB,因为aBNBc与BNB的价值会随着时间的推移而增长。

Helio协议将逐步降低拍卖价格,同时让任何人都可以购买。从一个较高的价格下降的原因是机器人和预言机的抵押价格的变化,以避免任何突然的损失。拍卖会持续一个固定的时间,由Helio治理设定。价格在拍卖的每一秒都会重新计算。

当达到拍卖时间限制或价格下降达到一定的阈值(限制由Helio管理部门设定,目前为40%),Helio协议暂停拍卖,等待清算人前来重新启动拍卖。 重启拍卖的清算人可以获得奖励(小费+筹码)。

最后,Helio协议覆盖用户的债务并保留利润(借款金额+(借款利息+清算罚款))。然后,它计算剩余部分(支付的价格-债务-利润)并将其发送到用户的钱包。

Last updated