链资讯 链资讯
Ctrl+D收藏链资讯

DAT:DeFi 借贷概念:清算_ETH

作者:

时间:

原文链接:https://medium

//..

源码

很明显,当用户没有债务时,他们的头寸不能被清算,所以健康系数默认为type(uint256).max。

否则,"健康系数"定义为:

注:AAVEV2以ETH表示其抵押品和债务价值。

其中"LiquidationThreshold"是通过治理为每个资产独立定义的,这项任务目前委托给Gauntlet,它为协议提供所有风险参数,包括"LiquidationThreshold"。

穿仓头寸分析

现在我们已经涵盖了坏账的概念,我们将提供一个真实世界的例子来说明其重要性

我们将涉及的头寸是AAVEV2的以下账户:0x227cAa7eF6D955A92F483dB2BD01172997A1a623。

让我们开始调查它的现状,通过调用AAVEV2借贷协议上的getUserAccountData函数:

现在让我们把上面看到的东西分解一下,体会一下这个仓位的水下情况有多严重:

债务总额:17.83508595148699eth

抵押品总额:0.013596360502551568eth

这就是我们需要了解的,这个仓位有问题--抵押品的价值对应其所产生的债务的一个微不足道的部分。

但是,这些头寸是如何达到这种状态的呢?

为了回答这个问题,我们可以看看这个用户在AAVE上执行的最新操作:

看起来一切都很好,直到13514857区块,其中用户从AAVE借用了一些资产。让我们看看他们做了什么:

债务人借了700,000MANA,快速检查一下MANA的美元价格会发现,价格是:

数据:近一周以太坊上DeFi协议总锁仓量上涨6.33%:欧科云链OKLink数据显示,本周以太坊上DeFi协议总锁仓量达819.9亿美元,较上周一上涨6.33%。锁仓量TOP3的币种分别为Curve(91.1亿美元)、Maker(83.4亿美元)、Aave V2(75.6亿美元);7日涨幅前三的币种分别为HARD Protocol(94.7%)、Keep Network(82.7%)、Beefy.Finance(69.1%);此外,当前以太坊上稳定币流通总量达到732.0亿美元,较上周同比增加0.91%,更多数据见下图。[2021/6/15 23:38:37]

每MANA单位0.00032838ETH。

所以通过一些简单的乘法,我们知道这个用户对协议的债务增加了:

0.00032838*700000=229.866ETH

也值得回顾一下这个区块的ETH的美元价格这里,它是4417.40美元。

注意上图中13517657区块发生的入金操作,就在借款后的几个小时。

让我们看看市场上是否有什么东西动摇了用户的信心:

?~cast?call?-?b?13517657?0xA50ba011c48153De246E5192C8f9258A2ba79Ca9?"getAssetPrice(address)"0x0F5D2fB29fb7d3CFeE444a200298f468908cC9420x000000000000000000000000000000000000000000000000000131d14dce4400

以上是一个发送到AAVEV2PriceOracle的RPC调用,以获得指定区块的1单位MANA的价值,单位为Wei。

如果我们用这个数据转换前述的价格,我们可以看到发生了什么:

0.00033625*700000=235.375eth

在短短的几个小时内,产生的债务是~5.5ETH,价值~24000美元。哎哟。

由于我们知道这个头寸的结局,我们知道它在某些时候是可以清算的,所以让我们检查涉及这个用户地址的liquidationCall的调用:

selectevt_block_number,collateralAsset,debtAsset,debtToCover,liquidatedCollateralAmount,liquidatorfromaave_v2_ethereum.LendingPool_evt_LiquidationCallwhereuser?=?from_hex('0x227cAa7eF6D955A92F483dB2BD01172997A1a623')order?byevt_block_number?desc;

美国银行:DeFi可能比比特币更具颠覆性:金色财经报道,美国银行认为去中心化金融(DeFi)可能比比特币更具颠覆性。美国银行表示,比特币是被谈论最多的加密货币,但以太坊(区块链)具有更多功能,包括在托管DeFi方面比比特币更灵活。[2021/3/19 18:58:55]

可以随意在DuneAnalytics上运行上述查询。

一旦我们找到第一个清算事件,我们就可以理解为什么用户在借贷后不久就存入了资产:

