TauricResearch/TradingAgents

GitHub Trending (daily) 工具

摘要

TradingAgents 是一个用于金融交易的开源多智能体LLM框架,支持多种LLM提供商,最近更新包括新模型和功能。

TradingAgents: 多智能体LLM金融交易框架
查看原文
查看缓存全文

缓存时间: 2026/06/01 12:54

TauricResearch/TradingAgents 源码:https://github.com/TauricResearch/TradingAgents Deutsch | Español | français | 日本語 | 한국어 | Português | Русский | 中文


TradingAgents:多智能体LLM金融交易框架

新闻

  • [2026-05] TradingAgents v0.2.5 发布,新增基于事实的情绪分析师、GPT-5.5 等模型覆盖、Qwen/GLM/MiniMax 双区域支持、TRADINGAGENTS_* 环境变量可配置性及 API 密钥自动检测、远程 Ollama 支持、非美国 alpha 基准测试、以及股票代码路径遍历加固。完整列表请见 CHANGELOG.md
  • [2026-04] TradingAgents v0.2.4 发布,新增结构化输出智能体(研究经理、交易员、投资组合经理)、LangGraph 检查点恢复、持久化决策日志、DeepSeek/Qwen/GLM/Azure 提供商支持、Docker 以及 Windows UTF-8 编码修复。
  • [2026-03] TradingAgents v0.2.3 发布,新增多语言支持、GPT-5.4 系列模型、统一模型目录、回测日期准确性以及代理支持。
  • [2026-03] TradingAgents v0.2.2 发布,新增 GPT-5.4/Gemini 3.1/Claude 4.6 模型覆盖、五级评分体系、OpenAI Responses API、Anthropic 努力控制以及跨平台稳定性。
  • [2026-02] TradingAgents v0.2.0 发布,新增多提供商 LLM 支持(GPT-5.x、Gemini 3.x、Claude 4.x、Grok 4.x)并改进了系统架构。
  • [2026-01] Trading-R1 技术报告 (https://arxiv.org/abs/2509.11420) 发布,终端 (https://github.com/TauricResearch/Trading-R1) 预计很快上线。

🎉 TradingAgents 正式发布!我们收到了大量关于该工作的咨询,在此感谢社区的积极参与。

因此我们决定完全开源该框架。期待与您一起构建有影响力的项目!🚀

TradingAgents | ⚡ 安装与 CLI | 🎬 演示 (https://www.youtube.com/watch?v=90gr5lwjIho) | 📦 包使用 | 🤝 贡献指南 | 📄 引用

TradingAgents 框架

TradingAgents 是一个多智能体交易框架,模拟了现实世界交易公司的动态。通过部署专门的大语言模型智能体:从基本面分析师、情绪专家和技术分析师,到交易员、风险管理团队,平台协作评估市场状况并形成交易决策。此外,这些智能体还参与动态讨论以确定最优策略。

TradingAgents 框架仅供研究用途。交易表现可能因多种因素而异,包括所选的大语言模型、模型温度、交易周期、数据质量以及其他非确定性因素。本框架不构成财务、投资或交易建议。 (https://tauric.ai/disclaimer/)

我们的框架将复杂的交易任务分解为专门的角色。

分析师团队

  • 基本面分析师:评估公司财务状况和绩效指标,识别内在价值和潜在危险信号。
  • 情绪分析师:聚合新闻标题、StockTwits 和 Reddit 讨论,形成单一情绪读数,以衡量短期市场情绪。
  • 新闻分析师:监控全球新闻和宏观经济指标,解读事件对市场状况的影响。
  • 技术分析师:利用技术指标(如 MACD 和 RSI)检测交易模式并预测价格走势。

研究员团队

  • 包括看涨和看空研究员,他们对分析师团队提供的见解进行批判性评估。通过结构化辩论,平衡潜在收益与固有风险。

交易员智能体

  • 整合分析师和研究员报告,做出明智的交易决策,确定交易的时机和规模。

风险管理和投资组合经理

  • 通过评估市场波动性、流动性及其他风险因素,持续评估投资组合风险。风险管理团队评估并调整交易策略,向投资组合经理提供评估报告以做出最终决策。
  • 投资组合经理批准/拒绝交易提案。若获批,订单将发送至模拟交易所并执行。

安装与 CLI

安装

克隆 TradingAgents:

git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents

在你喜欢的任何环境管理器中创建虚拟环境:

conda create -n tradingagents python=3.13
conda activate tradingagents

安装包及其依赖:

pip install .

Docker

或者,使用 Docker 运行:

cp .env.example .env   # 添加你的 API 密钥
docker compose run --rm tradingagents

配合 Ollama 使用本地模型:

docker compose --profile ollama run --rm tradingagents-ollama

所需 API

TradingAgents 支持多种 LLM 提供商。为所选提供商设置 API 密钥:

export OPENAI_API_KEY=...               # OpenAI (GPT)
export GOOGLE_API_KEY=...               # Google (Gemini)
export ANTHROPIC_API_KEY=...            # Anthropic (Claude)
export XAI_API_KEY=...                  # xAI (Grok)
export DEEPSEEK_API_KEY=...             # DeepSeek
export DASHSCOPE_API_KEY=...            # Qwen — 国际 (dashscope-intl.aliyuncs.com)
export DASHSCOPE_CN_API_KEY=...         # Qwen — 中国 (dashscope.aliyuncs.com)
export ZHIPU_API_KEY=...                # GLM 通过 Z.AI(国际)
export ZHIPU_CN_API_KEY=...             # GLM 通过 BigModel(中国,open.bigmodel.cn)
export MINIMAX_API_KEY=...              # MiniMax — 全球 (api.minimax.io, M2.x, 204K ctx)
export MINIMAX_CN_API_KEY=...           # MiniMax — 中国 (api.minimaxi.com, M2.x, 204K ctx)
export OPENROUTER_API_KEY=...           # OpenRouter
export ALPHA_VANTAGE_API_KEY=...        # Alpha Vantage

对于企业级提供商(例如 Azure OpenAI, AWS Bedrock),将 .env.enterprise.example 复制为 .env.enterprise 并填写凭据。

对于本地模型,配置 Ollama 时使用 llm_provider: "ollama"。默认端点为 http://localhost:11434/v1;设置 OLLAMA_BASE_URL 指向远程 ollama-serve。使用 ollama pull <模型> 拉取模型,并在 CLI 中选择“自定义模型 ID”以使用未列出的模型。

或者,复制 .env.example.env 并填写你的密钥:

cp .env.example .env

CLI 使用

启动交互式 CLI:

tradingagents   # 已安装的命令
python -m cli.main   # 替代方案:直接从源码运行

你将看到一个界面,可以在此选择所需股票代码、分析日期、LLM 提供商、研究深度等。

市场与股票代码

TradingAgents 支持 Yahoo Finance 覆盖的任何市场,使用带交易所后缀的股票代码。公司身份和 alpha 基准会自动按市场解析。

  • 美国:AAPL, SPY
  • 香港:0700.HK · 东京:7203.T · 伦敦:AZN.L
  • 印度:RELIANCE.NS.BO · 加拿大:.TO · 澳大利亚:.AX
  • 中国 A 股:上海 .SS、深圳 .SZ(例如 600519.SS 贵州茅台)
  • 加密货币:BTC-USD, ETH-USD

界面将加载并显示结果,让你能够跟踪智能体的运行进度。

TradingAgents 包

实现细节

我们使用 LangGraph 构建了 TradingAgents,以确保灵活性和模块化。框架支持多种 LLM 提供商:OpenAI、Google、Anthropic、xAI、DeepSeek、Qwen(阿里巴巴 DashScope,国际和中国端点)、GLM(智谱)、MiniMax(全球+中国)、OpenRouter、Ollama(本地模型)以及 Azure OpenAI(企业版)。

Python 使用

要在代码中使用 TradingAgents,可以导入 tradingagents 模块并初始化一个 TradingAgentsGraph() 对象。.propagate() 函数将返回一个决策。你可以运行 main.py,下面是一个简单示例:

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)

你也可以调整默认配置,设置自己选择的 LLM、辩论轮数等。

from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG

config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "openai"   # openai, google, anthropic, xai, deepseek, qwen, qwen-cn, glm, glm-cn, minimax, minimax-cn, openrouter, ollama, azure
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")
print(decision)

所有配置选项请参见 tradingagents/default_config.py

持久化与恢复

TradingAgents 在运行间持久化两种状态。

决策日志

决策日志始终启用。每次运行完成后,其决策会追加到 ~/.tradingagents/memory/trading_memory.md。下一次针对同一股票代码运行时,TradingAgents 会获取已实现收益(原始收益及相对于 SPY 的 alpha),生成一段反思文字,并将最近同一股票代码的决策以及近期跨股票代码的经验教训注入到投资组合经理提示中,这样每次分析都能延续之前有效和无效的经验。可通过 TRADINGAGENTS_MEMORY_LOG_PATH 覆盖路径。

检查点恢复

检查点恢复通过 --checkpoint 可选启用。启用后,LangGraph 在每个节点后保存状态,因此崩溃或中断的运行将从最后成功的步骤继续,而不是重新开始。在恢复运行时,日志中会显示 Resuming from step N for <ticker> on <date>;在新运行时显示 Starting fresh。成功完成后检查点会自动清除。每个股票代码的 SQLite 数据库位于 ~/.tradingagents/cache/checkpoints/<ticker>.db(可通过 TRADINGAGENTS_CACHE_DIR 覆盖基础目录)。使用 --clear-checkpoints 在运行前重置所有检查点。

tradingagents analyze --checkpoint             # 为此运行启用
tradingagents analyze --clear-checkpoints      # 运行前重置
config = DEFAULT_CONFIG.copy()
config["checkpoint_enabled"] = True
ta = TradingAgentsGraph(config=config)
_, decision = ta.propagate("NVDA", "2026-01-15")

可复现性

TradingAgents 由大语言模型驱动,因此同一股票代码和日期的两次运行可能不同。这对于基于语言模型的研究工具来说是预期行为,而非缺陷。差异来源于几个不同的来源,区分它们有助于理解。

  • 语言模型采样是非确定性的。即使在固定温度下,提供商也无法保证跨调用的按字节相同输出,而推理模型(默认的 GPT-5.x 系列和任何思考模式模型)的差异最大,因为其内部推理本身也是采样的。
  • 实时数据在变化。新闻、StockTwits 和 Reddit 会随时间返回不同的内容,因此即使对于相同的历史交易日期,今天的运行看到的输入也与上周不同。锁定分析日期可以固定价格和指标窗口,但社交和新闻来源仍然反映“现在”。

为减少差异,你可以降低采样温度。在配置中设置 temperature(或在 .env 中设置 TRADINGAGENTS_TEMPERATURE);较低的值使尊重该设置的模型更具可重复性。推理模型大多忽略温度,因此为了更严格的可复现性,可将低温度与非推理模型(如 gpt-4.1)配对使用。

config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "openai"
config["deep_think_llm"] = "gpt-4.1"  # 非推理模型尊重温度
config["quick_think_llm"] = "gpt-4.1"
config["temperature"] = 0.0

不再变化的内容:被分析的公司身份会在任何智能体运行前通过股票代码确定性解析;市场分析师会基于验证过的数据快照来核实精确的价格和指标陈述。早期报告中出现的“不同公司”或跨运行的价格水平伪造问题已通过这两种机制解决。

回测结果不保证与任何发布的数字一致。收益取决于模型、温度、日期范围、数据质量以及上述采样。请将本框架视为研究多智能体分析的研究脚手架,而非具有固定可复现收益的策略。

贡献指南

欢迎各种贡献:错误修复、文档和功能创意;过去的贡献已在 CHANGELOG.md 中按版本致谢。

引用

如果 TradingAgents 对你有所帮助,请引用我们的工作 :)

@misc{xiao2025tradingagentsmultiagentsllmfinancial,
      title={TradingAgents: Multi-Agents LLM Financial Trading Framework},
      author={Yijia Xiao and Edward Sun and Di Luo and Wei Wang},
      year={2025},
      eprint={2412.20138},
      archivePrefix={arXiv},
      primaryClass={q-fin.TR},
      url={https://arxiv.org/abs/2412.20138},
}

相似文章

TradingAgents:多智能体 LLM 金融交易框架

Papers with Code Trending

本文介绍了 TradingAgents,这是一个多智能体 LLM 框架,通过模拟现实世界中的交易公司来提升股票交易表现。该框架利用执行分析和风险管理的专用智能体,在累计收益和夏普比率方面优于基线模型。

智能体交易:当LLM智能体遇上金融市场

arXiv cs.AI

本文对77项关于基于LLM的交易智能体的研究进行了系统综述和证据图谱,发现架构实验正在快速扩展,但评估协议、执行语义和可再现性仍然是关键瓶颈。

QuantAgent:基于价格驱动的多智能体大语言模型高频交易框架

Papers with Code Trending

QuantAgent 是一个专为高频交易设计的多智能体大语言模型框架,通过四个专业智能体(指标、形态、趋势、风险)基于短周期信号快速做出具有风险意识的交易决策。在对比比特币和纳斯达克期货在内的十种金融工具的零样本评估中,该框架在预测准确率和累计收益方面均优于现有的神经网络和规则驱动基线模型。

AI-Trader:在实时金融市场中对自主智能体进行基准测试

Papers with Code Trending

本文介绍了 AI-Trader,这是首个用于评估大语言模型(LLMs)在美股、A股和加密货币等金融决策方面的全自动实时基准测试平台。研究指出,通用智能并不必然保证交易成功,并强调了在自主智能体中风险控制的重要性。