
TradingAgents simulates a trading firm with AI agents. You give it a ticker and a date. Analyst agents study the fundamentals, sentiment, news and charts. A bullish and a bearish researcher debate the case. A trader proposes a trade, a risk team challenges it, and a portfolio manager approves or rejects it.
It started as a research paper, and the repository has passed 100,000 stars. The authors state clearly that it's a research framework, not financial advice.

| Maker | Tauric Research. Paper by Yijia Xiao, Edward Sun, Di Luo and Wei Wang |
| Licence | Apache 2.0 |
| Language | Python, built on LangGraph |
| Created | 28th December 2024, with the paper on arXiv the same day |
| Latest | Version 0.5.1, September 2026 |
| Traction | 108,680 stars, 20,823 forks |
How the firm is organised
| Team | Role |
|---|---|
| Analysts | 4 agents: fundamentals (financials, red flags), sentiment (news, StockTwits, Reddit), news and macro, and technical indicators such as MACD and RSI |
| Researchers | A bullish and a bearish agent debate the analysts' reports, weighing gains against risks |
| Trader | Combines the reports and the debate into a proposal: what to trade, when, and how much |
| Risk team | Aggressive, neutral and conservative agents review the proposal against volatility and liquidity |
| Portfolio manager | Approves or rejects. An approved order goes to a simulated exchange |
The debate is the core idea. Instead of 1 model giving 1 opinion, opposing agents argue, and a separate agent decides with both sides on the table.
For business people
What it's for: researching how AI agents reason about markets, and getting a structured, multi-angle analysis of a stock. The output is a decision with the reasoning of each team behind it.
What it isn't: a money machine. The paper reports better cumulative returns, Sharpe ratio and maximum drawdown than its baseline strategies, but on its own back-tests. The README warns that results depend on the model, the settings, the period and the data quality, and runs aren't deterministic.
What changed in 2026: the recent releases fix a problem that makes many AI back-tests look better than reality, called look-ahead bias. When you test a date in the past, the agents must only see what was known that day. Version 0.5.0 serves company statements from SEC EDGAR exactly as filed on that date. For example, a run dated before Apple restated its 2008 total assets reads the original $39.6 billion, not the restated $36.2 billion.
The costs: the code is free. Each analysis runs many model calls, so the cost depends on the models you pick. It can also run local models through Ollama for free.
For technical people
Install and run
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
uv venv --python 3.12 && source .venv/bin/activate
uv pip install .
export ANTHROPIC_API_KEY=... # or the key of another supported provider
tradingagents # interactive CLI: ticker, date, model, research depth
A Docker setup exists too, with an Ollama profile for local models.
Python
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "anthropic"
config["max_debate_rounds"] = 2
ta = TradingAgentsGraph(debug=True, config=config)
_, decision = ta.propagate("NVDA", "2026-09-01")
print(decision)
The config takes 2 models: a deep_think_llm for the hard reasoning and a cheaper quick_think_llm for routine steps.
Worth knowing
- Markets: anything Yahoo Finance covers, with exchange suffixes:
AZN.Lfor London,7203.Tfor Tokyo,BTC-USDfor crypto. - Providers: more than 15 model providers, including Anthropic, OpenAI, Google, DeepSeek, Mistral and any OpenAI-compatible server. OpenRouter works as 1 key for all (see OpenRouter ).
- Data: Yahoo Finance, Alpha Vantage, FRED for macro data, and SEC EDGAR for filings, which needs no key.
- Your own book: since version 0.5.0, a portfolio can be passed in, so the trader and risk team work against real holdings.
- Back-testing over a grid of tickers and dates, with checkpoint resume for long runs.
- Jev screening: with a TypeSafe key, the sentiment analyst uses Jev to drop social posts that aren't about the company and to label the rest bullish, bearish or neutral (see Jev ).
⚠️ WARNING: the portfolio manager executes on a simulated exchange. Connecting the decisions to a real broker is your own code and your own risk.
Value
I don't trade with AI, and this note isn't a reason to start. The value for me is the architecture. It's the clearest public example of structured disagreement between agents: analysts gather, opposing researchers argue, a separate agent decides, and a risk team can still say no. That's the same principle as my review loop (see The Council ), applied to a decision instead of a document.
2 ideas worth borrowing for any agent that researches accounts or deals:
- A bull and a bear agent before any recommendation.
- Point-in-time data: when an agent reasons about a past date, it must only see what was known then.
Further Reading

