#13 借贷协议数据分析
Last updated
Last updated
去中心化金融(DeFi)是区块链的金融创新。通过各协议之间的可组合性、互操作性,DeFi乐高就此诞生。2020年6月,DeFi借贷协议Compound开启流动性挖矿,不仅拉开了DeFi Summer的序幕,也给DeFi借贷赛道注入新活力、新思路、新用户,借贷业务成为DeFi的三大核心之一。
借贷协议是DeFi的银行。传统银行中,用户可以向银行存款收取利息,也可以向银行借款,最后连本带利一起归还。类似的,在DeFi的借贷协议中用户可以向协议存钱、借钱,不同的是没有了中心化的托管机构,而是用户和借贷协议的智能合约直接交互,靠代码的运行确保一切有条不紊地进行。CeFi中的借贷,贷款担保方式分为信用、保证以及抵押贷款。银行的风险偏好较低,抵押贷款在各类贷款中是占比最高的。得益于大数据信用体系建设,信用借贷越来越普遍,不过需要大量的审查、资质证明等。
而DeFi中的借贷是匿名的,无需信任的。从模式上讲基本都处于抵押贷款方式,普遍采用的方式是超额抵押。也就是说,我抵押200块的资产,可以从借贷协议这借走不足200块的资金,这样就无需担心我借钱不还跑路,可以放心地借钱给我了。这种以币借币,甚至越借越少的行为看似非常愚蠢,但是实际上它解决的是市场切实存在的需求:
交易活动的需求:包括套利、杠杆、做市等交易活动。例如做市商需要借资金来满足大量的交易;在DEX上买币只能做多,但是通过借币可以做空;通过抵押资产加杠杆,甚至可以通过循环贷不断增加杠杆(抵押ETH借USDC买ETH再抵押再借再买…)
获得被动收入:闲置资金/屯币党在屯币的过程中可以通过借出资产获得额外收益
代币激励:除了流动性挖矿,头部 DeFi 协议推出基于其原生代币的质押服务,代币持有者可质押获得更多原生代币。代币激励是面对借贷协议所有参与者的,借方可以通过交互获得代币奖励,通过交易获得的代币,偿还一部分债务
相比传统房车类型抵押贷款,需要人力验证资产所有人,还款违约还需要人力及时间进行资产拍卖。DeFi中的当铺模式只需要在抵押率过低停止抵押,对资产清算即可结束贷款合同。
在区块链上抵押借贷,能借多少代币、什么时候清算,都是由智能合约中的一系列参数设定好的。
Max LTV(Loan to Value):最大贷款价值比,决定借款发生时债务/ 抵押品价值的最大比例。
Liquidation threshold:清算门槛,是一个清算判定条件,债务/ 抵押品价值升至这个比例时发生清算。
Liquidation penalty:强平罚款,当清算发生时,以该资产为抵押品需要扣除的罚金比例。
比如,Aave V2中USDC 的Max LTV为87%,Liquidation threshold 为89%,Liquidation penalty 为4.5%,就代表每有1 USDC 的抵押品,最高可以借入0.87 美元其它代币,当借入的代币升值至0.89 美元时发生清算,顺利清算的情况下将被扣除4.5% 的罚金。
加密资产的价格浮动往往会比较剧烈,借贷协议采用的超额抵押方式有助于避免资不抵债的情况发生,如下图所示:不同的抵押率对应不同的费率和质押要求。
当抵押资产或者借出资产发生大幅波动时到达一定程度时,借贷协议为了避免坏账要执行清算。 我们以AAVE为例,看借贷协议是如何进行清算的。 首先介绍一个概念叫健康因子(Health Factor),健康因子和账户的抵押物、借款金额有关,表达资不抵债的可能性。如何计算健康因子?
1、查看抵押物的清算线(LiquidationThreshold),比如此时USDC是0.89;
2、健康因子 = 抵押金额 * 清算线/ 借出资产,以此刻为例,5794 * 0.89/ 4929 = 1.046;
3、如果抵押物价格下跌,或者借出资产价格上涨,导致健康因子<1,则会执行清算Liquidation,具体清算过程如下:
那么实际的不等式是:借出资产金额 <= 抵押金额 * LTV < 抵押金额 * 清算线。 清算时,超出清算线的部分会拿去拍卖,清算者(liquidators)购买抵押物,拍卖获得的资金用于归还负债,多出部分就作为清算者的奖赏。 清算过程依赖于预言机的喂价,目前AAVE取的是Chainlink。
有意思的是,虽然超额抵押的思路看起来非常靠谱,借贷协议应该没有坏账风险,但是实际上是这样吗?最近Eisenberg从AAVE V2借币做空CRV的事件中,就产生了约170 万美元的坏账。最主要的原因可能是该巨鲸的头寸过大,市场上并没有足够多的流动性让清算人买入。从下图可以看到,该巨鲸在Aave 中存入了5794 万USDC,借入了8342 万CRV。
而从CoinGecko 和区块链浏览器中可以看出,CRV 代币的流通量只有6.37 亿,巨鲸借出的CRV 数量高于所有外部帐户持有者。例如,截至11 月25 日,Aave 的合约中只有4212 万CRV,持币量第8 的Binance 14 地址中也只有2021 万CRV。
在DEX 中,Uniswap V3 的相关交易对中流动性最高的ETH/CRV 交易对中,流动性共176 万美元,只有148 万CRV。因此,市场上并没有足够的流动性供清算人买入,完成清算。每一次清算后,剩余的资金会补充到抵押品中,使剩余债务的清算价格上升。但是在清算过程中,CRV 的价格继续上涨,最终导致Aave 产生坏帐。
简单总结,大部分的借贷协议目前采用的方式是超额抵押,当价格波动时由健康因子监控是否需要清算,以及清算多少。这里我们只讲了最简单最基本的借贷业务,实际上各个协议之间也各有特色,如Compound是去中心化的点对点模式,资金池运用模式使池内资金达到了极高的利用值;AAVE首先提出了闪电贷,借款+操作+还款在一个区块内完成,原子性决定了这笔交易要么全部成功,要么全部失败;AAVE V3更提出了资产跨链流动的功能;而Euler,Kashi和Rari等借贷平台通过无许可的借贷池更好地满足长尾资产的需求。
搞明白链上借贷协议的业务逻辑之后,就可以着手分析了,接下来我将列出一些常用于评估借贷协议的一些指标。需要注意的是,在智能合约中资金的流动虽然只有入、出两个方向,但是所代表的意义有所不同,需要结合智能合约、区块链浏览器来辅助判断。
即有多少金额锁定在借贷协议的智能合约中,TVL代表了协议的流动性。从defillama数据来看,整体借贷市场TVL超过$10 B,前五的TVL总和约为$9.5 B,其中AAVE独占$3.9 B。
以Arbitrum上的AAVE V3为例,做TVL的查询。
基本思路是:将AAVE智能合约中,定义为'Supply'的存入资金,减去定义为'Withdraw'的提取资金,就是锁定在合约中的总价值。打开Arbscan找到一笔AAVE的交易,点开log可以看到 topic0 = '0x2b627736bca15cd5381dcf80b0bf11fd197d01a037c52b927a881a10fb73ba61' 对应智能合约中'Supply'的行为。
类似的,topic0 = '0x3115d1449a7b732c986cba18244e897a450f61e1bb8d589cd2e69e6c8924f9f7' 时对应'Withdraw'的行为(注,在Dune中topic1指的是etherscan中的topic0)。在Dune里,从Arbitrum的log表中选择发往AAVE V3合约的交易,根据topic定义“存入“和”提取“这两个动作(action_type)。存入为正提款为负,相加之后就是在合约内锁定的代币。用bytearray_ltrim(topic1)
函数得到转账token的地址,用bytearray_to_uint256(bytearray_substring(data, 1 + 32, 32))
函数得到转账token对应的数量(非usd计价金额)。
到此我们得到了锁定在智能合约中的token数量,要得到美元计价的TVL,我们还需要将token和其价格匹配,这里我们手动选取了一些主流的币种:
用raw amount除以对应token的小数位(decimal)(例如ETH的decimal是18,USDT的是6),得到实际token有多少枚,再和对应价格相乘得到以usd为计价单位的金额,求和后得到总的TVL。
参考:https://dune.com/queries/1037796/1798021。
即外借出去尚未归还的金额。与计算TVL时类似,参考区块链浏览器的数据,找出topic0(1)所对应的合约功能,用借出的(‘Borrow’)减去已偿还(‘Repay’)的。
参考:https://dune.com/queries/1037796/1798021
简单理解就是存入协议中的资金有多少被真正利用起来(借走)了,当前Arbitrum上AAVE V3的资本效率大约在30%,处于一个低杠杆水平,对比21年牛市时,资金利用率在40%-80%之间。有了前两段的基础,计算这部分并不困难,参考https://dune.com/queries/1037796/1798141。
包括合约锁定资产构成和用户行为分布,参考:https://dune.com/queries/1026402/1771390。
AAVE在Arbitrum上资金池中占比前三的是WETH(37.6%)、USDC(29.5%)和WBTC(22.6%)。目前还处于熊市,用户对杠杆需求不强烈,整体以存款吃息为主。
一些基础的协议分析指标,如用户数,交易数,日均变化量情况,参考:https://dune.com/queries/1026141/1771147。
Arbitrum上AAVE V3的综合dashboard。
https://dune.com/sixdegree/aave-on-arbitrum-overview
将以太坊上三大经典借贷协议Maker,AAVE和Compound进行对比的dashboard。不过这个dashboard比较老,用的是Dune V1引擎,Dune即将下架V1,今后只使用V2,所以大家学习时借鉴思路即可。
https://dune.com/datanut/Compound-Maker-and-Aave-Deposits-Loans-LTV
https://foresightnews.pro/article/detail/17638
https://learnblockchain.cn/article/5036
https://twitter.com/0xhiger/status/1595076528697905157
https://www.blocktempo.com/why-do-defi-lending-protocols-generate-bad-debts/
https://www.panewslab.com/zh/articledetails/k1ep9df5.html
https://new.qq.com/rain/a/20201121A096UF00
SixdegreeLab(@SixdegreeLab)是专业的链上数据团队,我们的使命是为用户提供准确的链上数据图表、分析以及洞见,并致力于普及链上数据分析。通过建立社区、编写教程等方式,培养链上数据分析师,输出有价值的分析内容,推动社区构建区块链的数据层,为未来广阔的区块链数据应用培养人才。
欢迎访问SixdegreeLab的Dune主页。
因水平所限,不足之处在所难免。如有发现任何错误,敬请指正。