本文作者:bixia1994
简介
AAVEv2版本相较于v1版本新增了两个重要变化:
aToken变为可升级token
债务token
flashloanV2
针对债务Token:
用户的债务以债务Token的形式存在,而不是之前的内部记账,好处有:
代码简化-用户的债务生成销毁变成了债务Token的mint和burn
同时借可变贷款利率和稳定贷款利率。在V1版本中,用户的贷款要么是可变贷款利率,要么是稳定贷款利率。多种贷款利率通过加权平均得到
信用额度转移的支持:用户可以将它在AAVE中deposit得到的信用额度转移给其他账户,而其他账户可以拿着得到的信用额度来进行贷款等。
信用委托是一项简单的交易,Aave协议的储户将信用额度委托给他们信任的人。你也可以将信用额度委托给另一个执行预定义功能的智能合约,消除这种信任。例如,Karen将USDC存入AaveProtocol以获得利息。由于Karen只用AaveProtocol来赚取而不是借贷,她不需要行使她的信用额度。相反,凯伦将她的信用额度委托给乍得以赚取额外的利息。一旦信贷额度被委托,chad就可以从专用的信贷委托金库中提取资金,这是一个建立在Aave协议之上的简单债务包装。为了确保一帆风顺,凯伦和乍得使用OpenLaw来签署条款协议。
针对flashloanV2:
flashloanV1上存在如下的不足:从AAVE上得到的flashloan无法再AAVE上去使用,即nonReentrant
架构
与之前V1版本不同:
资金存放在aToken中,与compound类似。
债务Token记录用户的债务
所有的操作都发生在LendingPool中
经济模型
aToken
aToken支持EIP-2612,没有利率重定向?
当前流动性率:等于总的借贷利率乘以此时的资金利用率,注意:这里的利率是一个年化利率
累计流动性指数:再时间段范围内,由贷款利率累计产生的单位本金利息,任何操作都会更新该参数
这里的概念与compound中的概念利率指数是很类似的,只是compound中的利率指数概念是由所有的贷款利率乘以deltaBlocks,是每一个block的利率;而这里是一个年华利率的概念,需要进行下单位换算。
储备金正常化收入:?这个概念是什么意思,是这个时刻t对应的用户抵押品价值吗?
在V2中,用户指数实际上作为一个存储变量消失了,它与本金余额一起被存储为一个比率,被称为"按比例的余额",ScB。用户的余额被计算出来,导致在每一个导致代币铸币或烧毁的动作上的增加或减少。用户的余额被计算出来,导致每一个导致铸币或烧毁代币的行动的增加或减少。
也就是说用户手上的aToken会增加或者减少!
如果是deposit:
如果是withdraw:
任何时刻,用户手上的aToken的数量为:
债务Token
债务Token的总供给变化率为:所有用户再此时刻t的ScB之和
某一种资产再时刻t对应的总的债务为:稳定贷款利率在此时刻t的总供给与可变贷款利率在时刻t的总供给之和
可变债务
累计可变债务借贷利率指数:即由可变债务总额VB在时间段范围内,以可变债务利率VR,产生的累计可变债务指数
这里需要其为指数函数,回忆复利的定义,但是compound中并不是指数函数,而是一个近似的乘积,即:泰勒级数展开
AAVE自己实现了一个pow函数,而compound则简单使用泰勒级数展开的前两项作为估算
用户累计可变利率指数:某一个用户的累计可变利率指数当且仅当用户持有借款头寸时更新。用户不借钱自然就没有可变利率指数了
,用户总的借贷总金额:当用户借钱时的用户所借贷的金额。如果用户多次借钱,那么复利的利息会每一次都累计并成为最新的借款总额
债务Token的数量跟aToken的逻辑类似,也是会变化的。也是有一个ScaledBalance概念,即借贷总额缩放因子
当用户借钱时,可变借款总额的缩放因子为借款前的缩放因子加上这次借款数量m与平均化后的总的借款数量之比的和
当用户还钱时,可变借款总额的缩放因子为借款前的缩放因子加上这次借款数量m与平均化后的总的借款数量之比的差
在任何时刻,用户的可变债务总量是:
稳定利率债务
总的稳定平均贷款利率-AAVE中的稳定利率贷款是什么意思?贷款利率不随着资金利用率变化吗?那要怎么去结算利息呢?如果以稳定利率发行一笔稳定利率贷款,那么稳定平均利率:
如果用户x以稳定贷款利率偿还一笔稳定利率贷款SB,则稳定平均利率为:
:用户的稳定贷款总金额:都是年化利率,要进行单位划算
闪电贷
相较于V1版本,V2版本的闪电贷功能更为完善。
v1版本的闪电贷路径:
在转账给用户之前,AAVE对闪电贷的货币余额进行一次快照
在闪电贷结束后,检查闪电贷货币余额是否大于等于之前的快照加上闪电贷的利息。如果不满足条件,则revert
V2版本的闪电贷路径:
AAVE直接给用户转账
闪电贷结束时,AAVE从用户账户中拉取借贷金额和手续费,如果拉取失败,则闪电贷失败。主要是用户要给AAVE进行授权
通过pull的方式而不是push,可以避免使用两次snapshot,这样也避免使用nonReentrant检查。
参考资料
bixia1994:https://learnblockchain.cn/people/3295
闪电贷:https://learnblockchain.cn/article/1928
免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。
本文来源于非小号媒体平台:
登链社区
现已在非小号资讯平台发布105篇作品,
非小号开放平台欢迎币圈作者入驻
入驻指南:
/apply_guide/
本文网址:
/news/10404245.html
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场
上一篇:
每周编辑精选WeeklyEditors'Picks
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。