TradingAgents-Astock
面向 A 股规则与数据源的多智能体投研分析框架。
这个 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 有哪些优点和局限?
- 将 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?
需要 Python >= 3.10、网络访问和至少一个已配置的 LLM 提供商凭据。
git clone https://github.com/simonlin1212/tradingagents-astock.git
cd tradingagents-astock
pip 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 TradingAgentsGraph
config = {
"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 与同类方案有什么区别?
相对上游 TradingAgents,本项目将默认数据路径从 Yahoo Finance / Alpha Vantage 改为 A 股数据源,并将 4 个 Analyst 扩展为 7 个;基准从 SPY 改为沪深 300,同时覆盖 A 股交易约束。与 Tushare、Alpha Vantage 和 Yahoo Finance 相比,文档将其描述为不依赖这些服务的直接数据获取方案。