AAVE是一个DeFi去中心化贷款协议,人们可以使用多种加密资产作为抵押,向其申请贷款。目前能够作为抵押资产的加密资产包括ETH、DAI、USDT、LINK等十几种。
作为一个贷款协议,系统本身运行健康与否很大程度上取决于使用该协议进行的各种贷款是否健康。当所有的借款人都有足够的抵押品抵押时,整个系统拥有足够的偿还能力,系统是健康的;而一旦有借款人抵押不足时,整个系统就会增加风险,而一旦这样的借款人过多,整个系统的风险将进一步扩大。因此系统中需要清算人这一角色。清算人对不太健康的借贷进行清算,并为此获得抵押物总价值5%-15%的奖励。该奖励措施能够鼓励清算人及时清算不健康的贷款,从而保障整个系统的金融安全。
清算人参与清算有三种方式:
使用AAVE应用程序中的清算模块:
https://app.aave.com/liquidations
直接调用智能合约中的liquidationCall()方法
创建自己的自动化系统或者机器人来对贷款进行清算
鉴于方法一较为简单,按照应用内提示进行操作即可,本文重点讨论后两种。其中方法三也使用到了二的方法,即调用了智能合约中的liquidationCall()。
Voyager债权人委员会:将会对Binance.US发起潜在索赔:金色财经报道,Voyager无担保债权人委员会在推特表示,Binance.US宣称终止与Voyager的资产购买协议,Voyager无担保债权人委员会对这一决定感到非常失望,将会针对Binance.US发起潜在索赔。与此同时,Voyager无担保债权人委员会和Voyager将会考虑别的选项,后续将提供进一步动态更新。[2023/4/26 14:27:24]
触发清算的先决条件
在调用liquidationCall()方法时,我们需要知道几个条件:
健康因素低于1的账户。只有健康因素低于1的账户才会被清算。其中健康因素的计算方式为:
其中:
CollateralinETH:?折合成ETH计算的抵押的资产i的值
LiquidationThreshold:清算阈值,最大借出资产/总抵押资产
TotalBorrowsinETH:折合成ETH的借出的资产额度
TotalFeesinETH:折合成ETH计算的所有费用
AAVE采用的是Chainlink的喂价机制。
DeFi借贷协议Euler部署至BNB Chain的提案已投票通过:2月8日消息,DeFi借贷协议Euler Finance社区已投票通过将项目部署至BNB Chain的提案。该提案由AdamBNB代表BNB Chain基金会提交,83.05%的投票者支持该提案。[2023/2/8 11:54:26]
公式可总结为:健康因子与抵押物总和成正比,与借出物总额成反比。抵押物越多,健康因子越大,借款人偿付能力越强,该笔借贷越健康。反之借出物越多,健康因子分母越大,值越小,则表示借款人偿付能力越低,该笔借贷越不健康。只有健康因子低于1的账户才会被清算。
有了低于1的健康因子就可以触发清算条件。要清算某条具体的贷款,还需要知道该笔贷款的借款人地址、贷款金额和资产金额,确保自己有足够的余额帮助贷款人偿还债务。
要被清算的账户
只有健康系数低于1的账户才会被清算。有多种方式可以获到用户的健康系数:
使用链上监控
????i.监控AAVE协议发出的时间,并在本地保持用户数据的最新状态。每当用户和AAVE协议进行交互时,都会发出时间,这可以在链上监控到;
????ii.监控到用户地址后,就可以使用该用户的地址,在链上调用直接调用查询接口即可查询到getUserReserveData。
DEX平台Dexalot上线Avalanche子网:金色财经报道,去中心化交易平台Dexalot宣布上线Avalanche子网(Subnet)。
子网是Dexalot双链应用程序的关键支柱。用户通过Avalanche C-Chain上的Dexalot应用程序存入和提取资产,然后在Dexalot子网上进行交易。主网和子网之间的通信,通过使用高端跨链通信协议的通用消息传递进行。简单来说,Dexalot子网旨在复制CEX的用户体验,而不影响去中心化和透明度。
此前消息,Dexalot完成700万美元融资,Blizzard、Avalaunch、Colony、Benqi、AVentures、Avascan、Republic Capital、GSR、Muhabbit Capital、Woodstock Capital、Maven Capital、IPC等参投。[2023/2/2 11:41:49]
使用项目方的API进行查询
项目方提供了查询的API:https://protocol-api.aave.com/liquidations?get=proto
执行清算
查询到要清算的账户后,我们就能计算可以清算的抵押物的数量。执行清算一般有两种方法:
编写一个智能合约,在智能合约中直接调用AAVE中的liquidationCall()执行清算
使用Web3.js等软件包进行调用
此处以web3.js为例:
//ImporttheABIs,see:https://docs.aave.com/developers/developing-on-aave/deployed-contract-instances
importDaiTokenABIfrom"./DAItoken.json"
importLendingPoolAddressesProviderABIfrom"./LendingPoolAddressesProvider.json"
importLendingPoolABIfrom"./LendingPool.json"
//...Therestofyourcode...
//Inputvariables
constcollateralAddress='THE_COLLATERAL_ASSET_ADDRESS'
constdaiAmountInWei=web3.utils.toWei("1000","ether").toString()
constdaiAddress='0x6B175474E89094C44Da98b954EedeAC495271d0F'//mainnetDAI
constuser='USER_ACCOUNT'
constreceiveATokens=true
constlpAddressProviderAddress='0x24a42fD28C976A61Df5D00D0599C34c4f90748c8'//mainnet
constlpAddressProviderContract=newweb3.eth.Contract(LendingPoolAddressesProviderABI,lpAddressProviderAddress)
//GetthelatestLendingPoolCoreaddress
constlpCoreAddress=awaitlpAddressProviderContract.methods
.getLendingPoolCore()
.call()
.catch((e)=>{
throwError(`ErrorgettinglendingPooladdress:${e.message}`)
})
//ApprovetheLendingPoolCoreaddresswiththeDAIcontract
constdaiContract=newweb3.eth.Contract(DAITokenABI,daiAddress)
awaitdaiContract.methods
.approve(
lpCoreAddress,
daiAmountInWei
)
.send()
.catch((e)=>{
throwError(`ErrorapprovingDAIallowance:${e.message}`)
})
//GetthelatestLendingPoolcontractaddress
constlpAddress=awaitlpAddressProviderContract.methods
.getLendingPool()
.call()
.catch((e)=>{
throwError(`ErrorgettinglendingPooladdress:${e.message}`)
})
//MakethedeposittransactionviaLendingPoolcontract
constlpContract=newweb3.eth.Contract(LendingPoolABI,lpAddress)
awaitlpContract.methods
.liquidationCall(
collateralAddress,
daiAddress,
user,
daiAmountInWei,
receiveATokens,
)
.send()
.catch((e)=>{
throwError(`Errorliquidatinguserwitherror:${e.message}`)
})
设置一个清算机器人
以上即为清算的逻辑,在设计清算机器人时,按照以下步骤即可:
清算前需要计算,确保机器人自己有足够的资金能帮贷款人还清债务,也要计算能够获得足够的资金作为报偿;
考虑清算最有利可图的抵押品,不仅要考虑到贷款债务的金额,还需要把gas的成本计算在内,以此判断是否有足够的获利能力;
确保机器人访问的是最新版本的AAVE协议;
其他系统故障和资产安全等。
计算收益
获取抵押品的详细信息,例如抵押的用户、清算奖励比率等
获取抵押品的数量,并从预言机中获取到抵押品当前的总价值
最大清算奖励=抵押品总价值*清算奖励比例
计算交易需要的gas费用
最大获利=最大清算奖励减去gas费用
清算奖励比例根据币种的不同而有所变化,一般来说,稳定币清算奖励相对较低,非稳定币价格则更高:https://docs.aave.com/risk/asset-risk/risk-parameters
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。