第1章:资金池概念——流动性池的定义与做市模型

大家好,我是你们的老朋友。今天咱们来聊聊做市商策略里最基础、也最核心的一个概念——资金池

说白了,资金池就是一堆资产放在一起,供大家交易。你可能会问,这跟传统的订单簿有啥区别?嗯,区别大了去了。传统交易所里,你得等有人挂单才能成交。而资金池模式,你直接跟池子交易,池子就是你的对手方。

我个人习惯把资金池想象成一个“自动售货机”。你投进去一个币,它自动给你吐出一瓶水。价格呢?由池子里的资产比例决定。这就是自动化做市商(AMM)的核心思想。

1.1 流动性池的定义

流动性池,英文叫 Liquidity Pool,本质上是一个智能合约管理的资产集合。用户(也就是流动性提供者)把两种代币按一定比例存进去,池子就有了深度。

举个例子:

  • 你存入 100 个 ETH 和 200,000 个 USDC
  • 池子总价值 40 万美元(假设 ETH 2000 美元)
  • 别人想用 USDC 买 ETH,直接从池子里拿

这里有个关键点:池子里的资产比例决定了价格。如果 ETH 被买走很多,池子里 ETH 变少、USDC 变多,ETH 的价格就会上涨。反之亦然。

核心公式: 价格 = 池中代币B的数量 / 池中代币A的数量

但这只是最朴素的理解。实际应用中,不同模型有不同的定价规则。

1.2 恒定乘积做市模型(Uniswap V2)

这是目前最主流的模型,Uniswap V2 用的就是它。公式很简单:

x * y = k

其中 x 是代币A的数量,y 是代币B的数量,k 是常数。

什么意思呢?就是无论你怎么交易,池子里两种代币的乘积保持不变。你想想看,这其实是个双曲线。当 x 趋近于0时,y 会变得非常大——这意味着价格会无限高。

我在项目中遇到过一个问题:如果池子深度不够,大额交易会导致严重的滑点。比如你拿 100 万 USDC 去买一个只有 10 万美金深度的池子,价格可能被推到天上。

避坑指南: 我曾经在测试网上部署 Uniswap V2 时,忘记检查 k 值的更新逻辑。结果一笔交易后,k 值变了,整个池子都乱了。后来我养成了习惯:每次交易后都校验 x*y 是否等于 k。

恒定乘积模型的优点:

  • 永远有流动性(不会枯竭)
  • 价格随供需自动调整
  • 实现简单,gas 成本低

缺点也很明显:

  • 滑点大(尤其深度不足时)
  • 无常损失风险高
  • 不适合稳定币对交易

1.3 恒定和做市模型

这个模型就简单多了:

x + y = k

价格始终是 1:1。你想想看,如果 x 和 y 都是稳定币,比如 USDC 和 USDT,那这个模型就完美了——价格永远锚定在 1 美元。

但问题来了:如果外部市场价格波动,套利者会瞬间把池子掏空。比如 USDC 跌到 0.99 美元,套利者就会用 USDT 买走所有 USDC,直到池子失衡。

我记得在 Curve 的早期版本中,他们用了这个模型的变体。但说实话,纯恒定和模型在实际应用中很少单独使用,因为它太脆弱了。

注意: 恒定和模型只适合资产价格高度相关的场景。如果你把 ETH 和 USDC 放进恒定和池子,那基本是送钱给套利者。

1.4 混合做市模型

既然恒定乘积和恒定和各有优缺点,那能不能结合起来?当然可以。这就是混合做市模型。

最典型的代表是 Curve 的 StableSwap 模型。它的核心思想是:

  • 在价格接近 1:1 时,使用恒定和模型(滑点低)
  • 在价格偏离时,平滑过渡到恒定乘积模型(防止枯竭)

公式稍微复杂一点:

An^n * sum(x_i) + D = A * D * n^n + D^(n+1) / (n^n * prod(x_i))

嗯,看着有点吓人。但说白了,就是引入了一个参数 A(放大系数),来控制曲线的弯曲程度。A 越大,曲线越接近恒定和;A 越小,越接近恒定乘积。

我在做 Curve 的流动性策略时,发现一个有意思的现象:A 参数的选择直接影响做市收益。如果 A 设得太高,池子容易被套利者攻击;设得太低,滑点又大。后来我总结了一个经验:对于稳定币对,A 设在 100-200 之间比较合适

1.5 三种模型的对比

模型 公式 适用场景 滑点特征 无常损失
恒定乘积 x * y = k 非稳定币对(ETH/USDC) 大额交易滑点高
恒定和 x + y = k 稳定币对(USDC/USDT) 几乎无滑点 低(但易被套利)
混合模型 Curve 公式 稳定币、流动性集中场景 小单低滑点,大单平滑 中等

1.6 资金池的核心逻辑图

下面我用一张 SVG 图来展示资金池的核心运作逻辑。这张图我画了好几次才满意,希望能帮大家理清思路。

资金池核心运作逻辑 流动性提供者 交易者 流动性池 代币A + 代币B x * y = k 存入代币 买入/卖出 做市商策略 价格信号 再平衡 恒定乘积 恒定和 混合模型 Curve / Balancer

这张图展示了资金池的完整生态:流动性提供者存入资产,交易者进行买卖,做市商策略根据模型计算价格并执行再平衡。三种模型各有适用场景,选择哪种取决于你的资产类型和风险偏好。

1.7 我的实战建议

做了这么多年做市商,我总结了几条经验:

  1. 别迷信单一模型。 恒定乘积虽好,但稳定币对用起来就是灾难。我见过有人把 USDC/USDT 放进 Uniswap V2 池子,结果一天亏了 5% 的无常损失。
  2. 关注深度。 资金池的深度决定了你能做多大的交易。我一般要求池子深度至少是单笔交易量的 20 倍以上。
  3. 监控套利者。 套利者是市场的“清道夫”,但他们也会吃掉你的利润。我习惯在策略中加入滑点保护,防止被三明治攻击。

小技巧: 如果你刚开始做市,建议先用测试网跑一遍。我记得第一次在以太坊主网上部署策略时,gas 费高得吓人,一笔交易花了 0.5 ETH。后来我学会了在 Layer 2 上部署,成本降了 90%。

好了,这一章的内容就到这里。资金池的概念是后面所有策略的基础,希望大家能真正理解 x*y=k 这个公式背后的含义。下一章我们会深入讨论做市商策略的具体实现,包括如何计算最优报价、如何管理库存风险等。


专注资料整理