MakerDAO的黑色星期四:被0价格拍走的质押品

转载
1705 天前
4579
以太坊爱好者

来源:以太坊爱好者    作者:whiterabbit    翻译: 阿剑


  • 3 月 12 日和 13 日,MakerDAO 的清算活动导致协议损失 567 万美元
  • 这是因为一些人用近于 0 的价格赢得了流动性拍卖,这部分质押品占到了全部拍卖数量的 36%
  • 损失最大的 Vault 债仓损失了约 35000 ETH
  • 总计价值 832 万美元的 ETH 以 0 价格被拍走

背景介绍

ETH 价格的大跌,以及以太坊区块链的拥堵,导致 MakerDAO 协议系统出现赤字(平台本身开始负债),因为 567 万美元的 DAI 的质押品不足以支撑其价值。问题并不是因为 ETH 价格的迅速下跌而起,而是因为一些 keeper(清算人)的操作手法。

实情如下:

  1. 将交易打包上链所需的 Gas Price 随着以太坊区块链的拥堵而逐渐升高(拥堵的部分原因是更新 Chainlink 预言机消耗了许多 Gas)
  2. Gas Price 的飙高导致 MakerDAO 的预言机迟迟不能将带有价格更新的交易发送给 MakerDAO,哪怕他们已将交易的 Gas Price 提高到约 30 美元。同样地,预言机收到的价格也因为 OSM(预言机安全模型)而有所滞后。
  3. 等到协议中的价格完成更新时,系统中已经出现了大量的清算获利机会。需要指出的是,有些清算人使用的是来自 MakerDAO 的脚本,其本身是不会自动调高 Gas Price 的,这就导致实际参与清算的清算人数量减少了。
  4. 某个用户突然想到,网络拥堵问题创造了千载难逢的独特获利机会。他们开始发送竞拍所要求的最小 DAI 额度。因为那时候没人跟他们竞争,他们就以近于 0 DAI 的出价获得了许多高达 50 ETH 的被清算资产(译者注:这在一定程度上是因为拍卖期设置得不够长)。
  5. 随着时间推移,网络的状态发生改变,其他清算人也开始使用这种策略。
  6. 而且,债仓所有者不仅损失了为将仓位回到一定水平而追加的质押品,还损失了存在债仓中的质押品。

因此,Vault(债仓)所有者,系统本身以及 MKR 代币持有者(主要是后者)都遭受了损失。一小部分清算人还有 DAI 的持有者在这次事件中获益,因为 DAI 的价格也因为流动性的需要而高出 1 美元。

关心 MakerDAO 治理的人很快意识到了这个问题,称这一天为 “黑色星期四”,并组织了一次电话会议来计划消除系统债务的措施。他们没有采用紧急全面停机(Emergency Global Shutdown)的方法,而是采用了对整个生态伤害没有那么大的方案,叫做 “债务拍卖”。在拍卖活动上,用户可以用 DAI 来购买新铸出来的 MKR token。这样做也会稀释当前 MKR 持有者所持有的份额。预计售价为 200 DAI,一手的 MKR 数量为 250 个(只能按手买),因此小玩家就很难参与了。Dharma 提出了一个 Maker Backstop Syndicate 计划,来帮助小散户把钱汇集起来参加拍卖。而 Paradigm 已经组织起来准备好跟 Dharma 竞争了。

与此同时,人们在 MakerDAO 的论坛里也讨论出了新的系统参数,应该能避免重蹈覆辙。单次拍卖的最大拍卖数量从 50 ETH 提高到 500 ETH,并且拍卖期也延长了。很难说这些调整会如何影响整个系统,因为这些参数也带来了额外的风险、需要更多的资本来参与,不过,它们显然会让黑色星期四这样别有用心的操纵活动变得更难。目前,这些参数已经调整完成,不过从治理达成共识到实际完成升级间隔了 1 整天的时间。这种滞后性是由三周以前的 GSM(治理安全模块)决定的 —— 该模块使得投票结果出来之后,还要隔一段时间才执行提案。Rune 在论坛上提到,如果没有 GSM,拍卖过程中出现的问题可以更快解决。但是,安全总是要有所牺牲的。

