TradingAgents from TauricResearch models a trading firm as a set of LLM agents. The README’s framing is that the framework “mirrors the dynamics of real-world trading firms” — not a single model asked for a verdict, but a pipeline of specialists who disagree before anything is decided. It is built on LangGraph, licensed Apache-2.0, and documented in a paper: Xiao, Sun, Luo and Wang, TradingAgents: Multi-Agents LLM Financial Trading Framework (arXiv:2412.20138).
The org chart is the architecture
What makes this more interesting than a prompt chain is that the disagreement is structural:
- Analyst team — four analysts run in parallel, each with its own tools: fundamentals (financials and performance metrics), sentiment (news headlines, StockTwits and Reddit combined into one read), news (global news and macro indicators), and technical (indicators such as MACD and RSI). The research debate only begins once all four reports are in.
- Researcher team — a bullish and a bearish researcher argue over those findings, weighing gains against risks.
- Trader — combines analyst and researcher output into a decision on timing and size.
- Risk management and Portfolio Manager — risk analysts assess volatility, liquidity and related factors; the Portfolio Manager approves or rejects. Approved orders go to a simulated exchange.
The bull-versus-bear pairing is the design’s real idea. A single model asked “should I buy NVDA” produces a confident answer shaped by whatever it saw last. Forcing an explicit adversarial step makes the reasoning inspectable, which is the point of a research scaffold.
Data and models
Fundamentals come from SEC EDGAR, which needs no API key — setting SEC_EDGAR_USER_AGENT is recommended so the SEC can contact you. Yahoo Finance covers market data, non-SEC company statements and company news. Social sentiment comes from StockTwits and Reddit. FRED (macro), Alpha Vantage and Polymarket are optional additions.
The provider list is unusually long — OpenAI, Google, Anthropic, xAI, DeepSeek, Qwen, GLM, MiniMax, OpenRouter, Mistral, Kimi, Groq, NVIDIA NIM, Ollama, Azure OpenAI, AWS Bedrock, and any OpenAI-compatible endpoint. Usefully, quick-thinking and deep-thinking tiers can run on different providers, so the cheap model can do the gathering and the expensive one the arguing.
Running it
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
conda create -n tradingagents python=3.13
conda activate tradingagents
pip install .
tradingagents
uv works instead of conda, and there is a Docker path (cp .env.example .env then docker compose run --rm tradingagents). Non-interactive runs take flags:
tradingagents --ticker NVDA --date 2026-09-23 \
--analysts market,news,fundamentals --save --no-show
From Python:
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
ta = TradingAgentsGraph(debug=True, config=DEFAULT_CONFIG.copy())
state, decision = ta.propagate("NVDA", "2026-09-01")
You need a key for your chosen LLM provider; FRED, Alpha Vantage and TypeSafe keys are optional, and Ollama or a local server needs none.
What the project says about using it for money
Clearly and repeatedly: don’t. The README states the framework “is designed for research purposes” and “is not intended as financial, investment, or trading advice.” It warns that performance depends on the models used, temperature and data quality, and on reproducibility it is blunt: “Backtest results are not guaranteed to match any published figure.” It advises treating the project as “a research scaffold for studying multi-agent analysis” rather than a strategy with a fixed return.
That last line deserves weight, because it cuts against the obvious temptation. A framework with a paper, a simulated exchange and a risk committee looks like a system. Its authors are telling you the published numbers are not a floor you can stand on — the configuration that produced them is not the configuration you will run.
The genuine use
Studying multi-agent design. If you want to understand how to structure specialists, force adversarial review and gate a decision behind a risk step, this is a well-documented, paper-backed example with real data sources attached, and the provider flexibility means you can run it against local models while you learn.
Treat the trading output as the artefact of an experiment, not a recommendation — exactly as the authors ask.






