当前位置:首页 > 区块链

什么是无常损失?DeFi 挖矿必看

95274周前 (09-06)区块链26

在去中心化金融(DeFi)领域,流动性挖矿已成为许多用户获取被动收入的重要方式。然而,许多新进入者可能没有意识到,提供流动性并非没有风险。其中,"无常损失"(Impermanent Loss)是一个关键概念,理解它对于任何参与DeFi挖矿的人来说都至关重要。本文将深入探讨无常损失的原理、影响以及如何有效管理这一风险。

无常损失的基本概念

无常损失是指当用户将资产存入去中心化交易所(如Uniswap、SushiSwap等)的流动性池中时,由于池内资产价格相对于外部市场发生变化,导致提供流动性的用户所持有的资产价值相比单纯持有这些资产而减少的现象。

"无常"一词意味着这种损失只有在用户从流动性池中撤回资产时才会真正实现。如果价格恢复到初始状态,无常损失就会消失。然而,在大多数情况下,价格不会完全恢复,导致实际损失。

无常损失的原理

要理解无常损失,首先需要了解自动做市商(AMM)的基本工作原理。以Uniswap为例,它使用恒定乘积公式:x * y = k,其中x和y分别是两种代币的数量,k是一个常数。

当用户向流动性池中添加资产时,他们需要按照池中当前的比例提供两种代币。例如,如果一个ETH/USDC池中ETH与USDC的比例为1:2000,用户要添加价值2000美元的流动性,就需要提供1个ETH和2000个USDC。

当交易发生时,比如有人用ETH交换USDC,AMM会调整池中两种代币的数量,同时保持x * y = k。这意味着当一种代币被购买时,其价格会略微上升(因为供应减少),而另一种代币的价格会略微下降(因为供应增加)。

无常损失的数学解释

假设用户向一个50/50的ETH/USDC池中存入了1个ETH和2000个USDC(总价值4000美元)。此时,池中的k值为1 * 2000 = 2000。

现在假设ETH价格从2000美元上涨到4000美元。如果用户没有提供流动性,而是单纯持有1个ETH和2000个USDC,他们的资产价值将是6000美元(1个ETH价值4000美元+2000个USDC)。

然而,在流动性池中,随着ETH价格上涨,套利者会进入市场,用USDC购买池中的ETH,直到池中两种代币的价值比例与市场一致。假设最终池中ETH和USDC的比例变为1:4000,根据x * y = k,我们可以计算出:

x * 4000x = 2000 4000x² = 2000 x² = 0.5 x ≈ 0.707个ETH y ≈ 2828个USDC

因此,用户的流动性现在价值约6828美元(0.707个ETH价值2828美元+2828个USDC),比单纯持有资产的6000美元高出828美元。这部分差异来源于交易手续费。

然而,如果用户现在撤回流动性,他们将获得0.707个ETH和2828个USDC,总价值为6828美元。相比之下,如果他们没有提供流动性,而是单纯持有1个ETH和2000个USDC,他们的资产价值将是6000美元(1个ETH价值4000美元+2000个USDC)。

这里出现了看似矛盾的情况:提供流动性反而比单纯持有资产获得了更高的价值。实际上,这是因为我们只考虑了价格上涨的情况。当价格下跌时,情况就会反转。

让我们回到初始状态,假设ETH价格从2000美元下跌到1000美元。如果用户没有提供流动性,他们的资产价值将是3000美元(1个ETH价值1000美元+2000个USDC)。

在流动性池中,随着ETH价格下跌,套利者会进入市场,用ETH购买池中的USDC,直到池中两种代币的价值比例与市场一致。假设最终池中ETH和USDC的比例变为1:1000,根据x * y = k:

x * 1000x = 2000 1000x² = 2000 x² = 2 x ≈ 1.414个ETH y ≈ 1414个USDC

因此,用户的流动性现在价值约2828美元(1.414个ETH价值1414美元+1414个USDC),比单纯持有资产的3000美元低172美元。这就是无常损失。

无常损失的示例

让我们通过一个更具体的例子来理解无常损失。假设小明在Uniswap上向一个ETH/USDC流动性池中存入了1个ETH和2000个USDC(总价值4000美元)。假设池中初始的k值为2000(1 * 2000 = 2000)。

