Vibe-Trading 游资交易数据接入实战:Tushare hm_detail 接口全解析与打板量化研究
【免费下载链接】Vibe-Trading"Vibe-Trading: Your Personal Trading Agent"项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading
游资(hot money)动向是 A 股短线打板研究中最核心的资金面情报之一。本文以 Vibe-Trading 仓库内 Tushare 技能文档 为主线,完整拆解hm_detail游资交易每日明细接口的权限要求、输入输出参数、调用方式与循环取数策略,并结合仓库中的 Tushare 加载器实现、环境变量配置 与数据路由技能,给出可直接落地的游资资金行为量化研究方案。读完本文,你将掌握用 Tushare 抓取单日全市场游资明细、按游资名称或个股回查历史仓位,以及在 Vibe-Trading 中配置与复用该数据源的完整方法。
一、接口概览:游资交易每日明细(hm_detail)
hm_detail是 Tushare 数据平台中“股票数据 > 打板专题数据”分类下的专用接口,接口编号 312(见 Tushare 技能总览 中的接口列表),用于获取每日游资交易明细,数据开始于 2022 年 8 月。它的核心价值在于把抽象的“龙虎榜营业部”数据进一步归因到“知名游资 / 市场席位”这一资金主体维度,使研究者可以直接跟踪某一路资金(如赵老哥、炒股养家、章盟主等)在哪些股票上进出了多少资金。
从接口设计看,Tushare 提供了配套的游资名录接口hm_list(市场游资最全名录,见 市场游资最全名录文档),二者构成“名录—明细”的完整数据链:先用hm_list拿到游资名称与关联营业部,再用hm_detail按游资名称或交易日拉取实际交易数据。这种双接口结构在仓库的 Tushare 技能中被完整保留,适合构建“游资监控 → 行为画像 → 策略因子”的研究流水线。
访问权限与积分要求
| 项目 | 说明 |
|---|---|
| 接口名 | hm_detail |
| 数据起始 | 2022 年 8 月 |
| 单次限量 | 最多提取 2000 条记录,可循环调取,总量不限制 |
| 积分要求 | 用户积分达到10000 分可调取使用 |
需要注意的是,10000 积分属于 Tushare 的高等级权限门槛,远高于普通行情接口(如daily通常 2000 分)。这意味着实际调用该接口前,需要先确认账号积分等级,避免在量化任务编排中因权限不足而中断。仓库的 Tushare 加载器 对这类权限/频控异常有成熟的识别与退避处理机制(详见下文“频控与容错”小节),可直接复用其思路。
二、输入参数详解
hm_detail共提供 5 个输入参数,全部为可选(必选列均为 N),可按需组合使用:
| 名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
trade_date | str | N | 交易日期(YYYYMMDD) |
ts_code | str | N | 股票代码 |
hm_name | str | N | 游资名称 |
start_date | str | N | 开始日期(YYYYMMDD) |
end_date | str | N | 结束日期(YYYYMMDD) |
参数组合的核心逻辑:
trade_date单日全览:只传交易日期,可一次性获取该日全市场游资买卖明细,适合每日盘后快照式扫描;ts_code个股反查:指定股票代码,可查看某只个股当日或区间内被哪些游资参与;hm_name游资跟踪:指定游资名称(需与hm_list名录中的名称一致),可跟踪该路资金的历史交易轨迹;start_date+end_date区间拉取:与ts_code、hm_name搭配,可限定时间窗口,配合 2000 条/次的分页循环完成历史数据全量回填。
日期格式统一为YYYYMMDD(如20230815),与仓库 SKILL.md 参数格式约定 一致。股票代码采用ts_code格式(如000001.SZ、600000.SH)。
三、输出参数详解
hm_detail返回 8 个字段,覆盖了交易主体、标的、金额三个维度:
| 名称 | 类型 | 默认显示 | 描述 |
|---|---|---|---|
trade_date | str | Y | 交易日期 |
ts_code | str | Y | 股票代码 |
ts_name | str | Y | 股票名称 |
buy_amount | float | Y | 买入金额(元) |
sell_amount | float | Y | 卖出金额(元) |
net_amount | float | Y | 净买卖(元) |
hm_name | str | Y | 游资名称 |
hm_orgs | str | Y | 关联机构(一般为营业部或机构专用) |
tag | str | N | 标签 |
字段解读与量化用途:
- 金额三件套:
buy_amount/sell_amount/net_amount(单位均为元)构成该路游资对某标的的单日资金净流向,可直接用于计算“净买入强度”“买卖比”等资金行为因子; - 关联机构:
hm_orgs给出该游资实际使用的营业部席位(如“华泰证券股份有限公司南京六合雄州西路证券营业部”),可与hm_list名录中的orgs字段交叉校验,判断资金是否更换席位或出现多席位联动; - 标签:
tag为可选字段,可用于区分资金属性(如机构专用、深股通专用等特殊席位标签),在过滤“真假游资”时非常有用。
文档特别提示:数据为当日部分数据,此处仅作为示例效果,即返回结果可能并非该日全量成交,研究中应把接口返回视为官方披露口径的子集,避免把“无记录”误判为“未参与”。
四、接口调用示例与循环取数
基础调用
文档给出的标准调用方式如下:
import tushare as ts pro = ts.pro_api() # 获取单日全部明细 df = pro.hm_detail(trade_date='20230815') print(df.head())返回为 pandas DataFrame,含上述 8 个字段。结合仓库 SKILL.md 快速上手 的规范写法,推荐显式传入 token:
import os import tushare as ts token = os.getenv('TUSHARE_TOKEN') or ts.get_token() pro = ts.pro_api(token) # 获取单日全部明细 df = pro.hm_detail(trade_date='20230815')在 Vibe-Trading 仓库内,token 的推荐来源是环境变量TUSHARE_TOKEN,其读取逻辑定义在 env_schema.py(cfg.data.tushare_token),可直接用ts.pro_api(token)初始化后调用任意 Tushare 接口。
按游资名称跟踪
# 跟踪某一路游资的历史交易(名称需与 hm_list 名录一致) df = pro.hm_detail(hm_name='赵老哥', start_date='20230801', end_date='20230831') print(df[['trade_date', 'ts_code', 'ts_name', 'buy_amount', 'sell_amount', 'net_amount']])按个股反查资金参与
# 查看某只个股被哪些游资参与 df = pro.hm_detail(ts_code='000001.SZ', start_date='20230801', end_date='20230831') print(df.groupby('hm_name')['net_amount'].sum().sort_values(ascending=False))循环取数全量回填
由于单次上限为 2000 条,历史全量数据需按日期分页循环。推荐按交易日逐日拉取,既可规避单次超限,也便于断点续传与增量更新:
import time trade_dates = ['20230801', '20230802', '20230803'] # 可用 trade_cal 接口生成完整交易日列表 all_data = [] for d in trade_dates: page = pro.hm_detail(trade_date=d) all_data.append(page) time.sleep(0.5) # 尊重接口频控,避免触发限流 import pandas as pd full = pd.concat(all_data, ignore_index=True)五、在 Vibe-Trading 中的落地:配置、路由与容错
环境变量配置
仓库通过env_schema.py以TUSHARE_TOKEN别名注册 token 配置项,DataLoader.is_available()(见 tushare.py)会读取该配置并判定数据源是否可用。实际使用前只需:
export TUSHARE_TOKEN=your_token数据源路由
根据 contenteditable="false">【免费下载链接】Vibe-Trading"Vibe-Trading: Your Personal Trading Agent"项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考