[논문 리뷰] TradingAgents: Multi-Agents LLM Financial Trading Framework
메타정보
| 항목 | 내용 |
|---|---|
| 저자 | Yijia Xiao, Edward Sun, Di Luo, Wei Wang (UCLA · MIT · Tauric Research) |
| 학회 | arXiv preprint · 2025 (v7, 2025-06-03) |
| arXiv | 2412.20138 |
| Code | TauricResearch/TradingAgents |
| 리뷰 일자 | 2026-04-28 |
TL;DR
- 무엇을: 실제 헤지펀드/트레이딩 펌의 조직 구조 — 분석가, 리서처, 트레이더, 리스크 관리, 펀드 매니저 — 를 LLM 에이전트로 그대로 모사한 주식 트레이딩 프레임워크.
- 어떻게: 일곱 종류의 전문 에이전트가 (1) 구조화 보고서로 정보를 주고받고 (2) 팀 안에서는 자연어 토론을 한다는 하이브리드 통신 프로토콜. 빠른 작업은
gpt-4o-mini, 추론은o1-preview로 분리. - 결과: 2024년 1–3월 AAPL/GOOGL/AMZN 백테스트에서 누적 수익(CR) 최소 23.21%, 연환산(ARR) 최소 24.90%, 샤프 비율(SR) 5.6+ 를 기록. 가장 강한 베이스라인 대비 CR 기준 +6.10 ~ +24.57 %p 개선.
- 단, 주의할 점: 백테스트 기간은 단 3개월 (LLM 호출 비용 한계 때문에). 평가 구간이 대형 기술주 상승장이라 SR 이 비정상적으로 높게 나왔다는 사실을 저자들도 솔직하게 인정한다. 즉 “멀티 에이전트 토론이 단일 에이전트나 룰 기반보다 나은가” 의 방향성 검증이지 성능의 절대값 자체는 일반화하기 어렵다.
소개 (Introduction)
LLM 기반 자율 에이전트가 등장한 뒤 금융 도메인에서 두 갈래의 시도가 있었다. 한 갈래는 단일 에이전트 — FinMem, FinAgent 처럼 하나의 LLM 트레이더에 메모리/리플렉션을 붙여 의사결정을 강화한다. 다른 갈래는 멀티 에이전트 데이터 수집 — TradingGPT 같은 시스템이 여러 LLM 에 역할을 분담시켜 정보를 모으되, 결국 마지막에는 단일 모델이 결론을 낸다. 둘 다 한계가 분명하다. 단일 에이전트는 다양한 관점을 통합하기 어렵고, 멀티 에이전트라도 자연어 메시지 풀에 의존하면 라운드가 길어질수록 정보가 손상되는 “전화 게임 (telephone effect)” 이 발생한다.
저자들은 여기서 두 가지 빈자리를 지적한다. 첫째, 현실 트레이딩 펌의 조직 구조를 충분히 반영하지 못한다. 실제 펌은 펀더멘털 / 센티먼트 / 뉴스 / 테크니컬 분석가, 강세-약세 리서처, 트레이더, 리스크 매니저, 펀드 매니저로 명확히 분업화되어 있다. 둘째, 순수 자연어 통신은 비효율적이다. 메시지가 누적될수록 핵심 디테일이 흐려지고, 에이전트 간 검색에 의존하면 데이터의 관계 정합성이 깨진다.
TradingAgents 의 답은 단순하다. 조직도를 그대로 옮기고, 통신을 구조화한다. 일곱 역할의 LLM 에이전트가 실제 펌처럼 협업하되, 팀 사이는 구조화 보고서(structured report)로, 팀 내부는 자연어 토론으로 통신한다. 이 글에서는 그 일곱 역할이 무엇인지, 통신 프로토콜이 왜 단순 메시지 풀보다 나은지, 그리고 백테스트에서 나타난 결과를 비판적으로 정리한다.
핵심 기여 (Key Contributions)
- 조직 모델링 (Organizational modeling). 일곱 가지 에이전트 역할 — Fundamentals · Sentiment · News · Technical Analyst (분석가 4명), Researcher (강세·약세 인스턴스), Trader, Risk Manager (Risky·Neutral·Safe 인스턴스) — 을 정의하고 각각에 명시적 목표·도구·제약을 부여한다. Fund Manager 가 리스크 토론을 종합해 최종 승인을 내린다.
- 하이브리드 통신 프로토콜. 팀 간 통신은 구조화된 글로벌 state (분석 보고서, 거래 결정, 리스크 평가) 로, 팀 내부는 자연어 토론으로 분리. 메시지 풀을 따로 쌓지 않으니 “telephone effect” 가 줄고, 에이전트는 글로벌 state 를 직접 쿼리한다.
- 다층 에이전트 토론. 강세 vs 약세 리서처, Risky vs Neutral vs Conservative 리스크 분석가, 두 단계의 토론을 통해 단일 모델로는 도달하기 어려운 균형 잡힌 의사결정을 시도.
- 이중 LLM 백본. 빠른 데이터 수집/요약은
gpt-4o-mini, 깊은 추론(분석가 노드, 트레이더, 리서처)은o1-preview로 역할별 모델을 다르게 배정. ReAct 프롬프팅으로 도구 사용을 일관되게 처리. - 백테스트 검증. 5종 베이스라인(B&H, MACD, KDJ+RSI, ZMR, SMA) 대비 AAPL/GOOGL/AMZN 모두에서 우월한 CR/ARR/SR. 트랜잭션 로그 전체를 부록에 공개해 의사결정 trace 를 재현 가능하게 한다.
관련 연구 / 배경 지식
이 논문을 제대로 읽으려면 세 갈래의 선행 연구를 알아두면 좋다.
LLM as Financial Assistant. PIXIU/FinMA, FinGPT, BloombergGPT, Fin-T5, XuanYuan, BBT-Fin 처럼 금융 코퍼스로 fine-tuning 또는 from-scratch 학습한 모델들. 이들은 분석 보조 에 집중하고 직접 거래는 하지 않는다. TradingAgents 는 일반 GPT-4 계열을 분석 도구로 쓰면서 의사결정 자체를 에이전트 협업에 맡긴다.
LLM as Trader. 직접 트레이딩 결정을 내리는 에이전트. 세부 갈래는 (a) 뉴스 기반 (news-driven) — Lopez-Lira & Tang 의 ChatGPT 기반 long-short, FinGPT/OPT 기반 도메인 정렬; (b) 추론 기반 (reasoning-driven) — FinMem/FinAgent 의 메모리·리플렉션, TradingGPT 의 LLM 토론; (c) RL 기반 — SEP 의 PPO 정렬, LLM 임베딩을 stock feature 와 결합한 정책 학습. TradingAgents 는 (b) 의 토론 라인을 본격적인 조직 구조 로 확장한다.
Structured vs Free-form Multi-Agent Communication. MetaGPT, ChatDev 가 소프트웨어 엔지니어링 도메인에서 보여준 결과 — 자연어 메시지만 주고받으면 라운드가 늘수록 정보가 흩어지지만, 구조화된 산출물(SOP, design doc) 을 강제하면 안정적으로 협업할 수 있다는 — 을 트레이딩에 적용했다고 봐도 된다.
핵심 사전 지식 한 가지: ReAct 프롬프팅. Yao et al. (2023) 의 Reasoning + Acting 프레임워크로, LLM 이 한 턴에 (Thought, Action, Observation) 를 출력하면서 도구 호출과 추론을 인터리브한다. TradingAgents 의 모든 에이전트는 이 패턴을 따른다.
방법 / 아키텍처 상세
전체 흐름은 한 장의 그림으로 요약된다.
각 단계를 차례로 보자.
분석가 팀 (Analyst Team)
네 종류의 분석가가 병렬로 시장을 본다. 각 에이전트는 분야 특화 도구 세트를 받아 보고서를 산출한다.
- Fundamentals Analyst — 재무제표, 어닝스 리포트, 인사이더 거래, 회사 프로파일을 통합해 내재가치를 추정. Finnhub 의
get_finnhub_company_profile,get_finnhub_company_financials_history등을 도구로 사용. - Sentiment Analyst — Reddit (
get_reddit_stock_info), X/Twitter, EODHD 센티먼트 점수로 단기 투자자 심리를 읽는다. - News Analyst — Bloomberg, Yahoo, Finnhub, EODHD 뉴스를 읽어 거시·정책·섹터 단위 이벤트를 식별. 인플레이션 리포트, FOMC 결정, 미·중 무역 같은 매크로 신호가 여기서 들어온다.
- Technical Analyst — RSI, MACD, ADX, Bollinger Bands, ATR, CCI, Supertrend, VWMA 등 60종 기술 지표를 코드로 계산해 모멘텀/추세/변동성을 분류.
이 통일된 출력 포맷이 핵심이다. 모든 에이전트가 같은 스키마로 보고서를 쓰니 다음 팀이 필요한 정보를 직접 쿼리 할 수 있다 — 메시지 풀을 검색할 필요가 없다.
리서치 팀 (Researcher Team): 강세 vs 약세 토론
분석가 보고서를 받으면 두 명의 리서처가 정반대 입장에서 토론한다. 각자는 분석가 보고서를 글로벌 state 에서 쿼리해 본인의 주장에 유리한 근거만 뽑아 쓰는 변호사 모드로 동작한다.
부록에 실린 AAPL 사례를 보면 이 토론의 결이 잘 드러난다. 강세 리서처는 “smart home AI 진출 + 46.21% gross margin + 164.59% ROE → 장기 매수” 라고 주장한다. 같은 데이터를 본 약세 리서처는 “P/E 37.79 + 인사이더 매도 + 미·중 긴장 → 다운사이드 리스크” 라고 반박한다. 동일한 분석가 보고서에서 출발해 두 결론이 모두 가능하다는 점이 중요한데, 이는 자연어 컨텍스트만 보면 한 가지 결론으로 수렴할 수 있는 위험을 명시적인 토론으로 강제 분리해 다양성을 확보하는 효과를 낸다.
토론은 사전에 정한 $n$ 라운드 동안 진행되고, 각 라운드 끝에 facilitator 에이전트가 토론 history 를 읽어 우세한 입장을 선택해 글로벌 state 에 기록한다.
트레이더 (Trader)
리서처 토론이 끝나면 트레이더가 등장한다. 트레이더는 분석가 보고서 + 리서처 토론 결과를 글로벌 state 에서 가져와 매수/매도/보유 결정을 내리고 그 근거 보고서를 함께 작성한다.
여기서도 핵심은 결정값(BUY) 이 아니라 Reasoning 필드에 들어가는 자연어 설명이다. 다음 단계인 리스크 관리 팀은 이 설명을 직접 공격할 수 있어야 하기 때문이다.
리스크 관리 팀 (Risk Management Team)
트레이더의 결정이 곧바로 실행되지는 않는다. 세 명의 리스크 분석가 가 트레이더의 plan 을 두고 다시 토론한다.
- Risky Analyst — 고수익·고위험 전략을 옹호. “RSI 100 도 강한 상승 모멘텀의 신호다, 보수적 시각은 기회를 놓친다.”
- Conservative (Safe) Analyst — 자산 보호를 강조. “RSI 와 CCI 가 과매수를 가리킨다, 하락 변동성에 대비해 stop-loss 를 걸자.”
- Neutral Analyst — 두 입장을 종합한 균형 전략. “stop-loss 와 옵션 헤지를 걸어 상승에는 참여하되 하락은 제한하자.”
토론이 끝나면 펀드 매니저 에이전트가 토론 로그를 읽고 stop-loss / 포지션 사이즈 / 다이버시피케이션 같은 리스크 조정을 거친 최종 결정을 글로벌 state 에 기록한다. 이 단계가 있어야 트레이더가 단일 turn 에서 만든 결정이 조직 차원의 검증 을 거치게 된다.
통신 프로토콜: 구조화 보고서 + 자연어 토론의 하이브리드
가장 자주 인용될 만한 디자인 결정이 여기 있다. TradingAgents 는 두 종류의 통신을 의도적으로 분리 했다.
[팀 → 팀] structured global state
(analysis reports, trader decision, risk assessment)
[팀 내부] natural language dialogue
(researcher debate, risk analyst debate)
왜 이렇게 했는가? 순수 자연어 메시지 풀의 telephone effect 때문이다. 라운드가 길어지면 LLM 의 컨텍스트 윈도우가 압박되고, 초반 정보가 지워지거나 뒤틀린다. MetaGPT 가 SOP/design doc 으로 이 문제를 해결한 것을 트레이딩에 그대로 옮긴 셈이다.
대신 토론 자체 의 가치는 유지한다 — 내부 토론은 reasoning 의 깊이를 끌어올리는 데 쓰고, 결과는 구조화된 한 줄로 압축해 다음 팀에 넘긴다. 즉 “토론은 하되, 그 결과를 데이터 객체로 직렬화해 내보낸다” 는 패턴.
백본 LLM 의 분리
또 하나 실용적인 디자인 결정. 모든 노드에 같은 큰 모델을 쓰면 비용이 폭발하고, 모든 노드에 작은 모델을 쓰면 추론이 약해진다. 저자들은 태스크별로 백본을 분리 한다.
| 태스크 유형 | 백본 | 용도 |
|---|---|---|
| Quick-thinking | gpt-4o-mini, gpt-4o | 데이터 검색, 요약, 표 → 텍스트 변환 |
| Deep-thinking | o1-preview | 분석가 노드, 리서처 토론, 트레이더 추론 |
분석가 노드는 항상 deep-thinking 모델로 돌려 분석 품질을 보장하고, quick-thinking 모델은 도구 호출과 데이터 retrieval 에 한정한다. 이 분리 덕분에 GPU 없이 API 호출만으로 시스템이 돌아가고, 새 추론 모델이 나오면 백본만 갈아끼우면 된다는 점도 저자들이 강조한다.
학습 목표 / 손실 함수
흥미롭게도 TradingAgents 는 새로 학습하는 모델이 없다. 모든 에이전트는 OpenAI 의 기본 모델 + 시스템 프롬프트 + 도구 + ReAct 패턴으로 구성된다. 즉 학습 비용은 0, 비용은 추론 호출에 전부 발생한다. 그래서 이 절에서 다룰 수 있는 “loss” 는 강화학습 reward 가 아니라 백테스트 메트릭 자체다.
본문에서 사용하는 네 가지 메트릭:
- 누적 수익률 (CR): \(\mathrm{CR} = \left(\frac{V_{\text{end}} - V_{\text{start}}}{V_{\text{start}}}\right) \times 100\%\)
- 연환산 수익률 (ARR): \(\mathrm{ARR} = \left(\left(\frac{V_{\text{end}}}{V_{\text{start}}}\right)^{1/N} - 1\right) \times 100\%\)
- 샤프 비율 (Sharpe Ratio, SR): \(\mathrm{SR} = \frac{\bar{R} - R_f}{\sigma}\) 여기서 \(\bar{R}\) 는 평균 포트폴리오 수익, \(R_f\) 는 무위험 수익률(3개월 T-bill 수익률), \(\sigma\) 는 수익률 표준편차.
- 최대 낙폭 (Maximum Drawdown, MDD): \(\mathrm{MDD} = \max_{t \in [0,T]} \left(\frac{\text{Peak}_t - \text{Trough}_t}{\text{Peak}_t}\right) \times 100\%\)
CR/ARR 은 절대 수익을 보고, SR 은 위험 조정 수익을, MDD 는 최악의 손실 규모를 측정한다. 일반적으로 SR > 2 면 매우 양호, > 3 면 우수로 본다.
학습 데이터와 파이프라인
다시 강조하자면 모델 학습은 없다. 대신 multi-modal financial dataset 을 백테스트 시뮬레이션에 공급한다.
| 데이터 종류 | 소스 | 용도 |
|---|---|---|
| Historical Stock Prices | 야후 파이낸스, EODHD | OHLCV, 조정 종가 |
| News Articles | Bloomberg, Yahoo, Finnhub, EODHD, Reddit | News Analyst |
| Social Media Posts | Reddit (wallstreetbets, stocks, investing 등), X/Twitter | Sentiment Analyst |
| Insider Sentiment & Transactions | SEDI, 회사 공시 | Fundamentals Analyst |
| Financial Statements & Earnings | 분기/연간 리포트 | Fundamentals Analyst |
| Company Profiles & History | 3rd party | Fundamentals Analyst |
| Technical Indicators | 60종 (MACD, RSI, BB, ATR, CCI, …) | Technical Analyst |
시뮬레이션 설계에서 중요한 한 가지: look-ahead bias 차단. 에이전트는 현재 거래일의 데이터만 볼 수 있고, 미래 정보는 절대 들어가지 않는다. 매일 분석 → 결정 → 실행 → 메트릭 계산 → 다음 날, 의 루프를 반복한다.
비용 구조도 한 줄 짚어둘 만하다. prediction 한 번당 LLM 호출 11회 + 도구 호출 20회 이상. 즉 거래일 하루마다 30번 이상의 API 호출이 일어난다. 3개월(약 60 거래일) 백테스트면 1,800+ API 호출. 이 비용 한계가 본 논문의 가장 큰 제약이 된다.
실험 결과
평가 종목은 AAPL / GOOGL / AMZN, 기간은 2024-01-01 ~ 2024-03-29 (약 3개월). 베이스라인은 5종: Buy & Hold, MACD, KDJ+RSI, ZMR (Zero Mean Reversion), SMA.
누적 수익과 연환산 수익
핵심 수치를 짚어 보자.
- AAPL. TradingAgents CR 26.62% / ARR 30.5% / SR 8.21 / MDD 0.91%. 모든 베이스라인 (B&H 포함) 이 마이너스 또는 0~2% 영역에 머무는 동안 단독으로 26%대 수익. CR 기준 +24.57 %p 개선.
- GOOGL. TradingAgents CR 24.36% / ARR 27.58% / SR 6.39 / MDD 1.69%. 가장 강한 베이스라인 SMA(6.23%) 대비 +18.13 %p, B&H(7.78%) 대비 +16.58 %p.
- AMZN. TradingAgents CR 23.21% / ARR 24.90% / SR 5.60 / MDD 2.11%. AMZN 은 평가 구간이 강한 상승장이라 B&H 도 17.1% 를 냈는데, TradingAgents 가 그보다 +6.1 %p 더 높다.
특히 AAPL 케이스가 인상적이다. 평가 구간(2024 Q1) 의 AAPL 은 박스권에서 변동성이 큰 종목이었고 룰 베이스 전략은 모두 0 ~ 2% 의 미미한 수익만 냈다. B&H 는 -5.23% 로 손실 — TradingAgents 의 +26% 와 30% 포인트 이상 차이가 난다. 단순 추세 추종이 작동하지 않는 구간에서 토론 기반 의사결정이 대체 신호를 잡아냈다는 해석이 가능하다.
샤프 비율
샤프 비율은 더 극단적이다. TradingAgents 의 AAPL SR 은 8.21 인데, 일반적으로 SR > 3 이면 “excellent” 로 본다. 저자들도 각주에서 직접 인정한다 — “이 SR 값은 우리가 예상한 경험적 범위를 넘어선다. 평가 구간이 짧고(3개월) 그 기간 안에 큰 pullback 이 거의 없었기 때문에 SR 이 비정상적으로 높게 나왔을 가능성이 크다. 결과는 실험 그대로 보고하지만, 향후 더 긴 백테스트로 검증해야 한다.” 이 솔직함은 평가하지만, 그 자체가 이 SR 숫자를 그대로 믿어선 안 된다는 신호 다.
최대 낙폭
룰 베이스 전략들은 거래를 거의 하지 않거나 보수적으로 움직였기 때문에 MDD 측면에서는 강했다 (MACD GOOGL 1.22%, ZMR AAPL 0.86%). TradingAgents 는 MDD 가 다소 높지만 (AAPL 0.91%, GOOGL 1.69%, AMZN 2.11%) — 절대 수치로는 모두 한 자릿수의 매우 낮은 수준이다. 기대 수익을 두 자릿수 끌어올리면서 MDD 를 한 자릿수 안에 가둔다는 점이 강점.
설명 가능성 (Explainability)
이 절은 수치가 아니라 정성적 비교다. 딥러닝 트레이딩 시스템의 고질적인 문제는 결정이 블랙박스라는 점인데, TradingAgents 는 ReAct 의 (Thought, Action, Observation) 트레이스를 그대로 노출한다. 부록 S1.4 절에는 단 하루 (2024-11-19, AAPL) 의 전체 트랜잭션 로그 — Market Analyst → Sentiment Analyst → News Analyst → Fundamentals Analyst → Bullish Researcher → Bearish Researcher → Risky / Safe / Neutral Risk Analyst → Fund Manager — 의 자연어 출력이 18페이지에 걸쳐 실려 있다. 트레이더가 결정을 내릴 때 어떤 도구 호출과 어떤 추론 단계를 거쳤는지 직접 검증할 수 있다.
결과 분석 / Ablation
이 논문의 큰 약점이자 솔직한 부분: 공식적인 component-level ablation 이 없다. 즉 “강세-약세 토론을 빼면 얼마나 떨어지나? 리스크 관리 팀을 빼면? 분석가 4명 중 한 명을 빼면?” 같은 절단 실험이 본문에서 다뤄지지 않는다.
대신 간접적인 비교 로 두 가지 시사점을 추출할 수 있다.
- 단일 LLM 트레이더 vs 멀티 에이전트. 본문에서 비교하지는 않았지만, 이미 논문에서 인용하는 FinMem/FinAgent 가 단일 추론 에이전트의 SOTA 다. 그들의 보고된 SR 은 일반적으로 1~2 수준. TradingAgents 가 5+ 를 낸다는 건 멀티 에이전트 + 토론의 효과를 암시 하지만, 동일 평가 셋업이 아니라서 직접 비교는 어렵다.
- 자연어 메시지 풀 vs 구조화 통신. 4.1 절에서 telephone effect 를 명시적으로 동기로 든 만큼, 적어도 저자들 본인 실험에서 메시지 풀이 깨졌다는 의미일 것이다. 이 부분도 정량 ablation 이 있었으면 결정적인 증거가 됐을 텐데 빠져 있다.
또 하나의 미묘한 결과: benchmark 의 선택 편향. 논문은 AAPL/NVDA/MSFT/META/GOOGL 다섯 종목으로 설정에서 시작했지만 메인 표에는 AAPL/GOOGL/AMZN 만 등장한다. NVDA, MSFT, META 는 어디로 갔는가? 부록에서도 누락. 이런 종목 선택은 cherry-picking 의심을 사기 좋다 — 실제로 NVDA/MSFT 는 같은 기간 강한 상승장이었는데 성능이 더 좋았으면 굳이 빼지 않았을 것이다.
한계와 비판적 평가
저자들이 직접 인정한 한계:
- 백테스트 기간이 짧다 (3개월). API 비용 때문. 더 긴 구간으로 확장이 필요.
- 샤프 비율이 비정상적으로 높다. 평가 구간에 pullback 이 적어 SR 이 부풀려졌을 가능성을 명시.
- 계산 비용. 일일 30+ API 호출. 실시간 트레이딩에는 부적합한 비용 구조.
리뷰어 입장에서 추가로 보이는 한계:
- Component ablation 부재. 위에서 지적한 대로, 어느 구성요소가 얼마나 기여하는지 분리되지 않는다. 강세-약세 토론, 리스크 관리 팀, 분석가 4명 중 셋만 — 이런 변형 실험이 없으면 “조직 구조 모방이 본질적으로 효과적이다” 인지 “단순히 더 많은 LLM 호출이 효과적이다” 인지 구분 불가능.
- 종목 선택의 편향. 평가 구간(2024 Q1) 은 AI 붐으로 빅테크가 강한 상승 모멘텀을 보인 시기. 게다가 셋업에서 명시한 다섯 종목(AAPL/NVDA/MSFT/META/GOOGL) 중 메인 표에 보고된 건 AAPL/GOOGL 둘뿐이고, 명단에 없던 AMZN 이 그 자리에 들어와 있다. 베어 마켓이나 횡보장에서의 검증, 그리고 누락 종목의 결과 공개가 필수.
- LLM 학습 데이터 누수 가능성.
o1-preview의 학습 컷오프가 2023년 후반 이후일 가능성이 높고, 평가 구간(2024 Q1)에 일어난 사건 일부를 모델이 사전 지식으로 알고 있을 수 있다. 부록 로그에서 News Analyst 가 “Trump’s return sparks mixed reactions” 같은 2024-11 시점의 정보를 언급하는 걸 보면 — 이 평가는 백테스트라기보다 nowcast 에 가깝다는 의심을 지우기 어렵다. - 베이스라인의 약함. Buy & Hold 와 단순 룰 베이스 5종이 전부. 머신러닝 트레이딩의 주된 비교 대상인 LSTM, Transformer 시계열 모델, RL 기반 트레이더, 또는 단순 LLM 트레이더(FinMem) 가 빠져 있다. 멀티 에이전트의 진짜 가치를 보려면 단일 LLM 트레이더와의 직접 비교가 가장 중요할 텐데 그것이 없다.
- 거래 비용·슬리피지 모델링 누락. 일일 거래를 가정하고 있는데, 슬리피지·수수료·세금·시장 영향을 어떻게 모델링했는지 본문에 명시되지 않는다. 실제 펌에서 매일 30%+ 의 turnover 를 만드는 전략은 비용 후 수익이 다르게 보일 수 있다.
이 한계들이 곧 논문의 가치를 부정하는 건 아니다. 조직 구조 + 하이브리드 통신 프로토콜이라는 디자인 결정 은 그 자체로 멀티 에이전트 LLM 시스템 설계에 일반화 가능한 교훈이다. 다만 이 프레임워크를 그대로 라이브 트레이딩에 가져다 쓸 수 있다 고 받아들이면 곤란하다.
시사점 / Takeaways
- 조직도 = 시스템 아키텍처. 멀티 에이전트 시스템을 설계할 때 “어떤 에이전트가 어떤 도구를 갖는가” 만큼이나 “에이전트 간 보고 라인” 이 중요하다. 분석가 → 리서처 → 트레이더 → 리스크 → 펀드 매니저로 이어지는 라인은 각 단계가 직전 단계의 결과를 비판할 권한 을 갖게 만든다. 단순한 fan-out 보다 검증 효과가 크다.
- 구조화 산출 + 자연어 토론의 분리는 일반화 가능한 패턴이다. 트레이딩이 아니라도, 라운드가 길어질수록 정보가 손상되는 LLM 멀티 에이전트 시스템이라면 동일한 분리 (팀 간은 schema, 팀 내부는 dialog) 를 거의 그대로 적용할 수 있다.
- 이중 백본은 비용 대비 가성비의 핵심. 모든 노드를 deep-thinking 모델로 돌리는 건 사치고, 모두 quick 으로 돌리는 건 무리. 태스크별로 모델을 다르게 배정하는 패턴은 다른 도메인에도 그대로 옮길 만하다.
- 백테스트 결과를 액면 그대로 받지 말 것. 3개월·5종목·강세장·look-ahead bias 가능성 — 이 모든 조건이 겹친 상태에서 SR 8 이라는 숫자는 프레임워크의 잠재력의 상한선 이지 운용 기대값이 아니다. 실제 의사결정은 더 긴 구간 + 베어 마켓 + 거래 비용 모델 검증 후에.
- Explainability 가 진짜 강점. 메트릭 숫자보다 부록의 트랜잭션 로그가 이 논문의 핵심 가치다. 어떤 도구를 호출하고 어떤 reasoning 으로 BUY 를 내렸는지 한 줄씩 추적 가능한 LLM 트레이더는 — 규제 당국의 audit 가 필요한 실제 트레이딩 펌 환경에서 딥러닝 black-box 보다 압도적으로 유리하다.
설치 및 사용법
저자들의 TauricResearch/TradingAgents 리포지토리에서 바로 시도할 수 있다. 최소 실행 예제는 다음과 비슷하다 (실제 인터페이스는 리포의 README 참조):
from tradingagents.graph.trading_graph import TradingAgentsGraph
from tradingagents.default_config import DEFAULT_CONFIG
config = DEFAULT_CONFIG.copy()
config["llm_provider"] = "openai"
config["deep_think_llm"] = "o1-preview"
config["quick_think_llm"] = "gpt-4o-mini"
config["max_debate_rounds"] = 1
ta = TradingAgentsGraph(debug=True, config=config)
# 단일 거래일에 대한 분석/결정 실행
state, decision = ta.propagate("AAPL", "2024-01-15")
print(decision)
OpenAI API 키와 데이터 소스 (Finnhub, EODHD, Reddit 등) API 키가 필요하다. 실험 비용이 빠르게 누적되니 먼저 1~2일 분량만 시뮬레이션하면서 출력 형식을 확인한 뒤 백테스트로 확장하는 걸 권한다.
참고 자료
- 논문: arXiv:2412.20138
- Code: TauricResearch/TradingAgents
- 프로젝트 페이지 / 블로그: 저자 소속 Tauric Research
더 읽어보기
- FinMem (Yu et al., 2023) — 단일 LLM 트레이더에 layered memory 와 character design 을 적용. TradingAgents 의 가장 직접적인 비교 대상이지만 본문에선 정량 비교가 빠져 있다.
- FinAgent (Zhang et al., 2024b) — 도구 사용·다양성·일반성을 강조한 multimodal foundation 트레이딩 에이전트. 분석가 단일 노드의 강한 baseline.
- TradingGPT (Li et al., 2023b) — 멀티 에이전트 + layered memory. 자연어 메시지 풀의 한계를 직접 보여주는 사례.
- MetaGPT (Hong et al., 2024) — 트레이딩이 아닌 소프트웨어 엔지니어링 도메인이지만, 구조화된 SOP + 자연어 협업 디자인의 원형. TradingAgents 의 통신 프로토콜이 영감을 받은 곳.
- ReAct (Yao et al., 2023) — 모든 에이전트가 따르는 reasoning + acting 프롬프팅 패턴. 도구 호출 + 추론을 인터리브하는 표준 인터페이스.
Enjoy Reading This Article?
Here are some more articles you might like to read next: