WARNING
TradingAgents 框架仅用于研究目的。交易表现受多种因素影响,包括所选语言模型、模型温度、交易周期、数据质量等。本框架不构成金融、投资或交易建议。
你有没有想过,如果有一个AI团队帮你做投资决策会是什么感觉?
今天我们要聊的 TradingAgents,就是一个能让你搭建「AI量化交易团队」的开源框架。它模拟了真实金融机构的工作流程:研究员调研、分析员写报告、风控团队评估风险、最后交易员下单。
听起来很酷?我们直接开始。
目标读者
这篇文章面向 1-5 年开发经验的技术同学,你需要:
- 具备 Python 基础,能看懂代码
- 对 AI Agent 和多智能体系统有好奇心
- 想尝试用 AI 辅助投资决策(但别把它当作真金白银的建议)
核心依赖与环境
先看看跑起来需要什么:
- Python: 3.10 及以上
- 环境管理: 推荐 Anaconda 或 venv
- LLM Provider: OpenAI (GPT)、Google (Gemini)、Anthropic (Claude)、xAI (Grok)、OpenRouter、Ollama(本地模型)
- 数据源: Alpha Vantage(股票数据、新闻、指标)
- 核心框架: LangGraph(多智能体编排)
TIP
如果你只是想先看看效果,CLI 模式不需要写代码,上手门槛很低。
项目结构
TradingAgents/
├── cli/ # 命令行交互界面
│ └── main.py # 启动入口
├── tradingagents/
│ ├── agents/
│ │ ├── analysts/ # 分析员团队
│ │ │ ├── fundamentals_analyst.py # 基本面分析
│ │ │ ├── market_analyst.py # 市场分析
│ │ │ ├── news_analyst.py # 新闻分析
│ │ │ └── social_media_analyst.py # 社交媒体情绪
│ │ ├── researchers/ # 研究员团队
│ │ │ ├── bull_researcher.py # 多头研究员
│ │ │ └── bear_researcher.py # 空头研究员
│ │ ├── trader/ # 交易员
│ │ │ └── trader.py
│ │ ├── risk_mgmt/ # 风控团队
│ │ │ ├── aggressive_debator.py
│ │ │ ├── conservative_debator.py
│ │ │ └── neutral_debator.py
│ │ └── managers/
│ │ ├── research_manager.py
│ │ └── risk_manager.py
│ ├── dataflows/ # 数据流
│ │ ├── alpha_vantage_*.py # Alpha Vantage 数据
│ │ └── y_finance.py # Yahoo Finance 数据
│ ├── graph/ # LangGraph 图结构
│ │ └── trading_graph.py
│ └── llm_clients/ # LLM 客户端
│ ├── anthropic_client.py
│ ├── google_client.py
│ └── factory.py
├── main.py # Python 调用入口
└── test.py # 测试用例
这个结构很清晰:agents 目录存放各类 AI 角色,dataflows 负责数据获取,graph 把这些角色串联成工作流。
手把手部署步骤
1. 克隆项目与创建环境
# 克隆代码
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
# 创建 Python 环境(推荐用 conda)
conda create -n tradingagents python=3.13
conda activate tradingagents
# 安装依赖
pip install -r requirements.txt
TIP
Python 3.13 是官方推荐版本,但 3.10+ 应该也能跑。如果遇到兼容性问题,可以试试 3.11。
2. 配置 API Key
TradingAgents 支持多种 LLM Provider,你需要至少配置一种:
# 方式一:环境变量
export OPENAI_API_KEY=sk-your-openai-key
export ANTHROPIC_API_KEY=sk-ant-your-anthropic-key
export GOOGLE_API_KEY=your-google-key
export ALPHA_VANTAGE_API_KEY=your-alpha-vantage-key
# 方式二:复制配置文件
cp .env.example .env
# 然后编辑 .env 文件填入你的 keys
TIP
Alpha Vantage 是获取股票数据的必需 API 免费版有调用限制,但足够测试用。
3. CLI 快速体验
不想写代码?直接跑 CLI:
python -m cli.main
你会看到一个交互式界面,可以选择:
- 股票代码(如 NVDA、AAPL)
- 分析日期
- 使用的 LLM(支持 GPT、Gemini、Claude 等)
- 研究深度
- 辩论轮数
选择完成后,框架会启动一系列 AI Agent 协作工作,你在终端里能看到它们实时输出的分析报告。

随着分析的进行,你会看到不同 Agent 的输出逐步呈现:

最终,交易员会给出交易建议:

