AMM 是一种自动做市机制,特点是用流动性池和合约公式完成定价与成交,让去中心化交易不依赖传统订单簿。常见的恒定乘积模型用 x * y = k 描述池子里两种资产的数量关系,交易会改变池子比例,也会改变成交价格。

核心要点

  • AMM 不是一个平台名称,而是一类自动定价和成交机制。
  • 流动性池里通常有两种或多种资产,交易者和池子交易,不需要等待另一个人挂单。
  • x * y = k 的意思是两种资产储备量的乘积保持在规则约束下,交易越大,对价格影响越明显。
  • 滑点、价格冲击、手续费和无常损失,是理解 AMM 时绕不开的几个风险。
  • AMM 合约开源或链上可查,不等于资产安全、价格合理或所在地区可参与。

AMM 和传统订单簿有什么不同?

AMM 用流动性池和公式撮合交易,传统订单簿靠买卖双方挂单撮合。两者都能形成价格,但价格来源和风险位置不同。

订单簿靠买卖双方挂单

传统交易所常见的是订单簿。买方挂出愿意买入的价格和数量,卖方挂出愿意卖出的价格和数量。价格能否成交,要看买卖盘是否匹配。

订单簿适合流动性充足、做市商活跃、撮合系统成熟的市场。问题是,如果某个资产没有人挂单,或者买卖盘很薄,交易就可能很难成交,或者价格跳动很大。

AMM 靠池子和公式成交

Uniswap 开发者文档把 Uniswap 描述为自动做市机制和智能合约集合,用户可以直接在链上交换代币、提供流动性或创建市场。交易者不是和另一个挂单用户交易,而是和流动性池交易。

流动性池里预先放入资产。有人想用 A 换 B,就把 A 放进池子,按合约规则取走 B。池子里 A 和 B 的数量变化后,价格也跟着变化。

AMM 解决的是成交问题,不是风险问题

AMM 让链上交易可以持续运行,但它不保证你拿到的价格合理,也不保证池子里的资产可靠。小池子、大额交易、假代币、恶意合约、预言机攻击和前端钓鱼,都可能让交易结果和预期相差很远。

AMM 的关键不是“没有中间人”,而是“价格由池子储备和合约规则自动变化”。

x * y = k 怎么理解?

x * y = k 是恒定乘积做市的入门公式,适合理解早期 Uniswap 这类双资产池的价格变化。

三个字母代表什么

符号含义读者怎么理解
x池子里资产 A 的数量例如 ETH 数量
y池子里资产 B 的数量例如 USDC 数量
k两种资产数量乘积形成的约束池子交易后要遵守的规则

如果一个池子里有 10 ETH 和 30,000 USDC,简单看就是 ETH 和 USDC 的比例形成一个价格参考。有人用 USDC 买 ETH,池子里的 USDC 增加、ETH 减少,ETH 在池子里变少后,继续买 ETH 的成本就会上升。

Uniswap 文档说明,交易者和池子储备交易,池子用恒定乘积公式定价;交易相对池子深度越大,价格影响越明显。

池子越浅,价格越容易被推动

如果池子很深,一笔交易只占池子很小比例,价格变化会相对平缓。如果池子很浅,一笔交易就可能显著改变池子比例,成交价格会比你看到的参考价差很多。

这就是为什么同样买 1000 USDC 的某个代币,在大池子里可能滑点很小,在小池子里可能把价格推得很高。价格不是客服给的,也不是页面随便写的,而是池子储备和公式共同决定。

手续费会影响结果

实际 AMM 交易还会有交易手续费、协议费用、Gas 费和前端设置。公式是理解机制的骨架,不是完整账单。读者看交易前要同时看兑换比例、价格影响、保底收到数量、手续费、Gas 和代币合约地址。

交易页面要连起来看

一个 AMM 前端通常会同时显示预计收到数量、价格影响、滑点设置和网络费用。预计收到数量只是当前估算,交易提交后如果池子价格变化,最终到账可能不同。价格影响偏高,说明你的交易本身正在明显推动池子价格;滑点容忍度偏高,说明你愿意接受更差成交范围;Gas 偏高,说明网络成本会吃掉更多金额。

