CEX&DEX课程完结后,我想做一次复盘

4 阅读10分钟

我的「CEX&DEX课程」,从 2026 年 2 月 26 日开始,到昨晚结束,总共 10 节课,终于正式完结。至此,整个课程就全面转为录播课了。既然已经讲完了整个课程,我就想是时候来做一次完整的复盘了。

开头的不顺利

第一节课其实出现了一个意外。

在前面半小时内,讲着讲着,腾讯会议突然提示异常,直接把整个会议关掉了。后来回想,大概率是因为我展示了 Binance 的页面,触发了风控。

后面只能临时切到 Google 会议,才把这节课继续讲完。但 Google 会议每次只能讲 1 个小时,时间不够,中途又重新开了一次。

这一个小插曲,带来了两个影响:一是录制的视频被切成了几个不同的文件,后面整理和拼接都比较麻烦;二是我自己的节奏被打断了,后半段的内容,我始终觉得没有讲到一个理想状态。

所以最后我做了一个决定:干脆把第 1 课全部推翻,重新录一遍。

第二天我就把这件事落地了,重新录制了第 1 课。依然还是用腾讯会议,但这一次我刻意避开了 Binance 页面,防止再次触发风控。

现在回头看,这件事反而让我更确定一件事:做课程,最怕的不是出问题,而是出了问题之后选择将就。

如果只是为了赶进度,第 1 课其实也不是不能用。但我自己过不去,所以最后还是选择重录。至少这样,后面整套课的起点是干净的。

从 9 节到 10 节

这门课最早规划的是 9 节,最终讲了 10 节。

多出来的一节,并不是因为内容膨胀,而是我在备课过程中,意识到了一个之前没有被讲清楚的缺口。

前 5 节讲完之后,CEX 的核心模块——资金、撮合、账本、风控、钱包——其实都已经拆解过一轮了。按照原计划,接下来应该直接进入 DEX 的部分。

但在我同步设计白标 Perp DEX 的过程中,我逐渐意识到一个问题:前 5 节讲的,本质上都是“正向流”——订单如何进入系统、如何被撮合、如何结算。

但在真实系统里,还有一条同样关键的东西,一直没有被显性地串起来——反向流。

比如,订单服务将订单送入撮合引擎之后,撮合引擎的输出里,依然需要回流给到订单服务,订单服务才能更新订单状态。

还有其他暗线,比如,清算服务拿到撮合引擎的输出之后,其实信息还不足以执行清算,因为还缺少订单信息,那如何正确地获取订单信息,就是一条暗线。

还有,止盈止损和条件单,不同于限价单市价单等委托单,这些订单在交易链路里又是如何处理的呢?这也是一条支线。

这些内容,在前 5 节内容中都没有展开讲过,但又是非常重要的关键点。

所以我最终决定,在讲 DEX 之前加一节课:

第 6 节:全链路串联——交易系统的暗线与闭环。

后来我回头看,这一节其实不只是“补了一块内容”,而是补了一种视角:

大多数人在理解系统时,习惯只看“正向流程”——请求如何进入、如何被处理、如何输出结果。

但一个系统是否真正成立,往往不取决于这条正向路径,而取决于:状态能不能闭环。

也就是:

  • 每一次状态变化,是否都能被正确传播
  • 每一个依赖状态的模块,是否都拿到“最新且一致”的信息
  • 整个系统,是否存在“看不见但关键”的数据回流路径

如果这些暗线没有建立起来,系统表面是“能跑的”,但本质上是不稳定的

很多交易系统的问题,并不是出在“某个模块做错了”,而是——系统从一开始就没有形成闭环。

关于 DEX

关于 DEX 的几节课,其实也做过一次结构调整。如果你翻看我开课前后发布的内容大纲,会发现两版之间是有差异的。

本质原因很简单:在真正讲解和推演过程中,我意识到,DEX 这部分如果只是按“模块”讲,是讲不清楚的。

所以最后我选择换一种方式,把整个部分拆成三种模式来讲。

在课程中,我一共讲了三种典型模式:

  • 单链充提 + 链下撮合 + 链上结算(以 dYdX v3 为代表)
  • 多链充提 + 链下撮合 + 链上结算(以 ApeX Pro 为代表)
  • 共识撮合模式(以 dYdX v4 和 Hyperliquid 为代表)

这三种模式的核心差异,并不只是“架构不同”,而是:它们背后的信任模型完全不同。

而一旦信任模型不同,整个系统在技术上的设计重点,也会随之发生变化。

第一种模式,最关键的是:如何在中心化撮合的前提下,保证用户资金与交易的不可篡改性。 因此它的核心设计是:

  • ZK Proof(零知识证明):用数学证明约束 Operator 行为
  • Data Availability:保证数据可被重建
  • Escape Hatch:确保用户拥有最终退出权

