ОБЗОР 2026

TradingAgents: команда LLM-агентов для анализа рынка

Открытый фреймворк, который воспроизводит структуру трейдинговой фирмы: аналитики, исследователи-спорщики, трейдер, риск-менеджеры и портфельный управляющий на разных моделях.

Финансовые агентыLangGraph2026
Категория Мультиагентные системыЛицензия Apache-2.0Обновлено 26.10.2026

TradingAgents превращает анализ акции в многошаговый разговор нескольких LLM-агентов: четыре аналитика собирают фундаментал, теханализ, новости и сентимент, исследователи устраивают дебаты «бык против медведя», трейдер формулирует сделку, риск-менеджеры её проверяют, а портфельный управляющий утверждает. Проект Tauric Research набрал 115 842 звезды GitHub к 26.10.2026 и выпускает релизы почти каждые две недели — последний, v0.7.0, вышел 16.10.2026.

Ниже — что именно входит в фреймворк, как он ставится, какие провайдеры моделей поддерживаются, что показывает бэктест и где граница между исследовательским инструментом и «роботом, который зарабатывает». Все метрики взяты из GitHub API, README репозитория и карточки статьи arXiv 2412.20138 — данные сняты 26.10.2026.

115 842
Звёзды GitHub
снято 26.10.2026
22 248
Форки
MIT-подобная активность
14
Релизов за 2026
v0.2.0 → v0.7.0
425
Коммитов за год
52 недели, GitHub stats

01Что такое TradingAgents

TradingAgents — это не «модель, которая предсказывает цену», а оркестратор ролей. Каждая роль — отдельный LLM-агент со своим набором инструментов: фундаментальный аналитик тянет отчётность, аналитик новостей читает ленту, аналитик сентимента собирает StockTwits и Reddit, технический считает MACD и RSI. Оркестрация построена на LangGraph, то есть весь прогон — это граф состояний, который можно остановить, сохранить в чекпоинт и продолжить.

Ключевое отличие от одиночного «промпта про акцию» — принудительный спор. После сбора отчётов включаются два исследователя (бычий и медвежий), затем трейдер собирает решение, риск-команда его оспаривает, а портфельный управляющий утверждает или отклоняет заявку. Решение уходит на симулированную биржу. Такая схема ближе к тому, как реально устроен исследовательский отдел, и её же авторы описывают в статье arXiv 2412.20138.

Путь одного прогона
1АналитикиФундаментал, новости, сентимент и теханализ работают параллельно2Дебаты исследователейБычий и медвежий агенты оспаривают выводы аналитиков3ТрейдерСобирает решение: направление, уверенность, обоснование4Риск и портфельРиск-команда проверяет сделку, управляющий утверждаетСхема по README репозитория TauricResearch/TradingAgents, v0.7.0

02Цифры: место среди открытых фреймворков

TradingAgents — не единственный открытый проект про LLM и рынки, поэтому полезно смотреть на него рядом с соседями. Ниже — звёзды GitHub у четырёх фреймворков, снятые в один день. Разница важна: OpenBB — это прежде всего платформа данных, ai-hedge-fund — учебный фонд с агентами-инвесторами, FinRobot — исследовательский фреймворк для отчётности.

Звёзды GitHub у открытых фреймворковснято 26.10.2026 через GitHub API
062 500125 000TradingAgents115 842OpenBB74 745ai-hedge-fund64 274FinRobot8 313
Значения в звёздах GitHub. Проекты разного класса: данные, учебный фонд, исследовательский фреймворк и мультиагентный оркестратор.
Коммиты TradingAgents по неделям13 последних недель, GitHub stats/participation
02040608002.0816.0830.0813.0927.0911.1025.10000071412577470020
Всего 425 коммитов за 52 недели. Пик приходится на недели перед релизами v0.5.2 и v0.7.0 — работа идёт волнами.
ПроектКлассЛицензияЗвёзды
TradingAgentsМультиагентный оркестратор на LangGraphApache-2.0115 842
OpenBBПлатформа рыночных данных и терминалNOASSERTION74 745
ai-hedge-fundУчебный фонд с агентами-инвесторамиMIT64 274
FinRobotИсследовательская автоматизация отчётностиApache-2.08 313
Снято 26.10.2026. Лицензия OpenBB отдаётся GitHub как NOASSERTION — условия уточняйте в репозитории.
Звёзды не показывают качество кода: у TradingAgents 154 открытых issue, у ai-hedge-fund — 183.

03Состав команды агентов

Роли в фреймворке не декоративные: у каждой свой системный промпт, свой набор инструментов и свой уровень модели. По умолчанию быстрая модель обслуживает аналитиков и трейдера, а глубокая — менеджеров: именно менеджеры принимают решения, где цена ошибки выше.

