Vibe-Trading 数据技能实战:Tushare 港股通每日成交统计(ggt_daily)接口详解与南向资金分析
【免费下载链接】Vibe-Trading"Vibe-Trading: Your Personal Trading Agent"项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading
本文面向 Vibe-Trading 的 Agent 开发者与量化研究者,系统讲解 Tushare
ggt_daily(港股通每日成交统计)接口的调用规格、参数语义、返回字段与实战用法,并结合 Vibe-Trading 仓库内的 tushare 技能体系、港股通资金流分析技能与相关测试,说明如何将该接口融入跨市场资金流向与因子研究管线。读完本文,你将掌握ggt_daily的单日、多日、区间三种调用方式,理解买入/卖出成交金额与笔数的单位与口径,并学会与ggt_monthly、ggt_top10、hsgt_top10、moneyflow_hsgt等相邻接口组合使用,构建完整的港股通南向资金观察视图。
一、接口定位与业务背景
ggt_daily是 Tushare 数据体系中的「港股通每日成交统计」接口,用于获取港股通每日成交信息,数据自 2014 年开始覆盖。它属于「股票数据 > 行情数据」分类,在 Vibe-Trading 的 tushare 技能清单中登记为 ID 196(见 agent/src/skills/tushare/SKILL.md 数据接口列表)。
从跨境资金流向角度看,ggt_daily度量的是**港股通(Southbound,内地资金南下买港股)**的每日成交规模:内地投资者通过上海、深圳两大交易所的港股通通道买卖香港上市证券,其买入/卖出金额与笔数的汇总即为该接口的核心数据。Vibe-Trading 内置的 hk-connect-flow 技能 将其界定为「Mainland capital into HK」通道,并指出南向资金是港股中盘股/小盘股的边际买家,驱动因素包括 AH 溢价套利、高股息率猎取与科技平台配置等。因此ggt_daily是研究南向资金温度、跨境风险偏好与港股流动性的基础数据源之一。
二、接口规格总览
ggt_daily的访问规格在港股通每日成交统计文档中明确给出,汇总如下:
| 项目 | 说明 |
|---|---|
| 接口名 | ggt_daily |
| 描述 | 获取港股通每日成交信息,数据从 2014 年开始 |
| 限量 | 单次最大 1000 条,总量数据不限制 |
| 积分 | 用户积 2000 积分可调取;5000 积分以上频次相对较高 |
| 返回格式 | pandas DataFrame(Tushare Pro 标准返回) |
| 日期格式 | YYYYMMDD(如 20190625),支持单日与多日输入 |
两个约束需要特别留意:
- 单次 1000 条上限:
ggt_daily是「按交易日一行」的日频汇总数据,单日仅一行,1000 条对应约 4 个自然年的交易日。若要拉取 2014 年至今的完整序列,需要通过start_date/end_date分区间循环补全,这与仓库中其他日频接口(如daily、index_daily的 8000 行限制)的处理思路一致。 - 积分门槛:该接口需要至少 2000 积分方可调取,5000 积分以上可获得相对较高的调用频次。积分获取方式以 Tushare 官方积分体系为准(官方文档中的「积分获取办法」),开发者需结合自身账号积分规划拉取节奏。
三、输入参数详解
ggt_daily的输入参数共三个,均为可选(N),但实际使用时至少应提供一个日期维度:
| 名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| trade_date | str | N | 交易日期,格式 YYYYMMDD,支持单日和多日输入 |
| start_date | str | N | 开始日期,格式 YYYYMMDD |
| end_date | str | N | 结束日期,格式 YYYYMMDD |
参数语义说明:
- trade_date 多日输入:可传入逗号分隔的多个日期,例如
'20190925,20180924,20170925',一次调用返回多个交易日的统计行; - 区间查询:
start_date与end_date需成对使用,返回闭区间内的全部交易日数据; - 日期格式统一:与 tushare 技能的整体约定一致——SKILL.md 中「参数格式说明」明确日期一律为
YYYYMMDD(如 20241231),股票代码采用ts_code格式(如000001.SZ、600000.SH),返回统一为 pandas DataFrame; - 交易日口径:查询区间内仅返回实际发生交易的日期,港股通不开市的日子不会产生数据行。
四、输出参数与字段单位
ggt_daily每次返回 5 个字段,单位口径在文档中已逐项标注,使用时务必区分「金额」与「笔数」两种度量:
| 名称 | 类型 | 默认显示 | 描述 |
|---|---|---|---|
| trade_date | str | Y | 交易日期 |
| buy_amount | float | Y | 买入成交金额(亿元) |
| buy_volume | float | Y | 买入成交笔数(万笔) |
| sell_amount | float | Y | 卖出成交金额(亿元) |
| sell_volume | float | Y | 卖出成交笔数(万笔) |
字段解读要点:
- buy_amount / sell_amount:单位为「亿元」,直接相加即为当日港股通买卖总成交额(同样以亿元计);
- buy_volume / sell_volume:单位为「万笔」,反映的是成交活跃度而非股数,笔数口径与金额口径在换手剧烈的小单交易场景下会出现背离(笔数高但金额低),可作为交易结构分析的输入;
- 净额派生:港股通当日净买入额 ≈
buy_amount - sell_amount(亿元),这是南向资金方向研判中最常用的派生指标,下文给出完整计算示例。
五、调用方式与代码示例
5.1 环境准备
ggt_daily与所有 Tushare Pro 接口一样,需要先完成 token 配置。在 Vibe-Trading 的 tushare 技能体系中(SKILL.md 快速上手章节),推荐流程为:
pip install tushare export TUSHARE_TOKEN=your_token仓库内的示例脚本 agent/src/skills/tushare/scripts/stock_data_example.py 展示了 token 的读取优先级:优先从项目的环境配置读取tushare_token(get_env_config().data.tushare_token),否则回退到ts.get_token()本地缓存,再初始化 Pro 接口:
import tushare as ts from src.config.accessor import get_env_config token = get_env_config().data.tushare_token or ts.get_token() pro = ts.pro_api(token)5.2 三种典型调用
原文档给出三种调用形态,这里在保留原始语义的基础上补齐参数与注释,使其可直接运行:
pro = ts.pro_api() # 1) 获取单日全部统计(trade_date 单日) df = pro.ggt_daily(trade_date='20190625') # 2) 获取多日统计信息(trade_date 逗号分隔多日) df = pro.ggt_daily(trade_date='20190925,20180924,20170925') # 3) 获取时间段统计信息(start_date / end_date 闭区间) df = pro.ggt_daily(start_date='20180925', end_date='20190925') print(df)需要指出:原文档第三个示例中end_date='20190925)存在引号缺失(笔误),上面已修正为完整的'20190925'。
除属性式调用外,Tushare Pro 还支持query方式,语义完全相同:
df = pro.query('ggt_daily', start_date='20180925', end_date='20190925')5.3 区间循环补全全量数据
考虑到单次 1000 条上限与积分频次限制,拉取全历史时建议按年分片:
import tushare as ts pro = ts.pro_api() frames = [] for year in range(2014, 2027): # 数据自 2014 年开始 df = pro.ggt_daily(start_date=f'{year}0101', end_date=f'{year}1231') frames.append(df) full = pd.concat(frames, ignore_index=True).sort_values('trade_date')六、返回数据解读与净买入计算
以下为原文档中的数据示例(节选),展示 2019 年 8 月至 9 月部分交易日的返回内容:
trade_date buy_amount buy_volume sell_amount sell_volume 0 20190925 31.22 5.54 27.07 4.55 1 20190924 37.69 5.53 39.14 6.13 2 20190923 26.69 4.43 31.50 5.01 3 20190920 35.62 6.16 33.41 5.49 4 20190919 31.80 5.83 29.34 5.24 ... 20 20190823 33.91 6.28 18.83 4.66 21 20190822 38.21 7.38 19.00 4.38 22 20190821 35.38 6.42 20.39 3.77以 2019 年 9 月 25 日为例:买入成交金额 31.22 亿元、买入 5.54 万笔,卖出成交金额 27.07 亿元、卖出 4.55 万笔,当日港股通净买入约31.22 - 27.07 = 4.15亿元;而 9 月 24 日买入 37.69 亿元、卖出 39.14 亿元,净卖出约 1.45 亿元。仅凭一行字段即可还原「南向资金当日是流入还是流出、规模多大」。
将净买入派生逻辑沉淀为可复用函数:
def southbound_net(df): """输入 ggt_daily 返回的 DataFrame,输出带净买入额(亿元)的副本""" out = df.copy() out['net_amount'] = out['buy_amount'] - out['sell_amount'] # 单位:亿元 out['net_volume'] = out['buy_volume'] - out['sell_volume'] # 单位:万笔 return out进一步可计算 N 日累计净买入、5 日/20 日趋势等,这与 hk-connect-flow 技能 中南向资金信号框架的思路一致——它建议以南向资金单日净买入(HKD 口径)与累计趋势(20 日)判断「mainland_selling / strong_mainland_buying」等状态,ggt_daily恰好为该框架提供了日频成交总额层面的数据底座。
七、与相邻接口的组合使用
ggt_daily属于 Tushare「港股通」系列接口的日频汇总层,与同目录及相邻目录的接口形成「总览—明细—资金流」三层观察体系,全部文档位于 agent/src/skills/tushare/references 之下:
| 接口 | 文档 | 视角 | 关键字段 |
|---|---|---|---|
ggt_daily | 港股通每日成交统计 | 南向日频总额 | buy/sell_amount、buy/sell_volume |
ggt_monthly | 港股通每月成交统计 | 南向月度汇总 | 日均买卖金额/笔数、月度总额 |
ggt_top10 | 港股通十大成交股 | 南向个股明细(沪/深分市场,market_type 2/4) | amount、net_amount、rank |
hsgt_top10 | 沪深股通十大成交股 | 北向个股明细(沪/深,market_type 1/3) | amount、net_amount、buy、sell |
moneyflow_hsgt | 沪深港通资金流向 | 沪深港通资金流向 | ggt_ss、ggt_sz、north_money、south_money |
hk_hold | 沪深股通持股明细 | 沪深港股通持股明细(数据来源港交所) | 持股数量/市值等 |
组合使用示例——用ggt_daily观察总量、用ggt_top10定位标的结构:
# 总量层面:某区间港股通日频成交与净买入 total = pro.ggt_daily(start_date='20190101', end_date='20190331') # 结构层面:某交易日港股通(沪/深)十大成交股 top_sh = pro.ggt_top10(trade_date='20190110', market_type='2') # 港股通(沪) top_sz = pro.ggt_top10(trade_date='20190110', market_type='4') # 港股通(深)需要说明的是,ggt_top10、hsgt_top10等明细接口的数据在每天 18~20 点之间完成当日更新,与ggt_daily的日终数据节奏一致;在 Vibe-Trading 的技能体系内,这类接口可通过 SKILL.md 数据接口列表按 ID 检索定位(ggt_daily为 196,ggt_monthly为 197,ggt_top10为 49,hsgt_top10为 48,moneyflow_hsgt为 47)。
八、在 Vibe-Trading 项目中的落地与验证
8.1 技能组织方式
ggt_daily的接口文档被组织在 agent/src/skills/tushare/references/股票数据/行情数据/港股通每日成交统计.md,归属于 tushare 数据源技能(category: contenteditable="false">【免费下载链接】Vibe-Trading"Vibe-Trading: Your Personal Trading Agent"项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考