第一章:无常损失概述

什么是无常损失

无常损失,英文叫 Impermanent Loss,简称 IL。说白了,就是你把资产放进流动性池子后,因为币价波动导致的账面亏损。

我刚开始接触 DeFi 时,觉得这个词挺唬人的。后来做了一年多量化交易,才真正理解它的本质——无常损失不是真的亏钱,而是「少赚了」

举个例子你就明白了:

  • 你往 Uniswap 的 ETH/USDC 池子里各放了 1 个 ETH 和 2000 USDC
  • 当时 ETH 价格是 2000 USDC
  • 过了一周,ETH 涨到了 3000 USDC
  • 如果你没做 LP,你的 1 ETH + 2000 USDC 现在值 5000 USDC
  • 但你在池子里,因为自动做市机制,你的资产变成了约 0.816 ETH + 2449 USDC,总值约 4898 USDC
  • 差了 102 USDC——这就是无常损失
核心要点:无常损失是相对于「持有不动」而言的机会成本,不是实际亏损。

无常损失的产生原因

为什么会这样?这得从自动做市商(AMM)的数学原理说起。

Uniswap 用的公式是 x * y = k。x 和 y 分别是两种代币的数量,k 是常数。当有人交易时,这个公式会自动调整价格。

我习惯用一个比喻来解释:池子就像一个跷跷板。一头是 ETH,一头是 USDC。当 ETH 价格上涨,套利者就会买入 ETH,卖出 USDC,直到池内价格和外部市场一致。结果就是池子里的 ETH 变少,USDC 变多。

你想想看,你本来持有 1:1 的比例,现在变成了 0.8:1.2。如果价格又跌回去,比例会恢复——这就是「无常」二字的由来。

我的经验:我在做跨链桥流动性挖矿时,遇到过 ETH 一天内波动 20% 的情况。那天的无常损失直接吃掉了三天的交易手续费收入。嗯,从那以后我学会了看波动率再决定是否做 LP。

产生无常损失的根本原因有三个:

  1. 价格偏离:池内价格与外部市场价格不一致,套利者会来搬平
  2. 自动做市机制:恒定乘积公式强制调整持仓比例
  3. 波动率:价格波动越大,无常损失越严重

无常损失对 LP 的影响

影响有多大?我直接给你看数据:

价格变化幅度 无常损失比例
±10% 约 0.5%
±25% 约 3.0%
±50% 约 8.5%
±100% 约 20.0%
±200% 约 40.0%

看到没?价格翻倍,你的无常损失就达到 20%。这可不是小数目。

我曾经帮一个项目方做流动性管理,他们往稳定币池子里放了 500 万美金。结果因为一个池子的锚定机制出了问题,价格偏离了 5%,一天就亏了 12 万美金的无常损失。虽然手续费赚回来一些,但整体还是亏的。

避坑指南:我曾经以为稳定币池子没有无常损失,结果被 Curve 的 3pool 上了一课。当 UST 脱锚时,3pool 里的 UST 占比从 33% 变成了 60%+,LP 们损失惨重。记住:任何非 1:1 锚定的资产对都有无常损失风险

无常损失对 LP 的影响主要体现在三个方面:

  • 收益侵蚀:交易手续费赚的钱,可能被无常损失吃掉
  • 退出时机:价格剧烈波动时退出,损失可能更大
  • 心理压力:看着池子里的资产比例变化,容易做出错误决策

我个人的经验是:做 LP 前先算一笔账。预估一下年化手续费收益,再对比可能的最大无常损失。如果手续费收益连无常损失都覆盖不了,那还不如直接持有现货。

无常损失核心逻辑图 初始状态 1 ETH + 2000 USDC 价格: 2000 USDC/ETH 总价值: 4000 USDC 价格变化 ETH 涨到 3000 USDC 套利者买入 ETH 池内比例改变 最终状态 0.816 ETH + 2449 USDC 总价值: 4898 USDC 持有不动: 5000 USDC 无常损失 = 5000 - 4898 = 102 USDC (约 2.04%) 价格波动越大,无常损失越严重 这是相对于「持有不动」的机会成本 基于 Uniswap V2 恒定乘积公式 x * y = k

这张图把无常损失的整个流程串起来了。从左到右看,你就能理解为什么价格变化会导致资产比例失衡,最终产生损失。

一个小技巧:我写了个 Python 脚本,输入价格波动幅度,自动计算无常损失比例。代码很简单,就是套用公式:IL = 2√(r)/(1+r) - 1,其中 r 是价格变化比例。你可以自己试试。

最后说一句:无常损失不是洪水猛兽。只要手续费收益足够高,或者你本身就有做市策略,IL 完全可以接受。关键是——你得算清楚这笔账


专注资料整理