白皮书 / 撮合引擎
Dexter 白皮书

撮合引擎

撮合引擎处理 Dexter 上的每一笔订单——$49 挑战赛尝试、90 / 10 资金账户与未签名公开流均经过同一代码路径。一个 vAMM、一份资金费率时间表、一条清算例程、一张按名义价值 0.020% maker / 0.060% taker 计费的表。没有仅供自营的撮合层、没有面向资金账户交易者的优先队列,也没有让运营方拉大公开用户价差以补贴登榜成绩的方式。这种对称性正是 Dexter 通过结果可审计的关键:你在一笔 $99 尝试上做出的 +10%,与一个 $50K 公开账户在同样订单流上做出的 +10% 完全一致。

最近更新:2026 年 5 月 24 日
2 节 阅读 2 分钟 白皮书章节

引擎决定订单是否可以进入、按何价格成交、持仓规模与现金如何结算,以及市场何时必须从实时交易切换到防御姿态。每一项决策都归属于单一执行域,因此成交、资金费率累计与清算不会对状态产生分歧。下表映射了五项职责——每一项在本章中都有专门页面深入介绍。

引擎职责 覆盖范围
前门控制 代理授权、EIP-712 签名有效性、单调递增 seq、createdAtTs / goodTilTs 守卫,以及链上 OrderCommitRegistry 锚
定价 无流动性 vAMM 偏斜、价差控制、库存上限以及每个市场的未平仓压力
账本更新 持仓规模、入场基差、已实现 PnL、0.020% maker / 0.060% taker 手续费、fundingAccrued 与账户现金
市场姿态 实时、缩减、仅平仓、会话关闭与暂停——每个平台共享相同的五种状态
强制例程 维持保证金清算、保险流、ADL 选择,以及压力事件后的再平衡

#实时交易路径如何工作

生产环境绝不接受来自公共 RPC 的原始订单。每个请求都以 EIP-712 签名的 IOC 负载到达,携带单调递增 seq、createdAtTs 与 goodTilTs。运行时进行任何定价之前,会确认签名者已通过代理授权注册、seq 未被重用、时间戳处于有效窗口内,并在承诺守卫激活时,确认订单哈希已通过 commitOrder 记录到 Base 上的链上 OrderCommitRegistry。任一检查失败,请求都会在到达撮合路径之前被中止。

定价基于无流动性 vAMM 运行。没有可依靠的挂单 maker 簿,因此引擎报价经过对偏斜敏感的曲线、硬性库存上限以及每个市场的未平仓压力。在已经多头偏重的簿上买入的 taker 比在均衡簿上买入的 taker 支付更高的实际费率,且未结方向性名义规模的上限在准入边界处强制执行,而非在成交时。

当一笔成交被接受时,引擎在单次有序转换中移动持仓规模、入场基差、已实现 PnL、0.020%/0.060% 手续费部分以及任何现金结算。资金费率从同一次状态推进中累计,因此交易者不会观察到载费已更新但已实现 PnL 未更新的持仓。IOC 未成交的剩余部分立即被取消——没有需要追踪的工作中订单。

TEXT
 代理已授权
   -> commitOrder(...) 记录在 OrderCommitRegistry
   -> EIP-712 签名 IOC 进入运行时
   -> signer / seq / createdAtTs / goodTilTs 检查
   -> 准入与姿态检查
   -> 基于偏斜与库存的 vAMM 报价
   -> 成交或取消剩余
   -> 持仓、手续费、fundingAccrued、现金在一次转换中推进
   -> 发布流水线发出新的市场状态

#市场姿态、载费与强制例程

每个市场都在一个具有五种姿态的明确状态机内运行:实时、缩减、仅平仓、会话关闭、暂停。这些不是 UI 标签——它们是管控新订单能否增加风险、缩减是否仍然开放,以及平台是否在尊重底层会话休市或等待更清晰的价格参考的准入规则。转换由参考新鲜度、会话日历、偏斜压力、利用率、坏账敞口以及降级期后的恢复检查驱动。

未平仓、方向不平衡与拥挤度被持续测量,它们与设定资金费率指数、偏斜调整后的 taker 费率以及库存上限的循环共享同一回路。Dexter 中的资金费率是引擎载费模型的一部分——每 8 小时累计进入 fundingAccrued——而非从事后报告中重建的数字。本章后续页面对每个界面进行详细拆解。

强制缩减位于同一执行域。清算扫描、感知保险的坏账处理、ADL 选择与压力后再平衡,都与普通订单处理共享状态与排序。这正是让压力行为保持确定性的原因:当维持保证金跌破底线、一笔持仓被清算时,运行的手续费、资金费率与账本转换与自愿平仓相同——仅触发器不同。

#这对你的挑战赛意味着什么

  • 处理你挑战赛的引擎与处理公开订单簿的引擎是同一个。$49 或 $99 尝试不会被路由到沙盒——它按生产 vAMM 在相同偏斜、相同库存上限以及相同的 0.020% maker / 0.060% taker 时间表下定价。此处做出的 +10% 目标,就是一个公开 $50K 账户在相同订单流上会做出的 +10%,这正是 Base 上资金账户支付可与链上对照复现的原因。
  • 偏斜成本是计入 +10% 的真实成本。当引擎对拥挤方向提高实际 taker 费率时,该附加费在同一笔成交内落到你的净值上。对抗偏斜是尝试在从未触及清算线的情况下被 -4% 日回撤底线消耗的最常见原因。
  • 资金费率载费是你 PnL 的一部分。每 8 小时资金费率指数结算,fundingAccrued 调整你的净值。在拥挤方向上持有 30 天的持仓可能在任何方向性移动之前悄无声息地烧掉 1–3%——在确定多日持仓规模之前,请查阅每个市场已发布的费率。
  • 强制例程在它们触发的同一根 K 线上终结尝试。清算、ADL 与再平衡流程按标记价平仓,在已实现损失之上附加明确的清算费用,几乎总是在同一根 K 线上越过 -4% 日回撤或 -8% 总回撤。引擎将它们视为普通转换,因此没有例外:损失立即触发规则检查。
  • 资金账户运行相同的代码路径。90 / 10 支付账户没有独立的撮合层或私有手续费表。相同的定价、相同的手续费、相同的资金费率节奏、相同的维持保证金——这就是通过后的账户与赢得它的尝试表现完全一致的原因。