CLOB-FIRST:当永续合约把"订单簿"重新变成主角
0. 写在前面:一个被反复证伪的预测
2022 年面试时被问到:"你觉得永续合约 DEX 的终局是 AMM 还是 Order Book?" 当时的回答是 AMM------理由很标准:AMM 永远有流动性、对手方是无须信任的 LP 池、不需要做市商在线、对链上用户友好。
三年后回看,这个判断对了一半。对的部分 :AMM 确实在长尾资产、散户小额、被动 LP 收益这几个场景里仍然无可替代。错的部分:把"撮合效率"和"流动性来源"混为一谈了。
2023-2025 年的市场用脚投票------
- Hyperliquid:自建 L1 + 全链 CLOB,2024 年 Q4 多次单日交易量峰值破 200 亿美元级(不同日期有波动),长期独占永续合约 DEX 50%+ 份额
- dYdX V4:放弃 StarkEx、迁移到独立 Cosmos 链 + CLOB 撮合引擎
- Vertex:Uniswap V3 风格的集中流动性 + CLOB 撮合的混合体
- Aevo:CLOB 期权 + 永续,从 Binance 期权团队孵化
- Drift Protocol:Solana 上的 CLOB,2024 年 SOL meme 季流量主力
- RabbitX / HMX / Jupiter Perps:全部 CLOB
AMM-first 永续合约 (GMX V1、Vox Finance 等)在这两年里市场份额持续萎缩。GMX 自己的回应是 GMX V2------从纯 GLP 池转向"多流动性池 + CLOB 限价单"------本质上是承认 AMM-first 在交易体验上打不过 CLOB。
这就是 CLOB-FIRST 范式崛起的背景:不是 Order Book 重新发明了,而是它从来就没有真正离开过------只是在 DeFi 早期被 AMM 的"无须做市商"叙事短暂取代了。
这篇文章会从架构师视角拆解这件事:
- 什么是 CLOB-first:精确定义、它不是、以及它和"传统 CEX 订单簿"的区别
- 架构对比:CLOB-first vs AMM-first 在六个维度的差异(撮合层、风控层、流动性来源、MEV、L2、撮合性能)
- 四个真实案例:Hyperliquid、dYdX V4、Vertex、GMX V2 的架构决策与权衡
- AMM-first 的活路:什么时候 AMM 仍然是最优解
- 如果我现在从零设计一个永续合约 DEX:我选什么,以及为什么
1. 什么是 CLOB-FIRST:先把概念钉死
1.1 定义
CLOB (Central Limit Order Book),中央限价订单簿:把所有买/卖单按 (价格, 时间, 数量) 三个维度排序,价格最优 + 时间最早 的单子优先成交。这是 NYSE、NASDAQ、Binance、Coinbase Pro 用了半个世纪的结构。
CLOB-FIRST 永续合约 DEX 的特征:
| 维度 | CLOB-first | AMM-first |
|---|---|---|
| 价格发现 | 链上订单簿,maker/taker 直接报单 | 池子净值(Oracle 喂价 + 池子 P&L) |
| 对手方 | 另一个 trader(做市商+散户) | LP 池(GLP、vGLP) |
| 流动性来源 | 主动做市商 (market maker) | 被动 LP 存款 |
| 价格冲击 | 取决于订单簿深度 | 取决于池子规模 + OI 比例 |
| 延迟 | 撮合要快(毫秒级) | 几乎为 0(池子即报价) |
| MEV 风险 | 高(先到先得抢跑) | 低(Oracle 价格 + 延迟结算) |
| 资金费率 | 8 小时一次,按多空不平衡 | 同样 8 小时一次,但更平滑 |
⚠️ 严格说,CLOB 和 AMM 不是二选一------Vertex(集中流动性 → 限价单)、Drift V2(JIT 流动性池 + CLOB)、GMX V2(多 LP 池 + 限价单)都是 混合架构 。但 "primary route" 是 CLOB 还是 AMM,决定了整个系统的优化方向、gas 模型、做市策略。这篇文章的 "CLOB-first" 指的是 primary route 是 CLOB 的系统。
⚠️ 上表"延迟"行:几乎为 0 是夸张说法------AMM 也要等 Oracle 更新 + 交易上链,典型延迟在数秒级。CLOB 毫秒级延迟主要针对高性能链(Hyperliquid 0.4s 出块、dYdX V4 1.5s 出块),通用 L2 上的 CLOB 延迟反而高于 AMM。
1.2 CLOB 在链上的三种实现路径
链上 CLOB 不等于 CEX 订单簿------因为链上每一笔撮合都要付 gas、且必须确定性执行。三条实现路径:
| 路径 | 代表项目 | 撮合位置 | gas 模型 |
|---|---|---|---|
| L1/Cosmos App-Chain 全链撮合 | dYdX V4、Hyperliquid | 链上共识层 | 每笔成交付 gas |
| App-specific Rollup / 高性能通用 L1 | RabbitX(前 Vega,需确认当前架构)、Aevo、Drift (Solana)、Zeta Markets | L2 排序器 / 高性能 L1 | 同样付 gas,但便宜 10-100x |
| 混合(链下撮合 + 链上结算) | 早期 dYdX V3、Injective | 链下 sequencer | 撮合 0 gas、结算付 gas |
Hyperliquid 走的是第一条------但他们做了几个关键工程优化让 gas 不爆炸:
- 账户用 ed25519 离线签名后批量打包
- 撮合只改 in-memory state,settle 进 block 才落账
- 链本身高度定制:去掉 EVM 兼容,省掉 60% 共识开销
1.3 为什么不是"DEX 重新发明了订单簿"
DeFi 老炮会说:"0x、IDEX、Loopring 2018 年就在链上做订单簿了,你 2024 年才喊 CLOB-first?" 区别在于:
- 2018 年的链上订单簿:撮合慢(每笔 30-60s)、gas 高($5 一笔成交)、做市商必须主动给链上 quote,没人愿意做
- 2024 年的 CLOB:专用 L1/L2(毫秒级撮合、gas < $0.001)、批量结算、做市商有利可图
CLOB-FIRST 不是技术突破,是基础设施成熟后的重新发现。 当 Celestia / EigenDA 让 DA 成本降到 $0.001/MB、当 Firedancer 让 Solana 单 slot 出块、当 HyperBFT 的 HotStuff 共识跑到 0.4s 时,"链上订单簿"的工程天花板就解开了。
2. 架构对比:六个维度的真实差异
我做了六年架构师,深知"架构对比"最讨厌的是流于口号。下面这张表每个 cell 我都会展开。
| 维度 | CLOB-first | AMM-first | 谁赢? |
|---|---|---|---|
| 撮合层 | 专用撮合引擎,价格时间优先 | 池子函数(x·y=k 或 vAMM) | CLOB(深度足够时) |
| 风控层 | Account-based 保证金 + 实时强平 | 全局池 + OI 上限 | 平手 |
| 流动性来源 | 主动做市商 | 被动 LP | CLOB(专业市商)、AMM(散户 LP) |
| MEV 暴露 | 高(三明治攻击、抢跑) | 低(Oracle 锚定) | AMM |
| L2/L1 选择 | App-chain / 高性能 L1 | 通用 L2 / L1 即可 | CLOB(被迫自建链) |
| 撮合性能 | 10K-200K TPS(网络级,单核 benchmark 多未公开) | 受限于 Oracle 更新频率 | CLOB 完胜 |
2.1 撮合层:内存里的红黑树 vs 池子里的曲线
AMM 的撮合:
price = oracle_price ± impact_function(open_interest, pool_size)
impact_function 是关键------GMX 用的是 abs(OI) / pool_size 系数,dAMO(Liquidity)则用波动率自适应。好处 :永远报得出价,坏处:报价永远比 mid 贵一个 spread,而这个 spread 完全由池子规模决定,不反映真实供需。
CLOB 的撮合:经典的 price-time priority。
book = {
bids: { 50000.0: [order_1, order_2, ...], 49999.5: [...], ... }, # 价高优先
asks: { 50000.5: [...], 50001.0: [...], ... } # 价低优先
}
match: best_bid >= best_ask → 成交
关键工程细节:
- Hyperliquid 用 Rust + Tokio 写的撮合核心(网络级 ~200K orders/s,单核 benchmark 未公开)
- dYdX V4 用 Go,撮合逻辑在 ABCI 应用层
- Aevo 用 Rust + Tokio 异步撮合
撮合层的对比本质上是 "主动报价 vs 被动接受" ------CLOB 把定价权交给市场(做市商),AMM 把定价权交给协议(数学公式)。在 专业做市商在场 时,前者完胜;在 没有做市商 的长尾资产上,后者完胜。
2.2 风控层:账户制 vs 池子制
这是经常被忽略、但实战中至关重要的差异。
AMM-first(GMX V1)的风控模型:
pool_value_t = Σ(asset_i × price_i) + unrealized_PnL(all_traders)
trader_equity_t = Σ(collateral) + realized_PnL + unrealized_PnL(per_trader)
margin_ratio = trader_equity / abs(position_notional)
如果 pool_value < sum(trader_unrealized_PnL + abs(collateral)):
pool 被穿仓 → LP 承担亏损
这是 AMM-first 永续合约的 结构性风险 ------历史上真正被"穿仓"的事件是 Mango Markets(2022 年 10 月,Avalanche) :Avraham Eisenmann 操纵 MNGO-PERP 把 Mango 抽干 ~1.14 亿美元。GMX V1 本身通过 ADL 和 OI 上限不允许 trader 盈利超过池子的赔付能力 ,真正的痛点是 OI 上限限制 trader 开仓能力 + borrow fee 机制让 LP 收益不稳定,而不是"被穿仓"。
CLOB-first 的风控模型:
account.collateral = deposited_USDC
account.unrealized_PnL = (mark_price - entry_price) × size
account.margin_ratio = (collateral + unrealized_PnL) / abs(size)
如果 margin_ratio < maintenance_margin_ratio:
强平引擎接管 → 限价单挂在交易所 → 成交即平仓
如果账户爆仓穿仓:
insurance_fund 兜底 → 兜不住则按 ADL(自动减仓)规则
关键差异 :CLOB 风控是 per-account 隔离 的,一个 trader 爆仓不影响其他 trader;AMM 风控是 pool-shared 的,一个 trader 爆仓直接吃掉 LP 的本金。
这也是为什么 专业 trader 永远选 CLOB------他们的仓位和其他 trader 是隔离的,没有"被陌生人拖累"的尾部风险。
2.3 流动性来源:做市商 vs LP 存款
这是 CLOB-first 和 AMM-first 最根本的范式分歧。
| 流动性来源 | 谁提供 | 激励 | 谁赚 | 谁亏 |
|---|---|---|---|---|
| 做市商 (MM) | Wintermute、Flow Traders、Amber、GSR | Maker rebate + 库存对冲 | 价差、库存损益 | 极端行情穿仓 |
| 被动 LP | 普通用户、DeFi 玩家 | 协议代币 + 部分手续费 | 资金费率 + 协议分润 | Trader 盈利 = LP 亏损 |
CLOB-first 的隐患 :如果专业做市商撤出(比如 Wintermute 2024 年某季度砍掉所有小币种做市),长尾资产的流动性会瞬间归零。AMM-first 的隐患:如果池子规模不够大,OI 上限会让 trader 开不了仓。
Hyperliquid 的解法值得专门讲:他们和 专业做市商签长期合作 + 给低延迟 API + 通过 HLP 池参与部分做市。社区普遍认为 Hyperliquid 有自营做市成分(Mango Markets 2022 年事件后,这类做法已被多家监管机构关注),但官方未明确确认自营做市。Hyperliquid 用"自营账户与用户账户严格隔离"的架构降低了利益冲突风险。
2.4 MEV 暴露:抢跑 vs 不抢跑
| 攻击 | AMM-first | CLOB-first |
|---|---|---|
| 三明治攻击 | 难(Oracle 锚定,txn 顺序影响小) | 极易(在撮合前看到 pending 单) |
| 抢跑建仓 | 成本 = Oracle 更新延迟 | 成本 = 1 个 slot(毫秒级) |
| 清算抢跑 | 罕见 | 高利润 + 高频(清算机器人战场) |
| Oracle 操纵 | 关键风险(GMX V1 被锤过多次) | 低(mark price = 中位成交价) |
AMM 的 MEV 风险集中在 Oracle ------只要能操纵喂价,就能从池子里套利。CLOB 的 MEV 风险集中在撮合------只要能在撮合前看到对手的单子,就能抢跑。
CLOB 的 MEV 没有银弹------Hyperliquid 的解法是 "批量拍卖 + 0 延迟 reveal" :所有订单先进 mempool,撮合完成才公开结果,让抢跑者看不到未撮合的 quote。dYdX V4 走的是 "延迟撮合":订单先入 validator mempool,每个 block 末才撮合。
2.5 L2/L1 选择:被迫自建链
这是 CLOB-first 最被低估的成本------主流通用 L2 跑不动专业 CLOB。
为什么?
- 以太坊 L1:12s 出块 + $1/txn → 每秒只能撮合几百笔
- Arbitrum/Optimism:250ms 出块但 sequencer 集中化 → 容易被审查/抢跑
- Base:同上
- Starknet/S zkSync:生成证明要 5-30 分钟 → 不适合实时撮合
所以 CLOB-first 项目要么 自建 L1 (Hyperliquid、dYdX V4 在 Cosmos),要么 自建 L2/App-chain (Aevo、RabbitX------注:RabbitX 基于 Vega Protocol 演化,当前具体架构需确认),要么 借力通用高性能 L1(Drift Protocol 在 Solana 上做 CLOB,Zeta Markets 同路径)。
自建链的代价:
- 流动性分散(不能和 L1 DeFi 组合,比如抵押品不能直接拿去 Aave)
- 跨链桥风险
- 节点运营 / 共识设计的工作量(10-30 人年的工程投入)
但这是 "必要的代价"------没有这条路径,CLOB 的毫秒级撮合根本做不到。
2.6 撮合性能:硬数字
| 项目 | 撮合 TPS(网络级目标,单节点 benchmark 多未公开) | 出块时间 | Maker/taker fee |
|---|---|---|---|
| Hyperliquid | ~200K | 0.4s | -0.02% / 0.05% |
| dYdX V4 | ~10K | 1.5s | 0 / 0.05% |
| Aevo | ~5K | 0.5s | -0.01% / 0.03% |
| Vertex | ~3K | 0.4s | 0 / 0.04% |
| GMX V2 | N/A (vAMM) | 2s | 0.05% / 0.05% |
数据来自各项目 2024 年披露。网络级目标 ≠ 单节点 benchmark------Hyperliquid 的 200K 是网络级总吞吐,正常负载下单节点实测 5-10K TPS 量级。
3. 四个真实案例:架构师的取舍
下面四个项目都是真实存在的、我读过代码或技术报告的。每个案例我都会回答三个问题:
- 它的 CLOB 撮合是怎么实现的?
- 它做了哪些 AMM-first 不会做的工程优化?
- 它放弃/妥协了什么?
3.1 Hyperliquid:自营做市 + 自建链的极端代表
架构概览(参见 fig1-hyperliquid-architecture.html):
┌─────────────────────────────────────────┐
│ Trader (UI / API) │
│ ed25519 signed action → /exchange │
└──────────────────┬──────────────────────┘
│ HTTP + WebSocket
▼
┌─────────────────────────────────────────┐
│ HyperBFT 共识层(N 个验证人,由 HYPE 质押者组成) │
│ - Block time: 0.4s │
│ - Finality: < 1s │
│ - HotStuff 变种共识 │
└──────────────────┬──────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ HLP (Hyperliquidity Provider) 池 │
│ - 部分市场的被动流动性兜底("类 AMM"组件)│
│ - 与用户账户严格隔离 │
└──────────────────┬──────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ 撮合引擎 (Rust + Tokio) │
│ - 全链撮合 (在 validator 内存里) │
│ - 价格时间优先 │
│ - 网络级 ~200K orders/s(单核 benchmark 未公开)│
└──────────────────┬──────────────────────┘
│
▼
┌─────────────────────────────────────────┐
│ 风控 + 清算 + Insurance Fund │
│ - 每 tick 检查 margin ratio │
│ - ADL 兜底 │
└─────────────────────────────────────────┘
📐 完整 5 层架构图(含数据流箭头 + 配色语义 + legend)见
fig1-hyperliquid-architecture.html。
关键工程决策:
-
去掉 EVM 兼容 ------Hyperliquid 的合约层是自研的 HyperVM,不是 EVM。代价是开发者生态弱、钱包集成难;收益是 共识开销砍掉 60%+,单 slot 撮合能力质变。
-
离线签名 + 批量打包 ------用户签名 action 后,validator 可以在一个 block 里打包几千个订单,大幅降低单笔成交的 gas。
-
HLP 池参与做市 ------社区普遍认为 Hyperliquid 通过 HLP 池参与部分做市(官方未明确披露)。好处 :流动性永远在线,不完全依赖外部做市商;坏处:与用户有潜在利益冲突(虽然 HLP 账户和用户账户在撮合层严格隔离)。Mango Markets 2022 年事件后,自营做市模式的合规风险已被多家监管机构关注。
-
以 USDC 为主要结算资产------避免 AMM-first 多资产抵押品池被穿仓的风险(与 AMM-first 最大的差异)。注:Hyperliquid 接受多种资产作为抵押,但结算层以 USDC 为主。
放弃/妥协:
- 没有原生跨链桥(资产充值要走手动流程或第三方桥)
- 治理中心化(验证人集合由团队控制,去中心化是路线图而非现状)
- 公开数据少(撮合核心不开放源码)
3.2 dYdX V4:从 StarkEx 撤回到 Cosmos
架构演进史:
V1 (2020): 链下撮合 + 链上结算 (StarkEx)
V2 (2021): 同样模型,搬到 L2
V3 (2022): StarkEx 上限 → dYdX Chain 在 Cosmos 上启动
V4 (2023+): 独立 Cosmos App-Chain,治理代币化
关键决策 :从 "L2 Rollup" 切换到 "独立 L1 App-Chain"。
为什么?
- V3 的 StarkEx 撮合能力上限 ~ 5K TPS,但 BTC 行情起来时实际需求 10K+ TPS
- 独立链可以做 专业化共识(不抢 EVM 资源)
- 代币化治理 → 验证人集合由 dYdX 代币持有者决定
与 Hyperliquid 的对比:
| 维度 | Hyperliquid | dYdX V4 |
|---|---|---|
| 共识 | HyperBFT (HotStuff 变种) | CometBFT (Tendermint) |
| 撮合位置 | Validator 内存 | ABCI 应用层 |
| 撮合 TPS | 200K 理论(网络级,单核 benchmark 未公开) | 10K 理论(网络级目标) |
| Block time | 0.4s | 1.5s |
| 治理 | 中心化(过渡期) | 代币化(去中心化) |
dYdX 的工程取舍 :牺牲 ~20x 撮合性能,换取 治理去中心化和合规友好(Cosmos 生态的 IBC 集成更顺滑)。
3.3 Vertex:集中流动性 + CLOB 的混合体
最有意思的"中间派"------把 Uniswap V3 的集中流动性思想嫁接到 CLOB 上。
架构核心:
LP 在 [low_price, high_price] 区间放集中流动性
→ 转化成 LP token(类似 Uniswap V3 NFT)
→ 协议自动把流动性范围切分成多个限价单
→ 限价单进入 CLOB → 用户成交
与 Drift V2 的关键区别 :Vertex 是 "集中流动性 → 限价单"的自动映射 (协议层完成,LP 被动);Drift V2 是 "JIT 流动性池 + CLOB"(JIT LP 主动接入订单簿)。两条不同的混合路径。
效果:
- 散户 LP 仍然能提供流动性(被动收入)
- CLOB 上的深度来自 LP 集中流动性范围 + 主动做市商
- 不需要专业做市商就能维持基本深度
代价:
- 复杂度爆炸(LP token + 集中流动性范围映射 + CLOB 三层状态同步)
- Gas 成本比纯 CLOB 高 2-5x(集中流动性范围需要持续跟踪价格)
- LP 的实际收益取决于价格范围设置 + 区间内成交密度
3.4 GMX V2:从纯 AMM 到"AMM + CLOB 限价单"
这是 AMM-first 的 "打不过就加入" 案例。
V1 的痛点:
- 价格冲击大(池子 5 亿美元,OI 1 亿,价格冲击就到 1%)
- OI 上限限制 trader 开仓能力(流动性瓶颈)
- Borrow fee 机制让 LP 收益不稳定(利率曲线复杂)
- 专业 trader 不愿意来(被动 LP 永远亏)
V2 的解法:
1. 引入"多流动性池":每个 trader 可指定不同 LP 池做对手方
2. 引入"限价单":trader 可挂限价单,被动成交(替代市价单的滑点)
3. 引入"OI 上限":每个池子对每个资产有 OI cap,超出不让开仓
4. Oracle 升级:从单一 Chainlink 升级到多源中位价
架构上:
- 撮合层从"池子函数"升级到"池子函数 + 限价单簿"
- 仍然是 AMM-first(主要对手方是 LP 池),但给了 trader 限价单选项
- 手续费从 0.1% 降到 0.05% / side(应对 CLOB 的价格战)
我的判断 :GMX V2 是 过渡产品 ------既保留 V1 的被动 LP 体验,又给专业 trader 一个跑路选项。3-5 年后看 ,V2 的限价单簿会越来越厚,AMM 池子权重会越来越低,本质上变成 "挂着 AMM 牌子的 CLOB"。
4. AMM-first 的活路:什么时候 AMM 仍然最优
CLOB-first 大势所趋,但 AMM-first 没有死------下面这几个场景 AMM 仍然是更好的选择。
4.1 长尾资产
BTC、ETH、SOL 之外的资产(比如某新 memecoin、某 L2 代币),专业做市商不愿意挂单(价差不足以覆盖运营成本),但 LP 池可以提供"永远能成交"的报价。
例子:GMX V2 在 Arbitrum 上挂了几十个长尾币种的永续合约,Hyperliquid 只挂了 ~30 个主流币种。长尾需求 AMM-first 仍然无可替代。
4.2 散户做市 (LP-as-Retail)
CLOB-first 的前提是有专业做市商。如果没有 LP 池,散户就只能做 taker 被收割。
AMM-first 让散户能当 LP ------存 USD 赚资金费率 + 协议分润。门槛低、心理账户友好。
GMX V1 的 GLP 池在牛市顶峰、ETH 单边上涨行情时 APR 能到 30%+------这是 CLOB-first 永远给不了的数字(但熊市/震荡市 GLP 收益会大幅缩水甚至为负)。
4.3 无清算风险的对冲场景
某些对冲基金需要 "开了仓就放着不动"------CLOB 的实时强平对他们是噩梦(半夜被爆仓)。
AMM 的"全池风控"模式下,trader 不会被单独强平(除非池子整体 PnL 失控),这对低频长期持仓者是优势。
4.4 跨链原生流动性
CLOB-first 因为自建链,跨链桥接很麻烦。AMM-first 跑在通用 L2 上,资产跨链后能直接交易。
例子:Base/Arbitrum 上的小币种永续合约,AMM-first 比 CLOB-first 更合适。
5. 如果我现在从零设计一个永续合约 DEX
假设今天老板给我需求:"做一个 BTC/ETH 永续合约 DEX,3 个月内上线",我会怎么选?
5.1 决策表
| 问题 | 我的选择 | 理由 |
|---|---|---|
| 撮合模式? | CLOB-first(混合 AMM) | 主流币种必须有专业深度 |
| 自建链? | 不(用成熟 L2 + 定制 sequencer) | 3 个月做不出独立 L1 |
| 撮合位置? | 链下撮合 + 链上结算 | 用成熟的 L2 做结算层(Optimism Bedrock 或 Arbitrum Orbit),自己写撮合引擎 |
| 做市商策略? | 签约 2-3 家专业 MM + 自营一部分 | 不依赖单一来源 |
| 抵押品? | 仅 USDC + USDT | 避免 LP 穿仓 |
| 风控模型? | per-account + Insurance Fund + ADL | 隔离单 trader 风险 |
| MEV 防御? | 批量拍卖 + commit-reveal | 至少不让普通抢跑者获利 |
| 治理? | 中心化启动 + 路线图去中心化 | 速度优先 |
5.2 团队配置
3 个月上线的最小团队:
- 1 个 Solidity 合约工程师(保证金、风控、清算)
- 2 个 Rust 撮合引擎工程师(核心撮合 + 风控热路径)
- 1 个前端工程师(trading UI 必备)
- 1 个 SRE / DevOps(撮合服务的部署、监控、灾备)
- 0.5 个产品(PM + BD)
- 1 个做市商对接负责人(BD)
核心人手 6-7 人 。撮合引擎是 2-3 个月的最大瓶颈------这部分可以从 Hyperliquid/dYdX V4 的开源实现里 fork 改造(行业惯例)。
5.3 关键风险点
-
撮合性能------这是 CLOB-first 的命门。撮合慢 = 用户流失。建议上线前做 5K TPS 的压测验证。
-
做市商稳定性 ------签约 MM 必须有 fallback 机制:MM 撤出时自营接管。我会预留 30% 的 maker 配额给自营账户。
-
强平机器人可靠性------强平挂了 = 用户资金受损 = 项目完蛋。必须有 3 个独立团队的强平机器人互为备份。
-
Oracle 风险 ------即使 CLOB-first 也依赖 mark price(标记价格)。mark price 来自中位成交价,但要防 "假成交拉 mark"------必须用 twap + 跨交易所参考 双重保险。
5.4 不做的事
- 不做期权------期权撮合比永续复杂一个量级,先不做。
- 不做现货------现货的撮合逻辑跟永续共享,但 UI/UX 工作量翻倍。
- 不做跨链资产做抵押品------跨链桥风险太大,初期只接 USDC/USDT。
- 不做手机 App------3 个月内 web UI 优先,移动端是 V2 工作。
6. 范式回摆的本质:从"代码即规则"到"市场即规则"
写了这么多架构对比,最后想跳出技术细节,讲讲 CLOB-first 范式崛起的 更本质的原因。
DeFi 第一代信奉的是 "Code is Law"------把市场规则写进 AMM 公式,把对手方换成数学,把流动性变成 LP 存款。GMX V1、Uniswap V3、Curve、Balancer 都是这个哲学的产物。
DeFi 第二代发现的是 "Market is Law" ------市场(做市商 + 散户)的价格发现效率永远比数学公式高。CLOB 不是技术回归,是承认 "价格由市场决定,不是由协议决定"。
AMM 没有消亡------它在长尾、LP-as-Retail、跨链这些场景里仍然是更好的选择。但永续合约的主流,已经被 CLOB-first 拿走了。
下一个值得追的问题是:现货 DEX 的 CLOB-first 会发生吗? 我的判断是会------但需要 1-2 年时间,因为现货的撮合深度要求比永续低、AMM 在小币种上仍然占优。等 L2/L3 的交易成本再降一个数量级、MEV 防护方案再成熟一波,Uniswap V4 的"hook + CLOB 限价单"混合模式 会是中间过渡形态。
到那时,再回看 2024 年的 Hyperliquid、dYdX V4、Aevo,会和今天回看 2020 年的 Uniswap V2 一样------清晰、关键、但只是历史的一个节点。
附录 A:技术参考链接
| 项目 | 代码/文档 | 关键文章 |
|---|---|---|
| Hyperliquid | github.com/hyperliquid-dex | "Hyperliquid: A High-Performance, Decentralized Exchange" |
| dYdX V4 | github.com/dydxprotocol | "dYdX Chain Architecture Overview" |
| GMX V2 | github.com/gmx-io | "GMX V2 Whitepaper" |
| Vertex | github.com/vertex-protocol | "Vertex: Hybrid CLOB-AMM" |
| Aevo | github.com/aevoxyz | "Aevo: A CLOB for Derivatives" |
附录 B:架构对比速查表
AMM-first CLOB-first Mixed
──────────────────────────────────────────────────────────────────
价格发现 池子函数 做市商报价 两者加权
流动性来源 被动 LP 主动 MM LP + MM
专业 trader 友好度 低 高 中
散户 LP 友好度 高 低 中
MEV 风险 Oracle 风险 抢跑风险 中
工程复杂度 中 高 极高
撮合性能 N/A 10K-200K TPS 3K-10K TPS
gas 成本 低 中-高 高
长尾资产友好度 高 低 中
风控隔离 差(共享池) 好(账户级) 好
──────────────────────────────────────────────────────────────────
典型代表 GMX V1, Vox Hyperliquid, Vertex, GMX V2,
dYdX V4 Drift V2
本文为个人观点,与任何协议方无关。
如果你正在做链上撮合系统、DeFi 风控引擎、L2 排序器,欢迎交流