TradingAgents: A Multi-Agent LLM Trading Desk
TradingAgents is a multi-agent LLM framework for trading research: four analysts, a bull-bear debate, a simulated exchange. What it is, and what it is not.
Table of Contents
TradingAgents is a research framework that models a trading desk as a set of LLM agents arguing with each other. Analysts produce reads, a bullish researcher and a bearish researcher debate them, a trader writes a proposal, a risk team pokes holes in it, and a portfolio manager approves or rejects. When an order does get approved it goes to a simulated exchange. There is no broker connection in this repository.
That detail is the first thing to establish, because 96,880 stars and a name like this one attract a lot of people looking for something else entirely.
TauricResearch/TradingAgents went up on December 28, 2024, is Apache-2.0 licensed, and has the paper to go with it: arXiv 2412.20138, TradingAgents: Multi-Agents LLM Financial Trading Framework. Star count is current as of August 10, 2026, and the latest release is v0.3.1 from July 5.
Key Takeaways:
- It's a research framework. The repo's own disclaimer says trading performance varies with model choice, temperature, period and data quality, and that it is not intended as financial, investment or trading advice.
- Approved orders execute against a simulated exchange, not a real one.
- The agent roster mirrors a firm: four analysts, two opposed researchers, a trader, a risk team, a portfolio manager holding the veto.
- v0.3.1 added Alpha Vantage look-ahead filtering, which tells you the maintainers care about a failure mode most LLM trading demos ignore completely.
- Model support is broad and provider-agnostic: OpenAI, Anthropic, Google, xAI, DeepSeek, Qwen, GLM, MiniMax, Groq, Mistral, NVIDIA, Bedrock, OpenRouter, Ollama, or any OpenAI-compatible endpoint.
What TradingAgents is
An implementation of one idea: that the disagreement inside a trading firm is a feature, and you can model it with agents that hold assigned positions.
The Analyst Team splits four ways. The Fundamentals Analyst works company financials, hunting intrinsic value and red flags. The Sentiment Analyst pulls news headlines, StockTwits and Reddit chatter into a single short-term mood read. The News Analyst tracks global news and macro indicators. The Technical Analyst runs indicators like MACD and RSI.
Then the interesting part. The Researcher Team holds a bull and a bear who take the analysts' output and argue, in a structured debate, over whether the upside justifies the risk. That adversarial step is the mechanism the paper is built around, and it's the piece that separates this from a prompt chain that flatters its own first conclusion.
The Trader Agent turns the surviving argument into a proposal with timing and size. Risk Management assesses volatility, liquidity and other exposures, adjusts the strategy, and reports to the Portfolio Manager, who approves or rejects. Approval routes the order to the simulated exchange.
Read as an architecture rather than as a trading product, it's a clean case study in giving agents opposed objectives instead of one shared goal, which is a pattern that generalises well past finance. We've written about the architecture side of multi-agent systems if that's the part you're here for.

Is it a trading bot? No, and the distinction matters
People find this repo, see 96,000 stars and the word trading, and fill in the rest. Worth spelling out what isn't in the box.
No broker integration. No live order routing. No account connection, no execution venue, no position management against real capital. The portfolio manager's approved order hits a simulator. Turning that into live trading would mean writing the execution layer, the risk controls, the reconciliation and the compliance around it, which is most of the work in an actual trading system and none of it is here.
The project says so itself in a callout: the framework is designed for research purposes, performance varies with backbone model, temperature, period, data quality and other non-deterministic factors, and it isn't financial, investment or trading advice. That's an unusually specific disclaimer, and the list of variables is the honest part. Change the model and you change the output. Run the same day twice and you may not get the same decision.
None of which makes it useless. As a testbed for how role-specialised agents behave when forced to disagree, it's one of the more serious open implementations available, and the finance domain gives it something rare in agent research: an outcome you can actually score.

What TradingAgents does not do
Worth its own list, because the gap between "framework" and "system you could run money through" is where people get hurt.
It doesn't tell you whether it's right. There's no published live-trading track record, and any backtest you run is a backtest, with all the usual ways those flatter themselves. It doesn't handle position sizing against a real portfolio, doesn't manage slippage or fills, and doesn't know what your existing exposure is. It doesn't monitor anything continuously; you run it for a period and read the decision log.
And it can't remove the underlying problem, which is that a language model's read on a market is a read on the text about that market. The Sentiment Analyst aggregates Reddit and StockTwits. That's a measurement of what retail chatter says, which is a real signal about sentiment and not a signal about value.
This article describes a piece of open-source research software. It is not investment advice, and nothing here should be read as a suggestion to trade anything.
The look-ahead detail worth noticing
Buried in the v0.3.1 release notes is "Alpha Vantage look-ahead filtering," and it's the most credible thing in the changelog.
Look-ahead bias is when your backtest sees information it couldn't have had at the time: a revised figure, a headline timestamped to publication rather than to when it hit the wire, a fundamentals row that got restated later. It's the standard way a strategy looks brilliant in testing and dies in production, and it is everywhere in LLM trading demos, most of which feed a model recent data and marvel at the results.
Building a filter for it means someone on the project understood the difference between a demo and an experiment. Same story with v0.3.0's "verified data-access contract" and the CI gate. These are unglamorous changes that only matter if you intend the numbers to mean something.
Data vendors now include FRED and Polymarket alongside Alpha Vantage, which broadens what the analysts can see beyond price and news.
Running it, and what it costs
Standard Python project: clone, make an environment on 3.12, pip install .. Docker Compose works too, and there's an Ollama profile if you want local models.
The provider list is long, and worth reading as a statement about portability rather than a feature list. OpenAI, Google, Anthropic, xAI, DeepSeek, Qwen on either the international or China endpoint, GLM on Z.AI or BigModel, MiniMax on either region, OpenRouter, Bedrock, and any OpenAI-compatible server including vLLM and LM Studio. Alpha Vantage handles market data.
Costs come from the architecture. Every decision runs four analysts, a two-sided debate, a trader, a risk team and a portfolio manager, which is a lot of tokens for one call on one ticker on one day. Multiply by a backtest window and the bill grows fast. The Ollama and OpenAI-compatible paths exist partly for this reason: local inference makes long experiments affordable in a way frontier APIs don't.
Nobody publishes a cost-per-run figure, so measure one ticker for one day before you queue up a year.
Where agent frameworks actually help finance teams
Strip the trading question away and the useful pattern underneath is a research workflow, not an execution one.
The parts of a finance team's day that agents do well are the ones with defined inputs and a reviewable output: pulling filings and flagging what changed, watching a news feed against a watchlist, assembling the same weekly pack from the same six sources, chasing a number back to its source document. Judgement stays human. What gets automated is the reading, which is exactly what we mean in our take on what autonomous agents should actually handle.
That framing survives when the trading framing doesn't. An agent that summarises overnight developments across twenty tickers by 7am is delivering value with no regulatory exposure and no capital at risk. One that decides what to buy is a different product with a different set of licences.
Why the bull-bear debate is the actual contribution
Most multi-agent demos assign roles that all point the same way. A researcher, a writer and an editor collaborating on a task will converge, because nothing in the setup rewards any of them for being difficult.
TradingAgents assigns two agents opposed positions and makes them argue before anything moves forward. The bull has to make the case, the bear has to attack it, and the trader only sees what survives. That structure buys you something a single agent with a "consider both sides" instruction rarely delivers: an actual objection, argued by something with an incentive to win.
Whether it produces better decisions is unproven, and the paper is a research contribution rather than a performance claim. What it produces reliably is a legible trail. You can read why the position was taken, what the objection was, and where the risk team pushed back, which for anything reviewable matters more than the answer itself.
Financial markets just happen to be a convenient laboratory. The same construction works anywhere a decision benefits from having someone paid to disagree.
FAQ
Is TradingAgents free to use?
Yes, Apache-2.0, and the whole framework is in the repository. Inference is your cost, and with four analysts, a bull-bear debate, a trader, a risk team and a portfolio manager involved in every decision, it adds up faster than a single-agent setup would.
Does TradingAgents give financial advice?
No. The project states plainly that it exists for research purposes and is not intended as financial, investment or trading advice, with a linked disclaimer. It also doesn't connect to a broker: approved orders execute against a simulated exchange.
What LLMs does TradingAgents support?
A long list, and any OpenAI-compatible endpoint besides. OpenAI, Anthropic, Google, xAI, DeepSeek, Qwen (international and China), GLM via Z.AI or BigModel, MiniMax on both regions, Groq, Mistral, NVIDIA, OpenRouter, AWS Bedrock, Azure OpenAI, and local models through Ollama, vLLM or LM Studio.
Can TradingAgents trade real money?
Not as shipped. There's no broker integration and no live execution path; the simulated exchange is where approved orders go. Building a live version means adding execution, risk controls, reconciliation and whatever your jurisdiction requires, none of which the repository provides.
Who built TradingAgents?
Tauric Research, who also published the paper behind it and a related project, Trading-R1. The repository has been on GitHub since December 2024 and reached #1 Repository of the Day on Trendshift.
Continue Reading
More ResearchThe MoClaw editorial team writes about workflow automation, AI agents, and the tools we build. Default byline for industry overviews, listicles, and collaborative pieces.
Turn insights into action.
MoClaw automates the recurring work your analysis points to. No engineering required.
References: TauricResearch/TradingAgents on GitHub · TradingAgents: Multi-Agents LLM Financial Trading Framework (arXiv 2412.20138) · Tauric Research disclaimer · TradingAgents project page · Trading-R1 technical report (arXiv 2509.11420) · Alpha Vantage