一、市场深度概述

1.1 什么是市场深度

市场深度,说白了就是市场能「吃下」多大单子的能力。

我刚开始做量化的时候,以为深度就是成交量。后来在实盘中吃过亏——有一次我看到某币种买盘挂单很厚,就放心地砸了一笔大单,结果价格直接滑了三个点。为什么?因为那些挂单很多是「虚挂」的,一碰就撤。

真正的市场深度,衡量的是三个维度:

  • 挂单厚度:每个价位上有多少量
  • 价差宽度:买卖盘口之间的差距
  • 恢复速度:大单吃掉后,新挂单补充的快慢

你想想看,一个深度好的市场,你下100万的单子,价格几乎不动。深度差的市场,10万就能把盘口打穿。这就是我们做量化交易首先要关注的东西。

1.2 订单簿基础概念

订单簿(Order Book),就是交易所用来记录所有买卖挂单的电子账本。

我个人习惯把订单簿想象成一个「排队系统」:

  • 买单排队:谁出价高,谁排前面(价格优先)
  • 卖单排队:谁出价低,谁排前面(价格优先)
  • 同价位:谁先来,谁先成交(时间优先)

嗯,这里要注意:订单簿不是静态的。它每时每刻都在变化——有人挂单、有人撤单、有人吃掉对手盘。我在做实时数据同步时,最头疼的就是订单簿的增量更新。你想想看,每秒几千笔的变动,如果全量推送,带宽和CPU都扛不住。

核心要点:订单簿的三种状态

  • 快照(Snapshot):某一时刻的完整订单簿
  • 增量(Incremental):每次变动的数据
  • 校验(Check):定期用快照校验增量数据的准确性

我曾经踩过一个坑:某交易所的增量数据偶尔会丢包,导致我本地的订单簿和交易所对不上。后来我加了个机制——每1000笔增量后,强制拉一次快照做校验。这个习惯我一直保留到现在。

1.3 买卖盘口解析

买卖盘口,就是订单簿里最核心的两个价格:

  • Bid(买一):当前最高买入价
  • Ask(卖一):当前最低卖出价

这两个价格之间的差距,叫「价差」(Spread)。价差越小,说明市场流动性越好。

举个例子:

盘口 价格 数量 累计
卖三 100.03 200 500
卖二 100.02 150 300
卖一 100.01 150 150
买一 100.00 100 100
买二 99.99 200 300
买三 99.98 300 600

这个表里,价差是 100.01 - 100.00 = 0.01。如果你要买入500股,按市价单会吃掉卖一到卖三的全部挂单,成交均价是 (150×100.01 + 150×100.02 + 200×100.03) / 500 ≈ 100.02。这就是滑点的来源。

我的经验:做高频交易时,我只看买一卖一和价差。做中低频策略时,我会看买五到卖五的深度分布。不同策略,关注的点完全不同。

1.4 深度图可视化原理

深度图(Depth Chart),就是把订单簿的数据画成两条曲线。

怎么画?其实很简单:

  • 买盘曲线:从买一往左,累计挂单量
  • 卖盘曲线:从卖一往右,累计挂单量

两条曲线中间的空隙,就是价差。曲线越陡峭,说明该价位附近流动性越集中。曲线越平缓,说明深度分布越均匀。

我见过很多新手把深度图当成K线来看,这是不对的。深度图反映的是「当下」的挂单意愿,不是「历史」的成交记录。一个是存量,一个是流量,两码事。

下面我用SVG画了一张深度图的结构示意:

深度图结构示意 低价区 价格 高价区 累计挂单量 价差 买一 (Bid) 卖一 (Ask) 买盘深度 卖盘深度

这张图里,绿色是买盘,红色是卖盘。中间那个小缺口就是价差。你看买盘曲线从左边开始逐渐上升,说明价格越低,愿意买入的人越多。卖盘曲线从右边开始逐渐上升,说明价格越高,愿意卖出的人越多。

避坑提醒:我曾经在对接某交易所的深度数据时,发现它的深度图是「倒着」画的——买盘在右,卖盘在左。后来才知道,不同交易所的坐标轴习惯不一样。对接前一定要先看文档,别想当然。

1.5 深度数据的实际应用

深度数据不只是用来画图的。我常用的几个场景:

  1. 流动性评估:看某个价位附近有多少挂单,判断能不能下大单
  2. 支撑阻力判断:深度大的价位,往往有较强的支撑或阻力
  3. 市场情绪感知:买盘远大于卖盘,说明多头情绪强;反之亦然
  4. 算法交易拆单:根据深度分布,把大单拆成小单,减少滑点

举个例子,我做过一个策略:当买一到买五的累计深度是卖一到卖五的3倍以上时,认为市场短期偏多,开多单。这个策略在流动性好的币种上效果不错,但在深度差的品种上经常假信号。

一句话总结:市场深度就是市场的「厚度」。订单簿是它的骨架,买卖盘口是它的眼睛,深度图是它的脸。看懂这三样,你才算真正入门了量化交易的数据分析。


公众号:蓝海资料掘金营,微信deep3321