+------------------+--------------------------------------------+--------------------------------------------+-------------------------+----------------------------+--------------------------------------------+|evt_block_number|collateralAsset??????????????|debtAsset?????????????????|debtToCover??????|liquidatedCollateralAmount|liquidator????????????????|+------------------+--------------------------------------------+--------------------------------------------+-------------------------+----------------------------+--------------------------------------------+|????13520838|0x6B175474E89094C44DA98B954EEDEAC495271D0F|0x0F5D2FB29FB7D3CFEE444A200298F468908CC942|17919685927295406794873|??58271102282974799175987|0xB2B3D5B6215D4FB23BF8DD642D385C4B44AADB2A|+------------------+--------------------------------------------+--------------------------------------------+-------------------------+----------------------------+--------------------------------------------+

DeFi保险协议Armor.Fi奖励发现其平台漏洞的开发者100万美元:DeFi保险协议Armor.Fi发现其平台漏洞的开发者Alexander Schlindwein100万美元(其中包含70万美金的代币奖励)。据官方介绍,该漏洞(可能会影响成功的索赔支付)已得到修复,并且没有影响任何抵押资产。

DeFi保险协议Armor.Fi宣布完成战略性融资,投资机构包括Collider Ventures、Delphi Ventures、Divergence Ventures、DeFiance Capital、Alameda Research、1kx、The LAO、Blocksync 和Bering Waters Ventures等。[2021/2/3 18:46:57]

在这里我们可以看到,第一次清算发生在区块13520838。这次清算是在用户还没有存入资金之前。

然后,在区块13520838-13522070之间发生了一连串的小清算,价值不菲:

selectcount(?*?)?as?num_liquidationsfromaave_v2_ethereum.LendingPool_evt_LiquidationCallwhereuser?=?from_hex('0x227cAa7eF6D955A92F483dB2BD01172997A1a623')and?evt_block_number?<=?13522070?and?evt_block_number?>=?13520838

+?-?-?-?-?-?-?-?-?-?+|num_liquidations|+?-?-?-?-?-?-?-?-?-?+|87|+?-?-?-?-?-?-?-?-?-?+

让我们检查一下在这些区块之间被清算人从用户那里扣押的所有抵押资产类型:

selectSUM(liquidatedCollateralAmount)?as?amountSeized,??collateralAssetfromaave_v2_ethereum.LendingPool_evt_LiquidationCallwhereuser?=?from_hex('0x227cAa7eF6D955A92F483dB2BD01172997A1a623')and?evt_block_number?<=?13522070?and?evt_block_number?>=?13520838group?by?collateralAsset

我们可以看到只有2种资产,DAI和ETH。

李启元:比特币是第一个也是唯一的真正DeFi:前比特币中国CEO李启元(Bobby Lee)在推特上表示,比特币是第一个也是唯一一个真正的DeFi。Yield farming指南:质押你的法币,把它变成BTC,囤积5年以上,得到巨大的回报。[2020/12/4 23:05:34]

+--------------------------+--------------------------------------------+|amountSeized??????|collateralAsset??????????????|+--------------------------+--------------------------------------------+|387663228503220484547359|0x6B175474E89094C44DA98B954EEDEAC495271D0F|+--------------------------+--------------------------------------------+|499940913071713798854??|0xC02AAA39B223FE8D0A0E5C4F27EAD9083C756CC2|+--------------------------+--------------------------------------------+

以及它们的金额:

~50ETH

~387,663DAI

有人可能会问,为什么清算会发生是一小块一小块进行的?

好吧,当像这样巨大的头寸被一次性清算时,市场会将如此大规模的抵押品清算理解为这些资产类型的卖出信号。记住:根据协议的清算人奖励政策,清算中获得的资产是以折扣价购买的。

随着抛售压力的增加,一次大规模的清算可能会产生一个清算的雪球。其他市场参与者可能也会出售他们的资产,导致资产价格进一步"抛售",这反过来又会导致协议中其他头寸的更多清算。

因此,协议通常限制一次清算所能处理的资产量。AAVE的这个限制的版本,作为一个变量,可以看到下面:

pragmasolidity^0.8.13;//from...uint256internalconstantLIQUIDATION_CLOSE_FACTOR_PERCENT=5000;functionliquidationCall(?addresscollateralAsset,?addressdebtAsset,?addressuser,?uint256debtToCover,?boolreceiveAToken)externaloverridereturns(uint256,stringmemory){??//...??vars.maxLiquidatableDebt=???vars.userStableDebt.add(vars.userVariableDebt).percentMul(????LIQUIDATION_CLOSE_FACTOR_PERCENT???);??//...

以太坊联合创始人:以太坊2.0将成为以太坊1.0上“最大和最复杂DeFi应用”:以太坊联合创始人兼软件公司ConsenSys创始人约瑟夫·鲁宾(JosephLubin)在最近接受YouTube频道BaselineProtocol采访时表示,以太坊1.0将会永远存在,原因是以太坊2.0只是从以太坊1.0自然过渡,以太坊1.0永远不会消失,以太坊1.0正在演变为以太坊1.5,它将是无状态的,并且容易被以太坊2.0吸收。以太坊2.0正在到来,现在正处于最终测试网的中间阶段,不同团队构建了许多以太坊2.0客户端,因此需要在测试网上进行流畅操作测试。约瑟夫·鲁宾还表示,以太坊2.0将成为以太坊1.0上的“最大和最复杂DeFi应用”。(Cointelegraph)[2020/9/12]

我们可以看到,限制比例是50%,这意味着在一次清算中只允许偿还头寸的一半债务。

清算人也有动力将清算分成小块。如果在清算时,市场上没有足够的流动性,无法将抵押资产全额提供给清算人。通过将清算分成小块,清算人有更大的机会获得流动资产,并从清算中获得利润。

此外,如果市场上的债务资产没有足够的流动性,那么清算人甚至在一开始就获得该资产以偿还抵押不足的用户的债务可能会成本昂贵。

最后,想象一下试图清算大量的某种你不拥有这么多数量代币。如果你去DEX并试图用一些WETH或任何其他资产来交换这个代币,你也可能会遇到很高的Gas费用,使你的清算无利可图。

回到我们的例子,为了检查清算链后的头寸参数,需要解析从getUserAccountData返回给我们的数据:

from?io?import?BytesIOfrom?binascii?import?unhexlifyfrom?dataclasses?import?dataclass@dataclass(frozen=True)class?UserAccountData:????totalCollateralETH:?int????totalDebtETH:?int????availableBorrowsETH:?int????currentLiquidationThreshold:?int????ltv:?int????healthFactor:?intdef?parse_user_account_data(uacd:?str)?->?UserAccountData:????uacd_bytes?=?unhexlify(uacd)????assert?len(uacd_bytes)?==?192????uacd_bytes?=?BytesIO(uacd_bytes)????total_collateral_eth?=?int.from_bytes(bytes=uacd_bytes.read(32),?byteorder="big",?signed=False)????total_debt_eth?=?int.from_bytes(bytes=uacd_bytes.read(32),?byteorder="big",?signed=False)????available_borrows_eth?=?int.from_bytes(bytes=uacd_bytes.read(32),?byteorder="big",?signed=False)????current_liquidation_threshold?=?int.from_bytes(bytes=uacd_bytes.read(32),?byteorder="big",?signed=False)????ltv?=?int.from_bytes(bytes=uacd_bytes.read(32),?byteorder="big",?signed=False)????health_factor?=?int.from_bytes(bytes=uacd_bytes.read(32),?byteorder="big",?signed=False)????return?UserAccountData(????????totalCollateralETH=total_collateral_eth,????????totalDebtETH=total_debt_eth,????????availableBorrowsETH=available_borrows_eth,????????currentLiquidationThreshold=current_liquidation_threshold,????????ltv=ltv,????????healthFactor=health_factor,????)

然后我们用cast来查询chain的情况:

???~?cast?call?-b?13522070?0x7d2768dE32b0b80b7a3454c06BdAc94A69DDc7A9?"getUserAccountData(address)"?0x227cAa7eF6D955A92F483dB2BD01172997A1a6230x000000000000000000000000000000000000000000000000085b5b5e846685f4000000000000000000000000000000000000000000000002743544e203a3e4ae00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f710000000000000000000000000000000000000000000000000000000000001d9500000000000000000000000000000000000000000000000000260a45667b706b

