本教程将指导你部署 a-stock-data——一个自包含的 Skill 文件,为 AI 编程助手(如 Claude Code、Codex)提供整合自 19 个数据源、54 个端点的 A 股数据工具集,且零鉴权、开箱即用


📋 准备工作

1. 环境要求

  • 操作系统:Windows、macOS 或 Linux。
  • Python 版本:3.8 或更高版本。
  • AI 编程助手(目标使用环境):Claude Code(首选)、Codex 或 OpenClaw。如果你不使用这些,也可以直接提取其中的 Python 代码在本地脚本中运行。
  • 网络:能够访问国内主流数据源(如腾讯财经、东财、新浪等)。如果在海外服务器运行,部分 TCP 连接(如 mootdx)可能需要代理。

2. API 密钥(可选)

项目内绝大多数数据源(包括新增的 baostock、人民银行等)完全免费且无需 API 密钥。只有以下两个高级功能需要额外申请:

  • iwencai 语义搜索:如需使用自然语言检索研报,需要申请 iwencai API Key
  • OpenClaw / Codex:根据相应平台要求配置。

🛠️ 安装与配置

1. 为 Claude Code 安装(3 步,2 分钟)

这是项目设计的主要使用方式。

  1. 创建 Skill 目录

    1
    mkdir -p ~/.claude/skills/a-stock-data
  2. 下载 Skill 文件

    1
    2
    curl -o ~/.claude/skills/a-stock-data/SKILL.md \
    https://raw.githubusercontent.com/simonlin1212/a-stock-data/main/SKILL.md
  3. 安装 Python 依赖

    1
    pip install mootdx requests pandas stockstats numpy baostock xlrd openpyxl

    ⚠️ 注意mootdx 库与某些工具(如 MCP)可能存在 httpx 版本冲突。如果遇到,可执行 pip install --no-deps "httpx>=0.27.1" 覆盖升级,不影响其 TCP 取数功能。

  4. 启动使用:启动 Claude Code,直接说一句“帮我看看 688017 的估值”,Skill 将自动激活。

2. 为 Codex / OpenClaw 或其他助手配置

对于不支持 Skill 目录的 AI 编程助手,将 SKILL.md 文件的完整内容粘贴到你的系统提示词 (System Prompt)项目上下文文件中即可。助手将能够理解并执行内嵌的 Python 代码。

3. 直接作为 Python 库使用(非 AI 助手场景)

如果你只想在本地脚本中使用数据工具:

  1. 克隆仓库

    1
    2
    git clone https://github.com/simonlin1212/a-stock-data.git
    cd a-stock-data
  2. 安装依赖(同上):

    1
    pip install mootdx requests pandas stockstats numpy baostock xlrd openpyxl
  3. 导入并使用:你可以从 SKILL.md 文件中提取所需的 Python 函数,或直接参考文件内的代码逻辑编写脚本。


🚀 使用示例与功能验证

安装完成后,你可以通过与 AI 助手的自然语言对话来调用数据,或者直接运行代码。

与 AI 助手对话示例

你的提问 调用的数据层/端点
帮我估一下 688017,给我 PE / PEG / 消化时间 估值层 (腾讯财经 + 一致预期)
今天哪些股票走强,主要是什么题材 信号层 (同花顺热点 + 题材归因)
人形机器人产业链最近的研报 研报层 (东财 + iwencai 语义搜索)
今天北向资金流入流出怎么样 信号层 (同花顺北向实时/历史)
600519 最近的融资余额变化趋势 资金面 (融资融券明细)
今天涨停多少家、最高几连板 打板层 (东财涨停池)

快速验证代码片段(Python)

你可以直接在 Python 环境中运行以下代码,测试数据连通性:

1
2
3
4
# 测试腾讯实时行情(不封 IP)
import requests
# 腾讯财经 API 示例:获取贵州茅台实时数据
# (实际使用请参考 SKILL.md 中的 tencent_quote() 函数)

⚙️ 高级配置与优化

1. 东财接口限流防封

东财系接口(龙虎榜、两融、研报等)有访问频率风控。项目已将所有东财调用统一经 em_get() 函数串行限流。如果你的批量任务很大,可以调整环境变量或修改 EM_MIN_INTERVAL 参数(默认约 0.5-1 秒)来增大请求间隔,降低封 IP 风险。

2. 使用备用数据源(降级策略)

当主数据源(尤其是东财)被封时,项目内置了“备用源速查”机制。例如,龙虎榜可降级至上交所/深交所官方接口,公告可降级至巨潮资讯。你只需在提问时指明,或由 AI 助手自动根据 SKILL.md 中的降级策略表切换。

3. Token 消耗优化

SKILL.md 文件较大。为节省上下文 token:

  • 自动触发优化:新版本已缩小 Skill 的 description 范围,仅在涉及 A 股数据提问时加载。
  • 按需读取:你可以不将其设为自动加载 Skill,而是放在项目目录中,让 AI 助手按需读取 SKILL.md 的特定章节(文件顶部有“端点路由速查”总表,可快速定位)。

❓ 常见问题排查

  • pip install mootdx 与 MCP 工具冲突:这是由于 mootdx 声明了过时的 httpx<0.26 依赖。解决方案:安装后执行 pip install --no-deps "httpx>=0.27.1" 升级,不影响其 TCP 行情取数功能。
  • 东财接口返回 403 或连接重置:你的 IP 可能被临时风控。解决方法:(1) 停止请求,等待 30-60 分钟自动解除;(2) 切换网络(如手机热点);(3) 调大 EM_MIN_INTERVAL 降低请求频率;(4) 使用上述“备用数据源”应急。
  • 查不到北交所(920xxx)股票数据:北交所老号段(43x/83x/87x)已基本迁移至 920xxx务必使用新代码,否则行情可能返回迁移前的“僵尸报价”或研报为空。可通过东财 push2 接口获取最新北交所全量清单进行反查。
  • mootdx 在海外服务器超时:mootdx 走 TCP 直连通达信国内行情服务器,海外网络不稳定。建议使用代理,或切换到项目内基于 HTTP 的腾讯财经等备选数据源。
  • 研报或部分数据返回为空:检查输入的股票代码是否为纯 6 位数字格式(如 600519),避免带 SH.SS 前缀。如遇北交所老代码,请更换为 920xxx 新代码。

通过以上步骤,你已成功为 AI 助手装上了强大的 A 股数据工具。现在,你可以像对话一样查询行情、研报、资金面、打板等全维度数据,并用于投资研究或量化分析辅助。请合理使用数据,注意投资风险。