1. 订单簿基础:限价单与市价单、订单簿的构成要素、买卖盘口与价差
做量化交易这些年,我见过太多人一上来就盯着K线猛看,却忽略了最底层的东西——订单簿。说白了,订单簿就是市场的「实时供需表」。你想想看,价格是怎么跳动的?不就是一笔笔订单在簿子上成交出来的嘛。
我个人习惯,每天开盘前先扫一眼订单簿的深度。这比看任何指标都来得直接。今天咱们就把订单簿的底裤扒干净,看看里面到底藏着什么门道。
1.1 限价单与市价单:市场的两种「语言」
订单簿里只有两种订单:限价单和市价单。它们就像市场的阴阳两面,缺一不可。
限价单(Limit Order),说白了就是你指定一个价格,挂在那里等成交。比如我说「10块钱买100股」,那只有价格跌到10块或以下时才会成交。我在项目中遇到过不少新手,挂限价单时喜欢挂个整数,比如10.00、20.00。结果呢?这些整数价位上挤满了人,排队排到天荒地老。
市价单(Market Order),就是「不管多少钱,我现在就要成交」。你下单的瞬间,系统会帮你吃掉当前最优的对手盘。优点是快,缺点是——你可能买在尖尖上,卖在坑坑里。
核心区别一句话:
- 限价单提供流动性(你是做市商)
- 市价单消耗流动性(你是吃单者)
嗯,这里要注意:高频交易里,这两者的角色经常互换。一个策略可能在某个时刻是挂限价单赚返佣,下一秒就变成吃市价单抢速度。
1.2 订单簿的构成要素:价格、数量、时间优先级
一个标准的订单簿,其实就三样东西:价格、数量、时间。但就是这三样,撑起了整个微观结构。
价格维度:买盘从低到高排列,卖盘从高到低排列。中间那个空隙,就是价差(spread)。
数量维度:每个价位上挂了多少钱。我习惯看「深度」,也就是累计到某个价格的总量。比如买一挂了100手,买二挂了200手,那买二位置的累计深度就是300手。
时间优先级:同价位下,先挂单的先成交。这是交易所的铁律。我曾经吃过这个亏——有一次抢反弹,跟另一个量化团队同时挂单,结果人家比我早0.1毫秒,我的单子硬是没成交,眼睁睁看着价格拉上去。
避坑指南:
我曾经以为时间优先级只跟网络延迟有关,后来发现交易所的撮合引擎还有「随机延迟」机制。别太迷信你的低延迟服务器,有时候运气比速度更重要。
1.3 买卖盘口与价差:市场的「呼吸」
盘口,就是订单簿最前面那几档。买一到买五,卖一到卖五。价差,就是卖一和买一之间的价格差。
价差越小,说明市场越活跃,流动性越好。比如比特币在牛市时,价差可能只有0.01美元。而一些冷门币种,价差能大到几个百分点。
我一般用这个公式来算「相对价差」:
相对价差 = (卖一价 - 买一价) / 中间价 × 100%
如果相对价差超过0.1%,对于高频策略来说基本就没法做了。你想想看,一进一出先亏掉0.1%,一年下来光手续费和滑点就能吃掉你所有利润。
注意:
别只看价差大小,还要看价差背后的「厚度」。有时候价差很小,但买一只有几手,卖一也只有几手。这种薄薄的盘口,一个大单就能把价差打穿。我见过有人看到价差小就冲进去,结果被一根大单直接打穿三层盘口,亏得妈都不认识。
1.4 订单簿的「骨架」:一张图看懂
下面这张图,是我自己画的一个简化版订单簿结构。你看一眼就能明白:
这张图里,红色是卖盘,绿色是买盘。中间那个黄色的价差区域,就是市场的「呼吸口」。你注意看累计数量那一列——它能告诉你每个价位被击穿后,下一个支撑或阻力有多强。
1.5 实战中怎么看订单簿?
我一般关注三个指标:
- 价差宽度:小于0.01%算优质市场,大于0.1%就要小心了。
- 买卖盘失衡度:买一到买五的总量 vs 卖一到卖五的总量。如果买盘是卖盘的2倍以上,短期看涨概率大。
- 大单异动:某个价位突然出现远超正常水平的挂单。比如平时卖一只有100手,突然冒出1000手。这往往是机构在「压盘」或「托底」。
一个小技巧:
我习惯把订单簿的「斜率」画出来。就是把每个价位的累计数量连成一条线。斜率陡峭的地方,说明阻力/支撑很强;斜率平缓的地方,说明一捅就破。这个在后面的「买卖压力测算」章节里会详细讲。
好了,订单簿的基础就这些。别觉得简单,越基础的东西越容易犯错。我见过太多人把限价单和市价单搞混,结果在行情剧烈波动时吃了大亏。记住一句话:限价单是「等」,市价单是「抢」。搞清楚你当前是「等」还是「抢」,就不会出大问题。