TradingAgents-Astock
面向 A 股规则与数据源的多智能体投研分析框架。
- Star 数
- ★ 3.5k
- 最近更新
- 3 天前
- License
- Apache-2.0
- 主语言
- Python
- FA 评分
- 52/100 · 缺口较多
30 秒速览
- 可在哪里用
- 通用 · 跨平台OpenAI API · Claude APIClaude Code · Claude.ai(部分支持)
- 开始前需要
- 典型场景
- 研究 A 股多智能体辩论行为的研究人员,需要把政策、游资和限售解禁因素纳入同一分析流程。
- 主要局限
- 每次分析默认需要约 30–50 次 LLM 调用;除可选 Claude 订阅模式外,通常依赖用户自己的 API Key 与计费账户。
这个 Agent 能做什么,适合哪些场景?
TradingAgents-Astock 是 TradingAgents 论文框架的 A 股工程实现与特化 fork,定位于研究和教学,不提供投资服务。它以 7 名分析师、Bull/Bear 研究辩论、交易方案和三方风险辩论组成 LangGraph 工作流,最终由 Portfolio Manager 给出评级与理由。框架通过 mootdx、腾讯财经、东方财富、新浪财经、同花顺、财联社和百度股市通等数据源获取行情、财务、新闻及 A 股特有信息。可作为 Python 库调用 TradingAgentsGraph,也提供交互式 CLI 和 Streamlit Web UI,并能导出 Markdown 或 PDF 报告。用户自行配置 LLM 凭据并在自己的机器上运行,仓库不托管分析服务或运行结果。
调用 TradingAgentsGraph.propagate("688017", "2026-05-12") 时,系统按 LangGraph 拓扑运行市场、舆情、新闻、基本面、政策、游资和解禁 7 个 Analyst。它们通过 get_stock_data、get_indicators、get_news、get_global_news、get_fundamentals、get_balance_sheet、get_cashflow、get_income_statement 与 get_insider_transactions 等数据工具生成报告;随后报告进入 Bull Researcher 与 Bear Researcher 的辩论、Research Manager 综合研判、Trader 交易方案,以及 Aggressive、Conservative、Neutral 三方风险讨论。Portfolio Manager 最终产出方向、评级和理由;框架明确不输出建仓价、止损位、仓位或目标价。Web UI 提供 12 阶段进度、报告查看、历史记录及 Markdown/PDF 下载,CLI 和 examples/run_cases.py 可将完整报告与 summary.json 写入磁盘。
- 研究 A 股多智能体辩论行为的研究人员,需要把政策、游资和限售解禁因素纳入同一分析流程。
- 熟悉 Python 的个人研究者,希望对单个 6 位 A 股代码运行可复现的多阶段研究流程。
- 需要查看技术、财务、新闻和风险讨论分项报告的投研教学人员。
- 希望在本机用 Streamlit 页面输入代码、日期和回溯区间后查看完整分析过程的非编程用户。
- 需要用 examples/run_cases.py 批量运行标的,并保存 complete_report.md 与 summary.json 的使用者。
如何安装或部署这个 Agent?
需要 Python >= 3.10、网络访问和至少一个已配置的 LLM 提供商凭据。
git clone https://github.com/simonlin1212/tradingagents-astock.git
cd tradingagents-astockpip install -e .
在项目根目录创建 .env,例如:
MINIMAX_API_KEY=sk-xxx也可配置 DEEPSEEK_API_KEY、DASHSCOPE_API_KEY、ZHIPU_API_KEY、OPENAI_API_KEY、ANTHROPIC_API_KEY 或其他文档列出的提供商变量。可选的 Claude Agent SDK 模式使用:
pip install -e ".[agentsdk]"如何使用这个 Agent?
Python 首次调用示例:
from tradingagents.graph.trading_graph import TradingAgentsGraphconfig = {"llm_provider": "minimax",
"deep_think_llm": "MiniMax-M2.7",
"quick_think_llm": "MiniMax-M2.7-highspeed",
"output_language": "Chinese",
}
ta = TradingAgentsGraph(debug=True, config=config)
final_state, decision = ta.propagate("688017", "2026-05-12")
print(decision)交互式 CLI 使用 tradingagents;Web UI 使用 tradingagents-web,或运行 streamlit run web/app.py,然后访问 http://localhost:8501。
这个 Agent 有哪些优点和局限?
- 将 T+1、涨跌停、最小手数和 ST 等 A 股交易约束纳入 Trader 相关流程。
- 新增政策、游资追踪和解禁监控三类 Analyst,覆盖龙虎榜、资金流、减持与限售解禁等 A 股特有研究因素。
- 支持 quick_think_llm 与 deep_think_llm 分工,并列出 MiniMax、DeepSeek、Qwen、GLM、OpenAI、Anthropic、Google、xAI、OpenRouter、Ollama 及 OpenAI 兼容网关路径。
- 同时提供 Python API、CLI、Streamlit UI、历史记录和 Markdown/PDF 报告导出。
- 每次分析默认需要约 30–50 次 LLM 调用;除可选 Claude 订阅模式外,通常依赖用户自己的 API Key 与计费账户。
- 数据采集依赖多个公开网络数据源;东方财富请求需要内置节流,批量场景建议设置 EM_MIN_INTERVAL=1.5~2。
- 部分 Analyst 报告可能因所选模型的工具调用能力不稳定而为空,文档建议更换模型或重试。
- Google Gemini 依赖与 mootdx 的 httpx 版本存在结构性安装冲突,需显式安装相关包或使用独立虚拟环境。
- 仓库明确不产出可执行价位、止损、仓位或目标价,因此不适合作为完整交易执行系统。
这个 Agent 与同类方案有什么区别?
相对上游 TradingAgents,本项目将默认数据路径从 Yahoo Finance / Alpha Vantage 改为 A 股数据源,并将 4 个 Analyst 扩展为 7 个;基准从 SPY 改为沪深 300,同时覆盖 A 股交易约束。与 Tushare、Alpha Vantage 和 Yahoo Finance 相比,文档将其描述为不依赖这些服务的直接数据获取方案。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|
| TradingAgents-Astock 当前 | 52 · 缺口较多 | ★ 3.5k | 3 天前 | Python | OpenAI API · Claude API |
| TradingAgents 多智能体交易研究框架 | 76 · 表现良好 | ★ 108k | 6 天前 | Python | OpenAI API · Claude API |
| OpenLens 科研智能体 | 33 · 缺口较多 | ★ 282 | 14 天前 | Python | OpenAI API |
| DATAGEN 多智能体研究助手 | 44 · 缺口较多 | ★ 1.8k | 7 天前 | Python | OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:项目使用用户提供的API密钥,无硬编码凭据;数据流在README中有描述,但未提供详细的数据流图或日志;敏感数据处理方面,API密钥通过环境变量管理,但未提及加密存储;依赖安全性方面,pyproject.toml列出了依赖,但未提供漏洞扫描或锁定文件;外部影响方面,项目会调用外部数据源和LLM API,但未说明数据使用政策;回滚方面,未提及任何回滚机制;来源归属方面,README和NOTICE明确标注了上游项目。扣分原因:缺少用户确认机制、详细的数据流透明度和回滚机制。
证据显示:README和代码结构一致,配置选项和角色定义清晰;依赖在pyproject.toml中列出,但未提供锁定文件,且存在已知的httpx冲突;失败消息方面,README提供了详细的排错指南,代码中也有错误处理。扣分原因:依赖可用性因冲突和缺少锁定文件而降低。
证据显示:README明确了目标用户(研究/教学)和场景(A股投研);能力边界清晰,明确说明不提供投资建议和可执行价位;触发精度方面,提供了详细的配置选项和角色定义;环境适配方面,支持多种LLM供应商和部署方式。扣分原因:无重大扣分,但环境适配中Docker和本地安装的差异未完全说明。
证据显示:README结构清晰,包含快速开始、配置、FAQ等;安装说明详细,支持pip和Docker;命名稳定,版本号明确;示例和FAQ丰富;已知限制在README中多处提及;许可证为Apache-2.0,有LICENSE和NOTICE;版本变更记录在CHANGES_FROM_UPSTREAM.md中;维护责任方面,作者信息明确,但未说明维护承诺。扣分原因:维护责任未明确承诺。
证据显示:输出为中文报告,包含分析师报告、辩论和决策,格式清晰;边际价值方面,针对A股特化,提供了政策、游资、解禁等独特角色;成本效益方面,支持多种LLM供应商,有免费数据源,但每次分析需30-50次LLM调用。扣分原因:无重大扣分。
证据显示:README引用了上游论文和仓库,声明了改动;交叉验证方面,数据源多样,但未提供数据准确性验证;事实与推断分离方面,README明确区分了事实(数据源)和推断(分析报告)。扣分原因:交叉验证不足。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 项目依赖多个外部数据源和LLM API,但未提供数据使用政策或隐私声明,用户需自行评估数据合规性。
- 存在已知的httpx依赖冲突,安装Gemini时需手动处理,可能影响依赖可用性。
- 项目未提供回滚机制,升级或配置错误时可能难以恢复。
- 项目声明不提供投资建议,但输出可能被误解为投资建议,用户需谨慎使用。