💸AMM编年史
源于Vitalik 2017 博文《On-chain market makers》的灵感,Uniswap 创造了第一个AMM(自动化做市商, Automated Market Maker),这是一个极富美学的设计转折点,它不是传统金融的延续,而是区块链范式下的原创发明

AMM 的本质是一套定义如何管理流动性的智能合约,每个单独的交易对(例如 ETH/USDC)都是一个单独的智能合约,它存储了 ETH 和 USDC 的资产并且撮合交易,在这个合约中,我们可以将 ETH 兑换成 USDC 或者将 USDC 兑换成 ETH
在 AMM 中,一个核心概念为池子(pool):每个合约都是一个存储流动性的池子,允许任何用户(包括其他合约)在其中进行交易,AMM 中有两种角色,流动性提供者以及交易者;这两方通过流动性池进行交互,而交互的方式由合约进行规定且不可更改
这种交易方法与 CEX 的关键区别在于: 智能合约是完全自动化并且不受任何人控制的,这里只有 LP 和交易者,任何人都可以担任这两种角色(也可以同时),并且所有的算法都是公开的、程序规定的、不可更改的
AMM的核心优势在于,它彻底改变了链上资产交易的方式,绕过了传统订单簿的撮合机制。它最大的优点是:简洁、无需许可、完全链上自动执行
用户不需要等待别人来挂单成交,而是直接与智能合约交互,通过一个数学函数(最经典是 x·y=k)来完成资产交换。这个机制让几乎任何两种代币之间都可以随时交易,哪怕这个市场冷清到没有人,也能维持基本的定价功能
更重要的是,任何人都可以向 AMM 池子提供流动性,赚取手续费,不再需要传统金融里的专业做市商。流动性提供的民主化,让 DeFi 的生态得以爆发,因为资产可以无缝流通、有池子就能为任何资产定价(比如链上的各种项目方,完全可以通过自己创建一个池子来给自己的资产定价)
我们以UniswapV2为例:

横纵轴表示了池子中两种代币的数量,每一笔交易的起始点都是曲线上与当前两种代币比例相对应的点。为了计算交易获得的 token 数量,我们需要找到曲线上的一个新的点,其横坐标值为 x+Δx,也即池子中现在 token0 的数量加上我们卖出的数量,y 轴上的变化量就是我们将会获得的 token1 的数量
Uniswap V2 的x*y=k 是最早的函数曲线,在Defi summer 期间,如 Curve,Balancer等都在此之上有不同的创新,核心思路是通过设计不同的函数曲线实现更优质的交易体验,更灵活的价格发现机制
你会发现,这样的曲线设计其实是在惩罚大额交易,因为你的交易额越大,滑点越大,事实的确就是如此,供求曲线告诉我们,当需求很高的时候(假设供给保持不变),价格也同样很高;当需求低的时候,价格也仍然很低,这正是市场的工作原理,恒定乘积函数巧妙的实现了这个机制
在交易前的价格,等于池子中两种资产的比例,这个价格也是起始点切线的斜率;在交易后,有一个新的现货价格,在曲线上另一个不同的点。这个价格是新的点的切线斜率,这个交易的实际发生价格,是连接新旧点的这条线的斜率

Uniswap V2 的交易对可以根据价格的波动性分为以下两类:
价格波动性中等或较高的代币对:大多数代币对都属于这一类,比如ETH/USDT , 因为绝大多数代币并没有锚定物
价格波动性低的代币对:有锚定物的代币对,比如USDT/USDC , STETH/ETH
有锚定物的低波动代币对必须保持在1:1,然而V2大额交易造成的滑点极大,核心问题是:V2流动性是分布在无穷区域上的——池子允许在任何价格的交易发生,从0到正无穷
除了低波动代币交易对的滑点过大,对于高波动交易对,V2的资本效率问题也很明显,比如 ETH 的现货价格是$8000没有人会愿意花$9000购买一个ETH,所以在$9000这个区间提供流动性毫无用处,V3 就是为了解决这一问题~
Uniswap V2—V3的演进:
Uniswap V3基于V2的xy=k函数曲线,引入了两个关键的创新:
集中流动性:LP被赋予在任意价格区间集中流动性的能力,并将更多的流动性集中在一个相对狭窄的价格区间,来大大提高资产利用效率,这也使 Uniswap 的使用场景更加多样化
灵活的手续费:交易手续费将不再像V2一样限定在0.30%,手续费等级在每个池子初始化时设置,每一个交易对包含多个等级(池子),默认支持手续费等级为0.05%,0.30% 和 1%

你也可以理解为集中流动性就是LP在某个区间提供杠杆流动性,因为在这个区间你提供的流动性更多,自然能收到的手续费也比其他人多
当然,这也是有代价的,否则所有LP直接提供最窄的区间流动性不就得了,窄区间的问题是,如果价格波动超出了你提供的范围,就会变为无效流动性,同时v3的设计放大了无偿损失
无偿损失——AMM的阿克琉斯之踵
无偿损失(Impermanent Loss),源自于 LP 被动地在价格波动中承担了市场交易的反方向,LP所持有的资产数量,因价格变动而失去了相对于“单纯持币”的收益
举个例子:
你在区间 ETH=1000~2000 USDC 提供了 ETH/USDC 流动性
当 ETH 从 1000 涨到 1500:
你的 LP 头寸里,ETH 变少,USDC 变多。
你在不知不觉中被动把上涨的 ETH 卖出了一部分。
所以你损失了什么?
你错过了 ETH 继续上涨的收益 → 这就是相对损失
也就是说,你本可以持币不动,却要看似聪明的去做市,最后获得的手续费可能都没跑赢傻呵呵拿着ETH的涨幅
无偿损失本质是一种相对损失,上面的例子如果换成下跌则你会被动的把U全换成ETH,所以如果你换种心态想:你的U本位/币本位肯定有一个是赚的
在AMM中,价格的发现依赖外部套利者,如果Binance中ETH价格上涨到2000U,而Uniswap中ETH价格为1800U,套利者会在 Binance买ETH , 然后卖进 Uniswap 换 USDC , 持续套利 → Uniswap 上的 ETH 会减少、USDC 增加 , 导致池子内部价格上升,直到与外部市场接轨 , 这个过程通常非常快,1秒钟内就能完成 ~这里还有一个额外的问题就是LVR(损失与再平衡),这个我们会单开篇幅
扩展思考:为什么AMM注定无法取代订单簿
从底层机制来看:订单簿是定价行为,AMM 是函数暴露
这一机制决定了,对于做市商而言,AMM无法实现有效对冲,AMM LP的敞口是非线性动态变化的,类似于不能对冲的期权卖方,天天开着裸仓坐在流动性池里,只要价格移动,就要承受方向损耗
而订单簿的做市商,可以有意识地参与特定价格区间(主动做市) 每一单的期望收益、风险敞口都可控,并且可以实时改变挂单、动态撤单进行快速对冲
AMM 的机制,实质是用结构性亏损换来无门槛的流动性引擎,同样是一种牺牲效率以换信任的机制,这会导致:大型做市商没有足够的动机来提供流动性—交易对深度不够—无法承接大额交易
AMM的生态位会一直存在,无论是早期项目方/长尾资产,都需要一个初始交易场景,同时AMM 超强的可组合性盘活了整个Defi生态
但AMM注定无法成为主流金融市场的定价引擎,因为去信任永远不是金融的主旋律,效率才是。
参考文献:
Last updated