先别碰代码,先想想菜市场
这本书有一个大胆的承诺:读完它,你能亲手写出一个交易所的撮合系统。
听起来像吹牛。交易所——纳斯达克的机房、每秒几十万笔的订单、动辄上亿的成交额——怎么看都不像"读完一本书就能写"的东西。但这个承诺是认真的,因为交易所的核心远没有它的名声吓人。剥掉西装、屏幕和监管文件,剩下的那台机器只做两件事:记账,和按规则排队。它更像菜市场管理员立起的那面挂单墙,而不是什么金融黑魔法。
真正的难点在别处:规则有几十条,每一条都简单,但每一条都必须写对——而且在每秒几十万张订单的冲击下依然条条写对。"买一卖一为什么永远隔一条缝""为什么改单要重新排队""成交价为什么总取先到那张单的价""为什么撮合引擎几乎都是单线程"——这本书不背定义,只回答这种"为什么必须这样,不这样会出什么事"。因为写系统的人不缺API文档,缺的是对每个规则背后道理的直觉。
这本书怎么带你走
我们用十二章走完一条路:前四章凑近那面墙,把订单簿上每个数字的来历讲清楚;第五章上手术台,把一次撮合拆成逐秒的慢动作,那是全书的技术核心;第六到八章把视野拉开——五花八门的下单方式、开盘定价的集合竞价、A股美股期货币所的规则对照;第九到十一章收拢成工程:成交之后的消息网、五十行代码的内核、单线程定序与断电重放;最后一章装上护栏,把一台实验室玩具变成能托付真金白银的机器。
每一章可独立读,但连起来是一条线:从"交易所是什么"到"我现在就会写一个"。书末你会得到一张完整的架构图纸,每个零件为什么长这样,你都亲眼看着它长出来的。
适合谁
默认你是工程师或理工背景的读者:爱因果、爱类比、烦空话。不需要任何金融背景——每个名词第一次出现都会当场用大白话解释;也不灌你行业黑话——能不用的词一律不用。如果你只是想弄懂"我下的单到底经历了什么",前八章够了;如果你真要动手写,十章以后是你的施工图。
翻开第一章吧。我们从一面墙开始。