港股和美股分钟以及逐笔tick本地数据下载和分析

用户头像me_361829775857
2026-06-08 发布

分析港股分钟级别的行情数据,一般采用本地数据更快,因为绝大部分数据库提供数据量有限制,比如只能一个月的。只有将数据下载到本地才能快速回测,我本地是储存了2011年开始至今的历史数据,所以一般也就是本地回测。

今天正好整理一下手头常用的港股和美股历史数据源,主要是分钟线和Tick,给同样在折腾数据的朋友们参考参考,顺便聊聊里面都有啥字段,避免大家踩我踩过的坑。

先说分钟数据吧,这个算是比较友好的了,不管是回测还是做简单的分析,基本都够用。数据是按分钟一根线记录下来的,结构清晰,文件也不会大到离谱。

港股/美股分钟数据主要字段:

字段名 说明(我自己的理解)
time 这根K线的起始时间,比如 09:30
open 这个分钟内的第一个成交价
high 这一分钟里蹦到的最高价
low 这一分钟里蹲到的最低价
close 这一分钟结束时的最后成交价
volume 这一分钟里总共成交了多少股(手)
turnover 这一分钟里成交了多少钱(比如港币或美元)
avg_price 这一分钟里的平均成交价,有时候会用上
以前用免费数据,经常遇到非交易时间的数据混在里面,或者价格没复权,画出来的图是断的,特别烦人。后来为了省事,就直接用清洗好的数据源了,比如调取CMES金融数据库里的数据,至少日期和复权问题不用自己再折腾一遍。

下面这个例子是调用他们接口获取分钟数据的简单写法,注意股票代码和市场别搞错了,频率也别调太高,小心被限制。

CMES金融数据库的分钟行情接口示例

注意:需要先pip安装他们的库,具体看官方文档

import cmesdata

初始化,这里需要你自己的token

client = cmesdata.Client(api_token='你的token')

获取腾讯控股(0700.HK)某天的分钟数据

注意市场代码和股票代码的格式要匹配,调用太频繁可能会被限

data = client.get_intraday_quotes(
symbol='0700.HK',
date='2023-10-01',
interval='1min' # 频率可以是1min, 5min, 15min等
)
print(data.head())
然后就是重头戏,也是硬盘杀手——Tick数据(也叫逐笔成交)。这东西记录的是每一笔成交的细节,信息量巨大,做高频或者微观结构分析必备,但数据量真的是指数级增长,新手慎入,真的会怀疑人生。

港股/美股Tick数据主要字段:

字段名 说明(我自己的理解)
timestamp 成交发生的精确时间,通常到毫秒甚至微秒
price 这一笔成交的具体价格
volume 这一笔成交了多少股(手)
turnover 这一笔成交了多少钱
trade_type 这个很重要,标识是场内还是场外交易,比如是自动对盘还是非自动对盘
buy_order_id & sell_order_id 买方和卖方的订单编号,可以用于追踪订单流
Tick数据里最有意思的就是看trade_type,能区分出哪些交易是真正在交易所里匹配成交的,哪些是大宗或者场外搬过来的,对理解真实流动性帮助很大。以前我只看买卖盘口,后来发现很多大单子其实并不直接冲击盘口,都在这里体现了。

差点忘了,还有盘口快照数据(也叫Level 2)。这个不是每笔成交,而是每隔一个很短的时间(比如几秒)拍一张买卖五档(甚至十档)的截图。

盘口快照数据主要字段:

字段名 说明
snapshot_time 快照时间戳
bid_price_1 ~ bid_price_5 买一到买五的价格
bid_volume_1 ~ bid_volume_5 买一到买五的挂单量
ask_price_1 ~ ask_price_5 卖一到卖五的价格
ask_volume_1 ~ ask_volume_5 卖一到卖五的挂单量
total_bid_volume 买盘总挂单量(不一定是五档)
total_ask_volume 卖盘总挂单量
看盘口数据,不能光看挂单大就觉得支撑强或压力大。有时候一个大单子挂在那,可能是故意吸引注意力的,我回测过一些情况,发现它突然撤掉的时候才是行情启动的点。这个规律,我后来是调取了数据库中过去几年的港股Tick和盘口数据做匹配回测,才看得比较清楚。

最后简单对比下,方便选择:

分钟数据:适合大多数情况,做日级别或小时级别策略回测、技术分析足够,数据好处理。
Tick数据:适合高频或微观研究,能看清每一笔交易,但数据量恐怖,需要很强的清洗和处理能力。
盘口快照:适合分析短期供需和订单簿动态,通常和Tick数据结合着用。
说实话,整理这些字段和区别手都酸了。数据本身只是矿石,怎么炼出金子还得看自己的策略和想法。如果有朋友知道更高效的Tick数据压缩或存储方法,求教!

评论