持股明细接口解析与北向资金持仓分析)
Vibe-Trading 数据技能实战Tushare 沪深股通hk_hold持股明细接口解析与北向资金持仓分析【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading导读本文围绕 Vibe-Trading 仓库内置的 Tushare 数据技能文档 沪深股通持股明细 展开系统讲解hk_hold接口的调用方式、输入输出字段语义、积分与流控限制并结合仓库中的技能定义、资金流向接口与源码实现展示如何将沪深港股通持股数据接入北向资金分析与跨市场资金流监控的实战链路。读完本文你将掌握hk_hold的完整调用参数与返回字段、单次 3800 条记录的循环取数方法以及该接口与moneyflow_hsgt、hsgt_top10等接口在 Vibe-Trading 中的配套使用方式。一、接口概览hk_hold是什么hk_hold是 Tushare 提供的「沪深港股通持股明细」接口数据来源为港交所HKEX用于获取沪股通北向、深股通北向与港股通南向持股的逐日持股明细。在 Vibe-Trading 仓库中该接口被登记在 tushare 技能的数据接口列表 下归类为「股票数据 / 特色数据」官方描述为“获取沪深港股通持股明细数据来源港交所”。围绕该接口的几个关键事实均来自原文档项目说明接口名hk_hold数据来源港交所单次限量最多提取 3800 条记录可循环调取总量不限制积分要求120 积分可调取试用2000 积分可正常使用单位分钟有流控积分越高流量越大数据更新交易所自2024 年 8 月 20 日起停止发布日度北向资金数据改为季度披露其中最后一点尤为重要hk_hold这类北向持股明细属于历史数据与已披露区间的查询2024-08-20 之后日度北向口径数据不再对外发布因此在构建基于日频北向持仓的策略时需要结合数据披露政策的这一变化评估可用数据窗口。原文档同时说明该接口可以通过 Tushare 在线数据工具调试和查看数据。二、输入参数详解原文档给出的输入参数共 5 个全部为可选参数必选列均为 N实际使用时需至少提供一种筛选维度名称类型必选描述codestrN交易所代码ts_codestrNTS 股票代码如600000.SH、000001.SZ、00700.HKtrade_datestrN交易日期格式YYYYMMDDstart_datestrN开始日期格式YYYYMMDDend_datestrN结束日期格式YYYYMMDDexchangestrN类型SH沪股通北向、SZ深股通北向、HK港股通南向持股筛选组合建议想取单日全部通道持股只传trade_date想取单日某个通道如沪股通的持股同时传trade_date与exchangeSH想取单只股票的历史持股变化传ts_code并配合start_date/end_date做区间查询想取某个交易所通道的区间持股传exchange与start_date/end_date。需要特别注意的是exchange字段的方向语义SH/SZ代表北向外资买入 A 股后由港交所披露的持股HK代表南向持股内地资金买入港股。这一点与 Vibe-Trading 中 hk-connect-flow 技能 对南北向资金的划分一致北向流量是外资对 A 股的风险偏好指标南向则反映内地资金对港股的配置倾向。三、输出参数详解hk_hold每次调用返回 6 个字段均可直接映射到 pandas DataFrame 列名称类型默认显示描述codestrY原始代码trade_datestrY交易日期ts_codestrYTS 代码带交易所后缀的标准化代码namestrY股票名称volintY持股数量股ratiofloatY持股占比%占已发行股份百分比exchangestrY类型SH沪股通、SZ深股通、HK港股通其中vol持股数量与ratio持股占比是分析的核心ratio直接以占已发行股份的百分比表示可用于横向比较不同市值标的的北向/南向持仓集中度vol的逐日变化则可推算当日的净增减持方向需注意日度北向数据在 2024-08-20 后停止发布历史窗口内仍可使用。字段使用示例以原文档数据示例中的600000.SH 浦发银行为例vol443245164表示当日持股约 4.43 亿股ratio1.57表示该持股占浦发银行已发行股份的 1.57%而600009.SH 上海机场的ratio26.41说明外资持股占比显著更高属于典型的“北向重仓”标的适合用作北向持仓集中度的参照。四、快速开始配置与第一个请求4.1 获取 Token 并配置环境变量Vibe-Trading 使用TUSHARE_TOKEN环境变量管理 Tushare 凭证。参考 tushare 技能 SKILL.md 中的快速上手说明pip install tushare -i https://pypi.tuna.tsinghua.edu.cn/simple export TUSHARE_TOKENyour_token在 Vibe-Trading 中该变量同时被 环境变量 schema 登记tushare_token: str Field(aliasTUSHARE_TOKEN, default)因此也可以通过仓库的配置体系如agent/.env或~/.vibe-trading/.env统一注入具体提示可见 runner 的 token 处理 与 CLI 层面对缺失TUSHARE_TOKEN的引导说明。4.2 初始化 pro 接口并调用沿用技能文档的标准初始化方式import os import tushare as ts # 读取环境变量中的 token或读取本地记录的 token token os.getenv(TUSHARE_TOKEN) or ts.get_token() # 初始化 pro 接口实例 pro ts.pro_api(token) # 获取单日全部通道持股明细 df pro.hk_hold(trade_date20190625) # 获取单日沪股通北向所有持股 df pro.hk_hold(trade_date20190625, exchangeSH) # 获取单只股票的历史持股区间 df pro.hk_hold(ts_code600000.SH, start_date20190601, end_date20190625)也可以使用等价的通用查询形式pro.query(hk_hold, ...)该写法在仓库其他接口文档中亦有体现如 沪深港通资金流向。4.3 循环取数突破 3800 条限制由于单次最多返回 3800 条记录而全市场持股明细远超此数原文档明确指出“可循环调取总量不限制”。实践中推荐按通道拆分成多个请求每个通道分别取SH、SZ、HK并通过日期区间逐段拉取后pd.concat合并import pandas as pd frames [] for exchange in [SH, SZ, HK]: # 每个 exchange 单次请求的返回量远小于 3800 上限可安全循环 part pro.hk_hold(trade_date20190625, exchangeexchange) frames.append(part) full pd.concat(frames, ignore_indexTrue) print(full.head())若使用区间查询且区间跨度较大建议按周/按月切片循环调用并在每次调用后检查返回行数是否触及 3800 上限触及则进一步缩小日期窗口。五、数据示例解读原文档提供了一组20190625沪股通SH的持股明细样例code trade_date ts_code name vol ratio exchange 0 90000 20190625 600000.SH 浦发银行 443245164 1.57 SH 1 90004 20190625 600004.SH 白云机场 155708039 7.52 SH 4 90008 20190625 600008.SH 首创股份 49944370 1.03 SH 5 90009 20190625 600009.SH 上海机场 288832383 26.41 SH 9 90015 20190625 600015.SH 华夏银行 121539342 0.94 SH 10 90016 20190625 600016.SH 民生银行 541638767 1.52 SH 19 90026 20190625 600026.SH 中远海能 81911786 2.99 SH 20 90027 20190625 600027.SH 华电国际 65877064 0.94 SH 21 90028 20190625 600028.SH 中国石化 709509578 0.74 SH从中可以观察到两个典型的分析角度绝对持仓规模中国石化7.09 亿股、民生银行5.42 亿股属于北向重仓的金融能源权重股vol数值规模反映外资在大盘蓝筹上的底仓深度相对持仓强度上海机场ratio26.41、白云机场ratio7.52显著高于板块均值说明外资在这些标的上的定价话语权更强ratio更适合作为“北向定价权”的截面指标。六、与沪深港通系列接口的联动hk_hold属于 Vibe-Trading tushare 技能中“沪深港通”数据族的一员仓库内还登记了多个配套接口可组合成完整的资金流分析链路接口作用参考文档hk_hold沪深港股通逐股持股明细本文主题沪深股通持股明细moneyflow_hsgt沪深港通每日资金流向北向/南向净买入汇总沪深港通资金流向hsgt_top10沪深股通每日十大成交股含净买入额沪深股通十大成交股ggt_daily/ggt_monthly港股通每日/每月成交统计港股通每日成交统计ggt_top10港股通十大成交股港股通十大成交股典型的组合用法是先用moneyflow_hsgt观察北向资金的总体方向hgt沪股通、sgt深股通、north_money北向资金合计单位百万元再用hk_hold下钻到具体个股的持股数量与占比最后用hsgt_top10确认当日成交最活跃的标的。若需要判断某标的是否属于港股通标的池可先查询 沪深港通股票列表hs_const确认其通道归属。七、在 Vibe-Trading 中的应用路径7.1 技能层hk-connect-flow 的南北向分析框架仓库中的 hk-connect-flow 技能 专门面向沪深港通资金流分析提供了北向资金的分级信号框架如单日净买入 10 亿元为strong_foreign_buying、20 日/5 日累计流向的趋势判断以及板块配置轮动信号。hk_hold提供的逐股持股数据正是其“北向持仓广度breadth”维度的事实来源——例如统计北向十大重仓股中被增持的个股数量即可输出northbound_breadth打分。7.2 工具层get_northbound_flow与tushare_fallbacks在>def fetch_northbound_flow(*, lookback_days: int) - dict[str, Any]: start_date, end_date _date_window(lookback_days) rows _records(_pro_api().moneyflow_hsgt(start_datestart_date, end_dateend_date)) ... history.append({ trade_date: _dashed_date(row.get(trade_date)), shanghai_connect: shanghai * 100 if shanghai is not None else None, shenzhen_connect: shenzhen * 100 if shenzhen is not None else None, total: total * 100 if total is not None else None, })见 fetch_northbound_flow 实现。该函数通过moneyflow_hsgt汇总每日北向资金并按lookback_days回看窗口返回realtime与history两部分结构化结果单位换算为万元10k CNY。在 Vibe-Trading 的数据路由体系中tushare 是 A 股数据源的候选之一需要TUSHARE_TOKEN且依赖中国大陆网络环境hk_hold的持股明细可作为该链路的持仓深度补充。7.3 研究建议把持股明细接入持仓监控结合原文档与仓库技能一个可落地的研究流程是通过hk_hold(ts_code..., start_date..., end_date...)拉取目标股票的北向持股历史计算vol的环比变化识别外资连续增持/减持的个股结合moneyflow_hsgt验证整体方向是否一致避免单一个股噪声将结果与hk-connect-flow的信号框架对齐形成可解释的持仓监控报告。八、注意事项与边界披露政策变化交易所自 2024 年 8 月 20 日起停止发布日度北向资金数据改为季度披露原文档原文说明。因此依赖日频北向数据的策略需注意数据窗口边界历史区间数据不受影响。积分与流控120 积分可调取试用2000 积分可正常使用单位分钟存在流控积分越高流量越大。调用被限流时应降低请求频率或增大轮询间隔。单次限量每次最多 3800 条务必采用按通道、按日期切片的循环取数方式避免数据截断。日期格式统一使用YYYYMMDD如20190625与仓库 tushare 技能文档中的参数格式约定一致。代码格式ts_code需带交易所后缀如600000.SH、000001.SZ、00700.HKexchange取值限定SH/SZ/HK其中SH、SZ为北向持股HK为南向持股。数据语义vol为持股数量股ratio为占已发行股份的百分比二者配合解读时注意区分绝对规模与相对集中度两个维度。结语hk_hold是观察沪深港股通持股结构的核心数据接口。通过本文梳理的输入输出参数、循环取数技巧以及与moneyflow_hsgt、hsgt_top10等接口的联动方式再结合 Vibe-Trading 仓库中 tushare 技能、hk-connect-flow 技能 与 contenteditable="false">【免费下载链接】Vibe-TradingVibe-Trading: Your Personal Trading Agent项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考