传统量化交易系统依赖人工编写的规则和统计模型:技术指标交叉、均线策略、布林带突破……这些方法的共同问题是无法理解非结构化信息(新闻、财报、社交媒体情绪),更无法像人类分析师那样综合多维度信息进行推理判断。
TradingAgents 的答案是:用多个专业化 LLM Agent 模拟一个真实的交易分析团队。
架构总览
TradingAgents 采用 分层 + 管道 的混合架构,核心编排引擎是 LangGraph:
2026/5/9...大约 6 分钟
传统量化交易系统依赖人工编写的规则和统计模型:技术指标交叉、均线策略、布林带突破……这些方法的共同问题是无法理解非结构化信息(新闻、财报、社交媒体情绪),更无法像人类分析师那样综合多维度信息进行推理判断。
TradingAgents 的答案是:用多个专业化 LLM Agent 模拟一个真实的交易分析团队。
TradingAgents 采用 分层 + 管道 的混合架构,核心编排引擎是 LangGraph:
前两篇文章分别介绍了架构设计和 Agent 角色。本文将追踪一次完整的交易决策——从用户输入 ta.propagate("NVDA", "2024-05-10") 到最终输出五档评级。
一切从 propagate() 方法开始:
# tradingagents/graph/trading_graph.py
def propagate(
self,
company_name: str,
trade_date: str,
past_context: str = "",
callbacks: Optional[List] = None,
) -> Tuple[Dict[str, Any], str]:
"""运行完整的交易决策流程"""
# Phase A: 创建初始状态
init_state = self.propagator.create_initial_state(
company_name, trade_date, past_context
)
self.ticker = company_name
self.curr_state = init_state
# 检查是否有 checkpoint 可以恢复
saved_state = checkpoint_step(self.graph, company_name, trade_date)
# Phase B: 执行图
events = self.graph.stream(
saved_state or init_state,
**self.propagator.get_graph_args(callbacks)
)
for event in events:
self._process_event(event)
# Phase C: 后处理
final_decision = self._extract_final_decision(self.curr_state)
return self.curr_state, final_decision