DeFi 交易架构演进:从聚合器 (Aggregator) 到求解器 (Solver)

Categories:DeFi
Tags:AMM / MEV
目录

在自动做市商(AMM)和去中心化交易(DEX)的语境下,**聚合器(Aggregator)和求解器(Solver)**代表了交易架构演进的两个阶段:一个是基于“路径搜索”的工具范式,另一个是基于“意图(Intent)”的执行范式。


1. 聚合器(Aggregator):帮你找最优路径

聚合器更像一个“高级导航仪”。它会扫描多个链上池子(如 Uniswap、Curve、Balancer),计算价格最优路径。

  • 工作逻辑:如果你要将 ETH -> USDC,聚合器会计算是直接兑换更优,还是先 ETH -> DAI -> USDC 更优。
  • 拆单优化:大额订单会被分拆到不同池子(例如 30% 走 Uniswap v3,70% 走 Curve)以减少滑点。
  • 执行方式:路径由算法预先决定,用户签署的是明确的交易指令(Transaction),通常包含路由和最小到手量。
  • 主要痛点:
    • 用户自己承担 Gas;
    • 上链前市场变化可能导致失败;
    • 公开内存池可见,容易被 MEV 机器人夹击。

一句话:聚合器是“帮你找路”,但你还得自己开车。


2. 求解器(Solver):替你完成意图

Solver 是 Intent-centric(意图中心化)架构下的核心角色(典型如 CoW Swap、UniswapX)。它更像“专业代办”:

  • 用户不再指定“走哪条路”,而是签署意图:

    我出 1 个 ETH,谁能给我至少 3500 USDC,我就跟谁成交。

  • 多个 Solver(做市商/高频交易者)竞争执行权;
  • 胜出 Solver 负责上链结算,用户签的是链下签名;
  • Solver 可同时利用链上池、链下流动性、自有库存、跨链对冲和 CoW(需求重合)。

核心体验变化:

  • Gas 抽象:通常由 Solver 先垫 Gas,再在成交中计入成本;
  • 失败低成本:撮合失败一般只是签名过期,用户无需承担失败 Gas;
  • 抗 MEV 更强:通过私有提交通道或批量结算,降低被夹概率。

一句话:Solver 不是给你路线建议,而是替你把交易做完。


3. 聚合器 vs Solver:核心差异

特性聚合器(Aggregator)求解器(Solver)
核心本质寻找最优路径的工具负责完成用户意图的执行角色
用户签署具体交易(Transaction)抽象意图(Intent / Signature)
流动性范围主要是公开链上池可用链上池、链下撮合、私有库存、跨链流动性
Gas 负担用户支付,失败也可能付费多为 Solver 预付,成交后结算
价格形成算法路径搜索Solver 间竞价博弈
MEV 暴露相对更高相对更低(私有提交/批量结算)

4. Solver 到底赚什么钱?

Solver 不是“做慈善”,它的利润来自“执行效率差”。

4.1 价格改进剩余(Price Improvement Surplus)

  • 你设置底线:1 ETH >= 3500 USDC;
  • Solver 通过更优流动性源实际做到 3510 USDC;
  • 给你 3501 或更高满足承诺,剩余部分扣除 Gas 后成为利润。

4.2 需求重合(Coincidence of Wants, CoW)

  • A 想 ETH -> USDC,B 刚好想 USDC -> ETH;
  • Solver 在链下直接撮合,不经过 AMM 池;
  • 节省 AMM 手续费与滑点,Solver 可收撮合费(通常仍低于用户直连 AMM 的综合成本)。

4.3 存货管理与风险溢价(Internalization)

  • 做市商本身持有大量库存(Inventory);
  • 用户单子到来时可直接用库存成交;
  • 利润来自买卖价差与冲击成本节省,也可视为库存再平衡收益。

4.4 统计套利与跨链结算

  • 在链 A 承接订单,在链 B 或衍生品市场对冲;
  • 利用不同市场/链之间的时间与空间价差获利;
  • 本质是高频做市能力在 DeFi 交易执行中的外溢。

5. 竞价怎么发生?以 Dutch Auction / RFQ 为例

典型流程(UniswapX、CoW Swap 的不同实现都可抽象为以下步骤):

  1. 用户发布意图(链下签名,含最低可接受结果);
  2. 协议发起报价或拍卖窗口;
  3. Solver 持续评估“是否可盈利执行”;
  4. 最先给出有效且有竞争力执行方案者赢得订单;
  5. 胜出 Solver 上链结算并承担执行风险。