РольЧто делаетМодель по умолчанию
Fundamentals AnalystОтчётность из SEC EDGAR и Yahoo Finance, мультипликаторыбыстрая
Sentiment AnalystStockTwits, Reddit; опционально фильтр TypeSafe Jevбыстрая
News AnalystГлобальные новости и макро-индикаторыбыстрая
Technical AnalystMACD, RSI и другие индикаторы по ценовому рядубыстрая
Bull / Bear ResearcherСтруктурированные дебаты по отчётам аналитиковбыстрая
TraderСобирает решение по тикеру и датебыстрая
Risk TeamОценивает волатильность, ликвидность, риск портфеляглубокая
Portfolio ManagerУтверждает или отклоняет заявкуглубокая
Разделение «быстрая / глубокая» модель задаётся в конфиге (quick_think_llm и deep_think_llm).

Отдельно стоит блок памяти. Каждый завершённый прогон дописывает решение в журнал ~/.tradingagents/memory/trading_memory.md, а более поздний прогон «закрывает» те решения, у которых истёк горизонт удержания: подтягивает реализованную доходность, считает альфу к региональному бенчмарку и пишет короткую рефлексию. Портфельный управляющий читает последние решения по тому же тикеру и свежие уроки по другим — то есть система переносит опыт между прогонами.

04Установка и первый запуск

Пакета в PyPI нет — установка из исходников, Python 3.11 или новее. С версии v0.7.0 к каждому GitHub-релизу прикладывают wheel, но самый предсказуемый путь — виртуальное окружение и uv pip install . в клоне репозитория.

Установка из исходников
1
Клонируйте репозиторий
Нужен Python 3.11+ и git
terminalcopy
git clone https://github.com/TauricResearch/TradingAgents.git
2
Создайте окружение
uv или conda — на выбор
terminalcopy
uv venv --python 3.13
3
Активируйте окружение
Дальше ставьте зависимости внутри него
terminalcopy
source .venv/bin/activate
4
Поставьте пакет
Зависимости подтянутся сами
terminalcopy
uv pip install .
5
Заполните ключи
Минимум один провайдер моделей и ключи данных
terminalcopy
cp .env.example .env
6
Запустите CLI
Интерактивный выбор тикера, даты и провайдера
terminalcopy
tradingagents

Для скриптов и расписаний CLI работает без вопросов: аргументы закрывают шаг за шагом, а остальное берётся из переменных TRADINGAGENTS_*. Без терминала прогон не начнётся молча — он назовёт флаг или переменную, которой не хватает.

terminalbash
export TRADINGAGENTS_LLM_PROVIDER=openai
export TRADINGAGENTS_QUICK_THINK_LLM=gpt-6-luna
tradingagents --ticker NVDA --date 2026-09-23 --save
Docker без возни с окружением
В репозитории есть docker compose: docker compose run --rm tradingagents поднимает прогон, данные и кэш лежат в томе tradingagents_data. Каталог можно переопределить переменной TRADINGAGENTS_DATA_DIR. Для локальных моделей есть профиль ollama.

Тикер задаётся в формате Yahoo Finance с суффиксом биржи: AAPL и SPY для США, 0700.HK для Гонконга, 7203.T для Токио, 600519.SS для Шанхая, BTC-USD для крипты. Компания и региональный бенчмарк определяются автоматически по тикеру — это важно для корректной альфы в бэктесте.

05Провайдеры моделей и локальный запуск

Модель — сменная деталь: фреймворк поддерживает и зарубежные API, и локальные серверы, и даже подписку ChatGPT Plus/Pro вместо ключа. Последнее особенно практично, если ключа нет: вход выполняется командой tradingagents login chatgpt, токен хранится в ~/.tradingagents/chatgpt-auth.json, а прогоны расходуют лимиты тарифа.

ПровайдерПеременнаяПримечание
OpenAIOPENAI_API_KEYпо умолчанию GPT-6 Sol / Luna
AnthropicANTHROPIC_API_KEYможно вынести только менеджеров на Claude
GoogleGOOGLE_API_KEYGemini
DeepSeek, Groq, MistralDEEPSEEK_API_KEY и др.быстрые дешёвые модели для аналитиков
Qwen (DashScope)DASHSCOPE_API_KEYмеждународный и китайский эндпоинты
GLM, MiniMax, KimiZHIPU_API_KEY, MINIMAX_API_KEYотдельные ключи для CN-региона
OllamaOLLAMA_BASE_URLпо умолчанию localhost:11434/v1
vLLM, LM Studio, llama.cppbackend_urlлюбой OpenAI-совместимый сервер
Azure OpenAI.env.enterpriseкорпоративный контур
AWS Bedrockpip install .[bedrock]ключи AWS и регион
Полный список переменных — в README репозитория, раздел Required APIs.
Ключи платных провайдеров стоят денег: один прогон по нескольким агентам делает десятки запросов к модели.
Локальная модель ≠ бесплатный анализ
Ollama и vLLM снимают расходы на API, но качество дебатов на 7–8B модели заметно ниже, а прогон дольше: агенту нужно прочитать отчётность, новости и посчитать индикаторы. Для проверки пайплайна локальная модель подходит, для сравнения стратегий — редко.

06Бэктест, память и воспроизводимость

