第一章:交易事件序列基础
各位同学好,我是老张。在量化交易这行摸爬滚打了十几年,今天咱们来聊聊交易事件序列这个基础话题。
说实话,很多人一上来就研究各种复杂策略,却忽略了最底层的东西——交易事件。我见过太多人,模型跑得飞起,结果连Tick数据是什么都说不清楚。嗯,这就像盖楼不打地基,迟早要塌。
什么是交易事件?
交易事件,说白了就是市场上发生的每一次「动作」。你想想看,股票市场每时每刻都在发生什么?有人买,有人卖,有人挂单,有人撤单。这些动作,就是交易事件。
我个人习惯把交易事件分成两类:
- 成交事件:买卖双方达成交易,价格和数量确定下来
- 订单事件:有人挂单、撤单、修改订单
举个例子。你在交易软件上看到「14:30:15.123 买入100股茅台,成交价1800元」,这就是一个成交事件。而「14:30:15.456 有人在1801元挂了200股卖单」,这就是一个订单事件。
核心要点:交易事件是市场微观结构的原子单位。每个事件都包含时间戳、价格、数量、方向等关键信息。
事件序列的定义
事件序列,就是把这些交易事件按时间顺序排好。听起来很简单对吧?但这里有个坑——时间精度。
我曾经在做一个高频策略时,发现回测和实盘差距巨大。查了三天,最后发现是事件排序出了问题。两个事件的时间戳只差1微秒,但顺序不同,策略结果天差地别。
事件序列有几个关键特征:
- 时间有序性:事件必须严格按时间排列
- 不可逆性:事件一旦发生,就不能回头
- 稀疏性:不是每个时刻都有事件发生
- 不规则性:事件之间的时间间隔不固定
避坑指南:处理事件序列时,千万别用等间隔采样的思路。我刚开始做的时候就这么干过,结果把很多关键信号都弄丢了。事件序列天然就是不等间隔的,你得用专门的方法来处理。
Tick级数据
Tick级数据,就是最原始的交易数据。每一笔成交、每一次报价变动,都被记录下来。
我记得第一次拿到A股的Tick数据时,吓了一跳。一天下来,一只股票可能有几万条Tick记录。整个市场呢?几千万条。这数据量,处理起来真不是闹着玩的。
Tick数据通常包含以下字段:
| 字段 | 说明 | 示例 |
|---|---|---|
| 时间戳 | 精确到毫秒或微秒 | 2024-01-15 14:30:15.123 |
| 最新价 | 当前成交价格 | 1800.50 |
| 成交量 | 当前笔的成交量 | 100 |
| 成交额 | 当前笔的成交金额 | 180050 |
| 买卖方向 | 主动买还是主动卖 | Buy / Sell |
这里要注意,不同交易所的Tick数据格式可能不一样。比如美股和A股,时间精度、字段定义都有差异。做跨市场策略时,一定要先搞清楚数据规范。
Order Book数据
Order Book,也就是订单簿,记录了市场上所有未成交的买卖订单。它就像市场的「实时供需图」。
为什么Order Book重要?因为它能告诉你市场的「意图」。成交数据是已经发生的事,而Order Book展示的是「即将可能发生」的事。
Order Book的核心结构:
- 买盘(Bid):所有买入订单,按价格从高到低排列
- 卖盘(Ask):所有卖出订单,按价格从低到高排列
- 价差(Spread):最优买价和最优卖价的差值
- 深度(Depth):每个价位上的订单数量
实战经验:我做过一个统计,A股市场大部分时间价差只有1个tick(0.01元)。但遇到重大消息时,价差能瞬间扩大到几十个tick。这种时候,Order Book数据能帮你提前感知市场情绪的变化。
Tick数据 vs Order Book数据
这两者是什么关系?我打个比方:
Tick数据是「结果」,告诉你市场发生了什么。
Order Book数据是「过程」,告诉你市场正在发生什么。
做策略时,两者缺一不可。只看Tick数据,你只能做「事后诸葛亮」。只看Order Book,你又容易陷入「过度解读」的陷阱。
我个人习惯的做法是:先用Order Book数据判断市场状态,再用Tick数据验证和确认。两者结合,才能形成完整的市场视图。
注意:Order Book数据更新极快,尤其是在高频交易场景下。一秒内可能有几百次变动。处理这种数据,对系统性能要求很高。我见过有人用Python直接处理,结果CPU跑满,延迟高得吓人。建议用C++或Rust做底层处理,Python只做上层分析。
知识体系总览
下面这张图,是我整理的本章节知识结构。建议你保存下来,后面学习时随时对照。
这张图把本章的核心内容串起来了。从交易事件出发,到事件序列,再到两种数据类型,最后落到实际应用。你学习时,可以按这个脉络来理解。
个人建议:刚开始接触这些概念时,别急着写代码。先花一周时间,把Tick数据和Order Book数据下载下来,用Excel打开看看。手动翻一翻,感受一下数据的「质感」。我当年就是这么干的,效果比直接看文档好十倍。
好了,第一章的内容就到这里。记住,交易事件序列是整个量化交易的基石。这块基础打不牢,后面学再多策略也是空中楼阁。