4、Level 1、Level 2、Level 3数据:不同深度数据的区别、Tick数据与快照数据
做量化交易这些年,我接触过各种各样的数据。说实话,刚入行那会儿,我也被Level 1、Level 2这些术语搞得晕头转向。今天咱们就把这事彻底讲清楚。
4.1 数据深度:从Level 1到Level 3
先问个问题:你看到的行情数据,到底能看到多深?
这就像看游泳池。Level 1只能看到水面,Level 2能看到水下1米,Level 3则能看到整个池底。嗯,这个比喻可能不太准确,但意思到了。
Level 1:最基础的行情数据
这是交易所提供的最基本数据。说白了,就是你能看到当前的最优买卖价和成交量。
我记得刚做交易那会儿,用的就是Level 1数据。它包含:
- 最新成交价(Last Price)
- 买一价和买一量(Best Bid)
- 卖一价和卖一量(Best Ask)
- 当日开盘价、最高价、最低价
- 累计成交量、成交额
够用吗?说实话,做简单的趋势跟踪策略,Level 1确实够了。但如果你想做高频或者做市,那就不行了。
Level 2:看到订单簿的深度
Level 2数据就厉害多了。它能展示订单簿上多个价位的挂单情况。
我在项目中遇到过这样的情况:用Level 1看,买一价是10.00元,有1000手。但用Level 2一看,好家伙,10.00元到9.90元之间,密密麻麻挂了2万手。这信息量完全不一样。
Level 2通常包含:
- 前5档或前10档的买卖挂单
- 每档对应的挂单数量
- 部分交易所还会提供委托笔数
你想想看,有了这些数据,你就能判断支撑位和阻力位在哪里。做策略的时候,心里就有底了。
Level 3:全量订单簿数据
Level 3是最高级别的数据。它能看到订单簿上所有的挂单,包括那些隐藏订单。
说实话,能拿到Level 3数据的机构不多。它需要交易所的特殊授权,费用也高得吓人。
Level 3包含:
- 订单簿上所有价位的挂单
- 每个订单的详细信息(订单ID、时间戳等)
- 隐藏订单的可见部分
- 订单的增删改事件流
4.2 Tick数据 vs 快照数据
这两个概念经常被混淆。我简单解释一下。
Tick数据:每一笔交易的记录
Tick数据记录的是每一笔成交的详细信息。它就像交易流水账,每一笔都记下来。
一个典型的Tick数据包含:
- 成交时间(精确到毫秒甚至微秒)
- 成交价格
- 成交量
- 成交方向(买方主动还是卖方主动)
- 成交编号
我习惯用Tick数据做高频策略的回测。因为它能还原出最真实的交易过程。
快照数据:某个时刻的订单簿状态
快照数据就简单了。它是在某个时间点,对订单簿拍一张「照片」。
比如每秒拍一张,记录下当时的买卖挂单情况。这就是快照数据。
快照数据的特点是:
- 数据量小,容易存储
- 适合做低频分析
- 但会丢失中间过程的信息
4.3 三种数据级别的对比
为了让你看得更清楚,我整理了一个表格:
| 特性 | Level 1 | Level 2 | Level 3 |
|---|---|---|---|
| 数据深度 | 仅最优价 | 前5-10档 | 全量订单簿 |
| 数据量 | 极小 | 中等 | 极大 |
| 获取难度 | 免费/低成本 | 付费 | 需特殊授权 |
| 适用策略 | 趋势跟踪 | 做市、套利 | 高频、量化做市 |
| 延迟要求 | 低 | 中 | 极高 |
4.4 实际应用中的选择
讲个真实案例。我曾经帮一个团队优化他们的策略系统。他们用的是Level 1数据做高频策略,结果回测表现很好,实盘却亏得一塌糊涂。
为什么?因为Level 1看不到订单簿的深度。他们以为买一价有支撑,实际上下面全是虚挂的单子,一碰就撤。
后来换成Level 2数据,情况就好多了。至少能看到真实的挂单情况。
所以我的建议是:
- 做趋势策略:Level 1就够了
- 做做市策略:至少Level 2
- 做高频策略:Level 3是必须的
4.5 知识体系结构图
下面这张图展示了本章的核心逻辑关系:
这张图把数据深度级别和数据类型的关系梳理清楚了。从上往下看,先选级别,再选类型。每个选择都对应不同的策略需求。
好了,关于数据深度和类型,今天就聊这么多。记住一句话:选数据就像选工具,合适的才是最好的。
公众号:蓝海资料掘金营,微信deep3321