两个界面都可能显示某个代币的“价格”,但它们描述的其实是不同的东西。Solana 上的兑换界面通常返回一个报价:针对某一具体输入数量的预估输出,经由一个或多个流动性来源路由,并附带价格影响数值和滑点容忍度。带有订单簿的永续合约交易场所展示的则是另一回事:以离散价格挂出的买盘和卖盘,各自带有数量。两者都会产生执行成本,但数字的生成方式不同、含义不同,留下的证据也不同。本文用虚构数字对两者进行比较。这是一篇机制讲解,不是交易场所推荐。
兑换报价在回答什么
聚合器接收输入代币、输出代币和数量,然后在其可触及的流动性来源中搜索路由。它的答案是条件性的:如果现在执行一笔交易,沿着这条路由,大致会得到这么多。其中许多来源是自动化资金池,而不是挂单列表。资金池的定价规则根据其储备量确定汇率,因此当您的交易规模相对于这些储备量增大时,汇率会变差。StonkBuilder 关于流动性池如何为兑换定价的讲解介绍了这一机制,其关于Jupiter 如何搜索 Solana 兑换路由的概述则展示了一个聚合器所处的位置。
各界面在显示什么以及如何标注上存在差异。若要逐字段解读某个界面,请参阅签署前阅读 Jupiter 报价指南。总体要点在各聚合器之间都成立:报价是针对某一时刻某一数量的估算,而不是成交。
价格影响、滑点容忍度与实测滑点
有三个数字容易混淆,它们回答的是不同的问题。
- 价格影响是报价对您自己的交易相对于可用流动性会把汇率推动多少的估算。它取决于数量和深度,并且在您签署之前就已作为估算值可知。
- 滑点容忍度是您选择的一个限制:在报价与执行之间,您愿意接受的相对报价输出的最大偏离。许多兑换界面会把它换算为最低可接受输出;如果执行会给出更少,交易就应当失败,而不是以更差的汇率完成。容忍度不是成本估算。设置 1% 并不意味着您要支付 1%。
- 实测滑点是实际发生的情况与报价相比的结果。只有在执行之后才能知道。
StonkBuilder 关于滑点与价格影响的指南把订单自身的影响与报价和执行之间的其他变化区分开来。以下是一笔虚构的兑换,将 1,000 USDC 换成一种名为 XYZ 的代币,未计入任何路由费或网络费,真实报价应当逐项列出这些费用:
| 字段(虚构) | 数值 | 含义 |
|---|---|---|
| 您交易前的参考汇率 | 5.00 XYZ 每 USDC | 零数量时为 5,000 XYZ |
| 报价输出 | 4,950 XYZ | 包含约 1.0% 价格影响的估算 |
| 滑点容忍度 | 0.5% | 您选择的边界 |
| 隐含最低输出 | 4,925.25 XYZ | 4,950 × (1 − 0.005) |
| 确认后的实际输出 | 4,940 XYZ | 只有事后才知道 |
相对于报价衡量,滑点为 10 XYZ,约 0.20%。相对于零数量参考衡量,缺口为 60 XYZ,约 1.2%。请说明您使用的是哪个参考。在 Solana 上,网络费以 SOL 支付,链接的报价指南指出,即使兑换失败也可能产生费用。
订单簿展示的则是另一回事
订单簿列出挂出的限价单:买入的买盘和卖出的卖盘,各自以某一价格和数量挂出。Hyperliquid 的订单簿文档称,其订单簿的运行方式与中心化交易所的订单簿基本相同,只是运行在链上,按价格—时间优先撮合订单,并要求价格是报价单位(tick size)的整数倍、数量是交易单位(lot size)的整数倍。其他交易场所会公布各自的规则。
假设一个虚构的永续合约订单簿显示卖盘为:$20.01 处 100 单位、$20.02 处 200 单位、$20.04 处 300 单位;买盘为:$19.99 处 150 单位、$19.98 处 250 单位。中间价为 $20.00。针对这一未变化的快照,一笔 500 单位的市价买单会吃掉 100 × $20.01 + 200 × $20.02 + 200 × $20.04 = $10,013,平均约为 $20.026。在计入费用之前,这大约比中间价高 13 个基点。SuperQuant 关于逐档走订单簿的方法解释了这一算术,以及为什么单一快照无法证明您的订单到达时深度仍然存在。
有两点差异很突出。订单簿的成本随着档位被消耗而阶梯式上升,而资金池的汇率则沿其曲线连续变差。而且,显示的订单簿数量可能在您的订单落地前的一瞬间被撤走或增加,因此深度是快照,而不是库存。
两个数字并排比较
| 问题 | 聚合器兑换报价 | 永续合约订单簿 |
|---|---|---|
| 流动性在哪里 | 路由沿途的资金池储备及其他来源 | 以离散价格挂出的限价单 |
| 数量如何改变价格 | 沿资金池曲线连续变化 | 逐档阶梯式变化 |
| 交易前成本信号 | 报价上的价格影响 | 价差加上走订单簿 |
| 您的保护性设置 | 滑点容忍度,相对于报价 | 限价,一个绝对水平 |
| 未包含 | 后续市场变动;费用单独显示 | 费用、资金费率、后续订单簿变化 |
滑点容忍度与限价有相似之处,因为两者都限定了可接受的最差结果。容忍度是相对于一个本身可能变化的报价来表达的;限价则是一个固定水平,可能根本不会成交。订单簿上的市价单不带有您自己设定的价格边界;请查看交易场所的订单类型文档,了解其施加的任何保护。SuperQuant 的加密货币订单指令比较涵盖了这些取舍。规模的影响也是双向的:流动性稀薄的市场,进入可能比退出更便宜,正如为什么卖出可能比买入更难指南所解释的那样。
每种记录让您事后可以核查什么
一笔完成的兑换会留下链上交易。其记录可以显示签名、成功还是失败、支付的费用以及代币余额变化,因此您可以把实际输出与您保存的报价及其隐含的最低输出进行比较。StonkBuilder 关于检查 Solana 交易签名的讲解说明了如何在正确的集群上读取该状态。交易无法显示的是您当时看到的报价,或者其他路由本会返回什么,除非您把它们记录了下来。
一笔永续合约订单会留下交易场所的成交记录:每笔成交的价格、数量、费用和时间,部分成交会作为单独条目出现。据此您可以计算平均成交价,并与决策时保存的订单簿快照进行比较。没有该快照,您当时面对的深度就无法重建。费用遵循交易场所当前的费率表以及您的等级;参见 SuperQuant 关于挂单与吃单手续费算术的示例。
在两种情况下,交易场所都不会保留您交易前的视图。请自行保存报价或快照、时间戳和参考价格。
研究工具止步于何处
SuperQuant 不路由兑换,也不在交易所下单。其内置历史数据为合成的 1 小时 K线,其回测采用简化假设,根据其研究方法,默认每笔成交 2 个基点的滑点和 0.05% 的费用。1 小时 K线既不包含资金池储备,也不包含订单簿深度,因此回测无法复现兑换报价或走订单簿。请把成本输入当作需要压力测试的假设,而不是对真实订单本会花费多少的测量。
继续学习
StonkBuilder 的 Jupiter 兑换基础课程将路由、钱包连接、报价和价格影响浓缩为一组简短课程。关于合约方面,SuperQuant 的现货与永续合约指南解释了永续合约仓位在执行成本之外还增加了什么。这是教育性研究背景,不构成投资建议。