25 KiB
TradingAgents 项目深度调研报告
1. 项目概述
1.1 项目定位
TradingAgents 是一个基于多智能体(Multi-Agent)架构的 LLM 金融交易框架,由 Tauric Research 开发和维护。该项目模仿真实交易公司的运作模式,通过部署多个专业化的 LLM 驱动智能体来协同评估市场状况并做出交易决策。
1.2 主要功能
项目核心功能包括:
- 多维度市场分析:整合基本面、技术面、情绪面和新闻面的综合分析
- 智能体辩论机制:看涨/看跌研究员通过结构化辩论平衡收益与风险
- 风险管理:专门的风险管理团队评估市场波动性和流动性
- 记忆与学习:基于 BM25 算法的金融情景记忆系统,支持从过往决策中学习
- 多 LLM 提供商支持:支持 OpenAI、Google、Anthropic、xAI、OpenRouter 和 Ollama 等多种 LLM 后端
- 交互式 CLI:提供美观的命令行界面,实时展示智能体分析进度
1.3 适用场景
- 量化交易研究:为研究人员提供多智能体协作的交易策略验证平台
- 金融教育:展示现代交易公司的决策流程和风险管理实践
- 策略回测:支持基于历史数据的交易策略验证
- 实时交易决策:可作为实时交易决策支持系统(需注意风险)
1.4 项目背景
- 版本:v0.2.0(2026年2月发布)
- 论文:arXiv:2412.20138
- 开源协议:Apache 2.0
- 开发团队:Tauric Research(Yijia Xiao, Edward Sun, Di Luo, Wei Wang)
2. 技术架构
2.1 技术栈
核心框架
| 技术 | 版本 | 用途 |
|---|---|---|
| Python | >=3.10 | 主要编程语言 |
| LangGraph | >=0.4.8 | 智能体工作流编排 |
| LangChain Core | >=0.3.81 | LLM 应用开发框架 |
| Backtrader | >=1.9.78.123 | 量化交易回测框架 |
LLM 客户端支持
| 提供商 | 客户端模块 | 说明 |
|---|---|---|
| OpenAI | openai_client.py |
GPT-4/5 系列模型 |
| Anthropic | anthropic_client.py |
Claude 系列模型 |
google_client.py |
Gemini 系列模型 | |
| xAI | openai_client.py |
Grok 系列模型(兼容 OpenAI API) |
| OpenRouter | openai_client.py |
多模型聚合平台 |
| Ollama | openai_client.py |
本地模型部署 |
数据源与金融库
| 库 | 用途 |
|---|---|
| yfinance | Yahoo Finance 数据获取(默认数据源) |
| alpha_vantage | Alpha Vantage API 数据(备选) |
| stockstats | 技术指标计算 |
| pandas | 数据处理与分析 |
| redis | 缓存与状态存储 |
辅助工具
| 库 | 用途 |
|---|---|
| chainlit | 聊天界面框架 |
| rich | 命令行美化与交互 |
| typer | CLI 框架 |
| questionary | 交互式命令行提示 |
| rank-bm25 | 文本相似度匹配(记忆系统) |
2.2 核心模块架构
tradingagents/
├── agents/ # 智能体实现
│ ├── analysts/ # 分析师团队
│ ├── researchers/ # 研究员团队
│ ├── risk_mgmt/ # 风险管理团队
│ ├── managers/ # 管理层
│ ├── trader/ # 交易员
│ └── utils/ # 工具函数
├── dataflows/ # 数据流层
├── graph/ # 工作流图
├── llm_clients/ # LLM 客户端
└── default_config.py # 默认配置
2.3 代码结构特点
- 模块化设计:每个智能体独立成文件,职责清晰
- 插件化数据源:支持 yfinance 和 Alpha Vantage 双数据源,可配置切换
- 配置驱动:通过
DEFAULT_CONFIG字典集中管理配置 - 类型提示:使用 Python 类型注解提高代码可读性
- 函数式编程:大量使用闭包和偏函数创建智能体节点
3. 核心功能详解
3.1 智能体团队架构
3.1.1 分析师团队(Analyst Team)
市场分析师 (market_analyst.py)
- 功能:技术分析,使用 MACD、RSI、布林带、移动平均线等指标
- 工具:
get_stock_data,get_indicators - 特点:可动态选择最多8个互补的技术指标,避免冗余
基本面分析师 (fundamentals_analyst.py)
- 功能:分析公司财务报表(资产负债表、现金流量表、利润表)
- 工具:
get_fundamentals,get_balance_sheet,get_cashflow,get_income_statement - 关注点:财务健康度、盈利能力、成长性
新闻分析师 (news_analyst.py)
- 功能:监控全球新闻和宏观经济指标
- 工具:
get_news,get_global_news,get_insider_transactions - 关注点:重大事件、内幕交易、宏观趋势
社交媒体分析师 (social_media_analyst.py)
- 功能:分析社交媒体情绪
- 工具:
get_news - 关注点:市场情绪、散户情绪、舆论趋势
3.1.2 研究员团队(Researcher Team)
看涨研究员 (bull_researcher.py)
- 角色:多头辩护者
- 关注点:增长潜力、竞争优势、积极指标
- 能力:反驳看跌观点,基于证据构建投资案例
看跌研究员 (bear_researcher.py)
- 角色:空头辩护者
- 关注点:风险因素、估值担忧、负面信号
- 能力:批判性分析,识别潜在风险
研究经理 (research_manager.py)
- 角色:辩论裁决者
- 功能:综合正反观点,做出投资决策(买/卖/持有)
- 特点:可配置辩论轮数,支持多轮深度辩论
3.1.3 风险管理团队
激进分析师 (aggressive_debator.py)
- 立场:支持承担更高风险以获取更高收益
- 关注点:增长机会、市场时机、杠杆使用
保守分析师 (conservative_debator.py)
- 立场:强调资本保全和风险控制
- 关注点:下行保护、波动率管理、流动性风险
中性分析师 (neutral_debator.py)
- 立场:平衡视角
- 关注点:风险收益平衡、情景分析、压力测试
风险经理 (risk_manager.py)
- 角色:最终决策者
- 功能:综合风险团队辩论,做出最终交易决策
- 特点:学习过往错误,持续改进决策质量
3.2 工作流编排(LangGraph)
工作流使用 LangGraph 的状态图(StateGraph)实现:
START -> Analyst 1 -> Tools -> Clear -> Analyst 2 -> ... -> Bull Researcher
|
v
Bear Researcher <-> Bull Researcher (Debate Loop)
|
v
Research Manager -> Trader -> Aggressive Analyst
|
v
Neutral Analyst <-> Conservative Analyst (Risk Debate Loop)
|
v
Risk Judge -> END
关键特性:
- 条件边:使用条件逻辑控制辩论轮数和风险分析深度
- 工具节点:分析师可调用工具获取实时数据
- 消息清理:在阶段转换时清理消息历史,控制上下文长度
- 状态管理:使用
AgentState和InvestDebateState等类型化状态
3.3 记忆系统
金融情景记忆 (memory.py)
- 算法:BM25(Best Matching 25)词法相似度匹配
- 特点:
- 无需 API 调用,完全离线工作
- 无 Token 限制
- 支持任何 LLM 提供商
- 功能:存储过往金融情景和决策建议,支持相似情景检索
- 用途:智能体从过往决策中学习,避免重复错误
记忆类型:
bull_memory:看涨研究员记忆bear_memory:看跌研究员记忆trader_memory:交易员记忆invest_judge_memory:投资经理记忆risk_manager_memory:风险经理记忆
3.4 数据层架构
数据源抽象 (interface.py)
- 支持工具类别级别的数据源配置
- 支持工具级别的数据源覆盖
- 自动故障转移:当主数据源(如 Alpha Vantage)限流时,自动切换到备用源(如 yfinance)
数据类别:
- core_stock_apis:OHLCV 股票价格数据
- technical_indicators:技术分析指标
- fundamental_data:公司基本面数据
- news_data:新闻和内幕交易数据
3.5 CLI 交互界面
特点:
- 使用 Rich 库构建美观的命令行界面
- 实时显示智能体分析进度
- 支持多个分析师选择和配置
- 支持多种 LLM 提供商和模型选择
- 显示统计信息(Token 使用量、API 调用次数)
4. 代码质量分析
4.1 代码组织
优点:
- 清晰的分层架构:数据层、智能体层、编排层分离明确
- 单一职责原则:每个模块职责单一,易于理解和维护
- 一致的命名规范:使用 snake_case,命名清晰表意
- 合理的文件大小:大部分文件在 200-400 行之间,符合最佳实践
待改进点:
- 部分工具函数文件较长(如
y_finance.py463 行) - 缺少
__init__.py文件导致部分包结构不完整
4.2 设计模式
使用的设计模式:
-
工厂模式 (
factory.py)- 用于创建不同 LLM 提供商的客户端
- 统一接口,隐藏实现细节
-
策略模式 (数据源接口)
- 不同的数据源(yfinance、Alpha Vantage)实现相同接口
- 运行时动态切换策略
-
闭包/偏函数 (智能体创建)
- 使用闭包创建配置好的智能体节点
- 示例:
create_bull_researcher(llm, memory)返回配置好的节点函数
-
状态模式 (LangGraph)
- 使用 TypedDict 定义状态类型
- 状态在工作流节点间传递
-
记忆模式 (BM25 记忆)
- 封装记忆存储和检索逻辑
- 提供清晰的 add/get 接口
4.3 可维护性
优点:
- 类型注解:大量使用 Python 类型提示,提高代码可读性和 IDE 支持
- 文档字符串:关键函数和类包含 docstring
- 配置集中化:默认配置集中在
default_config.py - 错误处理:数据源层实现了限流错误的优雅降级
待改进点:
- 部分复杂函数缺少参数说明
- 缺少单元测试(仅有一个简单的
test.py) - 没有类型检查配置(如 mypy)
4.4 安全性考虑
优点:
- 使用环境变量管理 API 密钥
- 提供
.env.example模板 - 支持
.env文件加载(使用python-dotenv)
待改进点:
- 代码中没有明显的输入验证和清洗
- 缺少 API 密钥格式验证
- 没有速率限制和重试逻辑的集中管理
5. 依赖分析
5.1 核心依赖
| 依赖 | 版本 | 用途 | 风险等级 |
|---|---|---|---|
| langchain-core | >=0.3.81 | LLM 应用核心 | 低 |
| langgraph | >=0.4.8 | 工作流编排 | 低 |
| langchain-openai | >=0.3.23 | OpenAI 集成 | 低 |
| langchain-anthropic | >=0.3.15 | Anthropic 集成 | 低 |
| langchain-google-genai | >=2.1.5 | Google 集成 | 低 |
| langchain-experimental | >=0.3.4 | 实验性功能 | 中 |
5.2 金融数据依赖
| 依赖 | 版本 | 用途 | 风险等级 |
|---|---|---|---|
| yfinance | >=0.2.63 | Yahoo Finance 数据 | 中(非官方 API) |
| stockstats | >=0.6.5 | 技术指标计算 | 低 |
| backtrader | >=1.9.78.123 | 回测框架 | 低(稳定但更新慢) |
| pandas | >=2.3.0 | 数据处理 | 低 |
5.3 基础设施依赖
| 依赖 | 版本 | 用途 | 风险等级 |
|---|---|---|---|
| redis | >=6.2.0 | 缓存/状态存储 | 低 |
| requests | >=2.32.4 | HTTP 请求 | 低 |
| pytz | >=2025.2 | 时区处理 | 低 |
5.4 版本兼容性
- Python 版本:要求 >=3.10,使用现代 Python 特性(如类型注解、联合类型操作符
|) - 依赖版本:大部分依赖使用
>=约束,允许自动升级,但可能引入破坏性变更 - 锁定文件:包含
uv.lock文件,使用 uv 工具进行依赖管理
5.5 依赖风险
低风险:
- LangChain 生态:活跃维护,社区庞大
- Pandas/NumPy:稳定成熟
- Rich/Typer:现代 CLI 工具,维护良好
中风险:
- yfinance:非官方 API,Yahoo Finance 可能随时更改接口
- backtrader:更新缓慢,Python 3.10+ 支持可能有问题
- alpha_vantage:依赖外部 API 配额和稳定性
建议:
- 生产环境使用应实现数据源的断路器模式
- 考虑添加 yfinance 的替代方案(如直接交易所 API)
- 定期更新依赖并运行回归测试
6. 使用方式
6.1 安装
# 克隆仓库
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
# 创建虚拟环境
conda create -n tradingagents python=3.13
conda activate tradingagents
# 安装依赖
pip install -r requirements.txt
6.2 配置
环境变量(选择使用的 LLM 提供商):
export OPENAI_API_KEY=your_key # OpenAI
export GOOGLE_API_KEY=your_key # Google
export ANTHROPIC_API_KEY=your_key # Anthropic
export XAI_API_KEY=your_key # xAI
export OPENROUTER_API_KEY=your_key # OpenRouter
export ALPHA_VANTAGE_API_KEY=your_key # Alpha Vantage(可选)
或使用 .env 文件:
cp .env.example .env
# 编辑 .env 文件填入 API 密钥
6.3 基本用法
6.3.1 CLI 方式(推荐)
# 启动交互式 CLI
python -m cli.main
# 或安装后使用命令
tradingagents
CLI 将引导您完成:
- 选择股票代码(如 NVDA)
- 选择交易日期
- 选择 LLM 提供商和模型
- 选择要运行的分析师
- 配置辩论轮数
- 实时查看分析进度和最终决策
6.3.2 Python API 方式
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
# 使用默认配置
ta = TradingAgentsGraph(debug=True)
# 运行分析
state, decision = ta.propagate("NVDA", "2026-01-15")
print(decision)
# 反思并记忆(用于学习)
ta.reflect_and_remember(returns_losses=1000) # 传入收益或损失
自定义配置:
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
config = DEFAULT_CONFIG.copy()
# LLM 配置
config["llm_provider"] = "openai"
config["deep_think_llm"] = "gpt-5.2"
config["quick_think_llm"] = "gpt-5-mini"
# 辩论轮数
config["max_debate_rounds"] = 2
config["max_risk_discuss_rounds"] = 1
# 数据源配置
config["data_vendors"] = {
"core_stock_apis": "yfinance",
"technical_indicators": "yfinance",
"fundamental_data": "yfinance",
"news_data": "yfinance",
}
# 初始化
ta = TradingAgentsGraph(
selected_analysts=["market", "social", "news", "fundamentals"],
debug=True,
config=config
)
# 运行
_, decision = ta.propagate("AAPL", "2026-01-15")
6.3.3 选择特定分析师
# 只运行技术分析和基本面分析
ta = TradingAgentsGraph(
selected_analysts=["market", "fundamentals"],
debug=True,
config=config
)
6.4 数据源配置
使用 Alpha Vantage(需要 API 密钥):
config["data_vendors"] = {
"core_stock_apis": "alpha_vantage",
"technical_indicators": "alpha_vantage",
"fundamental_data": "alpha_vantage",
"news_data": "alpha_vantage",
}
混合配置:
# 默认使用 yfinance,特定工具使用 Alpha Vantage
config["data_vendors"] = {
"core_stock_apis": "yfinance",
"technical_indicators": "yfinance",
"fundamental_data": "yfinance",
"news_data": "yfinance",
}
config["tool_vendors"] = {
"get_fundamentals": "alpha_vantage", # 基本面使用 AV
}
7. 优缺点分析
7.1 优势
7.1.1 架构设计优势
-
真实模拟交易公司流程
- 多团队协作(分析师、研究员、风险管理)
- 结构化决策流程(分析 -> 辩论 -> 决策 -> 风控)
- 角色专业化,职责清晰
-
灵活的多智能体架构
- 基于 LangGraph 的工作流编排,可视化清晰
- 支持动态选择分析师组合
- 可配置的辩论轮数和研究深度
-
强大的 LLM 抽象层
- 统一接口支持6+ LLM 提供商
- 支持不同模型的思考深度配置
- 易于扩展新的 LLM 提供商
-
智能记忆系统
- 基于 BM25 的离线记忆,无额外 API 成本
- 支持从过往决策中学习
- 相似情景检索,提高决策一致性
7.1.2 工程实现优势
-
数据源灵活性
- 双数据源支持(yfinance、Alpha Vantage)
- 自动故障转移机制
- 类别级别和工具级别的细粒度配置
-
开发者体验
- 美观的 CLI 界面,实时反馈
- 详细的日志和状态保存
- 类型注解和清晰的代码结构
-
配置驱动
- 集中式配置管理
- 环境变量支持
- 运行时配置覆盖
7.1.3 生态优势
-
开源社区
- 活跃的 GitHub 社区(Star 增长迅速)
- 多语言 README 支持
- 定期更新(v0.2.0 近期发布)
-
学术背景
- 基于 arXiv 论文实现
- 有理论支撑
- 研究团队维护
7.2 局限性
7.2.1 功能局限
-
数据源局限
- 仅支持美股数据(Yahoo Finance、Alpha Vantage)
- 缺少实时 Level 2 行情数据
- 不支持加密货币、外汇等其他市场
-
回测功能有限
- 虽然依赖 backtrader,但框架本身主要关注决策
- 缺少完整的回测和绩效分析
- 不支持多因子策略
-
交易执行
- 仅支持模拟交易决策
- 未集成真实券商 API
- 缺少订单管理和仓位跟踪
-
风险管理
- 风险分析主要基于 LLM 推理,缺少量化模型
- 不支持 VaR、CVaR 等风险指标
- 缺少仓位 sizing 算法
7.2.2 技术局限
-
LLM 依赖性
- 决策质量高度依赖 LLM 质量
- 存在幻觉风险
- API 成本高(尤其多轮辩论)
-
性能问题
- 多智能体串行执行,延迟较高
- 每次调用都重新获取数据,无智能缓存
- 不支持并发分析多只股票
-
测试覆盖率低
- 缺少单元测试和集成测试
- 无性能基准测试
- 依赖手动验证
-
部署复杂
- 需要多个 API 密钥
- 依赖 Redis(虽然可能非必需)
- 缺少 Docker 化部署方案
7.2.3 适用性局限
-
市场条件
- 主要适用于基本面驱动的股票
- 对高频交易、量化策略支持有限
- 极端市场条件下 LLM 推理可能失效
-
专业要求
- 需要理解金融市场的用户才能有效使用
- 配置选项较多,学习曲线陡峭
- 需要自行验证交易信号
7.3 适用人群
适合:
- 量化交易研究人员
- 金融专业学生和教育工作者
- 对 AI 交易感兴趣的开发者
- 策略验证和原型开发
不适合:
- 寻求稳定收益的个人投资者
- 需要高频交易的专业机构
- 缺乏金融知识的初学者
- 风险承受能力极低的用户
8. 与当前项目的关联性
8.1 可借鉴的代码
8.1.1 多智能体架构
借鉴点:
- LangGraph 工作流模式:参考
/tradingagents/graph/setup.py学习如何构建复杂的状态图 - 智能体节点创建模式:使用闭包工厂函数创建配置化的智能体节点
示例:
# 可借鉴的模式
def create_agent_node(llm, memory):
def agent_node(state):
# 实现智能体逻辑
response = llm.invoke(prompt)
return {"key": response}
return agent_node
8.1.2 LLM 客户端抽象
借鉴点:
- 工厂模式实现:参考
/tradingagents/llm_clients/factory.py - 统一接口设计:参考
/tradingagents/llm_clients/base_client.py
价值:
- 实现多 LLM 提供商的无缝切换
- 统一错误处理和重试逻辑
- 便于 A/B 测试不同模型
8.1.3 数据源抽象层
借鉴点:
- 策略模式应用:参考
/tradingagents/dataflows/interface.py - 自动故障转移:主数据源失败时自动切换到备用源
- 配置驱动的路由:类别级别和工具级别的数据源配置
价值:
- 提高系统的可靠性和可用性
- 便于接入新的数据源
- 支持数据源的 A/B 测试
8.1.4 记忆系统
借鉴点:
- BM25 实现:参考
/tradingagents/agents/utils/memory.py - 离线相似度匹配:无需向量数据库和 API 调用
价值:
- 低成本的情景记忆方案
- 适用于敏感数据(无需发送到外部服务)
- 快速检索,无网络延迟
8.1.5 配置管理
借鉴点:
- 集中式配置:参考
/tradingagents/default_config.py - 环境变量集成:使用
python-dotenv加载.env文件 - 层级配置:默认配置 -> 用户配置 -> 运行时配置
8.2 可借鉴的设计思路
8.2.1 分层决策流程
思路:将复杂决策分解为多个阶段,每个阶段由专门的角色负责
应用:
- 数据收集 -> 分析 -> 辩论 -> 决策 -> 风控
- 适用于任何需要多维度评估的决策场景
8.2.2 辩论机制
思路:通过正反方辩论发现盲点,提高决策质量
应用:
- 不仅适用于交易,也适用于任何需要风险评估的场景
- 可配置辩论轮数,平衡深度和效率
8.2.3 反思与学习
思路:记录决策和结果,定期反思并更新策略
应用:
- 任何需要持续改进的 AI 系统
- 强化学习与 LLM 结合的范式
8.2.4 工具抽象
思路:将数据获取封装为工具,智能体通过工具调用获取信息
应用:
- 提高智能体的可扩展性
- 便于添加新的数据源和功能
- 支持工具调用的审计和监控
8.3 集成建议
8.3.1 作为决策支持模块
如果当前项目需要交易决策支持,可以:
- 将 TradingAgents 作为子模块引入
- 使用其 Python API 获取交易建议
- 结合项目自身的风险管理和仓位管理
8.3.2 借鉴架构重构
如果当前项目也是金融相关,可以:
- 借鉴其多智能体架构,重构现有单体架构
- 引入 LangGraph 进行工作流编排
- 实现类似的记忆和学习机制
8.3.3 数据源整合
如果当前项目需要金融数据:
- 复用其数据源抽象层
- 添加项目特定的数据源(如交易所直连、WebSocket 等)
- 利用其故障转移机制提高可靠性
8.4 注意事项
8.4.1 版权问题
- 项目使用 Apache 2.0 协议,允许商业使用
- 修改后需保留版权声明
- 建议直接引用而非复制代码
8.4.2 风险提示
- 该项目明确声明仅用于研究目的
- 不构成投资建议
- 使用其代码进行交易需自行承担风险
8.4.3 技术债务
- 项目相对较新,可能存在未发现的 bug
- 依赖项较多,维护成本较高
- 建议进行充分的测试后再用于生产
9. 总结
TradingAgents 是一个设计精良、架构先进的金融交易多智能体框架。它成功地将真实交易公司的协作流程映射到 LLM 驱动的智能体系统中,通过角色专业化、结构化辩论和风险管理,实现了较为完整的交易决策流程。
核心亮点
- 创新的多智能体架构:分析师、研究员、风险管理团队的协作模式
- 强大的 LLM 抽象:支持6+主流 LLM 提供商,配置灵活
- 实用的记忆系统:基于 BM25 的离线记忆,成本低廉
- 优雅的数据层:双数据源支持,自动故障转移
- 出色的开发者体验:美观的 CLI,清晰的代码结构
主要不足
- 数据源局限:仅限美股,缺少实时数据
- LLM 依赖风险:决策质量依赖模型能力,成本高
- 测试覆盖不足:缺少自动化测试保障
- 生产就绪度:更适合研究和原型,生产使用需谨慎
适用性评估
| 场景 | 适用度 | 说明 |
|---|---|---|
| 量化研究 | 高 | 架构清晰,易于扩展 |
| 策略验证 | 高 | 支持模拟决策和回测 |
| 金融教育 | 高 | 展示交易流程,交互性好 |
| 个人交易 | 中 | 需结合其他工具,风险自负 |
| 机构生产 | 低 | 缺少企业级特性 |
建议
对于希望研究多智能体金融系统的开发者和研究人员,TradingAgents 是一个极佳的参考实现和学习资源。其架构设计、代码组织和工程实践都值得借鉴。但在用于实际交易前,建议:
- 充分理解其局限性和风险
- 添加完善的风险管理和仓位控制
- 进行充分的回测和模拟交易验证
- 考虑接入更可靠的数据源
- 建立监控和告警机制
附录:关键文件路径
核心代码文件
/tradingagents/graph/trading_graph.py- 主交易图类/tradingagents/graph/setup.py- 工作流构建/tradingagents/default_config.py- 默认配置
智能体实现
/tradingagents/agents/analysts/*.py- 分析师团队/tradingagents/agents/researchers/*.py- 研究员团队/tradingagents/agents/risk_mgmt/*.py- 风险管理团队/tradingagents/agents/managers/*.py- 管理层/tradingagents/agents/trader/trader.py- 交易员
基础设施
/tradingagents/llm_clients/*.py- LLM 客户端/tradingagents/dataflows/*.py- 数据层/tradingagents/agents/utils/memory.py- 记忆系统
入口点
/cli/main.py- CLI 入口/main.py- Python API 示例
配置和文档
/README.md- 项目文档/pyproject.toml- 项目配置和依赖/.env.example- 环境变量模板
报告生成时间:2026年2月25日 分析基于 TradingAgents v0.2.0