一、高频数据概述:Tick级数据、分钟级数据、Level-2行情数据的概念与区别
做量化交易这些年,我越来越觉得一个道理:数据颗粒度决定了你的策略天花板。说白了,你拿分钟级数据做高频策略,就像用望远镜打靶——方向对了,但永远瞄不准。
今天咱们就把高频数据的几个核心概念掰开揉碎。我会结合自己踩过的坑,帮你理清Tick级、分钟级、Level-2行情到底是怎么回事。
1.1 什么是Tick级数据?
Tick级数据,就是交易所每笔成交的原始记录。每一笔交易产生一个Tick,包含:
- 成交价格:这笔交易实际成交价
- 成交数量:这笔交易成交了多少手
- 成交时间:精确到毫秒甚至微秒
- 成交方向:主动买还是主动卖
举个例子,A股市场每天大约产生3000万到5000万笔Tick数据。我刚开始做回测时,用分钟级数据跑策略效果不错,但一上实盘就亏钱。后来才发现,分钟级数据把很多关键信息给「平均」掉了。
核心要点:Tick级数据是市场最原始的「原子」信息。所有高级数据(分钟级、小时级)都是Tick数据聚合而来的。
1.2 分钟级数据是怎么来的?
分钟级数据,就是把一分钟内的所有Tick数据做个汇总。通常包含:
| 字段 | 含义 | 计算方式 |
|---|---|---|
| Open | 开盘价 | 该分钟第一笔Tick的价格 |
| High | 最高价 | 该分钟内所有Tick的最高价 |
| Low | 最低价 | 该分钟内所有Tick的最低价 |
| Close | 收盘价 | 该分钟最后一笔Tick的价格 |
| Volume | 成交量 | 该分钟内所有Tick的成交量之和 |
嗯,这里要注意:分钟级数据丢失了订单簿的深度信息。你只知道价格区间,但不知道买卖双方的博弈过程。我有个朋友做期货高频,用分钟级数据回测年化50%,实盘直接亏了30%。为什么?因为分钟级数据掩盖了滑点和流动性问题。
我的建议:如果你做的是T+0策略,或者持仓时间在5分钟以内,请务必使用Tick级数据。分钟级数据只适合做中低频策略的初步筛选。
1.3 Level-2行情:比Tick更「深」的数据
Level-2行情,也叫深度行情。它比Tick数据多了一个维度——订单簿。
普通Tick数据只告诉你「成交了什么」,而Level-2告诉你「挂单了什么」。具体包含:
- 十档买卖盘口:当前买一到买十、卖一到卖十的挂单价格和数量
- 逐笔成交:每笔成交的详细记录(比Tick更细,包含委托编号)
- 委托队列:买一和卖一位置的前50笔挂单明细
- 大单统计:特大单、大单、中单、小单的分类统计
我曾经用Level-2数据做过一个「大单异动」策略。原理很简单:当买一位置突然出现巨量挂单,且持续不撤单,说明有大资金在托底。这个策略用Tick数据根本做不了,因为Tick不告诉你挂单的变化过程。
避坑指南:Level-2数据虽然信息丰富,但数据量极大。A股Level-2一天的数据量大约在2-5GB。我曾经因为没做好数据压缩,导致回测服务器磁盘直接爆满...嗯,从那以后我每次都要先算好存储预算。
1.4 三种数据的核心区别
我画了一张图,帮你直观理解三者的关系:
从这张图可以清楚看到:越往下,信息越丰富,但数据量也越大。Tick数据是基础,分钟级数据是简化版,Level-2是增强版。
1.5 实际应用中怎么选?
我根据自己的经验,给你一个选择指南:
- 做高频做市商:必须用Level-2,甚至需要Level-3(逐笔委托)
- 做日内趋势策略:Tick级数据就够了,持仓时间在几分钟到几小时
- 做中长线策略:分钟级甚至日线级数据就够用,别浪费存储
- 做回测验证:先用分钟级数据快速迭代,最后用Tick级数据做精细回测
一个小技巧:我习惯把Tick数据压缩成「1秒快照」来存储。这样既保留了大部分微观结构信息,又把数据量压缩了60%以上。具体做法是:每秒取一次订单簿快照,记录当时的买卖盘口和最新成交价。
1.6 总结一下
三种数据的关系,说白了就是:
- Tick数据:告诉你「发生了什么」
- 分钟级数据:告诉你「发生了什么,但模糊了细节」
- Level-2数据:告诉你「发生了什么,以及为什么发生」
我个人建议,如果你刚开始做量化,先从分钟级数据入手。等策略稳定了,再逐步升级到Tick和Level-2。别一上来就搞Level-2,数据量太大,处理起来容易崩溃——我当年就是这么过来的。