TradingAgents Guide
Learn the TradingAgents multi-agent debate architecture — analyst teams, bull/bear research, and risk deliberation — for educational simulation and software design.
Important disclaimer
This guide is for education and software design only. It explains how the open-source TradingAgents framework models multi-agent debate. It is not financial, investment, or trading advice. Past simulation results do not predict real market outcomes. Do not trade real money based on LLM outputs without licensed professional guidance and your own due diligence.
What TradingAgents is
TradingAgents is an open-source multi-agent framework from Tauric Research. It simulates a trading firm: specialist analysts gather evidence, bullish and bearish researchers debate, a trader synthesizes a plan, and risk managers stress-test before a portfolio manager approves or rejects.
The valuable lesson for builders is the structured debate pattern — forcing opposing views before a decision — not the buy/sell signal itself.
Architecture overview
Phase 1: Analyst Team
├── Fundamental analyst (financials, ratios)
├── Sentiment analyst (news, social tone)
├── News analyst (macro, headlines)
└── Technical analyst (indicators, price action)
Phase 2: Research Debate
├── Bull researcher (argues upside)
├── Bear researcher (argues downside)
└── Research manager (judges debate → investment plan)
Phase 3: Trading
└── Trader agent (synthesizes plan → trade proposal)
Phase 4: Risk Deliberation
├── Aggressive / Conservative / Neutral debators
└── Risk judge → final decision (BUY / SELL / HOLD)
Built on LangGraph with configurable LLM providers (OpenAI, Anthropic, Google, Ollama, and others).
Why the debate pattern matters
Single-agent financial prompts tend toward confident, homogeneous answers. TradingAgents encodes institutional skepticism:
- Specialists produce structured reports (not one blob of analysis)
- Adversarial researchers must cite analyst outputs
- Risk team rotates stances before approval
- Judge models (deeper "thinking" LLMs) summarize debate transcripts
You can reuse this pattern for any high-stakes decision: hiring, vendor selection, security review, or product prioritization.
Install and run (research sandbox)
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
pip install -e .
export OPENAI_API_KEY="your-key" # or provider of choice
Minimal Python usage:
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
config = DEFAULT_CONFIG.copy()
config["deep_think_llm"] = "gpt-4o"
config["quick_think_llm"] = "gpt-4o-mini"
config["max_debate_rounds"] = 2
config["online_tools"] = True
ta = TradingAgentsGraph(config=config)
_, decision = ta.propagate("AAPL", "2024-05-10")
print(decision)
Run on historical dates in a sandbox. Treat output as a transcript to study, not an order ticket.
Key configuration knobs
| Setting | Effect |
|---|---|
max_debate_rounds | Bull/bear exchange count before research manager judges |
max_risk_discuss_rounds | Aggressive / conservative / neutral cycles |
deep_think_llm | Judge and manager models |
quick_think_llm | Analyst and debator models (cheaper, faster) |
online_tools | Live data vs. cached fixtures |
Start with 1 debate round and cheap models while learning the graph. Scale up for richer transcripts, not for "better trades."
Debate prompt pattern (adaptable template)
Use this outside finance:
Role: Bull advocate
Input: [structured reports from specialists]
Task: Argue for proceeding. Cite specific evidence. Address top bear concern.
Role: Bear advocate
Input: [same reports + bull's last message]
Task: Argue against or for delay. Cite risks. Challenge bull assumptions.
Role: Judge
Input: [full debate transcript]
Task: Summarize both sides. State conditions that would change your view. Output decision + confidence (low/med/high).
Observability checklist
When running experiments, log:
- Each analyst report (fundamental, sentiment, news, technical)
- Full bull/bear transcript per round
- Research manager
investment_planfield - Risk debate transcript
- Final
BUY/SELL/HOLDtoken and natural-language rationale
Compare runs across models and temperatures. Non-determinism is a feature of the research, not a bug to hide.
Extend + pitfalls
Reuse the debate pattern for hiring, vendor selection, or security review — swap analyst roles accordingly. Do not connect live brokerage APIs until you understand execution risk and compliance.
Common mistakes: treating simulation metrics as guarantees, using one LLM for every role, skipping risk deliberation, running without logged transcripts.
Repo: github.com/TauricResearch/TradingAgents · Disclaimer: tauric.ai/disclaimer
Study the debate architecture. Build better decision systems. This is not investment advice.