Install
openclaw skills install @gaingush/tushare-future-data提供明确支持的14个Tushare期货接口,涵盖期货合约信息、各类行情数据、仓单持仓及指数等全面期货数据查询服务。
openclaw skills install @gaingush/tushare-future-data本技能是一个接口明确的 Tushare Pro 期货数据获取工具。与通用调用器不同,它有明确的边界,仅支持文档中描述的 14 个核心接口,涵盖行情、基础信息、仓单、结算、持仓排名、指数等全维度数据。这确保了技能能力的透明度和可预测性,用户无需猜测其功能范围。
本技能的核心价值在于明确性。您不需要猜测它能做什么,所有功能都已预先定义:
| 分类 | 接口数量 | 接口名称 (api_name) | 主要功能 |
|---|---|---|---|
| 基础信息 | 3 | fut_basic, trade_cal, fut_mapping | 合约列表、交易日历、内外盘映射 |
| 行情数据 | 4 | fut_daily, fut_weekly_monthly, ft_mins, rt_fut_min | 日线、周月线、分钟线、实时分钟 |
| 仓单、结算与持仓 | 3 | fut_wsr, fut_settle, fut_holding | 仓单、结算价、持仓排名 |
| 指数数据 | 1 | index_daily | 指数日线行情 |
| 统计与风险指标 | 2 | fut_weekly_detail, ft_limit | 周度明细、涨跌停价 |
总计:14个接口
大部分接口都依赖以下核心参数,请务必了解其格式:
| 参数名 | 含义 | 格式/示例 | 如何获取/注意事项 |
|---|---|---|---|
api_name | 接口名称 | 必须是支持的14个接口之一,如 "fut_daily" | 详见上方“完整接口支持表” |
ts_code | 合约代码 | 品种+合约月份.交易所例如: CU2501.SHF (沪铜2501合约)RB2505.SHF (螺纹钢2505合约)IF2504.CFFEX (沪深300期货2504合约) | 使用 fut_basic 接口查询有效合约 |
trade_date | 单个交易日 | YYYYMMDD例如: 20240115 | 查询单日数据时使用 |
start_date /end_date | 开始/结束日期 | 日线:YYYYMMDD分钟线: YYYY-MM-DD HH:MM:SS示例: 日线范围: 20240101 到 20240131分钟线范围: 2024-01-15 09:00:00 到 2024-01-15 15:00:00 | 查询日期范围时使用 |
exchange | 交易所代码 | CFFEX (中金所)SHFE (上期所)DCE (大商所)CZCE (郑商所)INE (能源中心)GFEX (广期所) | 可省略,省略时查询所有交易所 |
freq | 分钟线频率 | 1min, 5min, 15min, 30min, 60min | 仅 ft_mins 接口需要 |
token | Tushare Token | 您的Tushare API Token字符串 | 可在每次调用时传入,或通过环境变量TUSHARE_TOKEN设置 |
重要提示:
YYYYMMDD(无短横线),分钟线接口使用YYYY-MM-DD HH:MM:SS(必须包含短横线和空格)fut_basic 确认合约代码的有效性及交易日期fut_basic)exchange则返回全市场)exchange(交易所代码,如DCE)、fields(指定返回字段)fut_daily)ts_code 或 trade_date 二选一ts_code(单个合约), trade_date(单个交易日), start_date + end_date(日期范围)ts_code不传日期,默认返回最近一个交易日的数据ft_mins)ts_code, freq, start_date, end_datefreq(频率), start_date(精确到秒), end_date(精确到秒)YYYY-MM-DD HH:MM:SSfut_holding)trade_date, symbol 或 ts_codetrade_date(交易日), symbol(品种代码,如CU), ts_code(具体合约)symbol)查询,也可按具体合约(ts_code)查询json { "api_name": "fut_basic", "exchange": "DCE" }
json { "api_name": "fut_daily", "ts_code": "RB2505.SHF", "start_date": "20240101", "end_date": "20240131" }
json { "api_name": "rt_fut_min", "ts_code": "IF2504.CFFEX" }
json { "api_name": "fut_wsr", "trade_date": "20240115", "symbol": "CU" }
虽然本技能文档列出了所有接口的核心信息,但每个接口的完整参数列表、所有输出字段的详细说明、数据更新频率、以及所需的Tushare积分要求等,均需以 Tushare Pro 官方文档 为准。调用前强烈建议查阅官方文档确认接口细节。
本技能始终返回统一的JSON格式:
成功响应: json { "success": true, "data": [...], // 数据数组 "msg": "查询成功", "api": "fut_daily" } 失败响应: json { "success": false, "error": "错误信息详情", "api": "fut_daily" }
本技能的接口列表基于明确的需求文档固化。如需增加新接口,需要:
__init__.py 中的 SUPPORTED_APIS 字典;README.md 和本文件 (SKILL.md) 中的接口列表;metadata.json 中的版本号描述。本技能作为一个ClawHub纯Python技能,由以下核心文件构成:
__init__.py:包含 SUPPORTED_APIS 字典和核心逻辑,是技能的入口。metadata.json:技能核心配置文件,定义了技能名称、版本、依赖和平台运行要求。requirements.txt:Python依赖包列表(tushare, pandas)。README.md:面向用户的快速使用指南。SKILL.md:本文件,即详细技术文档。Q: 这个技能和通用 Tushare 调用器有什么区别? A:通用调用器声称支持“所有”Tushare接口,但用户无法确知其具体支持哪些。本技能明确列出了支持的 14 个期货专用接口,让用户清楚知道能做什么,避免了猜测和试错。
Q: 我想用的接口不在列表中怎么办? A:本技能仅支持文档中明确的 14 个接口。如果您需要其他接口,有两个选择:1) 根据“开发说明”自行修改代码添加;2) 使用功能更宽泛的通用调用器。
Q: 为什么我按示例调用了接口,却返回空数据或错误? A:请按顺序检查:
TUSHARE_TOKEN 环境变量或在参数中传入ts_code 格式是否正确(如CU2501.SHF),可通过fut_basic验证YYYYMMDD(无短横线),分钟线是否为YYYY-MM-DD HH:MM:SSQ: 期货数据有延迟吗?
A:这取决于您的Tushare账户权限。免费账号或基础积分账号获取的行情数据通常有15分钟的延迟。实时行情接口(rt_fut_min)需要更高的积分或单独的数据权限。
Q: 如何配置 Token? A:推荐通过以下两种方式(按优先级):
TUSHARE_TOKEN 为您的token"token": "您的token"
如果以上均未提供,技能将返回错误。Q: 合约代码格式是怎样的?如何知道某个品种的代码?
A:期货合约代码格式为 品种+合约月份.交易所,例如:
CU2501.SHF:沪铜2501合约IF2504.CFFEX:沪深300期货2504合约A2505.DCE:豆一2505合约
可通过 fut_basic 接口查询所有交易所的有效合约列表。Q: 返回的数据量很大,如何限制?
A:Tushare接口本身支持limit参数限制返回条数,您可以在调用时添加"limit": 100这样的参数。另外,通过合理设置start_date和end_date也可以控制数据量。