Skip to content

10 · 系统对接篇

前面的篇章都是给交易者看的:怎么看懂市场、怎么管理仓位、怎么避开坑。本篇完全换一个视角——它是给软件公司/工程师团队看的:当你接下一个「帮客户做一套交易系统」的活,需要对接期货柜台、证券柜台或加密交易所 API 时,你要知道的所有工程知识。

从柜台是什么、行情怎么接、订单怎么管,到风控怎么设计、团队怎么搭——本篇只讲系统,不讲交易。


各篇简介

01 · 对接全景与角色分工

拿到需求后的第一件事不是写代码,而是画地图。本篇给出一张完整的交易软件系统架构图(客户端前端 → 网关层 → 核心服务 → 柜台/交易所 API → 交易所),逐一拆解九个系统模块(行情/交易/账户资金/风控/清算对账/报表/监控/数仓/回测研究),讲清楚四类对接对象(交易所、柜台、数据供应商、银行券商)分别对接什么、谁负责。然后落到人:八个岗位(量化研究员、量化交易员、策略工程师、前后端开发、SRE、风控、合规)各自的职责与协作边界,最后给出项目从调研到上线的五个里程碑。

02 · 交易所与柜台

「为什么不能直连上期所,必须经过 CTP?」这是客户问得最多的问题,也是本篇的核心。本篇讲透国内期货柜台格局:上期技术 CTP(C++ DLL 接口)如何成为事实标准,恒生 UFT/UFX、易盛、信达、金仕达各自的 API 形态与适用场景;证券柜台(恒生/金证/顶点与 LTS 极速接口);以及完全没有柜台概念的加密交易所(币安/OKX/Bybit 官方 REST/WebSocket 直连)和海外市场(盈透 IB API、CME 清算会员模式)。附直连 vs 柜台对比表、认证方式(AppID/API Key + HMAC 签名)、仿真与测试环境清单。

03 · 行情系统

行情是交易系统的眼睛。本篇讲清行情源的三类来源(交易所原始行情/柜台行情/第三方数据商),Level-1 快照与 Level-2 逐笔的差异,快照与增量订阅模型,国内柜台行情 API 与加密 WebSocket 频道(kline/depth/trade)的协议差异;用一张事件时间线解释「从订单簿变化到客户端渲染」中间每一段延迟在哪、为什么重要。然后是行情网关工程(连接/订阅/多路复用/顺序保证/主备切换)、断线重连后的缺口补齐策略、tick 数据的落库选型,以及延迟测量与对账方法。

04 · 交易接口与订单生命周期

这是交易系统最核心、最容易出事的一篇。REST/WebSocket/FIX/CTP 专有二进制接口各自适用什么场景;限价/市价/止损止盈/IOC/FOK/冰山单/条件单/盘口一档委托的定义与适用场景;从「未报 NEW」到「成交/撤单/拒单」的完整状态机文字图;价格优先时间优先的撮合原理。然后进入工程深水区:下单跟踪与幂等重试、本地订单号与交易所订单号映射、成交回报(逐笔/批量)处理、客户端与交易所状态对账、重启恢复、限频排队与多账户并发控制,最后附一份血泪总结的常见对接 bug 清单。

05 · 风控与资金管理

「交易所会帮你风控」是最大的误解——柜台风控是底线、不是护栏。本篇讲为什么客户端必须自建风控层,并给出完整风控模块清单(资金/仓位/频率/止损四类),下单前的四道前置闸门(资金→仓位→频率→黑白名单/人工审批)与下单后的实时监控(浮动盈亏、保证金占用、强平预警、大额持仓盯盘),异常处理与三级熔断(账户/策略/全局)设计,全链路审计留痕的日志结构与保留时长建议,以及「风控独立进程、独立于策略、配置化、冷备」的架构红线。

06 · 量化策略与回测

策略不是写在交易系统里的,而是跑在策略系统里、经回测验证后才上线的。本篇讲量化研发的完整流水线(数据→因子→策略→回测→参数优化→模拟盘→实盘),策略类型全景与因子体系,回测框架选型(向量化 vs 事件驱动)与核心绩效指标(夏普/回撤/胜率),以及回测陷阱清单——数据对齐、幸存者偏差、过拟合防范,最后覆盖模拟盘与实盘的差距、执行算法与实盘监控。

07 · 数据与基础设施

系统能上线,靠的是下半场的基础设施。本篇讲交易系统的数据体系(行情/订单/资金/基本面数据的存储选型与强一致要求)、时序数据库选型、实时缓存与消息中间件、任务调度与批处理,以及监控告警体系(行情延迟/订单失败率/风控触发率)、部署架构、网络安全(密钥管理/最小权限)、数据合规与数据质量治理。