6. 什么是荷兰式拍卖(Dutch Auction)?

荷兰式拍卖可以理解为“价格从高到低(或条件从严到松)逐步变化,直到有人愿意成交”。

放到意图交易里,通常是:

  • 订单刚发布时,对 Solver 的条件更苛刻(例如用户期望更高回报);
  • 随时间推移,成交条件逐步放宽;
  • 哪个 Solver 最先在某个时点判断“现在有利润可做”,就会立刻成交。

它的作用是:

  • 给用户一个“先争取更好价格,超时再放宽”的机制;
  • 给 Solver 一个“按实时成本抢执行权”的公平竞争场;
  • 最终让价格在速度与收益之间动态平衡,而不是一次性静态报价。

你可以把它想象成:
一笔单子的执行权在“倒计时竞价”,谁先在可盈利区间出手,谁拿走这单。


7. 为什么说 Solver 模式更抗 MEV?

在传统聚合器模式中,交易细节常暴露在公共内存池,搜索者可前置/后置并实施夹心。

Solver 模式通常通过以下方式降低用户暴露:

  • 私有通道提交(如 Flashbots Protect 类路径),减少公开可见性;
  • 批处理或统一清算,弱化单笔交易被针对的机会;
  • 执行风险向 Solver 转移:Solver 承诺了用户结果,若执行端出现额外滑点或对抗成本,首先影响的是 Solver 的利润。

8. 链下撮合,链上结算:到底怎么落地?

准确说法是:链下发现匹配,链上原子结算。

一个常见流程是:

  1. 多个用户提交链下签名意图;
  2. Solver 在链下匹配/组合订单;
  3. Solver 将相关签名和结算指令提交到链上合约;
  4. 合约验证签名有效性与约束条件(最小到手量等);
  5. 验证通过则在一笔交易内完成资产交换。

因此,链上仍有可验证记录,但不一定需要“每笔都先过 AMM 池子”。


9. 跨链:为什么 Solver 常常比“手动跨桥”体验更好?

先澄清:普通用户不是不能跨链,而是手动跨链通常摩擦很大。

9.1 手动跨链的三类典型摩擦

  1. Gas 费割裂:源链和目标链都要准备原生 Gas 资产;
  2. 时间不确定:桥确认、挑战期、拥堵都可能拉长到账时间;
  3. 安全复杂度高:桥类型、验证机制、流动性状态差异大,普通用户很难逐笔评估。

9.2 Solver 的“流动性垫付”思路

很多情况下,Solver 并不是等你资产“慢慢搬过去”,而是利用自己在多链的库存先行兑付,再做后续再平衡(rebalance)。

对用户而言,体感是“更快到账”;
对 Solver 而言,本质是“资产负债表管理 + 风险定价”。


10. 结算时间:一般要等多久?

不同协议机制差异很大,下面是常见经验区间(非保证值):

  • 批处理型(如 CoW Swap):常见在批次窗口内成交,可能约 30 秒 - 数分钟;
  • 即时竞价型(如 UniswapX 风格):通常 数秒 - 1 分钟,取决于价格条件和市场波动;
  • 跨链意图型:若 Solver 流动性充足,常见可在 10-30 秒 级别给出结果。

等待时间的核心变量是:
你的价格条件有多“苛刻” + 当前市场流动性/波动 + Solver 的风险承受度。


11. 回到本质:为什么 Solver 愿意“帮你省钱”?

因为这不是慈善,而是竞争市场下的利润分配:

  • Solver 之间竞争激烈,必须让利给用户才能拿单;
  • 用户订单本身就是 Solver 执行套利和库存管理的“燃料”;
  • 协议激励(费用返还/奖励)也会影响 Solver 的出价策略。

从经济学角度看,Solver 抽取的是“专业执行能力”带来的效率租。
从用户视角看,只要最终到手优于自己直接撞 AMM,体验就是正收益。


总结

可以用一句话概括这次架构演进:

  • 聚合器:帮你找最优路径,但仍由你执行与承担链上摩擦;
  • 求解器:你只定义边界条件(意图),由专业执行者竞争完成并承担主要执行复杂度。

所以,聚合器是“找路工具”,Solver 是“执行角色”。
前者优化的是“路径”,后者拍卖的是“执行权”。