情景一:ETH价格翻倍

一个月后,ETH价格从2000美元上涨到4000美元。由于套利行为,流动性池中的ETH和USDC比例会调整,直到与市场一致。

根据x y = k,我们可以计算出: x 4000x = 2000 4000x² = 2000 x² = 0.5 x ≈ 0.707个ETH y ≈ 2828个USDC

此时,小明的流动性价值为0.707 * 4000 + 2828 = 2828 + 2828 = 5656美元。

如果小明没有提供流动性,而是单纯持有1个ETH和2000个USDC,他的资产价值将是1 * 4000 + 2000 = 6000美元。

无常损失 = 6000 - 5656 = 344美元。

情景二:ETH价格减半

另一种情况是,一个月后ETH价格从2000美元下跌到1000美元。同样,由于套利行为,流动性池中的ETH和USDC比例会调整。

根据x y = k: x 1000x = 2000 1000x² = 2000 x² = 2 x ≈ 1.414个ETH y ≈ 1414个USDC

此时,小明的流动性价值为1.414 * 1000 + 1414 = 1414 + 1414 = 2828美元。

如果小明没有提供流动性,而是单纯持有1个ETH和2000个USDC,他的资产价值将是1 * 1000 + 2000 = 3000美元。

无常损失 = 3000 - 2828 = 172美元。

情景三:价格不变

如果ETH价格保持在2000美元不变,那么流动性池中的比例也不会改变。小明的流动性价值仍然是4000美元,与单纯持有资产的价值相同,没有无常损失。

如何减少无常损失

虽然无常损失是AMM机制固有的特性,但有一些策略可以帮助减少其影响:

1. 选择相关性高的资产对

选择价格走势高度相关的资产对可以减少无常损失。例如,稳定币对(如USDC/DAI)或抵押代币对(如stETH/ETH)通常比波动性大的资产对(如ETH/BTC)有更小的无常损失。

2. 使用集中流动性做市商

较新的协议如Uniswap v3允许用户在特定价格区间内提供流动性,而不是像Uniswap v2那样在整个价格范围内提供。这种"集中流动性"方式可以显著减少无常损失,因为只有在价格波动超出设定的区间时才会发生损失。

3. 定期平衡仓位

定期调整流动性池中的资产比例可以减少无常损失的影响。然而,这需要支付额外的交易费用,需要权衡利弊。

4. 考虑交易手续费

虽然无常损失会降低资产价值,但流动性提供者可以从交易手续费中获取收益。如果手续费收入超过无常损失,总体上仍然是盈利的。

5. 使用稳定币池

稳定币池(如USDC/DAI)由于价格波动较小,无常损失的风险也相对较低。虽然交易量可能不如高波动性资产池大,但风险更低。

无常损失与其他DeFi风险的比较

无常损失并非DeFi中唯一的风险,了解它与其它风险的差异对于全面评估风险很重要:

与 impermanent loss 相关的其他概念

  1. 滑点:交易执行价格与预期价格之间的差异,主要由市场流动性不足引起。
  2. 智能合约风险:智能合约可能存在漏洞或被黑客攻击的风险。
  3. 治理风险:协议治理决策可能影响用户利益。
  4. 利率风险:借贷协议中的利率变化可能影响收益。

无常损失与其他损失的区别

与无常损失不同,其他风险通常会导致永久性损失,即使市场条件恢复,损失也不会自动消失。例如,智能合约漏洞导致的资产损失是永久性的,不会随着市场条件变化而恢复。

结论

无常损失是DeFi流动性挖矿中一个不可忽视的风险因素。理解其原理和影响对于任何参与DeFi的用户来说都至关重要。通过选择合适的资产对、使用先进的协议功能(如Uniswap v3的集中流动性)、定期平衡仓位以及综合考虑交易手续费,用户可以有效地管理无常损失风险。

随着DeFi生态系统的不断发展,新的解决方案和协议也在不断涌现,旨在减少无常损失的影响。作为用户,持续学习和了解这些新工具将是成功参与DeFi的关键。

在追求高收益的同时,风险管理同样重要。只有充分理解并准备好应对无常损失等风险,才能在DeFi世界中稳健前行,实现可持续的收益增长。