08 · 岗位技能地图

工程视角的最后一环是人。本篇逐个拆解八个核心岗位(量化研究员/量化交易员/策略工程师/后端/前端/SRE/风控/合规)的职责边界、硬技能、技术栈与进阶路线,给出创业小团队 4-6 人的最小配置建议,并附技术栈全景推荐表与给工程师的入行学习路径。

09 · FIX 协议详解

机构市场的通用语言。本篇讲清 FIX 是什么(1992 年起源、FIX Protocol Ltd 维护、全球机构直连事实标准),它在交易链路中的位置(订单管理 → FIX 网关 → 交易所/做市商/银行间);消息三段式(Header/Body/Trailer)与 Tag=Value 编码、校验和算法,给出最小可读的 35=D 下单示例;核心消息类型(登录/下单/回报/撤改单)字段要点、Session 生命周期(登录→心跳→序号→登出)、订单状态与 ExecType 的双状态解读;最后是 FIX 的优缺点与选型(vs 交易所专有 API、什么时候需要 FIX 直连),以及 FAST 压缩协议与加密交易所 FIX 支持现状。

10 · CTP 对接实战

把「国内期货事实标准」从文档落到代码。本篇按项目推进顺序讲:CTP 是什么(上期技术、C++ DLL + 语言封装)、环境准备(接口获取、SimNow 仿真 vs 生产、AppID/AuthCode 认证、版本差异);完整开发流程(初始化→认证→双登录→查询→订阅→下单→回报);关键调用约定(Req/OnRsp/OnRtn 三类回调、回调线程模型——为什么不能在线程里做耗时操作);流控常识(查询约 1 秒 1 次、下单约 1 秒 2 次)与连接管理(断开重连、结算单确认流程);最后给出一份教学用的 Python 最小框架示例与十项常见坑清单(GBK 编码、时间字段、报单≠成交、撤单冲突)。

11 · 撮合引擎原理

订单怎么变成成交,这是交易系统最核心的机制。本篇讲撮合定义与价格优先/时间优先规则(限价单与市价单在队列中的位置)、Level-2 盘口与增量更新(add/update/delete 事件、订单簿重建)、撮合算法(简单匹配循环、连续竞价伪代码、集合竞价最大成交量定价);高级话题(做市商与最小报价单位、涨跌停排队的时间优先、大宗交易撮合外配对、闪电崩盘与撮合延迟);并用对比视角讲透中心化撮合 vs 区块链 AMM(x·y=k 恒定乘积公式、滑点与无常损失);最后给出撮合引擎设计要点(内存订单簿、不可丢的事件日志、微秒级性能指标)。


本篇学习顺序

text
① 01-对接全景(先有地图:系统有哪些模块、谁负责什么)

② 02-交易所与柜台(再认路:对接对象是谁、什么协议、怎么认证)

③ 03-行情系统(然后接数据:行情怎么来、怎么保证完整)

④ 04-交易接口与订单生命周期(核心难点:单子怎么下、怎么不出错)

⑤ 05-风控与资金管理(保命层:怎么拦住错的单、怎么留痕)

⑥ 06-量化 → ⑦ 基建 → ⑧ 岗位(策略层、运维层、组织层)
  • ① → ⑤ 是必须按顺序读的:05 依赖 04 的订单模型,04 依赖 03 的行情模型,而 02 是这一切的地基。
  • ⑥ → ⑧ 覆盖策略、数据基建与岗位,适合在 ① → ⑤ 建立系统全局观之后再读。
  • 全篇的「对接」含义很窄:只指软件工程意义上的接口对接,不包含商务、开户、监管报备等流程。

内容约定

  • 文中所有接口规范、限频数值、字段定义均为行业通行口径,具体以实现为准(CTP 以官方《CTP API 接口文档》为准,加密交易所以其开发者文档为准),涉及规格处均已标注「以官方文档为准」。
  • 涉及真实公司的描述仅用于说明市场格局与技术形态,不代表任何推荐或背书。
  • 加密交易所在中国大陆的合规性问题不在本篇讨论范围,对接前请自行确认所在地法规。
  • 每篇末尾均含「⚠️ 风险提示」引用块。

⚠️ 风险提示

交易系统对接是高风险工程:密钥泄露、重复下单、状态错乱、风控失效,任何一环出错都可能造成真实资金损失,且往往在毫秒内完成。本篇所有内容仅用于工程学习与研究,对接生产环境前请务必完成仿真环境全流程验证、内部代码审计与灾备演练。


篇目一览

仅供学习与研究,不构成任何投资建议。市场有风险,投资需谨慎。