为何Solana上满是Prop AMM,在EVM上仍是空白?
作者 | @0xOptimus
编译 | Odaily 星球日报( @OdailyChina )
译者 | 叮当( @XiaMiPP )
Prop AMMs 已迅速占据 Solana 全部交易量的 40%。为什么它们还没出现在 EVM 上?
专业自动做市商(Proprietary AMMs,简称 Prop AMMs)正在迅速成为 Solana DeFi 生态中的主导力量,目前它们已经贡献了主要交易对中超过 40% 的交易量。这类由专业做市商运营的专门流动性场所,能够提供深度流动性和更具竞争力的定价,核心原因在于它们显著降低了做市商被利用“过期报价”(stale quotes)进行抢跑(front-running)套利的风险。
图片来源: dune.com
然而,它们的成功几乎完全局限在 Solana 上。即便在诸如 Base 或 Optimism 这样快速且低成本的 Layer 2 网络上,EVM 生态中仍鲜见 Prop AMM 的身影。为什么它们没有在 EVM 上生根?
本文主要探讨三个问题:什么是 Prop AMM,它们在 EVM 链上面临哪些技术与经济障碍,以及最终可能将它们带到 EVM DeFi 前沿的有前途的新架构。
什么是 Prop AMM?
Prop AMM 是一种由单一专业做市商主动管理流动性和定价的自动做市商,而不是像传统 AMM 那样,由大众以被动方式提供资金。
传统 AMM(如 Uniswap v2)通常使用公式 x * y = k 来决定价格,其中 x 和 y 分别代表池中两种资产的数量,k 为恒定值。而在 Prop AMM 中, 定价公式并非固定不变,而是会被高频更新(通常每秒更新多次) 。由于大多数 Prop AMM 的内部机制属于“黑箱”,外界并不知道它们使用的确切算法。然而,Sui 链上 Obric 的 Prop AMM 智能合约代码是公开的(感谢 @markoggwp 的发现),其不变量 k 是依赖于内部变量 mult_x、mult_y 和 concentration 的。下图展示了做市商如何持续更新这些变量。
需要澄清的一点是:Obric 定价曲线左侧的公式比简单的 x*y 更复杂,但理解 Prop AMM 的关键在于——它始终等于一个可变的不变量 k,而做市商会不断更新这个 k 来调整价格曲线。
复习:AMM 是如何决定价格的?
在这篇文章中,我们会多次提到“价格曲线”这一概念。价格曲线决定了用户在使用 AMM 交易时需要支付的价格,也是做市商在 Prop AMM 中不断更新的部分。为了更好地理解这一点,我们可以先回顾传统 AMM 的定价方式。
以 Uniswap v2 上的 WETH-USDC 池为例(假设无手续费)。价格由公式 x * y = k 被动决定。假设池中有 100 WETH 和 400,000 USDC,此时的曲线点为 x = 100,y = 400,000,对应初始价格为 400,000 / 100 = 4,000 USDC/WETH。由此可得常数 k = 100 * 400,000 = 40,000,000。
若有交易者想买入 1 WETH,他需要向池中加入 USDC,使池中 WETH 减少到 99。为了保持恒定乘积 k,新的点 (x, y) 仍需落在曲线上,因此 y 必须变为 40,000,000 / 99 ≈ 404,040.40。也就是说,该交易者为 1 WETH 支付了约 4,040.40 USDC,比最初价格略高。这种现象称为“价格滑点”(slippage)。这正是 x*y=k 被称为“价格曲线”的原因:任意可交易价格都必须落在这条曲线上。
为什么做市商会选择 AMM 设计而不是中心化订单簿(CLOB)?
让我们来解释一下为什么做市商想要使用 AMM 设计进行做市。 想象你是一个在链上中心限价订单簿(CLOB)上报价的做市商。若想更新你的报价,你需要撤销并替换成千上万个限价单。如果你有 N 个订单,那么更新成本是 O(N) 级别的操作,这在链上既缓慢又昂贵。
而如果你能将所有报价都用一个数学曲线来表示呢?你只需更新定义这条曲线的少数几个参数即可,从而将 O(N) 的操作转化为 O(1) 的常数复杂度。
为了直观展示“价格曲线”如何对应不同的有效价格区间,我们可以参考 Ellipsis Labs 创建的 SolFi——一个基于 Solana 的 Prop AMM。尽管它的具体价格曲线未知且被隐藏,但 Ghostlabs 绘制了一张图,展示了在某个 Solana slot(区块时间段)内,不同数量的 SOL 兑换 USDC 时的有效价格。每一条线代表一个不同的 WSOL/USDC 池,说明多个价格层级可以同时存在。随着做市商更新价格曲线,这张有效价格图也会在不同 slot 之间变化。
图片来源: github
这里的关键点在于, 通过仅更新少量价格曲线参数,做市商即可随时改变有效价格分布,而无需逐个修改 N 个订单。 这正是 Prop AMM 的核心价值主张—— 它让做市商能以更高的资本与计算效率,提供动态而深度的流动性。
为什么 Solana 的架构非常适合 Prop AMM?
Prop AMM 是一种“主动管理型”系统,这意味着它需要两项关键条件:
- 更新成本低(cheap updates)
- 优先执行权(priority execution)
在 Solana 上,这两者是相辅相成的: 低成本更新往往意味着更新能获得执行优先权。
为什么做市商需要这两点?首先, 他们会根据库存变化或资产指数价格(例如中心化交易所价格)的波动,以区块链运行速度不断更新价格曲线。 在像 Solana 这样高频链上,如果更新成本过高,将难以实现高频调整。
其次, 若做市商无法让更新排在区块顶部,他们的旧报价就会被套利者“抄走”,造成必然的亏损。 如果缺少这两个特性,做市商就无法高效操作,用户也会获得更差的交易价格。
以 Solana 上的 Prop AMM HumidiFi 为例,据 @SliceAnalytics 数据,该做市商每秒更新报价高达 74 次。
来自 EVM 的玩家可能会问:“Solana 的 slot (插槽)大约 400ms,Prop AMM 怎么能在单个 slot 内多次更新价格?”
答案在于 Solana 的连续架构,它本质上不同于 EVM 的离散区块模型。
- EVM: 交易通常在完整区块被提议和最终确认后按顺序执行。这意味着中途发送的更新要到下一个区块才会生效。
- Solana: Leader 验证节点不会等待完整区块,而是将交易拆成小数据包(称为“shred”)连续广播到网络。一个 slot 内可能有多笔交换,但 shred #1 的价格更新影响 swap #1,shred #2 的价格更新影响 swap #2。
注:Flashblocks 类似于 Solana 的 shred。根据 Anza Labs 的 @Ashwinningg 在 CBER 大会上的分享,每个 400ms 的 slot 上限为 32,000 shred,相当于每毫秒 80 个 shred。至于 200ms Flashblocks 是否足够快以满足做市商需求,与 Solana 连续架构相比仍是个开放问题。
那么,Solana 上的更新为何如此廉价?又如何导致优先执行?
首先,虽然 Solana 上 Prop AMM 的实现是黑盒,但存在如 Pinocchio 的库,可优化 CU 的方式编写 Solana 程序。Helius 的博客对此有精彩介绍,通过该库,Solana 程序的 CU 消耗可从约 4000 CU 降到约 100 CU。
图片来源: github
再来看第二部分。更高层面上,Solana 通过选择 Fee / Compute Units 比率最高 的交易来优先排序(Compute Units 类似 EVM 的 Gas),与 EVM 类似。
- 具体而言,如果使用 Jito,公式为Jito Tip / Compute Units
- 不使用:Priority = (优先费 + 基础费) / (1 + CU 上限 + 签名 CU + 写锁 CU)( https://solana.com/docs/core/fees)
对比 Prop AMM 更新与 Jupiter Swap 的 Compute Units,可见更新极度廉价,比例达 1:1000。
Prop AMM 更新 :简单曲线更新极便宜。Wintermute 的更新低至 109 CU,总费用仅 0.000007506 SOL
Jupiter Swap :通过 Jupiter 路由的 swap 可达 ~100,000 CU,总费用 0.000005 SOL
由于这种巨大的差异, 做市商只需为更新交易支付极小的费用,就能实现远高于交换的 Fee/CU 比率,从而保证更新在区块顶部被执行,保护自己免受套利攻击。
为什么 Prop AMM 尚未在 EVM 上落地?
假设 Prop AMM 的更新涉及写入决定交易对价格曲线的变量。虽然 Solana 上的 Prop AMM 代码是一个“黑箱”,做市商希望保持其策略机密,但我们可以用这个假设来理解 Obric 在 Sui 上实现 Prop AMM 的方式:交易对报价的决定变量通过 update 函数写入智能合约。
感谢 @markoggwp 发现!
利用这个假设,我们发现 EVM 的架构存在重大障碍,使 Solana 的 Prop AMM 模型在 EVM 上不可行。
回顾一下,在 OP-Stack Layer 2 区块链(如 Base 和 Unichain)上,交易是按每 Gas 优先费用排序的(类似 Solana 按 Fee / CU 排序)。
在 EVM 上,写入操作的 Gas 消耗非常高。与 Solana 的更新相比,通过 SSTORE 操作码在 EVM 上写入一个值的成本惊人:
- SSTORE(0 → 非 0):~22,100 gas
- SSTORE(非 0 → 非 0):~5,000 gas
- 典型 AMM swap:~200,000–300,000 gas
注意:EVM 上的 Gas 类似于 Solana 上的计算单元(CU)。上面的 SSTORE gas 数字是假设每个交易仅有一次写入(冷写入),这是合理的,因为通常不会在一次交易中发送多次更新。
虽然更新仍比交换便宜,但 gas 使用率仅约 10 倍(更新可能涉及多个 SSTORE),而在 Solana 上,这一比例约为 1000 倍。
这带来了两个结论,使相同的 Solana Prop AMM 模型在 EVM 上风险更高:
- Gas 消耗高导致优先费用难以保障更新优先 ,较低的优先费用无法实现高费率/Gas 的比率。为了保证更新不会被抢先执行并位于区块顶部,需要更高的优先费用,从而增加成本。
- EVM 上套利风险更高 ,EVM 上更新 Gas 与交换 Gas 比例仅 1:10,而 Solana 上为 1:1000。这意味着套利者只需将优先费提高 10 倍即可抢先做市商的更新,而在 Solana 上需提高 1000 倍。在这种较低比例下,套利者更可能抢先交易价格更新以获取过时报价,因为成本低廉。
一些创新(如 EIP-1153 的 TSTORE,用于临时存储)提供约 100 gas 的写入,但这种存储是短暂的,仅在单笔交易中有效,无法用于将价格更新持久化以供后续掉期交易使用(例如整个区块期间)。
如何将 Prop AMM 引入 EVM?
在回答之前,先回答“为什么要做”:用户总是希望获得更优的交易报价,这意味着交易更划算。以太坊及 Layer 2 的 Prop AMM 可以为用户提供原本只能在 Solana 或中心化交易所才能获得的竞争性报价。
要使 Prop AMM 在 EVM 上可行,我们回顾一下它在 Solana 上成功的原因之一:
- 区块顶部更新保护: 在 Solana 上,Prop AMM 更新位于区块顶部,可以保护做市商免遭抢先交易。更新位于顶部是因为计算单元消耗极少,即使费用低,也能实现高费用/CU 比率,尤其与掉期交易相比。
那么,如何将区块顶部的 Prop AMM 更新引入 Layer 2 EVM 区块链?有两种方法:要么降低写入成本,要么为 Prop AMM 更新创建优先级通道。
由于 EVM 的状态增长问题,降低写入成本这种方法不太可行,因为廉价的 SSTORE 会导致垃圾状态攻击。
我们提出为 Prop AMM 更新创建优先通道。这是可行方案,也是本文的重点。
Uniswap 团队的 @MarkToda 提出了一种新方法,通过 全球存储智能合约 + 专门的区块构建器策略 实现:
它的工作原理如下:
- 全局存储合约: 部署简单智能合约作为公有键值存储。做市商将价格曲线参数写入该合约(例如 set(ETH-USDC_CONCENTRATION, 4000))。
- 构建器策略: 这是链下关键组件。区块构建器识别发送到全局存储合约的交易,将区块前 5–10% Gas 分配给这些更新交易,并按费用优先排序,防止垃圾交易。
请注意:交易必须直接发送到全局存储地址,否则不能保证位于区块顶部。
自定义区块构建算法示例可参考 rblib。
- Prop AMM 集成: 做市商的 Prop AMM 合约在交换时从全局存储合约读取价格曲线数据,从而提供报价。
这种架构巧妙解决了两个问题:
- 保护 :构建器策略创建“快速通道”,确保区块内所有价格更新在交易前执行,消除抢先交易风险。
- 成本效益 :做市商不再与所有 DeFi 用户竞争高 Gas Price 达成区块顶部交易,只需在 本地费用市场 中竞争更新交易预留的顶部区块,大幅降低成本。
用户交易将依据做市商在同一区块初始更新设定的价格曲线执行,确保报价的新鲜度和安全性。这种模型在 EVM 上重现了 Solana 上低成本、高优先级更新的环境,为 Prop AMM 在 EVM 上铺平了道路。
然而,这种模型也存在一些缺点,我将这些问题留在本文底部以供讨论。
结论
Prop AMM 的可行性依赖于解决核心经济问题: 廉价且优先执行以防止抢先交易。
虽然标准 EVM 架构使此类操作成本高、风险大,但新的设计为解决这个问题提供了不同的方法。结合链上全局存储智能合约和链下构建器策略的新设计,可创建专用“快速通道”,保证区块顶部执行更新,同时建立本地、受控的费用市场。这不仅使 Prop AMM 在 EVM 上可行,也可能为所有依赖区块顶部预言机更新的 EVM DeFi 带来变革。
开放性问题
- Prop AMM 在 EVM 上 200ms Flashblock 的速度是否足以与 Solana 连续架构竞争?
- Solana 上大部分 AMM 流量来自单一聚合器 Jupiter,其提供 SDK 方便 AMM 接入。但在 Layer 2 EVM 上,流量分散在多个聚合器且无公共 SDK,这是否对 Prop AMM 构成挑战?
- Prop AMM 在 Solana 上更新仅消耗约 100 CU,其实现机制如何?
- 快速通道模型仅保证区块顶部更新。如果一个 Flashblock 内有多笔交换,做市商如何在这些交换之间更新价格?
- 是否可以使用 Yul 或 Huff 等语言编写优化的 EVM 程序,类似 Solana 上的 Pinocchio 优化方案?
- Prop AMM 与 RFQ 的比较如何?
- 如何防止做市商在区块 N 给出优质报价诱导用户,然后在区块 N+1 更新为糟糕报价?Jupiter 如何防范?
- Jupiter Ultra V3 的 Ultra Signaling 功能允许 Prop AMM 区分有害与无害流量,并提供更紧密的报价,这类聚合器特性对 Prop AMM 在 EVM 上的重要性如何?
$3.68B Bitcoin ETF Trading Shows Strong Demand Despite Ethereum Exodus
The post $3.68B Bitcoin ETF Trading Shows Strong Demand Despite Ethereum Exodus appeared first on Co...
Ripple News: XRP Dominates CME Q3 Crypto Activity
The post Ripple News: XRP Dominates CME Q3 Crypto Activity appeared first on Coinpedia Fintech News...
Best Crypto To Buy Right Now? This Altcoin Is Surpassing XRP and Cardano As The Most Viral Altcoin In 2025
Remittix (RTX) is emerging as 2025’s most viral altcoin, outpacing XRP and Cardano with real-world p...
