Tushare Pro A股数据
v1.0.0A股/港股/期货量化数据查询工具。基于 Tushare Pro API,直接通过 HTTP REST 接口调用,无需 pip 和 Python 环境。用于获取中国A股/港股/期货/指数/资金流向/财务数据。
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
技能名/描述为通过 Tushare Pro 获取股市数据,所需的 TUSHARE_TOKEN 与目的直接相关;没有请求与功能无关的外部凭据或二进制。
Instruction Scope
SKILL.md 明确描述用法并给出 HTTP 调用示例;唯一不一致之处是元数据声明“required config paths: none”,但文档指示在 ~/.openclaw/skills/tushare-pro/ 下创建 token.env(该文件也包含在清单中)。建议将此配置路径在元数据中声明或在文档中说明该路径是可选的。
Install Mechanism
这是 instruction-only 技能,没有 install spec、下载或可执行安装步骤,所以不会把第三方代码写入磁盘或自动执行安装脚本。
Credentials
仅要求一个环境变量 TUSHARE_TOKEN,与技能用途成比例。但文档建议把 token 明文写入 token.env 文件并保存在用户主目录下;这存在普通的凭据保管风险(明文、文件权限)。
Persistence & Privilege
技能未请求 always:true 或修改其他技能/系统配置。agent 可自主调用(平台默认),但这与技能本身无关且权限范围有限。
Assessment
这是一个说明性技能,行为与描述一致,但在安装/使用前请注意:
- 仅为该技能提供 TUSHARE_TOKEN,不要共享其他凭据。
- 若按文档创建 ~/.openclaw/skills/tushare-pro/token.env,请为该文件设置严格文件权限(仅限用户读取),避免把 token 提交到版本控制或备份服务。
- 文档中 token.env 注释有域名拼写错误(tussahre.pro),请确认使用正确站点 https://tushare.pro 并确认 API 请求目标是 https://api.tushare.pro。
- 推荐使用环境变量或系统秘钥管理器保存 token 而不是明文文件;若 token 泄露,及时在 tushare.pro 撤销/重置。
- 可要求技能作者在元数据中明确声明配置路径(或把配置步骤改为可选),以消除当前文档/元数据的不一致。Like a lobster shell, security has layers — review code before you run it.
Runtime requirements
EnvTUSHARE_TOKEN
chinafinancelatestquantstocktushare
Tushare Pro 数据查询技能
通过 HTTP REST 接口直接调用 Tushare Pro,无需 pip/SDK。
前提条件
1. 注册账号并获取 Token
- 打开 👉 https://tushare.pro 注册账号
- 登录后进入 个人中心 → 接口Token
- 复制你的 Token
2. 配置 Token
在 ~/.openclaw/skills/tushare-pro/ 目录下创建 token.env 文件:
TUSHARE_TOKEN=你的Token
数据接口一览
股票日线
api: daily
params: {ts_code: "600036.SH", start_date: "20260320", end_date: "20260326"}
fields: ts_code,trade_date,open,high,low,close,pct_chg,vol,amount
股票代码格式:
- 上交所:
600036.SH(招商银行)、600519.SH(茅台) - 深交所:
000001.SZ(平安)、300001.SZ(创业板) - 科创板:
688001.SH
指数日线
api: index_daily
params: {ts_code: "000300.SH", start_date: "20260320", end_date: "20260326"}
fields: ts_code,trade_date,open,high,low,close,pct_chg,vol
常用指数代码:
000300.SH沪深300000001.SH上证指数399001.SZ深证成指HSI.HK恒生指数HSTECH.HK恒生科技
资金流向
api: moneyflow
params: {trade_date: "20260324"}
fields: ts_code,trade_date,close,pct_chg,buy_elg_amount,sell_elg_amount
期货日线
api: fut_daily
params: {ts_code: "IF.CFX", start_date: "20260320", end_date: "20260326"}
fields: ts_code,trade_date,open,high,low,close,vol,oi
期货代码格式:
CU.SHF铜AU.SHF黄金RB.SHF螺纹钢IF.CFX沪深300股指IC.CFX中证500股指
查询脚本
#!/usr/bin/env python3
"""Tushare Pro HTTP 调用工具(无需pip)"""
import os, json, urllib.request
TOKEN = '你的Token' # 或 os.environ.get('TUSHARE_TOKEN')
def call(api_name, params=None, fields=''):
payload = json.dumps({
'api_name': api_name,
'token': TOKEN,
'params': params or {},
'fields': fields
}).encode('utf-8')
req = urllib.request.Request(
'https://api.tushare.pro',
data=payload,
headers={'Content-Type': 'application/json'}
)
with urllib.request.urlopen(req, timeout=20) as r:
result = json.loads(r.read().decode())
if result.get('code') != 0:
return None
return result['data']
# 示例:查招商银行近期数据
data = call('daily',
{'ts_code': '600036.SH', 'start_date': '20260320', 'end_date': '20260326'},
'ts_code,trade_date,open,high,low,close,pct_chg,vol,amount')
for row in data['items']:
print(dict(zip(data['fields'], row)))
常用查询示例
| 目标 | 命令 |
|---|---|
| 招商银行近期日线 | daily(ts_code='600036.SH', start='20260320', end='20260326') |
| 沪深300近期日线 | index_daily(ts_code='000300.SH', start='20260320', end='20260326') |
| 恒生指数近期 | index_daily(ts_code='HSI.HK', start='20260320', end='20260326') |
| 当日全市场资金流 | moneyflow(trade_date='20260324') |
| 黄金期货近期 | fut_daily(ts_code='AU.SHF', start='20260320', end='20260326') |
注意事项
- Token 有调用频率限制,高频查询请加入
time.sleep(0.5) - 部分接口需要 Tushare 积分权限
- 日期格式统一为
YYYYMMDD
Comments
Loading comments...
