第一章:市场微观结构——订单簿的构成
做量化交易,尤其是大单交易,你第一个要搞清楚的,就是订单簿。
说白了,订单簿就是交易所里那个实时更新的「挂单墙」。所有想买的人和想卖的人,都在上面挂着价格和数量。我刚开始做算法交易时,总觉得这东西就是个简单的价格列表。后来有一次,我挂了一笔大单,结果市场瞬间滑了十几个tick,我才意识到——订单簿的深度和结构,直接决定了你的交易成本。
1.1 限价单与市价单
订单簿里只有两种订单:限价单和市价单。理解它们的区别,是冲击成本建模的第一步。
- 限价单(Limit Order):你指定一个价格,比如「我100块买」。只有价格到了,才会成交。它提供流动性,挂在订单簿上等人来吃。
- 市价单(Market Order):你不指定价格,直接说「我现在就要买」。它会立刻吃掉订单簿上最便宜的卖单。它消耗流动性。
嗯,这里要注意:市价单是冲击成本的直接来源。你想想看,一个大买家冲进来,把卖一、卖二、卖三全部吃掉,价格自然就被推高了。这就是所谓的「市场冲击」。
1.2 买卖价差(Bid-Ask Spread)
买卖价差,就是订单簿上最优买价和最优卖价之间的差距。比如买一挂99.98,卖一挂100.00,价差就是0.02。
这个指标,我习惯用它来快速判断市场的流动性状况。价差越小,说明市场越活跃,流动性越好。价差越大,说明市场冷清,你进去交易的成本就越高。
我曾经在某个小币种上吃过亏。当时价差只有0.01,我以为流动性很好。结果一进去,发现订单簿上只有薄薄一层,后面全是空的。大单进去,直接打穿了三个价位。所以,光看价差不靠谱,还得看深度。
| 价差大小 | 市场状态 | 大单交易建议 |
|---|---|---|
| < 0.01% | 高度流动 | 可直接使用算法交易 |
| 0.01% - 0.05% | 中等流动 | 需要拆分订单,控制节奏 |
| > 0.05% | 低流动 | 建议使用限价单,耐心等待 |
1.3 市场深度(Market Depth)
市场深度,就是订单簿上每个价位挂了多少量。它告诉你:如果你想买1000股,价格会推到什么位置。
我个人习惯用「深度图」来直观感受。下面这张图,就是典型的订单簿深度结构:
这张图里,左侧是买盘(限价买单),右侧是卖盘(限价卖单)。宽度代表每个价位的挂单量。你看,买一挂了100股,买二挂了60股,买三只有40股。这说明买盘深度在逐渐变薄。
如果你要卖出一大笔,价格会从买一100.00开始,一路往下打穿买二、买三。每打穿一层,价格就滑一个tick。这就是冲击成本的核心来源。
1.4 订单簿的动态变化
订单簿不是静止的。它每时每刻都在变化——有人挂单,有人撤单,有人吃单。我见过最极端的例子,是某个消息出来后,订单簿在0.1秒内完全变了样。
所以,做冲击成本建模时,不能只看静态的订单簿快照。你得考虑订单簿的「恢复速度」。比如,你吃掉了一层卖单,新的卖单会不会很快补上来?如果补得快,冲击成本就小。如果补得慢,价格就会持续偏离。
嗯,这里有个坑:很多新手以为订单簿深度是固定的。其实不是。高频做市商会根据市场情况动态调整挂单。你吃单的动作本身,就会改变订单簿的形态。这就是所谓的「反馈效应」。
1.5 小结
订单簿是市场微观结构的核心。限价单和市价单的博弈,决定了价差和深度。而价差和深度,直接决定了你的大单交易成本。
我个人习惯,每次交易前先花30秒扫一眼订单簿:价差大不大?深度够不够?有没有大单在某个价位堆积?这些信息,能帮你快速判断当前是否适合进场。
下一章,我们会深入讨论冲击成本的数学建模。但在此之前,先把订单簿的结构吃透。这是所有模型的地基。