一、外汇市场微观数据概述
做量化交易这些年,我接触过各种各样的数据。从日线到分钟线,从Tick到Level2,每种数据都有自己的脾气。今天咱们就来聊聊外汇市场的微观数据——说白了,就是那些比K线更细、更原始的数据。
你可能会问:K线还不够用吗?嗯,这个问题我当年也问过。直到有一次,我用1分钟K线做高频策略,回测曲线漂亮得不行,实盘却亏得底朝天。后来才发现,K线把太多细节给抹平了。微观数据,就是帮你看到那些被「平均」掉的东西。
1.1 什么是Tick数据
Tick数据,也叫逐笔成交数据。它记录的是每一笔真实的成交信息。每一笔交易,都会生成一条Tick记录。
举个例子,你在MT4上看到欧元/美元报价1.1050/1.1052,有人以1.1052买入,系统就会记录一条Tick:
时间戳: 2024-01-15 14:30:22.123
品种: EUR/USD
成交价: 1.1052
成交量: 100万
买卖方向: Buy
我个人习惯把Tick数据比作「交易的高速摄影」。K线是每隔一段时间拍一张照片,而Tick是每一帧都不放过。在外汇市场,Tick数据通常包含:
- 精确到毫秒甚至微秒的时间戳——这是高频交易的生命线
- 成交价格——真实发生的价格,不是报价
- 成交量——这笔交易有多少手
- 买卖方向——是主动买还是主动卖
1.2 什么是Level2数据
Level2数据,也叫市场深度数据。它告诉你的是:在某个时刻,市场上各个价位的挂单情况。
你想想看,Tick数据告诉你「有人成交了」,但Level2数据告诉你「还有多少人等着成交」。这就像看球赛,Tick是进球瞬间,Level2是双方球员的站位和跑动路线。
典型的Level2数据长这样:
时间戳: 2024-01-15 14:30:22.456
品种: EUR/USD
卖五: 1.1056 200万
卖四: 1.1055 150万
卖三: 1.1054 300万
卖二: 1.1053 250万
卖一: 1.1052 100万
-------------------
买一: 1.1051 80万
买二: 1.1050 120万
买三: 1.1049 200万
买四: 1.1048 180万
买五: 1.1047 90万
这里有个关键点:Level2数据是快照,不是流。它每隔几毫秒或几十毫秒更新一次,记录当前时刻的挂单状态。我在项目中遇到过,有些数据商提供的Level2是增量更新——只告诉你哪些挂单变了,而不是全量推送。这两种格式的处理方式完全不同。
1.3 什么是报价深度数据
报价深度数据,其实是Level2数据的「升级版」或「聚合版」。它不展示每个价位的具体挂单,而是告诉你:
- 买卖价差(Spread)——买一和卖一之间的差距
- 前N档的累计挂单量——比如前5档的总买量和总卖量
- 订单簿的不平衡度——买盘和卖盘的相对强弱
说白了,报价深度数据是对Level2数据做了一层「特征工程」。我习惯用它来做市场情绪判断。举个例子:
时间戳: 2024-01-15 14:30:22.789
品种: EUR/USD
Spread: 0.0001 (1 pip)
前5档总买量: 680万
前5档总卖量: 1000万
买卖不平衡比: 0.68 (买盘弱于卖盘)
当买卖不平衡比低于0.5时,说明卖压很重。我在做日内策略时,经常把这个指标作为过滤条件——不平衡比太低时,不开多单。
1.4 它们与K线数据的区别
这个问题很关键。很多人觉得K线就够了,但微观数据和K线完全是两码事。我画了一张图,帮你理清它们的关系:
这张图很直观地展示了数据从微观到宏观的演变过程。K线数据其实是Tick数据的「压缩版」——它把一段时间内的所有成交,压缩成四个价格(开盘、最高、最低、收盘)和一个成交量。
它们的核心区别,我整理成了表格:
| 维度 | Tick数据 | Level2数据 | 报价深度数据 | K线数据 |
|---|---|---|---|---|
| 记录内容 | 每笔成交 | 挂单状态 | 聚合特征 | 价格区间 |
| 时间精度 | 毫秒/微秒 | 毫秒级快照 | 毫秒级计算 | 分钟/小时/日 |
| 数据量 | 极大(每秒数百条) | 大(每秒数十次快照) | 中等 | 小 |
| 主要用途 | 高频策略、回测 | 订单簿分析、流动性评估 | 信号生成、市场情绪 | 趋势分析、中低频策略 |
| 信息损失 | 无 | 无(全量快照) | 有(聚合损失细节) | 严重(丢失日内波动) |
核心观点:K线数据适合做「方向判断」,微观数据适合做「时机选择」。如果你做的是日内高频交易,没有Tick或Level2数据,就像蒙着眼睛开车。但如果你做的是长线趋势跟踪,K线完全够用——别为了炫技去折腾微观数据,那会把你累死。
最后说一句:这四种数据不是互斥的,而是互补的。我自己的策略框架里,K线用来定方向,Tick用来定入场点,Level2用来做风控。各司其职,才能发挥最大价值。