← 返回全部文章

TradingAgents-Astock:专为A股改了什么?

这套开源多 Agent 投研框架接入了 A 股数据,并新增政策、游资和解禁三类角色。文章只讨论工具和研究方法,不构成任何投资建议。

美股投研框架直接搬到 A 股,经常卡在数据和规则上:股票代码格式不同,政策和龙虎榜缺席,T+1 、涨跌停、限售解禁也没有进入分析过程。

TradingAgents-Astock 针对这些问题改了数据层、分析角色和决策提示。代码里能找到完整实现,界面汉化只是其中一小部分。不过,它仍是一套 AI 研究辅助工具,数据和结论都需要人工复核。

风险提示:仅供学习研究与技术演示,不构成任何投资建议。 AI 报告可能包含错误、遗漏或幻觉,请以交易所公告、上市公司披露和持牌机构信息为准

第一处改动:A 股数据直接接进来

项目新增了一套 a_stock 数据层,当前会从多个公开接口读取数据:

  • mootdx:日 K 、财务快照和 F10;
  • 腾讯财经:价格、 PE 、 PB 、市值和换手率;
  • 东方财富:龙虎榜、解禁、资金流、板块和个股新闻;
  • 新浪财经:K 线补充和财报三表;
  • 同花顺:EPS 一致预期、强势股题材和北向资金快照;
  • 财联社与百度股市通:财经快讯和概念归属。

这些数据端点当前不要求申请 Tushare 一类的数据 API Key,也不用单独部署行情数据库。这里的“免 Key”只针对数据层。使用 DeepSeek 、 MiniMax 、通义、 Claude 、 OpenAI 等云端模型时,仍要配置对应 API Key,每次完整分析还会产生多轮模型调用成本。

公开网页接口也没有商业数据服务的稳定性承诺。网站改版、反爬、地区网络、字段变化都可能让某个工具暂时失效。项目已经给东方财富请求加了串行节流和随机抖动,批量跑多只股票时仍要控制频率。

第二处改动:4 个分析师扩成 7 个

上游 TradingAgents 有市场、情绪、新闻和基本面四类 Analyst 。这个 fork 保留四类角色,并把提示词和工具换成 A 股语境,又新增了三类角色:

  • 政策分析师:从公司新闻和宏观快讯中整理监管、产业与宏观政策影响;
  • 游资追踪师:读取龙虎榜营业部席位、个股资金流、强势股题材和板块数据;
  • 解禁监控师:读取限售解禁日历,结合 F10 、基本面和新闻评估潜在供给压力。

三份新增报告会继续进入多头、空头研究,随后交给 Trader 和激进、保守、中性三方风险辩论。政策、游资和解禁并非单独摆在界面里,它们确实接入了后续决策图。

政策角色目前依赖通用新闻源,没有一套专门的政策数据库。游资角色可以看到营业部名称和买卖额,但项目没有维护“知名游资身份库”,无法据此精准断言某位游资正在建仓。解禁数据有专门接口,减持与股权质押更多依赖新闻和 F10 推理。

第三处改动:把 A 股规则写进决策过程

市场分析、交易方案和风险辩论的提示词里加入了 T+1 、涨跌停、 ST 风险、交易时段等约束,行情源也会返回当日涨停价和跌停价。模型生成方案时会被要求考虑这些因素。

当前实现没有交易所规则引擎,也不连接券商下单。系统不会检查持仓买入日期、可卖数量、停牌状态或订单能否成交。部分提示词对板块和最小申报数量的概括也不完整,北交所、新股特殊期等规则没有全面覆盖。

因此,这部分适合用来提醒模型关注 A 股交易约束,不能替代券商风控和交易所规则校验。

用 Web 版跑一次完整的 7 Agent 分析

项目要求 Python 3.10 以上。建议单独创建虚拟环境:

git clone https://github.com/simonlin1212/tradingagents-astock.git
cd tradingagents-astock

python3 -m venv .venv
source .venv/bin/activate
pip install -e .

cp .env.example .env

打开 .env,只填写准备使用的模型密钥,例如:

DEEPSEEK_API_KEY=你的密钥

随后启动 Web 界面:

tradingagents-web

浏览器访问:

http://localhost:8501

在侧边栏选择模型,输入 6 位股票代码和分析日期,再启动任务。 Web 默认会运行 7 位分析师,过程中可以展开各阶段报告,并导出 Markdown 或 PDF 。

当前 v0.2.18 的交互式 CLI 只提供市场、情绪、新闻和基本面四个选项。想体验政策、游资、解禁三类 A 股角色,优先使用 Web,或在 Python 代码里采用默认 7 角色配置。

报告应该怎么读

一份输出里会出现行情、基本面、新闻、政策、游资和解禁等多条线索,后面还有多空辩论及风险意见。阅读时可以按三个步骤处理:

  1. 先检查每份报告有没有成功调用数据工具,空白报告和抓取失败不能进入结论;
  2. 再核对关键数字,尤其是价格、财报、龙虎榜、解禁日期和资金流;
  3. 最后把多头与空头依据分开,确认结论是否只是在重复同一条新闻。

多 Agent 增加了视角数量,但多个角色可能使用同一个模型和同一批数据。角色越多不代表证据越独立,辩论过程也不能自动消除幻觉。

它不适合当回测或实盘系统

界面允许选择历史日期,但当前部分工具仍会读取最新估值、最新一致预期、当前资金流、当前概念板块或最新快讯。日期参数主要用于生成某个交易日视角的研究报告,还不具备严格的 point-in-time 数据隔离。

项目也没有完整的撮合、手续费、滑点、停牌、复权、组合净值和订单回报流程,更没有券商下单接口。 Trader 输出的是文字方案与信号,不会执行交易。

本地还会保存报告、工具日志、历史决策和可选 SQLite 检查点。使用云端模型时,股票代码、分析日期和上下文会发送给模型供应商;把 Web 服务放到公网前,需要另外配置 TLS 、身份认证和访问控制。

适合拿来做什么

它比较适合两类用途:

  • 学习 LangGraph 、多 Agent 辩论、工具调用和结构化输出;
  • 为 A 股研究建立一份可复核的提纲,把行情、政策、龙虎榜和解禁线索放进同一份报告。

需要交易所授权实时行情、严格历史回测、审计级数据或自动实盘的场景,仍应使用专业系统。

再次提醒:工具输出不构成任何投资建议。任何买卖决定都应回到公告、财报、交易所数据和个人风险承受能力上

项目地址:https://github.com/simonlin1212/TradingAgents-astock

相关分享:https://x.com/xamto_ai/status/2077116672121487614

如果只保留一个 A 股专属角色,你更看重政策、龙虎榜,还是限售解禁?

来源:https://github.com/simonlin1212/TradingAgents-astock