本文对比了链上报价(RFQ)系统和参数化AMM(Prop AMM)在EVM链上的应用。RFQ系统提供高效的无滑点交易,但价格发现发生在链下,限制了其可组合性。Prop AMM通过链上价格更新实现与其他智能合约的无缝交互,支持原子交易等复杂DeFi策略,因此,尽管RFQ在特定场景下表现出色,Prop AMM对于构建高效、复杂的DeFi生态仍然至关重要。
特别感谢 Ellipsis Labs 的 Eugene Chen ( @0xShitTrader ) 在这个话题上提供的见解,以及 Flashbots 的 Tesa Ho ( @defin00b ) 对本文的校对。
在 EVM 链上,询价 (RFQ) 系统运行得非常好,为用户提供了深度流动性和无滑点的交易。它们的成功让许多人认为,像 Prop AMM 这样更复杂的模型是不必要的。
然而,这种观点忽略了一个至关重要且强大的概念,这个概念是 DeFi 的基础:可组合性。
虽然 RFQ 在诸如无滑点等特性的互换中非常有效,但它们的价格发现是在链下完成的,这成为了在运行时运行复杂的链上策略的瓶颈。虽然 Prop AMM 和 RFQ 可以共存,但本文将探讨这两种模型之间的差异,并论证 Prop AMM 是在 EVM 链上实现高效且复杂的 DeFi 策略的重要组成部分。
本文建立在我之前关于 Prop AMM 的文章的基础上,在此处链接。去看看吧!
理解模型:RFQ vs. Prop AMM
为什么可组合性很重要
RFQ 的可组合性问题
Prop AMM 解决方案:链上 & 原子性
结论:为什么 RFQ 不能取代 Prop AMM
开放性问题
在深入探讨可组合性之前,让我们先明确定义这两种模型。
1. 询价 (RFQ)
https://0x.org/docs/0x-swap-api/advanced-topics/about-the-rfq-system RFQ 系统本质上是一种链下拍卖:
你 (Taker):广播你购买或出售资产的意图(例如,“我想购买 100 ETH”)。
做市商:在链下以私人报价回应你(例如,“我将以 3,000 美元的价格向你出售 100 ETH”)。
你(Taker):选择最佳价格并签署交易,以与该特定做市商完成交易。
这种模型非常适合以无滑点的价格进行大额交易。但是,价格发现是在链下发生的。
2. Prop AMM
Prop AMM 是一种混合模型。它具有一个链上流动性池,类似于传统的 AMM(如 Uniswap)。但是,它的参数不是由简单的 x*y=k 曲线设置的。

常规 AMM 中使用的 x*y=k 曲线,而不是 Prop AMM。但是,Prop AMM 仍然具有价格曲线。
相反,一个专有的链下做市商主动且频繁地更新链上价格,以反映外部市场(如中心化交易所)。
关键区别:价格是在链上确定的,这意味着其他智能合约可以立即访问它。但是,为什么这很重要?因为它启用了可组合性。
Coinbase 研究所 将可组合性定义为“去中心化应用程序 (dApp) 和协议无缝地相互交互的能力”。
在实践中,这实现了原子交易:在单个、不可分割的交易中执行多个复杂的金融操作(如借款、交换和偿还贷款)的能力。如果交易的任何一个部分失败,整个交易都会被回滚,使其无风险。
这解锁了需要原子性的强大策略。举几个例子:
闪电贷套利:你的智能合约发现资产在 DEX A 上以低于市场价值的价格出售。在一次交易中,它可以:
通过 Aave 闪电贷借入数百万美元。
在 DEX A 上购买被低估的资产。
在 DEX B 上以市场价值出售该资产。
偿还 Aave 闪电贷,赚取利润。这一切都瞬间发生。只有在保证有利可图的情况下才会执行套利。
抵押品互换以避免清算:如果你的抵押品(例如 ETH)在贷款协议上正在下降并接近清算,则原子交易可以:
闪电借入 USDC。
偿还你的债务。
提取你存在风险的 ETH 抵押品。
将 ETH 交换为更安全的资产(如更多的 USDC)。
重新存入安全资产并偿还闪电贷。
自我清算/降低杠杆:使用闪电贷偿还部分借款,提取相应数量的抵押品,出售该部分抵押品,并偿还闪电贷,所有这些都是为了在不增加新资金的情况下降低你的风险状况。
RFQ 并非完全可组合。你无法发送一个交易来检查来自 RFQ 的报价,并且如果在该交易的运行时期间确定该报价是有利的,则执行基于该 RFQ 报价的逻辑。
这是因为与 AMM 不同,RFQ 的报价价格不是在链上发现的。它通过 API 在链下协商。此过程是异步的,这意味着它需要多个步骤和时间延迟。
在深入探讨为什么 RFQ 不是完全可组合的之前,让我们首先用一个例子来说明为什么能够链上发现价格是有益的。
链上价格发现很重要,因为它允许你在运行时执行条件逻辑。想象一下 Aave 上的一位借款人,他有 10,000 USDC 的债务和 5.10 WETH 作为抵押品,他想在不增加新资金的情况下降低风险。最干净的方法是通过我们自己的智能合约执行以下步骤的单个原子交易:
闪电借入 USDC,
偿还 Aave 债务,
提取一些 WETH,
将该 WETH 交易为 USDC,
使用收益偿还闪电贷及其少量费用。
要么每个步骤都成功,要么链回滚整个过程。
让我们假设一种情况,你使用 RFQ 而不是 AMM 来路由交换。
在提交交易之前,你必须收到做市商签署的报价,例如“以 10,005 USDC 的价格出售正好 5.00 WETH,有效期为 30 秒,必须全部成交”。你将“接受”报价的 calldata 传递到智能合约中,一旦执行交易,合约就无法要求新的价格。如果利率上升,你实际上需要 10,006 USDC 才能偿还闪电贷,或者可能报价在你的交换之前以某种方式过期,那么交易将失败,你需要一个新的报价。
另一方面,如果你使用 AMM,你可以在交易中包含逻辑来重新计算要出售多少 WETH 才能获得 10,006 USDC 来偿还闪电贷,而不是让交易失败。这就是为什么可组合性很重要。
Jupiter 的 RFQ 系统
Jupiter 的 RFQ 系统 (JupiterZ) 完美地说明了链下价格发现过程:
用户通过他们的 Ultra API 请求报价。
做市商有 250 毫秒的时间在链下回复。
Jupiter 选择最佳报价。
用户有 20 秒的时间通过签署交易来接受。
然后,做市商有 35 秒的时间来确认和签署。
https://dev.jup.ag/docs/routing/rfq-integration 注意:Jupiter 的文档错误地表明做市商的 35 秒到期时间先到,然后是 taker 的 20 秒到期时间。实际上是相反的,正如 Jupiter 的团队所澄清的那样。
整个流程最多可能需要 55 秒,并且涉及多个独立行动的参与者。这是非原子过程的定义。你根本无法通过这种结构在一次交易中检查链上的价格并基于该价格执行闪电贷套利。
此外,这种 RFQ 模型对做市商也是有害的。在与 Eugene 的通话中,Eugene 提到市场结构是由拥有最多订单流的人决定的。在 Solana 上,游戏规则目前由 Jupiter 设定,Jupiter 是大多数订单流的来源。按照这些规则,有害的交易者可能会使用 JupiterZ,方法是等到 20 秒到期时间的最后一秒才接受报价,以查看报价是否朝交易者有利的方向移动。由于 JupiterZ 要求做市商完成其 95% 的报价(source),因此有害的交易者很有可能完成他们的报价。这是 Prop AMM 模型在 Solana 上受到做市商青睐的原因之一。
类似的可组合性限制也适用于 EVM 链上的 RFQ 系统。0x 有一个 RFQ,其中做市商首先在其订单上进行链下签名,然后 taker 在链上签署交易,与 Solana 上的 2 笔交易相比,只需要 1 笔链上交易。
有人可能会争辩说,由于 RFQ 能够与 AMM 一起使用,使用链下路由器(如 Matcha)在 1 笔交易中完成用户的报价(如下图所示),因此它们是可组合的。

想借此机会感谢 Matcha 的简洁用户界面。@matchametaxyz 团队的出色工作!
但是,路由器是链下的是这里的关键词。因为 RFQ 系统是在链下完成的,所以路由器也是链下的。这些 RFQ 价格不是在链上确定的,这意味着智能合约无法在一次交易中“请求”报价,然后“决定”进行闪电贷。
这正是 Prop AMM 可以解决的问题。
因为 Prop AMM 的价格已经在链上并且是公开可读的,所以智能合约可以原子地执行复杂的逻辑。
但是,这种可组合性优势取决于 Prop AMM 的公开性。这与某些现有的 Prop AMM 模型(如 Solana 上的模型)的一个关键区别,在 Solana 上,Prop AMM 具有私有逻辑(私有 IDL),以避免泄漏做市商的效率优势,并且主要通过像 Jupiter 这样的链下聚合器访问。在该模型中,链上智能合约仍然无法原子地读取 Prop AMM 的价格,这破坏了可组合性。
但是,公开可访问的 Prop AMM 可以解决这个问题。通过这种可组合性,套利合约可以在一次交易中执行以下操作:
读取 Prop AMM 当前的链上价格。
读取另一个 AMM 的链上价格。
如果存在价格差异(套利):
3. a. 执行闪电贷。
3. b. 从更便宜的池中购买(例如,Prop AMM)。
3. c. 卖给更昂贵的池。
3. d. 偿还闪电贷。
有人可能会争辩说“这对运行 Prop AMM 的做市商来说不是坏事吗,因为如果存在套利,那么这是否意味着他们正在被套利?”。但是,这里要记住的一个重要区别是,做市商已经在区块顶部将其 Prop AMM 更新为市场价格(例如,Binance 上的价格)。这意味着被套利的是常规 AMM 的陈旧报价,而不是 Prop AMM。运行 Prop AMM 的做市商也很可能会自己进行套利。这里的一个关键要点是,Prop AMM 是更有效地将 CEX 价格带到链上的另一种途径。
Prop AMM 实现了所有更强大和更复杂的 DeFi 策略,这些策略无法通过 RFQ 模型本身完成。
RFQ 并不“坏”。它们非常适合其特定用途:为零售用户和机构提供大型、非时间敏感交易的绝佳、无滑点定价。
但它们不能为 DeFi 上的可组合策略提供服务。Prop AMM 填补了这一关键空白。
通过提供频繁更新和链上可发现的价格,Prop AMM 充当了一个重要的构建块,允许其他协议在其之上构建,并实现类似于常规 AMM 的可组合性,但价格更能与中心化交易所相匹配。
这就是为什么 EVM 链,尽管拥有提供无滑点执行的 RFQ,仍然可以从引入公共的、可组合的 Prop AMM 中获得巨大的好处。
是否可以直接与 Solana 上的 Prop AMM 智能合约交互,而无需通过聚合器前端?换句话说,是否仍然可以与尚未发布其 IDL 的智能合约进行交互?
哪些用户群最需要可组合性?更具体地说,谁将从链上运行可组合策略中受益最多?
- 原文链接: x.com/0xOptimus/status/1...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!