让 AI 帮你查一只 A 股,最容易翻车的不是模型算错,而是它压根拿不到数。
你要的「茅台现在多少倍市盈率」,藏在腾讯一段用波浪线隔开的旧式中文编码文本里;研报 PDF 要带对来源页的请求头才肯给;涨停池换了三个域名;北向资金要算一个本地签名。每接一个源就换一套暗号,最后还是自己在写爬虫。
a-stock-data 想把这堆暗号一次打包:一个 Markdown 文件,里面内嵌 91 段可以直接跑的 Python,15 层数据、87 个入口、34 个数据源,除语义搜索外全部免钥匙。我在隔离沙箱里 clone 下来,跑了它自带的 212 条测试,又逐个调了十几类真实接口。结论先给:能用的接口确实快,快到 1 秒出数;但它在海外网络下有 4 个端点直接不可用,而且这个 44 万字节的文件本身是它最大的成本。
它到底是什么
先把话说清楚:这不是一个可以 import 的库,也不是 pip 安装的包。
它是一个技能说明书(skill,指写给 AI 编程助手看的操作手册):根目录一个 SKILL.md,正文讲清楚每类数据该去哪个源、用哪个参数,每讲完一类就附一段完整可运行的 Python。说白了,它不是让你装的东西,是让 AI 照着抄的菜谱。AI 读到哪一段,就把那段代码抄进自己的脚本里执行。
这种形态的好处很实在:拷贝一个文件就能用,不联网装包,不依赖版本升级。坏处同样实在,后面实测部分会算给你看。
数据按十五层组织,你可以理解成十五个抽屉:
| 层 | 抽屉里有什么 | 主用来源 |
|---|---|---|
| 1 行情 | 实时价/市盈率/市值/换手率、日周月与分钟 K 线、当日逐笔、复权因子 | 腾讯、通达信官网、百度、新浪 |
| 2 研报 | 个股与行业研报、PDF 下载、三年盈利预测、研报列表 | 东财、新浪、同花顺 |
| 3 信号 | 强势股与题材归因、北向资金、龙虎榜、解禁、板块资金流 | 同花顺、东财 |
| 4 资金面 | 融资融券、大宗交易、股东户数、分红、筹码分布、场内指数基金份额 | 东财、上交所、深交所 |
| 5 新闻 | 个股新闻、财联社电报、7×24 快讯、新闻联播文字稿 | 财联社、东财、央视网 |
| 6 基础数据 | 财报三表、估值历史、上市退市日、行业变迁、ST 名单 | 新浪、baostock、申万 |
| 7–10 | 公告、涨停池、指数基金期权、互动问答与热榜 | 巨潮、东财、同花顺、上交所 |
| 11–12 | 社融、PMI、国债收益率曲线、LPR、指数成分与交易日历 | 人行、统计局、中债、深交所 |
| 13–15 | 期货与大宗、业绩预告与增减持、可转债 | 五家期交所、东财 |
作者在文档最前面写了一条设计原则,我觉得是这份文件里最值钱的部分:能用腾讯和交易所官方,就别用东财。
原因不复杂。东财(东方财富)的接口好用但共用一套风控,同一台机器请求太快会成片失联,恢复要等半小时以上;腾讯行情和交易所官网基本不限速。所以文件里给所有东财请求都套了一个统一入口,强制串行、每次至少间隔一秒再加随机抖动,附赠连接复用。我在沙箱里连着发了 12 次东财请求,21.4 秒全部成功,一次没被拦——这条限流是真生效的,不是文档里写写而已。
实测:13 类接口真实取数
测试环境是隔离沙箱(一次性的运行目录,跑完即删),独立虚拟环境装了它自带的依赖,2026 年 11 月 6 日晚间实测。
它自带的测试套件一共 212 条,我原样跑了一遍:
| 项目 | 结果 |
|---|---|
| 用例数 | 212 条 |
| 耗时 | 7.5 秒 |
| 结果 | 全部通过,4 条按设计跳过(联网用例需手动开环境变量) |
| 覆盖方式 | 直接抽取说明书里的代码执行,另有本地存好的真实响应做对照 |
这个细节值得说一句。它不是另写一套实现再测试,而是从说明书的代码块里按函数名抽出来跑。换句话说,文档里印的代码和被测的代码是同一份,不会出现「文档里的示例早就跑不通了」那种典型失修。91 个代码块我单独做了一次语法检查,全部通过。
然后是真实取数。13 类接口,逐个记录耗时和拿到的量:
| 接口用途 | 实测耗时 | 拿到什么 |
|---|---|---|
| 实时行情(4 只:茅台、平安银行、上证指数、胜宏科技) | 0.85 秒 | 价格、市盈率、换手率齐全 |
| 日 K 线(茅台 5 根) | 1.15 秒 | 开高低收量,带来源链接与取数时间 |
| 分钟 K 线(1 分钟 3 根) | 1.35 秒 | 含换手率 |
| 当日逐笔成交(茅台) | 20.3 秒 | 4,282 笔 |
| 个股研报(东财) | 1.1 秒 | 100 篇 |
| 研报列表(新浪,第二来源) | 1.9 秒 | 39 篇 |
| 东财数据中心(连发 12 次) | 21.4 秒 | 12 次全成功 |
| LPR 全历史 | 6.9 秒 | 1,539 行 |
| 可转债条款与溢价率 | 12.2 秒 | 318 只 |
| 全球宏观日历 | 4.5 秒 | 236 条 |
| 国债与信用债收益率曲线 | 2.4 秒 | 66 行 |
| 官方交易日历(2026 年 11 月) | 1.0 秒 | 30 个交易日 |
| 估值历史(baostock,一个免注册的行情数据库) | 5.0 秒 | 21 行,含市盈率、市净率、换手率、停牌与 ST 标记 |
| 财联社电报 | 0.87 秒 | 5 条 |
数字之外还有两件事被我特意验了。
一是两个源对不对得上。实时行情和日 K 线来自腾讯的两个不同接口,我用茅台、平安银行、胜宏科技、沪深 300 指数基金四只对照,收盘价逐位相同,4 比 4 一致。这意味着你可以放心用日 K 线补历史、用实时快照补当下,不会出现两套价格打架。
二是最近一次的修复是否真的落地。仓库最新版 v3.10.4 说修了基金复权(复权就是把分红和折算带来的价格跳空拉平,让历史曲线可比):场内基金原来只读了折算比例里的一个字段,导致复权等于没做。我拿沪深 300 的一只场内基金(代码 513100)验证,读到的份额折算比例是 5,折算前的价格 1.0 被正确换算成 0.2。修的是真的。
失败面:4 个端点在海外网络下不可用
这是我认为评测里最该讲的部分,因为它直接决定你能不能用。
同样在沙箱里、同样的网络,有 4 个入口直接失败:
| 接口用途 | 实测表现 |
|---|---|
| 全市场当日日线(通达信官网盘后包) | 10.2 秒后连接超时,服务器不可达 |
| 申万行业变迁史 | 60.3 秒后连接超时,服务器不可达 |
| 通达信财务快照与 F10 文字(走 7709 端口的二进制协议) | 列出的服务器全部连不上 |
| 上证 e 互动问答 | 请求跑完 20.7 秒,返回 0 条,不报错 |
前三个是同一个原因:这些站点的服务器在境内,海外出口过去连不上。文档里其实主动写了这一点,通达信那一段的报错文案就是「海外网络通常全部超时,请走国内代理」。所以这不算骗人,但它决定了这套东西的适用边界——你的机器如果在境外云上,第 1、6 层的若干入口先天残废。
第四个更值得警惕。它不超时、不报错,只是安静地返回空表。这类失败最容易被误读成「今天没人提问」。文件作者显然知道这个坑,因为他在别处专门加了一条纪律:认不出时间格式时要抛错,不能悄悄变成一列空值。但这条纪律没覆盖到网络层的空结果,我这次就撞上了。
还有两处不那么严重的翻车点,一并记下:
- 说明书里有些段落依赖前面的公共辅助函数。我统计了 69 个含函数定义的代码块,只有 13 个(19%)能独立运行,另外 56 个必须先执行文件里更早的公共部分,中位数缺 2 个函数、最多缺 10 个。给 AI 的说法是「按表定位只读对应层」,可实际抄代码时,你得连辅助段一起抄。
- 一部分能力锁在可选依赖里。我按文档只装了最基础的两个包,测试直接报了 14 个错误,全是因为缺一个读写表格文件的库。补装之后才全绿。
代价:11.8 万 token 的说明书
说完能力,必须算成本账,因为这份文件是每次都要塞进 AI 上下文的东西(上下文即模型一次能记住的内容上限)。
| 指标 | 实测值 |
|---|---|
| 文件体积 | 442,341 字节 |
| 行数 | 7,703 行 |
| 内嵌 Python 段 | 91 段、5,949 行代码,占全文 77% |
| 估算 token | 约 11.8 万 |
| 版本数 | 29 个(从 v1.0 到 v3.10.4) |
11.8 万 token 是什么概念?主流编码助手一次能装 20 万上下,这一份文件就吃掉一半以上,剩下的空间还得留给你的项目代码和对话。作者自己也知道,FAQ 里直说了这是有意的产品决策:为了「拷一个文件就能用」,不做目录拆分。
他给的两个降耗办法是实在的:一是把触发条件收窄,不需要取数的话题不会误加载;二是不装成自动触发的技能,需要时让 AI 按需读某一层。第二个办法我认,但要配合上面那条「辅助函数不独立」的发现一起用——按需读一层,往往还得再往前翻一段公共代码。
好在补救手段是现成的:顶层有一张按章节定位的总表,89 行,约 2,500 token。让 AI 先读这张表、再精确读某一层,才是这份文件最省的用法。单看某一层,大多数在 1,000 到 16,000 token 之间。
跟同类比,适合谁
A 股数据的免费方案,常见的有三类:一类是靠 pip 安装的封装库(典型是 akshare 与 tushare 这种聚合成一个包的),一类是券商的付费数据接口,一类是这类「给 AI 读的说明书」。
- 封装库:安装即用、函数齐全,但版本一升就断,而且 AI 得先学会这套库的 API。断源的时候你只能等作者更新。
- 券商接口:稳定、口径权威,但门槛在开户和权限,个人开发者基本拿不到。
- 这份说明书:底层请求地址和参数完全裸露,断了你能自己改;代价是文件大、入口多、得自己判断该读哪段。
适合谁:想让 AI 助手直接查 A 股数据的人;做研究脚本、需要多源交叉验证的人;机器在境内、能用上官网包与通达信协议的人。
不适合谁:只想导入一个包、写一句取数的;机器在境外云上、需要第 1 层全市场日线和第 6 层财务快照的;上下文预算紧张、又不想手动管加载范围的。
判断
给它一个明确的定位:这是一份工程质量明显高于同类的说明书,但「一份文件解决所有需求」的形态,把成本从安装阶段一次性挪到了每次对话里。
值得肯定的部分很硬:212 条测试 7.5 秒全绿,且测的就是文档里印的代码;13 类接口在 1 到 20 秒内真实出数;两套价格源逐位一致;基金复权这类细账修得动;东财限流实测有效。它 179 天里发了 29 个版本、2 天前还在推送,维护节奏是真的。
要留心的部分同样具体:4 个入口在海外网络下不可用,其中「上证 e 互动」会静默返回空表;81% 的代码块离开前置辅助函数跑不动;补装可选依赖之前,测试会当场报 14 个错。
我的用法建议是三条:装上但不设自动触发;每次先让它读顶层那张定位表;国内机器优先,境外机器把第 1、6 层里依赖境内官网和通达信协议的入口当成「没有」。
相关阅读:本站此前评测过 同花顺金融数据接口(仓库已 404,但 55 个工具仍在线),以及 riskbound 仓位规则工具——同样是「测试全绿但结论要看口径」的例子。
关注 AI商业快讯,每天一篇 AI 热点深度解读。
—
资料来源:项目主页 https://github.com/simonlin1212/a-stock-data(Apache-2.0,星数 11,557,2026-11-06 读取);版本历史与端点清单来自仓库的版本日志与技能文件;其余耗时、行数、通过数与失败面均为本机沙箱实测。