2. Tick数据源分析:交易所数据源与第三方数据商
做量化交易,第一步就是搞定数据。尤其是Tick级数据,这东西可不是随便找个接口就能拿到的。我这些年踩过的坑,多半都跟数据源有关。今天咱们就好好聊聊,市面上这些Tick数据源到底怎么选。
2.1 交易所数据源:深交所、上交所、中金所
先说说最正统的——交易所直连。说白了,这是数据的源头,没有中间商赚差价。
深交所(SZSE)
深交所的Tick数据,我印象最深的是它的快照频率。深交所的Level-2行情,每3秒推送一次快照。嗯,这里要注意,3秒对于高频策略来说,其实挺慢的。我个人习惯在深交所做股票时,会额外关注逐笔成交数据,那个才是真正的Tick级。
关键点:深交所的逐笔成交数据,时间戳精度到毫秒。但快照数据只有3秒一次,别搞混了。
上交所(SSE)
上交所的Level-2行情,快照频率是每5秒一次。比深交所还慢?对,你没看错。但上交所的逐笔委托数据更丰富,能还原出完整的订单簿变化过程。我在做期货策略时,就特别喜欢用上交所的逐笔数据做订单流分析。
我的经验:上交所的逐笔委托数据,文件体积很大。一天下来,一个股票可能就有几百MB。存储和解析要做好准备。
中金所(CFFEX)
中金所是期货交易所,它的Tick数据跟股票不太一样。中金所的行情是500毫秒推送一次快照,比股票快多了。而且中金所的Tick数据包含买卖十档,深度信息很全。我曾经用中金所的Tick数据做过股指期货的套利策略,效果还不错。
避坑指南:中金所的Tick数据,时间戳是交易所时间,不是本地时间。做回测时一定要对齐时间轴,否则会出现未来数据。我曾经因为这个原因,回测曲线漂亮得不像话,实盘直接崩了。
2.2 第三方数据商:Wind、聚宽、Tushare
交易所直连虽然好,但门槛高、成本也高。大多数团队和个人,还是会选择第三方数据商。这里我挑三个有代表性的聊聊。
Wind(万得)
Wind是金融圈的老大哥了。它的Tick数据覆盖面很广,沪深两市、期货、期权都有。但Wind的Tick数据是经过清洗的,不是原始数据。什么意思呢?就是Wind会把一些异常值、重复数据给过滤掉。这有好有坏——好处是数据干净,坏处是你可能错过一些市场异常信号。
我个人习惯,做策略回测用Wind的数据,因为省心。但做高频实盘,我会用交易所直连的数据,因为延迟更低。
聚宽(JoinQuant)
聚宽是量化平台里比较接地气的。它的Tick数据主要面向股票市场,期货数据也有,但深度不如Wind。聚宽的数据接口是Python风格的,用起来很顺手。我记得有一次,我需要快速验证一个Tick级别的策略,用聚宽的API,半天就把数据拉下来了。
优点:聚宽的Tick数据,时间戳精度到毫秒,而且有逐笔成交数据。对于个人开发者来说,性价比很高。
Tushare
Tushare是开源社区里比较活跃的数据源。它的Tick数据是免费的,但需要积分。说实话,Tushare的Tick数据质量参差不齐。有些股票的数据很完整,有些则缺胳膊少腿。我建议,如果你只是做研究、写写demo,Tushare够用了。但如果是实盘交易,还是别省这个钱。
小技巧:用Tushare拉Tick数据时,最好做一下数据校验。比如检查时间戳是否连续,价格是否有跳变。我写过一个校验脚本,每次拉完数据都跑一遍,能省不少排查问题的时间。
2.3 数据源对比与选型
好了,说了这么多,到底怎么选?我整理了一个对比表,你一看就明白。
| 数据源 | 数据类型 | 频率 | 成本 | 适用场景 |
|---|---|---|---|---|
| 深交所直连 | 逐笔成交、快照 | 3秒快照 | 高 | 高频策略、订单流分析 |
| 上交所直连 | 逐笔委托、快照 | 5秒快照 | 高 | 订单簿重建、市场微观结构 |
| 中金所直连 | 快照(十档) | 500毫秒 | 高 | 期货高频、套利策略 |
| Wind | 清洗后的Tick | Tick级 | 中 | 策略回测、研究分析 |
| 聚宽 | 原始Tick | Tick级 | 低 | 个人开发、快速验证 |
| Tushare | 原始Tick | Tick级 | 免费 | 学习研究、Demo开发 |
选型其实没有标准答案。我个人的建议是:
- 如果你做高频交易,别犹豫,直接上交易所直连。延迟和数据的完整性,是命根子。
- 如果你是个人开发者,聚宽是个不错的起点。数据质量够用,接口友好。
- 如果你做研究分析,Wind的数据最省心。虽然贵了点,但省下的时间成本更值钱。
- 如果你只是学习,Tushare免费,够你折腾了。
最后,我想说一句:数据源没有最好的,只有最适合你的。你想想看,你的策略对数据延迟敏感吗?你的预算有多少?你的技术栈是什么?想清楚这些,选型就简单了。
这张图是我自己总结的选型流程。你从顶部开始,一步步往下走,基本就能找到适合自己的数据源。记住,选型不是一次性的,随着你的策略和团队发展,数据源也需要迭代升级。