读者不要把这些字段分开看。比如页面显示“预计换到 100 个代币”,但价格影响已经很高、池子深度很浅、滑点又被调到较高范围,真实风险就不在按钮本身,而在这几项共同形成的成交结果。看不懂其中任何一项,都应该先停下来核对代币合约和池子深度。

滑点、价格冲击和无常损失是什么?

AMM 的风险不只在“能不能成交”,还在成交价格和提供流动性后的资产变化。

滑点是预期和实际成交的差

滑点可以理解为你以为能换到多少,实际成交时能换到多少之间的差。链上交易从提交到确认有时间差,期间池子价格可能被别的交易改变。你设置的滑点容忍度越高,交易越容易成功,但也越可能接受更差价格。

滑点设置不是越高越好。陌生代币、小池子、热门抢购和拥堵网络里,过高滑点可能让你以很差价格成交。

价格冲击来自你的交易本身

价格冲击是你的交易对池子价格造成的影响。买入规模相对池子越大,价格冲击越明显。它和网络拥堵不是一回事,也和 Gas 费不是一回事。

读者可以这样区分:Gas 是发交易的网络成本;价格冲击是你这笔交易改变池子比例带来的成交成本;滑点是最终成交和预期之间的差异。

无常损失发生在提供流动性时

如果你把两种资产放进 AMM 池子做流动性提供者,资产价格相对变化后,你持有的池子份额价值可能低于单独持有两种资产的结果。这个差异常被称为无常损失。

它不一定是骗局,也不一定会马上体现为账户亏损,但它说明“赚手续费”不是无风险收益。资产价格波动越大、池子费用越低、退出时机越差,提供流动性的结果越需要仔细计算。

交易前怎么检查 AMM 池子?

普通读者不用写合约,也可以做几个基础检查,避免把页面按钮当成结论。

AMM 交易六项检查

检查项要看什么风险信号
代币合约合约地址是否来自可信来源同名假币、冒名 Logo
池子深度两边资产储备是否足够小池子承接大额交易
价格影响页面显示的 price impact明显偏高仍继续成交
保底收到钱包或前端显示的最少到账数量看不懂就点确认
滑点设置是否被设置得过高陌生页面自动调高
授权动作是否要求无限授权登录变成大额授权

这些检查不能消除所有风险,但能帮你发现明显问题。

不要只信前端页面

前端页面可能被钓鱼网站仿冒,也可能加载错误代币。真正关键的信息要回到合约地址、区块浏览器、协议官方文档和钱包弹窗。交易前确认网络也很重要,Ethereum、Arbitrum、Base、Polygon 等链上的池子不是同一个池子。

AMM 价格不等于公允价值

AMM 池子价格只是这个池子当前储备和交易活动形成的价格。小池子可能被短时间推高或拉低,假代币也可能有一个看似活跃的池子。看到价格上涨,不等于资产有真实需求;看到池子存在,也不等于项目可信。

这篇可以先把 AMM 记成一句话:池子里有资产,公式给出价格,交易改变比例,风险来自池子深度、合约、滑点和资产本身。

常见问题

Q: AMM 是不是去中心化交易所?

答: AMM 是一种交易机制,去中心化交易所可以使用 AMM。Uniswap 这类协议用 AMM 和流动性池支持链上交换,但 AMM 不是某一个平台的名字。

Q: x * y = k 是不是所有 AMM 都用?

答: 不是。恒定乘积模型是经典入门模型,早期 Uniswap 常用这个解释。其他 AMM 可能使用不同公式、集中流动性、多资产池或混合曲线。

Q: 滑点调高能不能提高成功率?

答: 可能提高成交成功率,但也可能让你接受更差价格。陌生代币和小池子里,滑点过高会明显增加风险。

Q: 提供流动性能不能稳定赚手续费?

答: 不能这样理解。手续费收入要和无常损失、资产价格波动、合约风险、池子深度和退出成本一起看。手续费高不代表净结果更好。

Q: AMM 池子里的价格能当市场价吗?

答: 只能当这个池子的当前价格参考。市场价还要看其他池子、中心化交易平台、链上成交深度和是否存在假币或操纵。

参考资料

版本 1.0 · 更新于 2026-06 · 资料截至 2026-06-17