4. Python 代码调用
想集成到自己的项目?很简单的几行代码:
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
# 初始化(debug=True 可以看详细日志)
ta = TradingAgentsGraph(debug=True, config=DEFAULT_CONFIG.copy())
# 输入股票代码和日期,返回决策
# 第一个返回值是中间过程,第二个是最终决策
_, decision = ta.propagate("NVDA", "2026-01-15")
print(decision)
运行这个脚本,你会看到类似这样的输出:
{
"ticker": "NVDA",
"date": "2026-01-15",
"decision": "BUY",
"confidence": 0.75,
"reasoning": "多头研究员认为...",
"risk_assessment": "中等风险"
}
5. 切换不同 LLM Provider
TradingAgents 的亮点之一是支持多种 LLM。你可以随时切换:
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
# 复制默认配置并修改
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "anthropic" # 可选: openai, google, anthropic, xai, openrouter, ollama
config["deep_think_llm"] = "claude-sonnet-4.5" # 复杂推理用强模型
config["quick_think_llm"] = "claude-haiku-4.5" # 简单任务用轻量模型
config["max_debate_rounds"] = 2 # 多空辩论轮数
ta = TradingAgentsGraph(debug=True, config=config)
_, decision = ta.propagate("AAPL", "2026-01-20")
print(decision)
6. 自定义配置项
DEFAULT_CONFIG 里还有很多可调参数:
config = DEFAULT_CONFIG.copy()
# 核心参数
config["llm_provider"] = "openai"
config["deep_think_llm"] = "gpt-5.2" # 深度思考模型
config["quick_think_llm"] = "gpt-5-mini" # 快速响应模型
# 辩论设置
config["max_debate_rounds"] = 3 # 多空辩论轮数
config["enable_researchers"] = True # 启用研究员团队
config["enable_risk_management"] = True # 启用风控团队
# 数据设置
config["data_provider"] = "alpha_vantage" # 数据提供商
config["news_provider"] = "yfinance" # 新闻来源
Defapi 集成:低成本方案
说了半天 AI Agent,这里插播一个实用 tips:
如果你想用 Claude 或 GPT 运行 TradingAgents,但被官方 API 价格劝退,可以试试 Defapi——它支持 v1/chat/completions 协议,价格只有官方的半价。
配置方式和官方 API 完全兼容,只需把 base_url 改成 Defapi 的地址即可。对于 TradingAgents 这种多 Agent 系统,每个 Agent 都会调用 LLM,用 Defapi 能省不少成本。
具体配置方法是在 LLM 客户端里把 base_url 从官方地址改成 https://api.defapi.org,API Key 用 Defapi 分配的就行。目前 Defapi 支持 Claude、GPT、Gemini 等主流模型,基本覆盖了 TradingAgents 的需求。
常见问题排查
1. API Key 没生效?
检查一下环境变量是否正确设置。Linux/Mac 用 echo $OPENAI_API_KEY,Windows 用 echo %OPENAI_API_KEY。如果用 .env 文件,确保已经 cp .env.example .env 并填入真实 key。
2. 模型不支持?
不同 provider 支持的模型名称不一样。比如 OpenAI 是 gpt-5.2,Anthropic 是 claude-sonnet-4.5。如果你不确定模型名有没有写错,可以先跑官方文档里列出的那些。
3. Alpha Vantage 调用失败?
免费版 API 有分钟级调用限制(通常是 5 次/分钟)。如果短时间内频繁请求,会返回 429 错误。解决方法:升级付费版,或者在代码里加延时。
4. 网络超时?
TradingAgents 会调用多个 LLM 和数据 API,网络不好很容易超时。可以尝试:
- 换用国内可访问的模型
- 增加超时配置
- 使用本地模型(Ollama)
5. 输出结果为空的决策?
有时所有 Agent 都建议「不交易」,这是正常的。框架的决策是综合多头、空头、风控三方意见的,如果共识偏保守,就会输出 HOLD。可以通过调整 max_debate_rounds 来增加辩论轮数,让决策更激进(或保守)。
6. 如何解读决策结果?
输出通常是 JSON 格式,包含:
decision: BUY / SELL / HOLDconfidence: 置信度 0-1reasoning: 各 Agent 的分析摘要risk_assessment: 风险等级
记住:这只是 AI 的分析和建议,不要直接当作交易指令。
扩展阅读与进阶方向
1. Trading-R1
这是同一个团队的后续项目,专注于用强化学习优化交易策略。论文已在 arXiv 发表,代码也快开源了,值得关注。
2. 多 Agent 系统优化
TradingAgents 的架构本质上是多 Agent 协作。你可以尝试:
- 增加新的 Agent 角色(如宏观经济分析师)
- 调整 Agent 之间的辩论逻辑
- 接入真实交易接口(模拟交易阶段)
3. 本地模型方案
如果不想依赖外部 API,可以部署 Ollama 本地模型。虽然效果可能不如 GPT/Claude,但成本为零,适合学习和测试。