Один прогон даёт одно решение — по нему нельзя судить о качестве системы. Поэтому в фреймворке есть сетка: run_backtest прогоняет пайплайн по набору тикеров и дат, пишет собственный журнал памяти и оценивает те решения, у которых горизонт удержания уже закрылся. Каждая ячейка скорится по реализованной альфе к региональному бенчмарку и группируется по рейтингу.

terminalbash
tradingagents backtest NVDA --start 2026-06-01 --every 7

Важная деталь честности: вход считается по первому закрытию после даты анализа, потому что прогон читает новости, вышедшие уже после закрытия. Фундаментал из SEC EDGAR подаётся «как было подано»: если отчётность за fiscal year ещё не зарегистрирована на дату прогона, агент её не увидит. Apple за 2008 год подала совокупные активы $39,6 млрд, а в 2010 пересчитала до $36,2 млрд — прогон с датой между этими событиями увидит первую цифру.

  • Чекпоинты (--checkpoint) сохраняют состояние после каждого узла: упавший прогон продолжается с последнего шага, а не с нуля.
  • Базы чекпоинтов лежат по тикерам в каталоге ~/.tradingagents/cache/checkpoints/, файл на каждый тикер.
  • Отчёт о прогоне сохраняется деревом файлов и одной страницей complete_report.html — удобно читать с телефона.
  • Портфель передаётся объектом PortfolioContext или JSON-файлом: tradingagents --portfolio my_book.json.
  • Журнал памяти всегда включён и не перезаписывается бэктестом — бэктест ведёт свой.
Воспроизводимость: два прогона не совпадут
Авторы прямо пишут: система недетерминирована. Причины — сэмплирование моделей (reasoning-модели варьируют сильнее всего) и живые данные: новости и соцсети на «сейчас» отличаются от того, что было на историческую дату. Температуру можно понизить, но рассуждающие модели её в основном игнорируют.

07Кому подходит и где ограничения

Фреймворк честно позиционируется как исследовательский: в README и на сайте Tauric прямо сказано, что результат зависит от выбранных моделей, температуры, периода и качества данных, и что это не инвестиционная рекомендация. Практический смысл — не «получить сигнал», а посмотреть, как разные модели ведут себя на одной методике, и сравнить их между собой.

  • Сильная сторона — прозрачная методика: видно, какой аналитик что сказал и как из этого родилось решение.
  • Сильная сторона — честная работа с датами: point-in-time для отчётности, вход по первому закрытию, альфа к региональному бенчмарку.
  • Слабое место — цена прогона: десятки запросов к модели на один тикер, а сетка бэктеста умножает это на число дат.
  • Слабое место — сентимент из соцсетей шумный, а новостной фон на исторических датах система видит «как сейчас».
  • Слабое место — 154 открытых issue: проект движется быстро, релизы ломают совместимость конфигов.

Поэтому разумный сценарий: локальная установка, один-два тикера на дешёвых моделях, сравнение выводов с собственной ручной оценкой, и только потом — сетка бэктеста на нескольких месяцах. Если задача — торговать, фреймворк даёт лишь аргументы; исполнение и риск остаются на человеке.

Вердикт Qantcore
8,2/ 10
Лучший открытый пример «фирмы из агентов»: прозрачная оркестрация на LangGraph, дисциплина дат и честный бэктест. Но это исследовательская песочница с ценой в десятки вызовов модели за прогон и быстрым темпом ломающих изменений — не торговый робот.

Частые вопросы

TradingAgents — это торговый робот?
Нет. Это исследовательский фреймворк: он формирует решение и отправляет его на симулированную биржу, но не подключается к брокеру для реальных сделок. Авторы отдельно указывают, что результат не является инвестиционной рекомендацией.
Сколько стоит один прогон?
Зависит от провайдера и глубины: каждый прогон — это десятки запросов к модели (аналитики, дебаты, риск-команда). Точную сумму назвать нельзя, её считают по тарифу выбранного провайдера; локальные модели через Ollama или vLLM убирают плату за API, но требуют GPU.
Можно ли запустить полностью локально?
Да. Поддерживаются Ollama (llm_provider: ollama) и любой OpenAI-совместимый сервер — vLLM, LM Studio, llama.cpp — через openai_compatible и backend_url. Для локальных серверов ключ не нужен, если эндпоинт его не требует.
Есть ли пакет в PyPI?
На 26.10.2026 пакетов с именами tradingagents, trading-agents и tauric-tradingagents в PyPI нет — установка идёт из исходников через pip install . либо из wheel, приложенного к GitHub-релизу начиная с v0.7.0.
Какие рынки поддерживаются?
Любые, которые покрывает Yahoo Finance: США, Гонконг, Токио, Лондон, Индия, Канада, Австралия, A-акции Китая и крипта. Тикер указывается с суффиксом биржи, региональный бенчмарк определяется автоматически.

Источники и официальные ссылки

Нужен разбор другого агентского фреймворка?
В каталоге Qantcore — обзоры coding-агентов, моделей и платформ оркестрации с проверяемыми метриками и датой съёма данных.