{"repo":"simonlin1212/a-stock-data","free":true,"listed":false,"github":"https://github.com/simonlin1212/a-stock-data","clone":"git clone https://github.com/simonlin1212/a-stock-data.git","description":"A股全栈数据工具包 · 10层架构 · 43端点(含3官方备胎) · 15数据源 · 行情/研报/资金面/筹码/公告/打板/ETF期权/舆情互动全覆盖+备用源降级 | China A-Share full-stack data toolkit (43 endpoints)","language":null,"stars":8817,"topics":["a-share","ai-agent","ai-skill","china-stocks","claude-code","financial-data","fintech","investment-research","llm-tools","market-data","python","quantitative-finance","stock-market","trading"],"license":"Apache-2.0","category":"financial_data_toolkit","readme_excerpt":"<p align=\"center\"><b>简体中文</b> | <a href=\"README_en.md\">English</a></p>\n\n<h1 align=\"center\">a-stock-data</h1>\n\n<p align=\"center\">\n  <b>A 股全栈数据工具包 — 10 层架构 · 47 个端点 · 15 个数据源 · 零鉴权</b>\n</p>\n\n<p align=\"center\">\n  <a href=\"LICENSE\"><img src=\"https://img.shields.io/badge/License-Apache_2.0-blue.svg\" alt=\"License\"></a>\n  <img src=\"https://img.shields.io/badge/Python-3.9+-3776AB?logo=python&logoColor=white\" alt=\"Python\">\n  <a href=\"https://github.com/simonlin1212/a-stock-data/stargazers\"><img src=\"https://img.shields.io/github/stars/simonlin1212/a-stock-data?style=social\" alt=\"Stars\"></a>\n  <br>\n  <img src=\"https://img.shields.io/badge/layers-10-2ea44f.svg\" alt=\"Layers\">\n  <img src=\"https://img.shields.io/badge/endpoints-47-2ea44f.svg\" alt=\"Endpoints\">\n  <img src=\"https://img.shields.io/badge/sources-15-2ea44f.svg\" alt=\"Sources\">\n  <img src=\"https://img.shields.io/badge/auth-zero-success.svg\" alt=\"Zero Auth\">\n</p>\n\n<p align=\"center\">\n  <a href=\"#架构\">架构</a> ·\n  <a href=\"#快速开始\">快速开始</a> ·\n  <a href=\"#47-个端点能力清单\">端点清单</a> ·\n  <a href=\"#使用示例\">使用示例</a> ·\n  <a href=\"#faq\">FAQ</a> ·\n  <a href=\"./CHANGELOG.md\">更新日志</a>\n</p>\n\n一个自包含的 Skill 文件，把分散在 15 个数据源里的 A 股原始数据整合成 AI 编程助手直接能用的工具集。你不用再背 mootdx 的 K 线参数、东财的 PDF Referer 头、iwencai 的 X-Claw 鉴权——全部封装好了。主源被封还有「备用源速查」可降级。\n\n> 兼容 [Claude Code](https://github.com/anthropics/claude-code) · [Codex](https://github.com/openai/codex) · [OpenClaw](https://github.com/anthropics/openclaw)\n>\n> Skill 文件本质是结构化 Markdown + 内嵌 Python，任何支持上下文注入的 AI 编程助手都能用。\n\n---\n\n## 架构\n\n```\nA 股全栈数据 · 十层架构 · V3.6.1\n│  （优先级：mootdx/腾讯 不封IP 优先用；东财仅用于独有数据，已内置限流防封）\n├── 行情层    mootdx + 腾讯财经 + 百度K线   K线(带MA5/10/20) + 五档盘口 + PE/PB/市值 + 指数/ETF\n├── 研报层    东财 reportapi + 同花顺 + iwencai  个股研报 / 行业研报 / PDF下载 / 一致预期 / NL搜索\n├── 信号层    同花顺 + 东财                  强势股 + 题材归因 + 北向资金 + 板块归属\n│                                           + 资金流向(push2) + 龙虎榜 + 全市场龙虎榜 + 解禁 + 行业对比 + 板块资金流\n├── 资金面    东财 datacenter + push2        融资融券 + 大宗交易 + 股东户数 + 分红送转 + 资金流(分钟+120日)\n├── 新闻层    东财 + 财联社                  个股新闻 / 财联社电报(✅V3.4复活) / 全球资讯（互备）\n├── 基础数据  mootdx + 东财 + 新浪           季报37字段 / F10九大类 / 财报三表\n├── 公告层    巨潮 cninfo + mootdx           沪深北全量公告\n├── 打板层    东财 push2ex + 同花顺          涨停池 / 炸板 / 跌停 / 昨涨停 / 涨停原因题材 / 连板梯队\n│                                           + 重点监控池 + 日内异动池  ★V3.6\n├── 期权层    新浪 hq.sinajs                ETF期权 T型报价 / 希腊字母 / 隐含波动率 IV  ★V3.3\n└── 舆情互动  巨潮互动易 + 同花顺 + 东财     互动易问答 / 同花顺热榜 / 东财人气榜 / 概念命中  ★V3.3\n```\n\n> ★V3.4 十层之外另附**备用源速查 & 降级策略**：沪深交易所官方 + 新浪 + HKEX——龙虎榜/资金流/公告官方备胎函数 + 各层降级速查表，主源被封时用（见 SKILL.md 对应章节）。\n\n---\n\n## 快速开始\n\n**3 步，2 分钟。**\n\n```bash\n# 1. 创建 skill 目录\nmkdir -p ~/.claude/skills/a-stock-data\n\n# 2. 把 SKILL.md 放进去\ncurl -o ~/.claude/skills/a-stock-data/SKILL.md \\\n  https://raw.githubusercontent.com/simonlin1212/a-stock-data/main/SKILL.md\n\n# 3. 安装依赖（V3.0 不再需要 akshare）\npip install mootdx requests pandas stockstats\n```\n\n启动 Claude Code，说一句「帮我看看 688017 的估值」，自动激活。\n\n> **Codex / OpenClaw 用户：** 把 SKILL.md 的内容贴入你的系统 prompt 或项目上下文文件即可，内嵌的 Python 代码可直接执行。\n\n---\n\n## 47 个端点能力清单\n\n> **计数口径：** 下方清单共 48 行，按端点计 47 个——「东财 行业研报」与「东财 reportapi」为**同一端点**（仅 `qType` 参数不同）、「同花顺北向（历史）」为本地自缓存（非独立端点），两行不计入；「东财日内异动池」一行含 `list` / `count` **两个端点**，多计 1 个。48 − 1 − 1 + 1 = 47。\n\n### 行情层（实时，不封 IP）\n\n| 端点 | 数据 |\n|------|------|\n| mootdx 行情 | K线(多周期) + 五档盘口 + 逐笔成交 + 实时报价 46 字段 |\n| 腾讯财经 | PE(TTM) / PB / 总市值 / 流通市值 / 换手率 / 涨跌停价 / 指数 / ETF |\n| **百度K线** | 日K线 + MA5/MA10/MA20 均价直接返回（V3.0 新增） |\n\n### 研报层\n\n| 端点 | 数据 |\n|------|------|\n| 东财 reportapi | 个股研报列表 + 评级 + 三年 EPS 预测 |\n| 东财 行业研报 | 行业研报列表（qType=1，同端点）+ 行业名/行业码 + 评级（V3.2.3 新增） |\n| 东财 PDF 下载 | 完整研报 PDF（个股/行业通用，已处理 Referer 鉴权） |\n| 同花顺一致预期 | 机构一致预期 EPS（直连 basic.10jqka.com.cn） |\n| iwencai NL 搜索 | 自然语言跨主题研报检索 |\n\n### 信号层\n\n| 端点 | 数据 |\n|------|------|\n| 同花顺热点 | 当日强势股 + 题材归因 reason tags（编辑部人工标注） |\n| 同花顺北向（实时） | 沪股通分钟级流向（深股通近期上游披露收紧仅供参考，权威北向见 HKEX 备胎） |\n| 同花顺北向（历史） | 本地自缓存日级历史 |\n| 东财板块归属 | 个股所属全部板块（行业/概念/地域混合）+ BK码 + 当日涨跌幅 + 龙头股（V3.2.2 替换百度 PAE，一次请求拿全）|\n| **东财资金流向** | 主力 / 大单 / 中单 / 小单 / 超大单分钟级净流入（V3.1 替换百度 PAE） |\n| 龙虎榜席位 | 上榜记录 + 买卖席位 TOP5 + 机构动向 |\n| 全市场龙虎榜 | 每日全市场上榜股票 + 净买额排名 + 上榜原因 |\n| 限售解禁日历 | 历史解禁 + 未来 90 天待解禁预警 |\n| **行业板块排名** | 东财行业涨跌/上涨下跌家数（V3.0 替换同花顺，零鉴权） |\n| **板块资金流向** | 行业/概念/地域 × 今日/5日/10日 主力净流入额/净占比 + 超大/大/中/小单四档 + 领涨股（V3.5 新增，与行业排名同源）|\n\n### 资金面 / 筹码层（V3.0 新增）\n\n| 端点 | 数据 |\n|------|------|\n| **融资融券明细** | 日级融资余额/买入/偿还 + 融券余额/卖出/偿还 |\n| **大宗交易** | 成交价/量 + 买卖方营业部 + 溢价率 |\n| **股东户数变化** | 季度股东数 + 环比变化 + 户均持股（筹码集中度） |\n| **分红送转历史** | 每股派息/送股/转增 + 进度状态 |\n| **个股资金流120日** | 主力/大单/中单/小单日级净流入 |\n\n### 新闻层\n\n| 端点 | 数据 |\n|------|------|\n| 个股新闻 | 东财个股新闻流（直连 search-api-web） |\n| 财联社电报 | 全市场实时快讯（v1 API + 本地签名零 key，✅V3.4.0 复活，与全球资讯互备） |\n| 全球资讯 | 东财全球财经资讯（直连 np-weblist，7×24） |\n\n### 基础数据 + 公告\n\n| 端点 | 数据 |\n|------|------|\n| 季报快照 | 37 字段（EPS / ROE / 净利润 / 主营收入...） |\n| F10 公司资料 | 9 大类文本（截断优化，-70% token） |\n| 东财个股信息 | 行业/总股本/流通股/市值/上市日期（直连 push2） |\n| 新浪财报三表 | 资产负债表/利润表/现金流量表（直连 quotes.sina.cn） |\n| 巨潮公告 | 沪深北交所全量公告 |\n\n### 打板层（V3.3 新增）\n\n| 端点 | 数据 |\n|------|------|\n| 东财涨停池 | 连板数 / 几天几板 / 封板资金 / 炸板次数 / 首末封板时间 / 所属行业 |\n| 东财炸板池 | 曾涨停后开板 + 振幅 / 涨速 |\n| 东财跌停池 | 封单资金 / 连续跌停天数 / 开板次数 / 板上成交额 |\n| 东财昨日涨停池 | 昨涨停今表现（自算晋级率 / 赚钱效应） |\n| 同花顺涨停揭秘 | 涨停原因题材 / 封板成功率 / 一字·换手·T字板 / 封单额 |\n| 东财重点监控池 | 交易所风险警示 / 重点监控名单 + 生效时间窗（V3.6 新增）|\n| 东财日内异动池 | 严重异常波动明细 + 按标的聚合异动统计 + 12 条异动规则解释（V3.6 新增）|\n\n### ETF 期权层（V3.3 新增）\n\n| 端点 | 数据 |\n|------|------|\n| 期权合约清单 | 50ETF / 300ETF / 科创50ETF / 500ETF 各月份认购认沽合约 |\n| T型报价 | 买卖五档 / 持仓量 / 行权价 / 最新价 / 成交量额 |\n| 希腊字母 + IV | Delta / Gamma / Theta / Vega / 隐含波动率 / 理论价值（交易所预算，免本地算 BSM） |\n\n### 舆情互动层（V3.3 新增）\n\n| 端点 | 数据 |\n|------|------|\n| 互动易问答 | 投资者提问 + 公司官方回复（AI 问答独家信源：公司如何回应某传闻/利好） |\n| 同花顺热榜 | 人气值 / 概念标签 / 排名变化 |\n| 东财人气榜 | 排名 + 排名变化 + 名称价格 |\n| 东财个股概念命中 | 这只票当下被市场归到哪些概念在炒 + 热度值 |\n\n### 备用源（V3.4 新增 · 主源被封时降级）\n\n| 端点 | 数据 |\n|------|------|\n| 官方龙虎榜备胎 | 上交所 + 深交所官方接口，零鉴权权威一手，含营业部席位（东财被封时用） |\n| 资金流备胎 | 新浪日度四档单净额（超大/大/中/小单 + 净流入） |\n| 公告备胎 | 深市走深交所官方、沪市走东财，均带 PDF 直链（巨潮被封时用） |\n\n> 另附**十层主源 → 独立备胎速查表**（交易所官方 / 同花顺 F10 / HKEX / 巨潮 webapi / 金十等，全部不同风控面）与「已死透别用」名单，见 SKILL.md「备用源速查 & 降级策略」章节。\n\n### 鉴权要求\n\n除 iwencai 外，其余所有数据源**完全免费无 Key**。仅 iwencai 语义搜索需要 API Key（[申请地址](https://www.iwencai.com/skillhub)）。\n\n---\n\n## 使用示例\n\n跟你的 AI 助手说这些话就能激活：\n\n| 场景 | 说什么 |\n|------|--------|\n| 个股估值 | 「帮我估一下 688017，给我 PE / PEG / 消化时间」 |\n| 题材归因 | 「今天哪些股票走强，主要是什么题材」 |\n| 研报检索 | 「人形机器人产业链最近的研报，特别是丝杠和减速器」 |\n| 北向资金 | 「今天北向资金流入流出怎么样」 |\n| 概念板块 | 「688017 属于哪些概念板块」 |\n| 资金流向 | 「000858 今天主力资金流入还是流出」 |\n| 龙虎榜 | 「002475 最近上过龙虎榜吗，哪些营业部在买」 |\n| 全市场龙虎榜 | 「今天龙虎榜哪些票净买入最多」 |\n| 解禁预警 | 「这只股票未来 3 个月有没有限售解禁」 |\n| 行业轮动 | 「今天哪些行业涨幅最大」 |\n| **板块资金流** | 「今天主力资金在流入哪些行业/概念板块，近 5 日趋势呢」 |\n| 融资融券 | 「600519 最近的融资余额变化趋势」 |\n| 大宗交易 | 「这只票最近有没有大宗交易，溢价还是折价」 |\n| 股东户数 | 「000858 股东户数在增加还是减少，筹码集中吗」 |\n| 分红送转 | 「茅台历年分红派息多少」 |\n| **ETF 行情** | 「510050 上证50ETF 现在什么价、今天涨跌多少」 |\n| **涨停打板** | 「今天涨停多少家、最高几连板、炸板率多少」 |\n| **涨停归因** | 「今天涨停的票都是什么题材，哪些是几天几板」 |\n| **重点监控池** | 「现在哪些标的被交易所列入重点监控，监控到什么时候」 |\n| **日内异动** | 「今天有哪些严重异常波动的票，触发的是哪条异动规则」 |\n| **异动 × 监控交叉** | 「今天异动的票里，有没有已经在重点监控名单上的」 |\n| **ETF 期权** | 「50ETF 平值期权的隐含波动率和 Delta 是多少」 |\n| **互动易** | 「比亚迪最近投资者都在问什么，公司怎么回应的」 |\n| **市场热度** | 「今天哪些票最热门，被归到什么概念在炒」 |\n| 新闻公告 | 「拉一下 300476 最近的新闻和公告」 |\n| **市场快讯** | 「用财联社电报看看现在市场上有什么大新闻」 |\n| 批量对比 | 「帮我对比这 5 只半导体股的估值」 |\n\n### 内置 4 套调研流程\n\n| 流程 | 做什么 | 耗时 |\n|------|--------|------|\n| 单票估值 | 实时价 → 一致预期 EPS → 前向 PE / PEG / PE 消化年数 | 30 秒 |\n| 批量对比 | 多只股票横向估值排列 | 1 分钟 |\n| 主题研报 | iwencai 多关键词 NL 搜索 + 东财 PDF 交叉补充 | 2 分钟 |\n| 新标的调研 | 机构覆盖 → 估值 → 概念板块 → 资金流向 → 龙虎榜 → 解禁 → 两融 | 1 分钟 |\n\n---\n\n\n## 数据源优先级（V3.2 重排，按封 IP 风险）\n\n> **原则：行情/K线/实时价/市值/财务能从 mootdx 或腾讯拿到的，一律优先用它们（不封 IP）。东财只用于它独有、别处拿不到的数据，且全部走 `em_get()` 内置限流。**\n\n| 优先级 | 数据源 | 协议 | 封 IP 风险 | 用途 |\n|--------|--------|------|-----------|------|\n| **1（首选）** | mootdx（通达信） | TCP 7709 | **不封 IP** | K线/五档/逐笔/财务快照/F10 |\n| **2（首选）** | 腾讯财经 | HTTP | **不封 IP** | 实时价/PE/PB/市值/换手率/涨跌停/指数/ETF |\n| 3 | 同花顺热点/北向 | HTTP | 极低（零鉴权） | 强势股/题材归因/北向资金 |\n| 4 | 百度股市通 | HTTP | 极低 | K线（带 MA5/10/20）|\n| 5 | 新浪财经 | HTTP | 低 | 财报三表 |\n| 6 | 巨潮 cninfo | HTTP | 低 | 公告全文 |\n| 7 | 同花顺一致预期 | HTTP | 低（需 UA） | EPS 一致预期 |\n| 8 | iwencai | OpenAPI | 低（需 Key） | NL 语义搜索 |\n| **末位（仅独有数据）** | **东财** datacenter/push2/reportapi/search/np-weblist | HTTP | **中 — 有风控会封 IP** | 龙虎榜/解禁/两融/大宗/股东户数/分红/资金流/研报/个股新闻/全球资讯（已统一走 `em_get()` 限流） |\n\n> **架构原则：** 除 mootdx（TCP 二进制协议）外，全部直连 HTTP API，零第三方数据封装依赖。**东财系接口有访问频率风控，所有调用统一经 `em_get()` 串行限流防封；批量任务请调大 `EM_MIN_INTERVAL`。**\n>\n> **降级原则（V3.4 新增）：** 任一主源被封/失效时，查 SKILL.md「备用源速查 & 降级策略」——每类数据都备有一条**不同域名、不同风控面**的独立备胎（沪深交易所官方 / 新浪 / 同花顺 / HKEX），东财被封时它们不受牵连。\n\n---\n\n## FAQ\n\n**Q: 查北交所股票拿不到研报 / 行情价格明显不对？**\n北交所老号段（`43x`/`83x`/`87x`）已基本作废。2026-07-31 实测：在市 342 只中 **336 只已迁至 `920xxx`**（锦波生物 `832982`→`920982`、贝特瑞 `835185`→`920185`）。老码最坑的地方是**不报错**——东财研报静默返回 0 篇（看着像\"这票没研报\"），腾讯行情返回定格在迁移日的**僵尸报价**（成交量 0，与真实价差 17%~100%+）。V3.6.0 起：`tencent_quote()` 返回 `is_stale` / `stale_reason` 标志，`eastmoney_reports()` 遇老码直接抛 `ValueError` 而不是返回空。**拿新码**：用 push2 北交所全量清单 `fs=m:0+t:81+s:2048` 按名称反查。\n\n**Q: 传 `SH600519` / `600519.SH` 查不到数据？**\nV3.6.0 前研报层确实如此（reportapi 只认纯 6 位数字，带前缀静默返回 0 篇）。现已新增 `norm_ticker()` 并在研报层接入，四种写法结果一致；解析不出 6 位数字时**抛 ValueError 而非返回空**，避免把\"代码写错\"误读成\"这票没数据\"。\n\n**Q: SKILL.md 这么大，agent 每次加载很费 token？**\n单文件自包含是本项目的**有意产品决策**——拷一个文件就能用、离线可携、便于分发，这个形态会长期保持，不做目录化拆分（相关讨论见 #21 / #22 / #29）。两个降耗建议：① v3.3.1 起 description 已收窄触发范围，无需取数的 A 股话题不会再误加载整个文件；② token 敏感的用户可以不把它装成自动触发 skill，改为放进项目目录、需要取数时让 agent 按需读取——文件按十层组织、章节标题清晰，v3.4.0 起顶部还有「端点路由速查」总表（§→函数→用途→源），agent 按表定位后只读对应层，通常只花几 K token。\n\n**Q: 东财接口 403 / 连接重置，是被封了怎么办？**\n东财系接口（datacenter/push2/push2ex/reportapi/search/np-weblist）共用同一套风控，IP 被封会成片失联。三步：① 停止请求等 30-60 分钟（IP 级临时封通常自动解除），或换网络（手机热点）立刻恢复；② 长批任务确认全部走 `em_get()` 并调大 `EM_MIN_INTERVAL`；③ 数据不能等 → 用 SKILL.md「备用源速查 & 降级策略」的独立备胎（交易所官方/新浪/同花顺，不同风控面）。\n\n**Q: 财联社快讯不是 V3.2 标注下线了吗？**\n已复活（V3.4.0）。2026-05 死的是旧 `nodeapi` 系接口；官方新版 `v1/roll/get_roll_list` 一直可用，只是强制 `sign` 校验——sign 纯本地可算（`md5(sha1(按 key 字典序拼接的 query 串))`），零 key。与东财 7×24 全球资讯互为独立备份。\n\n**Q: mootdx 库听说停更了，还能用吗？**\n库确实烂尾（最后 commit 2024-07，BESTIP bug 无官方修复），但**通达信 TCP 协议本身照常运行**——烂尾的是封装库，不是数据源。内置的 `tdx_client()` 已绕开 BESTIP bug，继续用没问题；若未来装不上，社区活跃替代是 easy_tdx（同协议）。\n\n**Q: `pip install mootdx` 把 httpx 降到 0.25.2，和 MCP（要 httpx≥0.2","default_branch":"main","files":10,"tree":[".github/FUNDING.yml",".gitignore","CHANGELOG.md","LICENSE","README.md","README_en.md","SKILL.md","assets/.gitkeep","assets/bmc-qr.png","assets/bmc-sponsor.png"],"storefront":"/r/simonlin1212","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/simonlin1212/a-stock-data/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}