TradingAgents: Multi-Agents LLM Financial Trading Framework
이 번역은 AI가 원문 README를 옮긴 것입니다. 원문이 항상 우선합니다.
<p align="center"> <img src="assets/TauricResearch.png" style="width: 60%; height: auto;"> </p>
<div align="center" style="line-height: 1;"> <a href="https://arxiv.org/abs/2412.20138" target="blank"><img alt="arXiv" src="https://img.shields.io/badge/arXiv-2412.20138-B31B1B?logo=arxiv"/></a> <a href="https://discord.com/invite/hk9PGKShPK" target="blank"><img alt="Discord" src="https://img.shields.io/badge/Discord-TradingResearch-7289da?logo=discord&logoColor=white&color=7289da"/></a> <a href="./assets/wechat.png" target="blank"><img alt="WeChat" src="https://img.shields.io/badge/WeChat-TauricResearch-brightgreen?logo=wechat&logoColor=white"/></a> <a href="https://x.com/TauricResearch" target="blank"><img alt="X Follow" src="https://img.shields.io/badge/X-TauricResearch-white?logo=x&logoColor=white"/></a> <br> <a href="https://github.com/TauricResearch/" target="blank"><img alt="Community" src="https://img.shields.io/badge/JoinGitHub_Community-TauricResearch-14C290?logo=discourse"/></a> </div>
<div align="center"> <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=de">Deutsch</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=es">Español</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=fr">français</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=ja">日本語</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=ko">한국어</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=pt">Português</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=ru">Русский</a> | <a href="https://www.readme-i18n.com/TauricResearch/TradingAgents?lang=zh">中文</a> </div>
TRADINGAGENTS_* 환경 변수 설정 가능 및 API 키 자동 감지, 원격 Ollama 지원, 비미국 알파 벤치마크, 티커 경로 탐색 강화.🎉 TradingAgents 공식 출시! 많은 문의를 받았으며 커뮤니티의 열정에 감사드립니다.
>
그래서 프레임워크를 완전히 오픈소스로 공개하기로 결정했습니다. 여러분과 함께 영향력 있는 프로젝트를 만들기를 기대합니다!
<div align="center">
🚀 TradingAgents | ⚡ 설치 및 CLI | 🎬 데모 | 📦 패키지 사용법 | 🤝 기여하기 | 📄 인용
</div>
TradingAgents는 실제 트레이딩 회사의 역학을 반영한 다중 에이전트 트레이딩 프레임워크입니다. 기본 분석가, 감성 전문가, 기술 분석가부터 트레이더, 리스크 관리 팀까지 특화된 LLM 기반 에이전트를 배치하여 플랫폼이 협력적으로 시장 상황을 평가하고 트레이딩 결정을 내립니다. 또한, 이 에이전트들은 최적의 전략을 찾기 위해 동적 토론을 진행합니다.
<p align="center"> <img src="assets/schema.png" style="width: 100%; height: auto;"> </p>
TradingAgents 프레임워크는 연구 목적으로 설계되었습니다. 트레이딩 성능은 선택된 백본 언어 모델, 모델 온도, 트레이딩 기간, 데이터 품질 및 기타 비결정적 요인을 포함한 여러 요인에 따라 달라질 수 있습니다. 이는 재정, 투자 또는 트레이딩 조언으로 의도되지 않았습니다.
우리의 프레임워크는 복잡한 트레이딩 작업을 특화된 역할로 분해합니다.
<p align="center"> <img src="assets/analyst.png" width="100%" style="display: inline-block; margin: 0 2%;"> </p>
<p align="center"> <img src="assets/researcher.png" width="70%" style="display: inline-block; margin: 0 2%;"> </p>
<p align="center"> <img src="assets/trader.png" width="70%" style="display: inline-block; margin: 0 2%;"> </p>
<p align="center"> <img src="assets/risk.png" width="70%" style="display: inline-block; margin: 0 2%;"> </p>
TradingAgents 클론:
git clone https://github.com/TauricResearch/TradingAgents.git
cd TradingAgents
선호하는 환경 관리자로 가상 환경 생성:
conda create -n tradingagents python=3.12
conda activate tradingagents
패키지 및 종속성 설치:
pip install.
또는 Docker로 실행:
cp.env.example.env # API 키 추가
docker compose run --rm tradingagents
Ollama로 로컬 모델 사용:
docker compose --profile ollama run --rm tradingagents-ollama
TradingAgents는 여러 LLM 제공자를 지원합니다. 선택한 제공자의 API 키를 설정하세요:
export OPENAI_API_KEY=... # OpenAI (GPT)
export GOOGLE_API_KEY=... # Google (Gemini)
export ANTHROPIC_API_KEY=... # Anthropic (Claude)
export XAI_API_KEY=... # xAI (Grok)
export DEEPSEEK_API_KEY=... # DeepSeek
export DASHSCOPE_API_KEY=... # Qwen — 국제 (dashscope-intl.aliyuncs.com)
export DASHSCOPE_CN_API_KEY=... # Qwen — 중국 (dashscope.aliyuncs.com)
export ZHIPU_API_KEY=... # GLM via Z.AI (국제)
export ZHIPU_CN_API_KEY=... # GLM via BigModel (중국, open.bigmodel.cn)
export MINIMAX_API_KEY=... # MiniMax — 글로벌 (api.minimax.io)
export MINIMAX_CN_API_KEY=... # MiniMax — 중국 (api.minimaxi.com)
export OPENROUTER_API_KEY=... # OpenRouter
export ALPHA_VANTAGE_API_KEY=... # Alpha Vantage
Azure OpenAI의 경우 .env.enterprise.example을 .env.enterprise로 복사하고 자격 증명을 입력하세요.
AWS Bedrock의 경우 pip install ".[bedrock]"로 추가 설치하고, llmprovider: "bedrock" 설정, AWS 자격 증명(환경 변수, ~/.aws/credentials 또는 IAM 역할) 및 AWSDEFAULT_REGION 구성, Bedrock 모델 ID(예: us.anthropic.claude-opus-4-8-v1:0) 사용.
로컬 모델의 경우 llmprovider: "ollama"로 Ollama 구성. 기본 엔드포인트는 http://localhost:11434/v1이며, OLLAMABASE_URL을 설정하여 원격 ollama-serve를 가리킬 수 있습니다. ollama pull <name>으로 모델을 가져오고, 기본 목록에 없는 모델은 CLI에서 "Custom model ID"를 선택하세요.
다른 OpenAI 호환 서버(vLLM, LM Studio, llama.cpp 또는 사용자 정의 릴레이)의 경우 llmprovider: "openaicompatible"을 사용하고 backendurl(또는 TRADINGAGENTSLLMBACKENDURL)을 통해 엔드포인트를 설정하세요(예: vLLM의 경우 http://localhost:8000/v1, LM Studio의 경우 http://localhost:1234/v1). 모델은 서버가 제공하는 대로입니다. 로컬 서버에는 키가 필요하지 않으며, 엔드포인트가 키를 요구하는 경우 OPENAICOMPATIBLEAPI_KEY를 설정하세요.
또는 .env.example을 .env로 복사하고 키를 입력하세요:
cp.env.example.env
대화형 CLI 실행:
tradingagents # 설치된 명령어
python -m cli.main # 대안: 소스에서 직접 실행
원하는 티커, 분석 날짜, LLM 제공자, 연구 깊이 등을 선택할 수 있는 화면이 나타납니다.
TradingAgents는 Yahoo Finance가 커버하는 모든 시장에서 작동하며, 거래소 접미사가 붙은 티커를 사용합니다. 회사 식별 및 알파 벤치마크는 시장별로 자동으로 해결됩니다.
AAPL, SPY0700.HK · 도쿄: 7203.T · 런던: AZN.LRELIANCE.NS, .BO · 캐나다: .TO · 호주: .AX.SS, 선전 .SZ (예: 600519.SS for Kweichow Moutai)BTC-USD, ETH-USD<p align="center"> <img src="assets/cli/cli_init.png" width="100%" style="display: inline-block; margin: 0 2%;"> </p>
결과가 로드될 때 표시되는 인터페이스가 나타나 에이전트의 진행 상황을 추적할 수 있습니다.
<p align="center"> <img src="assets/cli/cli_news.png" width="100%" style="display: inline-block; margin: 0 2%;"> </p>
<p align="center"> <img src="assets/cli/cli_transaction.png" width="100%" style="display: inline-block; margin: 0 2%;"> </p>
TradingAgents는 LangGraph를 사용하여 유연성과 모듈성을 보장합니다. 프레임워크는 여러 LLM 제공자를 지원합니다: OpenAI, Google, Anthropic, xAI, DeepSeek, Qwen (Alibaba DashScope, 국제 및 중국 엔드포인트), GLM (Zhipu), MiniMax (글로벌 + 중국), OpenRouter, 로컬 모델용 Ollama, 엔터프라이즈용 Azure OpenAI.
코드 내에서 TradingAgents를 사용하려면 tradingagents 모듈을 가져오고 TradingAgentsGraph() 객체를 초기화합니다. .propagate()