TauricResearch / TradingAgents
TauricResearch/TradingAgents
TradingAgents:多智能体LLM金融交易框架
项目概览
项目概述
TradingAgents 是一个基于多智能体 LLM 的金融交易框架,由 TauricResearch 开发,旨在模拟真实交易公司的运作方式。该框架部署了多个专业化的 LLM 智能体,包括基本面分析师、情绪分析师、技术分析师、交易员、风险管理团队等,通过协作评估市场状况并做出交易决策。这些智能体还会进行动态讨论,以确定最佳策略。该项目主要用于研究目的,不构成财务、投资或交易建议。
核心功能
- 多智能体协作:框架将复杂的交易任务分解为多个专业角色,包括分析师团队(基本面、情绪、新闻、技术)、研究员团队(看涨和看跌)、交易员、风险管理团队和投资组合经理。
- 动态讨论:智能体之间通过结构化辩论(如看涨与看跌研究员的辩论)来平衡潜在收益与风险。
- 多提供商支持:支持多种 LLM 提供商,包括 OpenAI、Google、Anthropic、xAI、DeepSeek、Qwen、GLM、MiniMax、OpenRouter、Ollama 和 Azure OpenAI。
- 数据集成:集成 Yahoo Finance、Alpha Vantage、FRED、Polymarket 等数据源,支持股票、加密货币等多种市场。
- 持久化与恢复:提供决策日志和检查点恢复功能,支持中断后从上次成功步骤继续运行。
- 可配置性:通过配置文件或环境变量可调整 LLM 提供商、模型、辩论轮数、温度等参数。
- 多语言输出:支持多种语言的报告输出,内部辩论保持英文以保证推理质量。
- CLI 和 Python API:提供交互式命令行界面和 Python 包,方便集成到其他代码中。
适用与不适用场景
适用场景:
- 研究多智能体 LLM 在金融决策中的应用。
- 模拟交易策略的开发和回测。
- 教育和学术研究,探索 LLM 在金融领域的潜力。
- 需要多源数据(新闻、社交媒体、技术指标)综合分析的市场研究。
不适用场景:
- 作为实际投资或交易建议的工具(项目明确声明不构成财务建议)。
- 需要确定性结果的生产环境(LLM 输出具有随机性)。
- 对实时性要求极高的高频交易(框架设计为研究用途,非实时交易系统)。
- 缺乏稳定 API 密钥或数据源的环境(依赖外部 API)。
技术架构与依赖
- 语言:Python 3.10-3.13。
- 核心框架:LangGraph 用于智能体编排和状态管理。
- LLM 提供商:OpenAI、Google、Anthropic、xAI、DeepSeek、Qwen、GLM、MiniMax、OpenRouter、Ollama、Azure OpenAI、Amazon Bedrock 等。
- 数据源:Yahoo Finance(yfinance)、Alpha Vantage、FRED、Polymarket、StockTwits、Reddit 等。
- 其他依赖:Pydantic(结构化输出)、SQLite(检查点存储)、Docker(容器化部署)等。
- 许可证:Apache-2.0。
安装与快速开始
安装
克隆仓库并创建虚拟环境:
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
conda create -n tradingagents python=3.12
conda activate tradingagents
pip install .
Docker 方式
cp .env.example .env # 添加你的 API 密钥
docker compose run --rm tradingagents
配置 API 密钥
根据所选提供商设置环境变量,例如:
export OPENAI_API_KEY=...
export GOOGLE_API_KEY=...
export ANTHROPIC_API_KEY=...
# 更多提供商密钥见 README
启动 CLI
tradingagents
# 或
python -m cli.main
典型使用方法
Python 包使用
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
ta = TradingAgentsGraph(debug=True, config=DEFAULT_CONFIG.copy())
_, decision = ta.propagate("NVDA", "2026-01-15")
print(decision)
自定义配置
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "openai"
config["deep_think_llm"] = "gpt-5.5"
config["quick_think_llm"] = "gpt-5.4-mini"
config["max_debate_rounds"] = 2
ta = TradingAgentsGraph(debug=True, config=config)
_, decision = ta.propagate("NVDA", "2026-01-15")
检查点恢复
tradingagents analyze --checkpoint # 启用检查点
tradingagents analyze --clear-checkpoints # 重置检查点
配置与部署要点
- 环境变量:所有配置可通过
TRADINGAGENTS_*环境变量覆盖,例如TRADINGAGENTS_LLM_BACKEND_URL、TRADINGAGENTS_TEMPERATURE等。 - 模型目录:默认模型目录包含当前主流模型,可通过“自定义模型 ID”选项使用任何模型。
- 数据供应商:可配置数据供应商列表,支持 Yahoo Finance、Alpha Vantage、FRED、Polymarket 等,供应商失败时优雅降级。
- 持久化路径:决策日志和检查点默认存储在
~/.tradingagents/,可通过环境变量覆盖。 - Docker 部署:支持 Docker Compose,可配置 Ollama 本地模型。
- 企业部署:支持 Azure OpenAI 和 AWS Bedrock,需额外配置。
限制、风险与许可证
- 研究用途:框架仅用于研究,不构成财务建议,交易表现受多种因素影响。
- 非确定性:LLM 输出具有随机性,同一 ticker 和日期的两次运行可能不同。
- 数据依赖:依赖外部 API,数据质量和可用性可能影响结果。
- 安全:已修复 ticker 路径遍历漏洞,但用户仍需注意输入验证。
- 许可证:Apache-2.0,允许自由使用和修改,但需保留版权声明。
官方链接
- GitHub 仓库:https://github.com/TauricResearch/TradingAgents
- arXiv 论文:https://arxiv.org/abs/2412.20138
- Discord 社区:https://discord.com/invite/hk9PGKShPK
- X (Twitter):https://x.com/TauricResearch
- 免责声明:https://tauric.ai/disclaimer/
信息来源和分析时间
- 信息来源:GitHub 仓库 README、CHANGELOG.md、最新发布信息(v0.3.1)。
- 分析时间:2026-07-05(基于最新发布版本)。