-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
어떤 기능인가요?
사용자가 목표 금액, 투자 기간, 월 납입액, 위험 성향을 입력하면 과거 5년 데이터를 기반으로 목표 달성 확률이 높은 ETF를 추천하는 기능을 구현했습니다.
작업 상세 내용
- Goal Planner API 엔드포인트 구현 (
POST /api/goal-planner) - 5년 제한 시뮬레이션 엔진 구현 (FiveYearEngine)
- 히트율 계산 로직 구현 (목표 달성 확률)
- 위험도 매칭 점수 계산 로직 구현
- 목표 점수 계산 로직 구현 (히트율 70% + 위험도 매칭 30%)
- 필요 CAGR 계산 로직 구현
- 신뢰도 레벨 계산 로직 구현 (high/medium/low)
- Strategy 패턴 적용으로 향후 확장 가능한 구조 설계
- 입력 검증 로직 구현 (1~5년 제한, 금액 검증 등)
- 성능 최적화 (상위 100개 ETF만 처리, 윈도우 개수 제한)
참고할만한 자료(선택)
- 데이터베이스:
prices_daily테이블의 5년 가격 데이터 활용 - 계산 공식:
- 히트율 = (목표 달성한 윈도우 수 / 전체 윈도우 수) × 100
- 위험도 매칭 = 가우시안 함수 기반 변동성 매칭
- 목표 점수 = 히트율 × 0.7 + 위험도 매칭 × 0.3
- API 응답 구조:
{ "recommendations": [ { "etf_code": "0023A0", "etf_name": "SOL 미국양자컴퓨팅TOP10", "hit_rate": 100, "risk_match": 95.87, "goal_score": 98.76 } ], "meta": { "reliability": "low", "requiredCAGR": 0, "windowCount": 1 } }
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels