TradingAgents is a Python framework that stands up a crew of large-language-model agents and has them play the roles of a trading firm: analysts, bullish and bearish researchers, a trader, and risk managers. It is built for developers, quantitative researchers and finance-curious engineers who want to study how a group of agents reasons its way to a market decision, rather than for anyone hunting for a push-button money machine. The project comes from Tauric Research, carries an Apache-2.0 license, and is accompanied by a paper on arXiv (2412.20138).
What it does
The premise behind the repository is the one the video opens with: no single person, and no single prompt, can out-think a whole trading floor. Real desks split the work across specialists who disagree with each other on purpose, and the disagreement is the product. TradingAgents copies that shape in software. Instead of asking one model "should I buy this stock," it assigns separate agents to separate jobs and lets them argue.
A run produces a debate rather than a one-line answer. Analysts gather and frame information, a bullish researcher builds the case for the position, a bearish researcher tries to tear it down, a trader weighs what survives, and risk managers get a say before anything is treated as a decision. You can read the exchange, which is most of the point — the reasoning is inspectable in a way a single model's verdict is not.
The repository has been public since late December 2024 and is still being pushed to. It has passed 103,000 stars and roughly 19,900 forks, which is enormous for a research framework and says something about how many people want to poke at this idea. Whether that attention reflects working trading strategies or simply a very appealing premise is a separate question, and the repository itself does not settle it.
How it works
The design principle is role separation. Each agent gets a narrow brief and its own view of the problem, and the framework carries messages between them so that one agent's output becomes another's input. Because the bull and the bear are distinct agents with opposing mandates, the system surfaces counterarguments that a single-agent setup tends to smooth over — the model is no longer free to agree with itself.
Everything is written in Python and driven by language models, so the quality of a run depends on the model you point it at and on the data the analyst agents are given. The multi-agent structure is the contribution; it is not a source of market data or a broker.
The academic write-up on arXiv describes the approach in more detail than the README does, and is worth reading first if you intend to modify the agent roles rather than just run them.
Getting started
Clone the repository and work from its own README, which is the authoritative setup guide and is also published in several translated versions. Because every agent is an LLM call, plan for model access and for the cost of a run that involves multiple agents talking in several rounds — a debate is not one request.
The project also runs a Discord community and posts on X under the Tauric Research name, which is where most of the practical troubleshooting happens for a codebase moving this fast.
When to use it / when not
Reach for this if you are studying multi-agent architectures and want a concrete, non-toy example of role specialisation and structured disagreement. It is equally useful as a teaching artifact: the trading-desk metaphor makes the value of adversarial agent roles obvious in a way that abstract framework documentation never does. And if you are building agent systems in any domain where a decision should be challenged before it is accepted — compliance review, medical triage, incident response — the pattern here transfers even if the finance parts do not.
Do not reach for it expecting validated investment performance. Nothing in the repository's own materials claims a profitable strategy, and none of the roles here make the underlying model better at predicting prices; they make its reasoning easier to read. Anyone thinking about connecting this to real capital should treat it as a research prototype and assume the burden of proof is entirely theirs. If you want a backtesting engine or a broker integration, this is the wrong layer of the stack.
TradingAgents deserves attention from two groups in particular: engineers designing multi-agent systems, who will find one of the cleanest public demonstrations of why adversarial roles beat a single oracle; and quantitative researchers curious whether LLM reasoning adds anything to a trading process, who now have a shared reference implementation to test that question against instead of building one from scratch. Everyone else should enjoy the debate transcripts for what they are — a genuinely interesting look at machine reasoning — and keep their money out of it until they have done their own work.