分析

为获得对实情的前后连贯的理解,我们收集了过去两天的流动性数据(译者注:本文撰写于 3 月 15 日)。数据都是来自以太坊区块链。

以下是从数据中得出的简要总结:

我们先从整体来看看这两天的清算情况。我们可以看到与预言机价格骤变紧密相关的清算活动高峰:即 15 时至 16 时的高峰和第二天 0 点至 1 点的高峰(此处及下文都统一使用 UTC,协调世界时)。


- 3 月 12 日至 13 日的清算量分布,数据来自以太坊区块链-

有人可能会问:为什么不是价格改变之时(约 14 时)立即出现清算活动的增加呢?答案是:因为 MakerDAO 的债仓清算是拍卖用户为债务提供的质押品,而要竞拍成功才能完成清算。在 0 价竞拍策略出现以后,一些清算员也开始这么做,这又导致了一些竞争。这种竞争活动保住了一部分债仓的价值。

以 0 价格竞拍成功的清算人,等于是以 100% 的折扣获得了质押品。这部分清算活动所导致的系统损失,累计高达 832.5 万美元。损失的分布与签名的价格及清算数量分布图表一致:


- 0 价格竞拍清算人的累计利润走势,数据来自以太坊区块链 -

在 3994 笔清算交易中,1462 笔(36.6%)实现了 100% 折扣。也就是说,所有清算活动中,超过 1/3 的部分是 keeper 免费获得的。


- 清算活动的折扣分布,数据来自以太坊区块链 -

总结之下,我们发现了 4 个使用 0 价格竞拍策略的地址。他们总共赚到了 62892.93 ETH:


- 使用 0 价格竞拍策略的 Keeper,数据来自以太坊区块链 -

我们来看看这些在第一批拍卖中使用 0 价格竞拍的交易发起时间。显然,在这些交易被打包到区块中后,他们的竞争对手也开始有样学样:

  • 0x9c05a05893ada984fc20d0da0c046de5cc0e8273 2020–03–12 12:49:00
  • 0x9631a838a81d4050c43c66bc03a0cf414243f661 2020–03–12 13:02:00
  • 0xb00b6d69822da235a99d2242376066507c9a97b7 2020–03–12 13:09:00
  • 0xb400cd43dc25db30c07e665903a052ac120c30ad 2020–03–12 15:48:00
  • 0x6066be9369b4eaf5847c9f01eb52ae1e81f2d6b0 2020–03–12 16:59:00
  • 0xb8bbf36ba36fc78f3f137c514af33709fffba604 2020–03–12 20:46:00
  • 0xcdef772ca4f12c4fe23c09a3961186d065a6a4ca 2020–03–13 00:15:00
  • 0xc2f61a6eeec48d686901d325cde9233b81c793f3 2020–03–13 01:15:00

我们同样查验了债仓的情况,下图展示了 10 个损失最大的 Vault(其损失就是清算人的获利):

- 损失最大的 10 个 Vault 的清算量分布,数据来自以太坊区块链 -

你们可能会注意到,其中一个债仓损失了接近 35000 ETH。其它 Vault 的损失少得多,但他们在社交媒体上披露了出来,比如 Vault #849 和 Vault #4458 及其它债仓的用户,在 Reddit 论坛上披露了信息。

总结一下

如你所见,清算过程中出现的这些情形,对整个社区以及 Maker 的声誉,都产生了巨大的影响。我们希望我们的研究能帮助大家了解整件事的来龙去脉,也能帮助 Maker 团队克服当前的困难。

我们相信社区应该有开放的心态,并保证信息的充分传达,因此,我们把我们所收集和使用的数据都放在了 这里。