第二种模式,在用户体验上做了明显优化——支持多链充提。但与此同时,也带来了两个变化:

  • 信任模型出现一定程度的退化
  • 系统复杂度显著提升(尤其是跨链资产再平衡)

也就是说,它本质上是在做一个取舍:用更好的用户体验,换取更复杂的系统与更弱的信任假设。

第三种模式,则走向了另一条路径:将撮合本身纳入共识。 相比前两者:

  • 性能下降
  • 但透明性与去中心化程度显著提升

同时也引入了新的核心问题:

  • 在多验证者环境下,如何保证撮合结果的一致性?
  • Oracle Price 如何在共识中产生,并被所有节点接受?

这些问题,不再是“工程实现问题”,而是共识与系统设计的交叉问题

课程中,我用三节课分别讲清了这三种模式。

而在最后一节,我换了一种方式,把前面所有内容重新串了一遍:

我给了一个完整的场景:

假设你被任命为一个新 Perp DEX 的技术负责人,从零开始做架构选型。

你会面对哪些关键决策?每一个决策背后的取舍是什么?

在这个场景下,我抽象出了 7 个核心决策点:

  • 决策 1:Mode B 还是 Mode C?
  • 决策 2:撮合引擎如何设计?
  • 决策 3:账户模型如何抽象?
  • 决策 4:风控与清算如何嵌入系统?
  • 决策 5:Oracle 如何选择?
  • 决策 6:是否从第一天就支持多链充提?
  • 决策 7:画出你的服务依赖图 —— 暗线在哪里?

这 7 个问题,并不是 7 个孤立的选择。它们共同构成了一棵决策树。每一个决策,都会影响后续路径;而不同路径组合在一起,就形成了完全不同的系统形态。如果你能够把这 7 个问题想清楚,其实就已经掌握了这门课最核心的部分。

回头看,这一部分我真正想讲的,其实不是“三种 DEX 模式”,而是——系统设计,本质上是一系列关于“信任、性能与复杂度”的取舍。

这门课的核心,其实是一张认知地图

写到这里,我其实越来越清楚一件事:这门课表面上在讲 CEX 和 DEX,讲账户模型、撮合、风控、Oracle、多链充提...... 但我真正想讲的,并不是这些模块本身。

我真正想讲的,是一张“交易系统的认知地图”。

这里说的“认知地图”,并不是某一套具体架构,而是——在没有代码的情况下,你是否依然能够把整个交易系统在脑中推演出来。

包括:

  • 系统有哪些核心模块
  • 每一类状态在哪一层产生
  • 数据是如何在系统中流动的
  • 哪些是正向流程,哪些是反向闭环
  • 哪些地方必须强一致,哪些可以最终一致

如果这些问题你是清楚的,那么你面对任何一个交易系统,都能迅速把它拆开。如果不清楚,那你看到的就只是一些“零散的组件”。

很多人在学习交易系统时,会习惯用“模块”的方式去理解:

  • 撮合引擎是一个模块
  • 账户系统是一个模块
  • 风控是一个模块
  • 清算是一个模块

但问题在于:模块,并不能构成系统。

真正让系统成立的,是这些模块之间的关系:

  • 状态如何被生产,又如何被消费
  • 数据在哪一层被持久化,在哪一层只是中间态
  • 不同服务之间,是如何通过事件或状态建立依赖

这些关系,才是系统的骨架。

我自己正在实现的白标 Perp DEX,本质上也是在这张认知地图之上,一层层往下推演:先把系统结构想清楚,再逐步细化模块与流程,最后才是借助 AI 把它实现出来。

回头看,这门课真正想解决的,从来不是:“如何实现一个交易系统”。而是:

👉 当你面对一个交易系统时,你是否知道该从哪里开始拆解它。

👉 当你需要设计一个系统时,你是否清楚每一个决策背后的代价。

如果用一句话总结这门课,我会这样说:

这不是一门教你“怎么做”的课程,而是一门教你“怎么判断”的课程。

如果你具备了这种判断能力,那么实现本身,只是时间问题。

结尾

课程结束了,但我反而更确定了一件事:

在 AI 已经可以帮你完成大部分实现的今天,真正拉开差距的,从来不是代码,而是你如何理解一个系统。

你可以用 AI 写出一个撮合引擎,也可以很快拼出一个看起来“能跑”的交易系统。

但这些都不难。真正难的是:

  • 你是否知道系统的边界在哪里
  • 哪些地方必须强一致,哪些可以最终一致
  • 风险是如何在系统中传播的
  • 当系统出现问题时,应该从哪一层开始排查

这些问题,AI 可以给出答案,但不会替你做判断。

回头看,这门课对我来说,其实不仅是一次讲解,更像是一次把自己过去这些年对交易系统的理解,重新整理一遍的过程。

很多之前是“经验”的东西,在这次课程中,才被真正结构化下来。

最后,再补充下课程完结后的最新价格:2688 元

要报名的朋友,还是和之前一样,加我微信(keegan704),私聊我转账即可。


扩展阅读: