cyfuer

May 26, 2021

Defi中的无常损失是什么?

2020年由基于以太坊的DEX Uniswap 领头引入了自动化做市商(Automated Market Maker,AMM),为Defi带来了流动性,也让Defi在这一年彻底爆发。
 
用户可以通过向流动性池添加流动性交易对来赚取收益,但同时也面临着风险,一是交易对中任一币种的涨跌,二是无常损失。币种的币价涨跌很好理解,那什么是无常损失呢?
 
在这之前,我们先了解一下什么是自动做市商。
 

自动做市商

自动做市商就像一个订单簿交易所,但交易商不是交易对手,而是与一个为他们 “做”市场的智能合约互动。这些做市商与外部交易所断开联系。因此,一项资产的价格是由一个公式决定的。然而,当一个代币的价格发生变化时,自动做市商在套利者的帮助下调整其价格。他们继续购买价格过低的资产或出售价格过高的资产,直到自动做市商提供的价格与外部市场相符。
但如果没有对手方参与,自动做市商如何创造市场?这就是流动性提供者(LP)发挥突出作用的地方,也就是说,他们向资金池提供流动性。任何人都可以通过将他们的加密货币存入资金池来为自动做市商提供流动性。例如,Uniswap允许用户通过存入两个金额相等的资产来成为流动性提供者。 例如,假设你想向ETH/UNI池添加资金,你需要提供50%的ETH代币和50%的UNI代币。作为提供流动性的交换,流动性提供者从在池中交易的交易者那里赚取费用。由于Uniswap对交易收取0.3%的费用,这笔费用会分给每个提供流动性的人。 但是,如果锁定在资金池中的资产价值增长或下降呢?在这种情况下,流动性提供者会损失一部分流动性,这就是我们所说的 “无常损失”。
 

无常损失

存放在自动做市商上的流动性池子里的资产很容易出现无常损失。当存入的资产的价格波动时,无论方向如何,都会发生这种情况。变化越大,无常损失就越大。之所以说是 “无常”,是因为只要加密货币能够恢复到存入自动做市商时的价格,就不会发生损失,流动性提供者可以获得100%的交易费用。当套利者买入或卖出一项资产以平衡其在自动做市商上的价格与外部市场时,就会发生这种情况。从套利中获得的利润被从流动性池中移除。
 

如何计算无常损失?

“无常损失 “一词最早是由Pintail创造的,这个Medium账户分享了一种计算流动性提供者损失的方法。
本质上,无常损失是提供流动性时发生的资金暂时损失/非永久性损失。之所以叫做非永久性损失,是因为只要在AMM中的代币相对价格恢复到其初始状态,那么,该损失就消失了。但是,这种情况很少发生。通常,无常损失会变成永久性损失,吞掉你的交易费用收入甚至导致负回报。
当AMM中的代币市场价格在涨或跌时,就会产生无常损失。波动越大,无常损失越大。
 
下面用一个简单案例来帮助充分理解无常损失:
假设你作为流动性的提供者(即LP)向DAI / ETH Uniswap 50/50池提供流动性。为了向50/50池提供流动性,流动性提供者(LP)必须向池提供两个等值的token。(即提供DAI/ETH时,你提供两个币种流动性的价值(即价格*数量)需要相同。
假设此时DAI=1 USD, ETH=500 USD, 你需要提供20个ETH,和10000个DAI。
currency
price
supplied
value
DAI
$1
10000
$10000
ETH
$500
20
$10000
你提供万流动性后,此时,两个token的价值是相同的。
假设,ETH的价格在外部的交易所中开始上涨。中心化交易所的ETH价格从500涨到了550美元。于是其他市场参与者(称为套利者)就开始工作了。套利者注意到中心化交易所和Uniswap之间的价格差异,并将其视为套利机会。
随着套利者从池中购走更多的ETH(即取走ETH流动性),ETH的价格就变得越高。套利者不断在Uniswap上购买更便宜的ETH,直到交易所之间不再存在价格差异为止。
使用恒定乘积公式,我们可以看到Uniswap ETH价格将达到550美元的时候,池中的情况会被套利者变为有10488.09个DAI和19.07 个ETH。
也就是说套利者花费488.09个 DAI买走了0.93 ETH,以实现Uniswap和Coinbase的ETH价格之间的平衡。此时,套利者的成本是1 ETH = 524.83 DAI 。套利者购买的ETH可以在外部的中心化交易所以DAI或任何其他基于美元的稳定币即时出售,价格为550美元。于是套利者从中赚取了约25美元(减去手续费)。
notion image
让我们看看这如何影响我们的流动资金提供者(LP)。
我们可以看到,如果流动性提供者一开始不提供流动性,而是把ETH和DAI放在钱包里面,他们将拥有$ 23.41的收益。这23.41美元基本上是LP的无常损失。
无常损失被称为非永久性,因为在此时此刻,LP只是在账面上损失了23.41美元。如果LP选择不撤回其流动性,当之哦户后面以太坊的价格回到500美元时再取出来,此时无常损失被抵消为0。
另一方面,如果LP决定在以太坊550美元时决定撤回其流动性,他们将永久性的损失23.41美元。
当然了,上述情况没有包含流动性提供者(LP)在提供流动性期间所赚取的手续费(0.4%每笔交易),以及流动性挖矿的收益(不是每一个流动性提供者都有此收益,而且流动性挖矿的收益是随时变化的)。
也就是说,即使你参加的流动性挖矿,可能展示出来极高的收益,但是如果挖矿的资产价格突然暴跌,并永远回不到你提供流动性时的水平,你的无常损失就会变成永久损失。而且你的永久损失,可能大于你的挖矿收益。
一般情况下,价格暴跌的资产就是你挖矿所得的资产,一旦其价格暴跌,挖矿收益率也会暴跌,同时无常损失会剧增。这会引发其他流动性提供者停止提供流动性,一旦流动性撤走,资产的价格就更容易继续暴跌。这就是所谓的“死亡螺旋”,或者说“矿难”。
 

如何避免无常损失?

虽然没有办法避免无常损失,但流动性提供者仍然可以采取一些措施来减轻风险:
  • 使用稳定币对。在稳定币对中提供流动性是避免无常损失的最佳选择。由于稳定币的价值波动不大,它们的套利机会较少,从而降低了风险。然而,与此同时,持有稳定币的流动性提供者不能享受加密货币市场的上涨。
  • 避免不稳定的货币对。与其选择历史不稳定或波动较大的加密货币,不如挑选不会使流动性面临无常损失的货币对。
彻底搜索市场。加密货币市场是高度波动的。因此,存入的资产价值上升或下降是正常的。然而,流动性提供者必须知道在价格偏离初始比率太远之前,何时撤出他们的加密货币。

Copyright © 2025 cyfuer

logo