最后解析输出:

parse_user_account_data('0x000000000000000000000000000000000000000000000000085b5b5e846685f4000000000000000000000000000000000000000000000002743544e203a3e4ae00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f710000000000000000000000000000000000000000000000000000000000001d9500000000000000000000000000000000000000000000000000260a45667b706b')UserAccountData(totalCollateralETH=602175436690458100,?totalDebtETH=45267162967098778798,?availableBorrowsETH=0,?currentLiquidationThreshold=8049,?ltv=7573,?healthFactor=10707342303391851)

在这里我们看到了清算对头寸的影响:几乎没有任何抵押品了~准确地说,是0.6个ETH。但是债务呢?45.26716296709878ETH!

那么在这个区块的高度,MANA的价格是多少呢?

?~cast?call?-?b?13522070?0xA50ba011c48153De246E5192C8f9258A2ba79Ca9?"getAssetPrice(address)"0x0F5D2fB29fb7d3CFeE444a200298f468908cC9420x00000000000000000000000000000000000000000000000000031015cc1da8f2

0.000862110734985458eth!

如果你还记得,用户在几个小时前刚刚以0.00032838ETH的价格借入MANA。这相当于在一只股票上开了一个空头头寸,而这只股票的价格是火箭般的2.65倍--Oof???!

清算者无法在MANA的价格抛售得太厉害之前及时清算全部头寸,使这个过程无利可图,我们就剩下一个无力偿还的头寸。

现在我们可以体会到一个有效的流动性阈值的重要性,在避免协议中的坏账。

小结:

虽然我们不能明确地说,可以用一个方程式来定义头寸的流动性阈值,但我们肯定可以看到协议之间的相似之处:

所有协议都将其阈值定义为抵押品与债务的某个函数。

所有协议都留有一定的治理空间,以决定每个抵押品风险参数的价值,以应对市场条件的变化,因为一些资产比其他资产更不稳定。

所有协议都使用预言机对其抵押品和债务价格进行计价,并使用广泛接受的货币。

我们已经看到,Maker和AAVE选择使用相同的方程式来表示头寸的安全性:

作者:Tal研究员@smlXL,感谢SamRagsdale和为本帖提供建议和反馈的smlXL团队成员。

感谢Chaintool对本翻译的支持。

标签:DATETHBYTEBYTDatabits有人让我弄ETH是子吗CBYTE币BABYTK

以太坊最新价格热门资讯
数字货币:探讨美联储的全球困境_AVIC币

银行恐慌已经接近尾声,但美联储已经重新开始实行紧缩政策,这不仅会导致不可避免的破产和随后的救助,还会增强美国中央银行的全球影响力,美联储将很快采取行动来收紧的金融政策.

人工智能:深度对话帝国理工David Shrier教授:Web3与科技新宠AI的碰撞_加密货币是什么意思图片

原文来源:欧科云链研究院 原文作者:毕良寰 前言 在未来?5?年中,如果五分之四的人突然失去工作,这将给社会带来何种影响?在这场科技变革中,美国因其“任性”的监管态度可能会落后于其他国家.

API:为什么不该继续购买用BRC-20 “协议” 发行的代币_CAP

作者:Ajian BRC-20、上链的意义与“客户端验证”:为什么你不该继续购买用这些“协议”发行的token——它们根本不能被称为协议.

DAT:做数字黄金还是成为以太坊杀手?比特币站在了十字路口_ETHHD

5月8日,比特币异常拥堵,币安甚至不得不暂停BTC提现交易,这拥堵背后的主要原因是什么?BRC-20代币早在3月时便被提出.

比特币:BRC-20背后的“V神”:DOMO与BTC创新生态_brc币最新消息

brc-20相关生态愈发繁荣,因此我们将目光转到brc-20生态的推动者@domodata,揭开这位Ordinals协议背后“V神”的神秘面纱.

数字货币:投资人必须关注的2023科技新风向_AVI

「前言」 对全球科技公司来说,2022年是非常艰难的一年。自新冠病爆发以来,全球经济遭受重大打击,作为面向未来的科技行业,很大程度上标志着世界对于经济发展的信心,因此我们可以看到,2022年的.