本文以Compound金融为案例,分析了新兴的DeFi生态系统的风险。
入门
区块链狂热者和机构投资者们正把目光聚焦于以太坊区块链上运行的开放式金融平台。鉴于当下利率的历史性新低,与传统投资品相比,开放式金融应用有提供更高收益率的潜力。这些开放式金融平台通过智能合约和区块链技术提供金融产品和服务,并赋予它们透明、去中心化以及去中介化等新兴特质。
-图0:以太坊上热门DeFi产品之间的用户关系-
Compound借贷平台是以太坊区块链上一个广为人知的开放式金融应用。该平台是以太坊上蓬勃发展的DeFi生态系统的枢纽,它的使用量及所积聚的资产都展现出了显著增长。
-图1:质押在DeFi中的ETH数量以及ETH价值-
有了此等日渐提高的普及度及有用性,Compound遂成我们在理解开放式金融带来的机会和风险时的一个关键样本。与其它不透明的金融系统不同,投票且不可更改历史记录的区块链让我们有能力检查去中心化系统中有关货币与债务的部分。引领用户进入这个未来的金融世界要基于共享知识,而这些知识扎根于实证分析。
Compound用户应当充分认识到由去中心化借贷带来的风险。包括:
智能合约安全性风险
管理/协议风险
流动性/银行挤兑风险
信用风险
在《在Compound上存款生息需要注意的几种风险》一文中,AmeenAoleimani详细阐述了前两种风险,并暗示了流动性/银行挤兑风险的存在。
而这篇文章中,我们会重点讨论第三种风险,用经验数据来分析Compound金融市场中的流动性风险。
本文中所有的“SAI”均指代在MakerDAO单抵押品时代被叫做“DAI”的代币。
合约地址为。
开放式金融中的流动性风险
Compound?借贷平台是一种“
去中心化协议,它可以根据供求情况,通过算法设定利率来建立货币市场,从而让用户能够无摩擦交易以太坊资产的时间价值?”。
简而言之,Compound允许用户:
出借区块链上资产到货币市场,从而赚取利率收益;
从货币市场借入链上资产。
BNB Beacon Chain预计将于7月19日进行张衡升级:7月12日消息,据官方消息,BNB Beacon Chain将于区块高度328,088,888(预计于7月19日)进行张衡升级,本次升级引入了BEP-255,将在信标链上实施链上资产对账,以提高安全性。[2023/7/12 10:51:09]
-图2:
简化的货币市场示意图-
在Compound借贷协议中,用户可将下列种类的代币——BAT,DAI,SAI,ETH,REP,USDC,WBTC,ZRX——存入借贷市场中以赚取利率收益。这些由用户自发提供的代币形成流动性货币池,成为其他用户贷款的资金来源。
一般来说,大家都认为,资金供应方可以在任意时刻将投入的本金和利息提现——即,Compound将为存款方留出足够多的?
流动性,以让他们可以随时使用他们的资金。然而,正如贷款方受制于流动性池的规模一样,资金供应方亦是如此;可借用的资金上限与可取出的资金上限之和便等于资金池的规模;而每一笔贷款都会缩小资金池的规模。
-图3:
2019年7月,SAI货币市场流动性受挫。
流动性有三度直逼0点,这意味着出借方和借入方都几乎无法做对应的提款和贷款操作。
-
流动性开始下降时,超出流动性上限的提现操作以及贷款操作都会失败。就流动性本身而言,这并非一个坏事。这可能只是供给和需求上升的表征,也是新兴市场的表征,因此在新生的密码学货币行业中,出现流动性不足的情况是意料之中的。Compound的设计者们早就料到会出现这种情况,因此该协议会通过浮动利率来调节市场供需。运算浮动利率的算法是写到货币市场的智能合约中的。在某一货币市场中,
当流动性较低时:
存款的年化收益率上升,激励用户提供资金
贷款的年利率上升,激励用户偿还其借入的代币
当流动性较高时:
存款的年化收益率下降,减少用户存款的激励
贷款的年利率下降,激励用户以低利率借入资金
该协议的浮动利率旨在以去中心化的形式应对流动性不足。然而,这样的开放式金融应用给用户造成的潜在风险为?
银行挤兑。
当存款方对市场稳定性感到焦虑,并试图快速同时提现超出平台可承受范围的资金时,
Horizen EON将于6月13日进行Gobi测试网升级:6月9日消息,Horizen 发文称,EON 将于 6 月 13 日进行 Gobi 测试网升级,通过更改一些费用参数来提高网络的安全性,对通过正在进行的漏洞赏金计划出现的漏洞实施修复,确保顺利过渡到 EON 主网启动。[2023/6/9 21:26:52]
银行挤兑?便会发生,从而引发更严重的对系统的恐慌及不信任。在开放式区块链金融应用的背景下,银行挤兑意味着强大的力量——无论是资本市场自身或是被操纵的利益——冲破了去中心化协议及其自动反馈机制。
-图4:
银行挤兑简化模型-
JohannesPfeffer,Alethio的联合创始人指出,“一旦系统中某一部分出现问题,例如DAI或其它稳定币崩溃,DeFi很可能就会上演银行挤兑。”这是一个众所周知的问题,也引起了区块链社区的重视。SAI和DAI稳定币的发行方MakerDAO有一套全局清算机制来处理市场崩溃可能造成的影响。不能否认的是,Compound采用激励机制以控制严重的流动性不足。然而,以下问题对开放式金融应用至关重要:
流动性枯竭的情形之前是否发生过?
Compound的价值是否会随着时间流逝而改变?
银行挤兑是否发生过?在将来有没有可能发生?
为了回答这几个问题,我们将以SAI,我们撰写本文时Compound借贷市场上最活跃的借贷资产,作为核心来分析。
流动性枯竭之解释
通过对Compound的分析,我们将流动性不足分为三个引导性的定义或“阶段”,最终给出我们的结论:
准流动性枯竭:当流动性接近0时产生。然而,由于流动池较小,暂时还没有发生提现或贷款失败的情形。
实际流动性枯竭:当由于流动池中资金不足导致提现或贷款失败时。
银行挤兑:连续提现行为导致流动池迅速耗尽,直到“零供给”,更大的市场恐慌出现。
下表显示了2019年7月Compound的SAI市场中总借出与总借入量。
-图5:
SAI借出与借入量——统计于首次变更利率合约时-
在图5中:
绿色的线为SAI总存款量
红色的线为SAI总贷款量
郑州获批创建国家区块链发展先导区:金色财经消息,工信部日前正式复函河南省工信厅,支持郑州市创建国家区块链发展先导区。河南省积极抢抓机遇推进区块链发展,今年5月已制定出台《河南省区块链技术应用和产业发展行动方案(2022—2025年)》,全力打造区块链创新高地。
目前,河南省相继成立了河南省区块链产业联盟、河南省区块链研究院、河南省区块链专家委员会;建设了河南省区块链展示中心、区块链公共服务平台;打造了河南区块链开源社区,教育部批复了河南省首个区块链工程学院(本科);揭牌了河南省区块链产业园区,通过集聚优势资源,培育区块链技术、产业生态和应用服务体系,构建产学研用一体化发展格局。(河南日报)[2022/9/9 13:18:47]
灰色的线为利用率
蓝色圆形——绿色和红线?
贴近?处——为流动性枯竭及准流动性枯竭之时
7月份SAI货币市场总共发生了三次?
准流动性枯竭?以及一次?
实际流动性枯竭——分别发生在7月15日,19日以及23日。我们注意到一些有趣的共性。
存款方提现
并非导致?
准流动性枯竭?的元凶。在这些日期,绿线并
没有显著下跌。
连续的大规模贷款
才是?
准流动性枯竭?产生的真正原因。在这些日期,红线突然出现尖峰。
这些贷款使得流动性资金池减少到?
几乎?所有可用资金都被借走的地步。
在两种流动性不足所导致的操作失败中,贷款失败的负面影响相对较小。显然,无法从资金池中提现自己的资金相较无法借走一定数额的资金更加严重。因此,我们的重点是,人们试图提现自己的资金,却由于流动性不足而操作失败的时刻。
那么,Compound是否出现过?
实际流动性枯竭?的情形?换句话说,尽管流动性几乎贴近0,但实际上是否有人遇到过流动性导致的从协议提现失败的问题?
答案是,有。
-图6:
所有流动性枯竭事件-
上表显示,在整个Compound货币市场的历史上,提现失败已然发生三次之多,其中有两次与BAT有关。介于BAT市场正处于形成初期,且交易量较少,我们并不认为这些提现失败很能说明问题。更值得关注的是2019年7月19日在交易量更大的SAI市场上发生的案例。因此,我们可以下结论:图5中显示的2019年7月间发生的三次准流动性枯竭中有一次乃是?
实际流动性枯竭。
Voyager债权人反对公司奖励关键员工的计划:金色财经报道,Voyager的债权人不希望公司向员工支付留任奖金,理由是该公司没有提供需要支付的理由。他们的反对意见是在 Voyager 提交动议请求法官批准一项耗资 190 万美元的“关键员工保留计划”(KERP)?后大约三周提出的。根据该计划,Voyager 将 38 名员工标记为对业务至关重要。但债权人委员会并不相信 38 名关键员工需要留用奖金,因为 Voyager 没有提供他们可以辞职的证据。此外,他们指出,自申请破产保护以来,只有 12 名员工自愿辞职。[2022/8/22 12:41:16]
-图7:
更加详细的表5——唯一一次SAI提现交易失败发生之际。
参见区块浏览器。
-
图6将7月19日发生的提现失败标记成了黄色,图3以及图5中也能观测到这一事件。图7是有关这一时刻的放大版示意图。未能生效的提现交易原本试图兑现344020.128054枚cSAI代币——当时的cSAI兑SAI比率为0.0203495763,意味着这笔交易价值7000.66SAI。然而,同一时刻市场中的资金利用率已超过99.97%,可用的流动性仅有5790.16SAI。
对于交易发起人而言,这一事件意味着TA尝试提现自己名下的34.4万枚cSAI,但由于应用无法提供足够的资金,提现失败发生了。作为回应,Compound调整了利率模型,以激励用户重新形成更大规模的资金池,从而使流动性回到一个较高水平。这一措施带来的结果是,不到5分钟的时间,这笔提现就得以成功兑付。
-图8:
在初次尝试失败后不到5分钟,用户成功提现34.4万SAI。
-
千钧一发?
我们完全可以把7月19日发生的提现失败当作一个不常见的特殊案例。然而,尽管事实可能确实如此,深入的分析显示Compound金融过去已然经历了几次千钧一发的时刻。
我们将展示规模较大的五次事件,并深入分析其中最严重的一次。
-图9:
五次规模较大的“千钧一发”时刻——让可用流动性大幅降低的提现操作-
在这五次事件中,Compound遭遇了足以让可用流动性下降超过四分之一的单笔提现。
其中最大的一笔于7月23日18:04发生于第8208406个区块。。一个地址发起了超过21万6千枚SAI的提现,让流动池瞬间跌至仅有1万零9百枚SAI。下图展示了大体量的资金供应方以及在这次提现行为发生
Curve Gauges移除UST池并停止提供流动性激励:5月26日消息,Curve Finance社区成员已经投票决定终止从所有UST流动性池中释放CRV,该提案已经通过并执行。
据此前报道,Curve社区发布新提案建议将UST池移除出Gauges,不再向其提供流动性激励,此举旨在防止添加流动性时产生的高滑点,以及部分用户通过流动性池不均匀的分布获利等情况。[2022/5/26 3:43:43]
之前市场的流动性情形。
-图10:
剩余流动性的临界线——意味着仅有部分大户可以完整地提现其借出,其它大体量存款方则不能-
我们亦能看到,即使在这笔21万6千枚SAI巨额提现交易发生之前,位列存款量前三十的大部分用户也无法将他们的资金全额提现。可以想象的是,图中这根临界线面临两种压力——存款方会通过注入资金将这条线推向右边,而提现方/贷款会将其推回左边。在地址为?0x…5e3d的用户提现了21万6千枚SAI后,可用流动性降至1万枚SAI以下,使得更多用户无法成功提现:相较该笔提现前,另有2125位之多的用户面临无法全额提现的问题。
黑天鹅危机:银行挤兑
因此,我们根据这些图片可以得出结论:Compound金融中已经发生了至少五次准流动性枯竭以及一次实际流动性枯竭。有些人对此已有所警觉,但大部分人选择忽略这些事件。通过调整利率模型,协议重获其功能性以及流动性。但鉴于事实证明Compound的激励机制无法有效对冲流动性枯竭的风险,并且还会导致提现失败,我们必须准确评估银行挤兑发生的风险。一次被证实的流动性不足也许只会影响一位或数位用户无法成功提现,但?
银行挤兑?却会让大量其它用户也无法提现,即使他们只持有相对较小的存款额。
随着Compound用户基础的增长,贷款规模的扩大极大地削减了流动性,这可能让存款方陷入恐慌,并开始提现资金。首先,大额的提现会失败,同时随着流动池进一步缩小,越来越多的用户将无法成功取回他们的资金。最终结果将如同传统的银行挤兑一般,唯一区别是它发生于去中心化的平台。
可以预见的是,类似这样的银行挤兑将会成为“黑天鹅”事件——也就是终生难遇的不可预测事件,因此也对于用户而言也难以预防。然而,我们已经知道历史上的五起流动性枯竭以及一次取款失败事件。此外,通过检测借出者与借入者,我们也能观察到,在某些时刻流动性有多接近于0点。
缓解流动性不足与银行挤兑风险
引入监控措施
流动性枯竭的情形总会出现。尽可能快地向开放式金融用户提供有关的信息才是帮助他们避免和/或应对流动性风险的最佳办法。及时的警报能帮助用户更好地理解DeFi应用,促使他们做出抉择并采取行动,从而更好地实现其财务目标。
有效的警报及监控设施能:
理解来自区块链及其它去中心化应用的数据
能不断重复以下步骤:“告知?敦促做出抉择/采取行动?告知?敦促做出抉择/采取行动……”
衡量抉择/行动的效果,并将其整合到数据中
我们相信Alethio能做到以上这些。
利用Alethio的监控工具,用户可以对任何已部署的智能合约或账户设定活跃且可自定义的监控。有了这些监控,一旦设置的条件触发,用户就可以实时获得警报。Alethio监控能够免去用户主动搜索信息的操作,同时满足用户实时访问链上数据的需求。
-图11:
在Alethio监控中设立目标如此简单-
-图12:
根据你的目标设立特定警报——图中展示的是cToken合约。
该警报将监控SAI流动性。
-
上面的截图展示了Alethio监控页面中有关Compound流动性的警报。每当流动性下降1%——或是任何设定的百分比或数值——监控就会发出警报。
总而言之,我们已经将警报功能搭建好,以让现有和潜在的用户能够更加放心地使用诸如Compound这样的开放式金融产品,并希望借此将DeFi系统发扬光大。有方便的渠道获取数据、信息和分析,用户才能安心地使用开放式平台。我们已开发好Alethio组件,力求便利以太坊用户。而且随着整个生态系统的成长,我相信我们能够将其发展得更好。
附录:Compound的利率激励技术
作为借贷协议,Compound的工作原理如下所示:
-图A:
Compound流动池简化示意图(注:
当贷款方存入抵押资产时,他们实际上是抵押品代币市场上的供方。
只是为简单起见,我们才这样直白地称呼双方)-
存款方将下列七种代币之一存入相应市场中,同时贷款方凭借抵押品借走这些代币。贷款方借入的款项是从存款方存款所形成的资金池中取出的。由于每笔贷款都会缩小流动性池,贷款规模受限于流动性池的规模。然而,不是只有贷款才会缩小资金池。
-图B:
存款方提现活动的流动池示意图-
一个对Compound的普遍理解是,借出方可以在任何时间提现他们的存款。但真是如此吗?正如前文所提及的,用户可贷的款项受流动池规模限制;图B展示了协议在两个方向上的资金流出——贷款方的贷款、存款方的提现,都会减少流动性池中的资金。一旦流动性开始减少,超过流动性的提现或借贷将无法完成。
因此,两种流出资金最终会汇总到一个数字上——利用率。根据Compound白皮书:
-对任一种代币的市场α,都有利用率U=贷款量/-
利用率不仅能展示哪个代币市场需求更高,也能作为市场的监管机制。然后,利率根据利用率和算法得出,以使得市场能达到供需均衡状态。这可以通过白皮书中提及的一个简单的等式来表达:
-示例:
贷款利率=2.5%+U*20%-
请注意,以上两个公式中的常量仅作为示例;尽管它们被硬编码在每个市场相关的利率模型合约中,通过完全更新利率模型合约,它们也能被更改。第一个常量称为基本费率,第二个称为倍率。此外,该公式还展示了贷款利率的上限。
本文撰写之时,在Compound的七个货币市场中存在着三种不同的利率模型合约,每种合约都有其特定的参数。现在,让我们探索这些合约中曾发生的改变——更重要的是,要了解这些改变发生时的背景。
利率模型
到目前为止最有趣的是?
SAI?市场发生的两处改变。发生的改变如下所示:
0xa1046abfc2598f48c44fb320d281d3f3c0733c9a?—原始合约,五月七日由交易?0x8caa40e8b5227b7a1079a9e883d92de018957e5256f356aa6d28b2610e7b1c44
创建
基本费率:5%
倍率:12%
最大贷款利率=最大存款收益率=17%
0xd928c8ead620bb316d2cefe3caf81dc2dec6ff63?—第二份合约,七月十九日于?0x3abfc9be9f02c449bf85750736ecdca25bbe33e3632cae9c682824fd97e16cc9
创建
基本费率:5%
倍率:15%
最大贷款利率=最大存款收益率=20%
0xa1046abfc2598f48c44fb320d281d3f3c0733c9a?—回归原始合约,九月十六日由交易?0xd763ddbd5f7444bacc3dcbb2e21b4b8c864fd1b4bccf05ab11192e27a1acbbc1
激活
基本费率:5%
倍率:12%
最大贷款利率=最大存款收益率=17%
原文链接:
https://medium.com/alethio/overlooked-risk-illiquidity-and-bank-runs-on-compound-finance-5d6fc3922d0d
作者:?BogdanGheorghe、MomoAraki、EverettMuzzy
翻译&校对:?周瑾?&阿剑
本文由原作者授权EthFans翻译及再出版。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。