배경: 뉴스, 공시, 매크로 지표를 매번 직접 확인하기엔 시간이 부족. AI로 핵심만 요약
1. 세션 구조
하루 4개 세션 + 주간 1개. 각 세션마다 조회 범위와 스타일이 다름.
세션
시간
뉴스 범위
스타일
초점
🌅 Morning
08:00 (평일)
12시간
Compact
전일 미국장 마감 + 당일 한국장 전망
🍱 Lunch
12:30 (평일)
5시간
Compact
오전 장중 변동 + 오후 이벤트
🌇 Evening
18:00 (평일)
10시간
Compact
한국장 마감 + 미국 프리마켓 + 투자 스코어
📋 Weekly
월 09:00
168시간
Full
의회 법안, 중앙은행 연설 종합
2. 데이터 파이프라인
7개 소스 → Context → AI → Telegram
graph TB
subgraph 데이터소스 ["데이터 수집 (병렬)"]
A["Recent News"]
B["Macro Snapshot"]
C["Economic Calendar"]
D["CB Speeches"]
E["EDGAR Filings"]
F["DART Disclosures"]
G["Congress Bills"]
end
subgraph 처리 ["AI 처리"]
H["Wait For Data<br/>(7입력 동기화)"]
I["Build Briefing<br/>Context"]
J["AI Briefing Agent<br/>(Gemini)"]
end
subgraph 출력 ["출력"]
K["Telegram<br/>메시지"]
end
A --> H
B --> H
C --> H
D --> H
E --> H
F --> H
G --> H
H --> I --> J --> K
AI Agent 구성
구성 요소
상세
LLM
Gemini Chat Model
RAG Tools
SEC EDGAR Search, DART Korea Search, US Congress Search (Qdrant)
Redis 메모리로 하루 4회 브리핑 컨텍스트를 유지. 아침 브리핑에서 언급한 이슈를 저녁에 후속 분석 가능.
3. 투자 스코어보드 (Evening 전용)
저녁 세션에서만 추가 실행되는 투자 의견 체인
분석 프로세스
graph LR
A["Wait For Data"] --> B{"Evening?"}
B -->|Yes| C["Prepare Analysis"]
C --> D["Investment Scorer<br/>(Gemini Flash)"]
D --> E["Parse Scorecard"]
B -->|No| F["Skip"]
E --> G["Merge → AI Agent"]
F --> G
5개 분석 영역
영역
데이터 소스
출력
📰 센티먼트
뉴스 헤드라인
Bull/Bear 점수
📊 매크로
지수/환율/원자재
Risk-On/Off
📉 포지셔닝
CBOE PCR + 수급
과열/공포
📅 이벤트
경제 캘린더
주의/안전
📆 어닝
실적 발표
기대/우려
출력 예시
📊 투자 스코어보드📰 센티먼트: 🟢 +65 연준 동결 기대감 확산📊 매크로: 🟡 +30 데이터 혼조📉 포지셔닝: 🟡 -20 PCR 상승, 커버링 대기📅 이벤트: 🔴 -40 CPI/FOMC 주의📆 어닝: 🟢 +50 빅테크 실적 기대⬥ 종합: 🟡 +17 → 약세 속 선별 매수▸ 단기: 코스피 반등 시 2,580 목표▸ 리스크: CPI 상회 시 급락 대비
4. AI 종목 발굴 (Discovery)
한국 주식 Discovery
항목
상세
스케줄
평일 08:50 (장 시작 전)
데이터 소스
네이버 금융 (시총/급등/급락 상위 20)
AI 분석
Gemini + 뉴스/DART 공시 데이터
선정 기준
시총 상위 + 변동률 ±5% 대형주 + 뉴스 언급 종목
출력
market_targets UPSERT + 텔레그램 알림
제한
최대 20개, 우선주/ETN/ETF 제외
미국 주식 Discovery
항목
상세
스케줄
평일 21:00 (미국장 종료 후)
데이터 소스
Yahoo Finance (Most Active/Gainers/Losers 상위 25)
AI 분석
Gemini + 뉴스 데이터
선정 기준
시총 상위 + 변동률 ±3% 대형주 + 뉴스 언급 종목
출력
market_targets UPSERT + 텔레그램 알림
제한
최대 25개, ETF/ADR 제외
공통 파이프라인
graph LR
A["Schedule"] --> B["Fetch 시세 데이터<br/>(3개 API 병렬)"]
A --> C["Fetch 뉴스<br/>(news_articles)"]
B --> D["Merge &<br/>Deduplicate"]
C --> D
D --> E["AI Selection<br/>(Gemini)"]
E --> F["UPSERT<br/>market_targets"]
F --> G["Telegram 알림"]
선정된 종목은 market_targets 테이블에 저장되어 Data Watchers, DART Watcher 등 다른 워크플로에서 참조됨.