TradingAgents представляет собой открытый Python-фреймворк, в котором несколько LLM-агентов совместно анализируют рыночную ситуацию и готовят решение для симулированной сделки. Репозиторий TauricResearch/TradingAgents можно использовать в качестве исследовательского стенда. Он показывает, как распределить анализ между ролями, объединить их в граф и проверить сценарии на исторических данных.
Я проверил ветку main на коммите a33fd4c0f134485a43553a2c23a63cb14adbd88f, доступном 18 июля 2026 года. В pyproject.toml указана версия пакета 0.3.1. Это характеристики выбранного снимка, а не гарантия того, что следующий запуск даст такой же результат.
Как устроен граф TradingAgents
Каждая роль отвечает за свой тип сигнала. В команду аналитиков входят:
фундаментальный аналитик, который изучает финансовые показатели компании и возможные тревожные сигналы;
аналитик настроений, который сводит новости, StockTwits и обсуждения Reddit в оценку краткосрочных настроений;
новостной аналитик, сопоставляющий глобальные новости и макроэкономические индикаторы;
технический аналитик, использующий MACD, RSI и другие индикаторы для поиска закономерностей.
Два исследователя, один с бычьим, другой с медвежьим взглядом, обсуждают отчёты аналитиков. Трейдер собирает материалы и предлагает время и размер сделки. Команда управления риском оценивает волатильность и ликвидность. После этого портфельный менеджер принимает или отклоняет предложение. Одобренная заявка идёт в симулированную биржу, а не на счёт брокера.
Разделение ролей удобно, когда нужно изменить состав графа или число раундов обсуждения. Но это не делает прогноз независимым доказательством. Все агенты зависят от модели, промптов и входных данных.
Установка и CLI
В README приведён следующий способ установки:
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
conda create -n tradingagents python=3.12
conda activate tradingagents
pip install .Можно выбрать другой менеджер окружений, если он устанавливает Python версии 3.10 или новее. Для контейнерного запуска есть Docker.
cp .env.example .env
docker compose run --rm tradingagentsКоманда tradingagents открывает интерактивный CLI. В нём выбираются тикер, дата анализа, провайдер LLM и глубина исследования. Для локальной модели предусмотрен профиль Ollama. Для vLLM, LM Studio, llama.cpp или собственного ретранслятора можно указать OpenAI-совместимую конечную точку.
Запуск из Python
Граф можно встроить в собственный скрипт:
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
ta = TradingAgentsGraph(debug=True, config=DEFAULT_CONFIG.copy())
_, decision = ta.propagate("NVDA", "2026-01-15")
print(decision)Конфигурация позволяет выбрать провайдера, модели и количество раундов дебатов:
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "openai"
config["deep_think_llm"] = "gpt-5.5"
config["quick_think_llm"] = "gpt-5.4-mini"
config["max_debate_rounds"] = 2Те же значения можно задать с помощью переменных окружения из default_config.py. Ключи не следует хранить в исходном коде или добавлять в коммиты вместе с .env.
Данные и провайдеры
По умолчанию запросы рыночных, технических, фундаментальных и новостных данных выполняются через Yahoo Finance. В CHANGELOG для версии 0.3.0 указаны FRED для макроэкономических показателей и Polymarket для вероятностей рынков прогнозов. В README также перечислены OpenAI, Google, Anthropic, xAI, DeepSeek, Qwen, GLM, MiniMax, OpenRouter, Ollama, Azure OpenAI и универсальный OpenAI-совместимый режим.
Наличие сервиса в списке документации не означает, что он доступен в конкретной среде. Потребуются собственные ключи, конечная точка и подходящая модель. Перед запуском ознакомьтесь с документацией провайдера, лимитами и правилами работы с данными.
Воспроизводимость и контрольные точки
Авторы предупреждают, что два запуска TradingAgents могут отличаться. LLM генерирует ответы стохастически, новости и публикации меняются, а на результат влияют температура, диапазон дат, модель и качество данных. Для сравнения фиксируйте коммит, дату анализа, конфигурацию, версии зависимостей и снимок входных данных.
Параметр --checkpoint сохраняет состояние LangGraph после каждого узла. После сбоя работу можно продолжить с последнего успешно выполненного шага. Файлы SQLite находятся в ~/.tradingagents/cache/checkpoints/; флаг --clear-checkpoints очищает их перед новым запуском. Журнал решений хранится в ~/.tradingagents/memory/trading_memory.md; путь можно изменить с помощью TRADINGAGENTS_MEMORY_LOG_PATH.
Даже зафиксированная дата запуска не является полностью определённой, потому что новости и социальные источники обновляются. В README отдельно сказано, что результат бэктеста не обязан совпадать с опубликованными цифрами.
Лицензия и границы применения
Файл LICENSE содержит Apache License 2.0. Лицензия определяет права на код. Она не отменяет условия поставщиков данных и необходимость самостоятельно проверять результаты экспериментов.
В README TradingAgents назван исследовательским фреймворком и прямо указано, что проект не предоставляет финансовых, инвестиционных или торговых рекомендаций. Любой сигнал необходимо проверять отдельно. Симулированный ордер не является исполненной рыночной сделкой.
Где продолжить работу
Чтобы проверить доступные LLM и API, можно открыть OdiRouter, каталог моделей и документацию для старта. Список моделей, условия и доступность меняются, поэтому проверяйте их перед подключением. OdiRouter не является автором TradingAgents, не заявляет о партнёрстве с TauricResearch и не гарантирует доступ к каждому провайдеру, указанному в README.
Источники
Материал подготовлен OdiRouter в качестве независимой публикации. Название и код TradingAgents принадлежат их авторам; статья не является инвестиционной рекомендацией.