返回博客列表

TradingAgents 框架技术文档

文档 · TradingAgents Team
文档 架构 部署 配置

TradingAgents 框架技术文档

TradingAgents 是一个基于多智能体系统和大语言模型的金融交易决策框架。该框架模拟专业的交易团队,通过多个专业分析师智能体协作,提供全面的股票分析和投资建议。

核心特性

  • 多智能体协作: 模拟专业交易团队,各智能体分工协作
  • 大语言模型: 集成主流 LLM,支持复杂金融场景理解
  • 实时分析: 整合多源数据,实现对市场的实时监控
  • 风险管控: 内置风险管理机制,控制投资风险

快速开始

前置要求

系统要求:

  • 操作系统: Windows 10+, macOS 10.15+, Linux
  • Python: 3.10 或更高版本
  • 内存: 至少 4GB RAM (推荐 8GB+)
  • 存储: 至少 2GB 可用空间

API 密钥:

  • 阿里百炼 API Key (推荐)
  • FinnHub API Key (必需)
  • Google AI API Key (推荐)
  • Tushare Token (A股数据)

安装步骤

# 1. 克隆项目
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents

# 2. 创建虚拟环境
python -m venv tradingagents
source tradingagents/bin/activate  # Linux/macOS
# tradingagents\Scripts\activate  # Windows

# 3. 安装依赖
pip install -r requirements.txt

# 4. 配置环境变量
cp .env.example .env
# 编辑 .env 文件,填入API密钥

运行方式

Web 界面 (推荐):

streamlit run web/app.py

提供直观的股票分析界面、API 密钥管理、实时进度显示和 Token 使用统计等功能。

命令行界面:

python -m cli.main

适合偏好命令行操作的用户,提供完整的功能支持。


系统架构

TradingAgents 采用多智能体系统架构,通过专业分工和协作,实现全面的股票分析。

架构组件

  • 数据源管理层 — 统一管理多个数据源,包括美股、A股、港股数据,支持在线和离线模式。
  • 分析师团队 — 由多个专业分析师组成,分别负责基本面、技术面、新闻和社交媒体分析。
  • 研究员团队 — 对分析师报告进行深入研究,形成投资观点并进行辩论。
  • 交易决策层 — 综合各方观点,做出最终的交易决策。

数据流架构

  1. 获取股票数据和市场信息
  2. 各分析师并行分析,生成专业报告
  3. 研究员团队辩论,形成投资观点
  4. 风险管理团队评估风险
  5. 生成最终投资决策

分析师团队

分析师团队是 TradingAgents 框架的核心分析组件,负责从不同维度对股票进行专业分析。

市场分析师

负责技术指标分析、价格趋势识别、支撑阻力位分析等技术面分析。

  • 技术指标分析(RSI、MACD、布林带等)
  • 价格趋势和图表模式识别
  • 成交量分析和价格动量评估

基本面分析师

分析公司财务数据和基本面指标,评估公司估值和财务健康度。

  • 公司财务数据和基本面指标分析
  • 公司估值和财务健康度评估
  • 基于财务数据的投资建议

新闻分析师

分析新闻事件影响、宏观经济数据、政策影响和行业动态。

  • 新闻事件影响分析
  • 宏观经济数据解读
  • 政策影响评估

社交媒体分析师

进行社交媒体情绪分析、投资者情绪监测、舆论趋势识别等。

  • 社交媒体情绪分析
  • 投资者情绪监测
  • 舆论趋势识别

智能体状态管理

class AgentState:
    company_of_interest: str      # 股票代码
    trade_date: str              # 交易日期
    fundamentals_report: str     # 基本面报告
    market_report: str           # 市场分析报告
    news_report: str             # 新闻分析报告
    sentiment_report: str        # 情绪分析报告
    messages: List              # 消息历史

配置指南

TradingAgents 提供了灵活的配置系统,通过 .env 文件管理所有配置选项。

主要配置项

LLM 配置:

  • llm_provider — 模型提供商 (openai/anthropic/google)
  • deep_think_llm — 深度思考模型 (如 gpt-4o)
  • quick_think_llm — 快速思考模型 (如 gpt-4o-mini)
  • DEEPSEEK_API_KEY — DeepSeek V3 API 密钥

分析配置:

  • max_debate_rounds — 辩论最大轮次 (默认 1)
  • online_tools — 使用在线数据 (默认 true)
  • results_dir — 结果存储目录
  • FINNHUB_API_KEY — FinnHub API 密钥

示例配置文件

# LLM 配置
DEEPSEEK_API_KEY=your_deepseek_api_key
DASHSCOPE_API_KEY=your_dashscope_api_key
GOOGLE_API_KEY=your_google_api_key

# 数据源配置
FINNHUB_API_KEY=your_finnhub_api_key
TUSHARE_TOKEN=your_tushare_token

# 分析配置
TRADINGAGENTS_RESULTS_DIR=./results
ONLINE_TOOLS=true
MAX_DEBATE_ROUNDS=2

部署指南

TradingAgents 支持本地部署,可以快速搭建完整的分析环境。

本地部署

# 1. 克隆项目
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents

# 2. 配置环境变量
cp .env.example .env
# 编辑 .env 文件,填入API密钥

# 3. 安装依赖并运行
pip install -r requirements.txt
python main.py

报告导出功能

TradingAgents 提供强大的报告导出功能,支持多种专业格式。

支持的格式

  • Markdown — 轻量级、可编辑、支持版本控制,适合开发者和技术文档。
  • Word 文档 — 专业格式、易于编辑、广泛兼容,适合商业报告和正式文档。
  • PDF 文档 — 格式固定、跨平台兼容、专业外观,适合正式发布和打印。

报告内容结构

  • 股票基本信息 — 股票代码、价格、市场信息
  • 投资决策摘要 — 投资建议、置信度、风险评分
  • 详细分析报告 — 技术、基本面、情绪、新闻分析
  • 专家辩论记录 — 看涨/看跌观点、辩论过程
  • 风险提示 — 市场风险、投资建议免责声明
  • 技术信息 — 使用的 LLM 模型、数据源信息

智能新闻分析

TradingAgents 实现了高效的新闻过滤机制,解决低质量、不相关新闻的问题,提高新闻分析师的分析质量。

新闻过滤策略

  • 基于规则的过滤器 — 实现简单、执行速度快、可解释性强,通过关键词匹配和相关性评分过滤新闻。
  • 语义相似度过滤 — 使用 sentence-transformers 进行语义相似度计算,更精准地识别相关新闻。

过滤算法示例

class NewsRelevanceFilter:
    def calculate_relevance_score(self, title: str, content: str) -> float:
        score = 0
        # 直接提及公司 (+40分)
        if self.company_name in title:
            score += 40
        elif self.company_name in content:
            score += 20
        # 直接提及股票代码 (+30分)
        if self.stock_code in title:
            score += 30
        elif self.stock_code in content:
            score += 15
        return max(0, min(100, score))