8dabffc08a
Commits work that predated this session and was sitting untracked: qualitative sell strategy module (src/quant_engine), the t20 outcome ledger cron workflow, the QuantEngine masterpiece roadmap doc, a WBS execution yaml, and shared Razor Pages partials (page header, delete confirm modal) with their view models. Verified these build clean (0 errors, 0 warnings) before committing. Also includes the "ARCHIVED" header notes on 6 docs archived in the previous commit - the git-mv landed there, but the note text itself was missed from that commit's staged file list. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
349 lines
13 KiB
Markdown
349 lines
13 KiB
Markdown
> **ARCHIVED (2026-07-30)**: 본 문서의 Gantt 차트는 2026-07-24 기준 Phase 0-4 일정입니다.
|
||
> 최신 마이그레이션 상태는 [`../CLAUDE.md`](../CLAUDE.md)의 Migration Status 섹션 또는
|
||
> [`STRATEGIC_EXECUTION_MASTER_PLAN.md`](../STRATEGIC_EXECUTION_MASTER_PLAN.md)를 참고하세요.
|
||
|
||
# QuantEngine 현대화 로드맵 (시각화)
|
||
|
||
## 1. 전체 진행도 (Gantt Chart)
|
||
|
||
```
|
||
2026 2027
|
||
Jul Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun
|
||
|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|-----|
|
||
|
||
PHASE 0: Foundation ✅
|
||
█████
|
||
CI/CD + Data Consistency
|
||
|
||
PHASE 1: Data Architecture
|
||
███████████████
|
||
Normalization + Components + Quality
|
||
|
||
PHASE 2: Quant Engine
|
||
█████████████████
|
||
Game Theory + Scheduler + Transparency
|
||
|
||
PHASE 3: Patterns
|
||
██████████
|
||
Simplification + Standards
|
||
|
||
PHASE 4: Optimization
|
||
██████████████
|
||
Performance + Reliability
|
||
```
|
||
|
||
---
|
||
|
||
## 2. 각 Phase의 핵심 산출물
|
||
|
||
### PHASE 0: Foundation (Jul-Aug) ✅
|
||
```
|
||
INPUT PROCESS OUTPUT
|
||
Current State: - ci.yml 리팩토링 ✅ 9-job parallel CI
|
||
- 1 job CI (40min) - 워크플로우 검증 ✅ (~15-20min)
|
||
- No audit trail - CLAUDE.md 작성 ✅ Comprehensive docs
|
||
- Manual deployments Auto-validating CI
|
||
Ready for Phase 1
|
||
```
|
||
|
||
### PHASE 1: Data Architecture (Sep-Nov)
|
||
```
|
||
INPUT PROCESS OUTPUT
|
||
Legacy Schema: - Table 정규화 3NF Schema
|
||
- kis_snapshots(100+ cols) - Repository분리 Normalized tables
|
||
- Scattered data - Quality metrics Component APIs
|
||
- Data lineage Data quality gates
|
||
Backward compatible
|
||
```
|
||
|
||
**구체적 변화**:
|
||
```
|
||
Before: After:
|
||
kis_snapshots ────────────┐ stocks ──────┐
|
||
│ ticker │ │ id │
|
||
│ price │ │ ticker │
|
||
│ volume │──→│ name │
|
||
│ bid │ │ market │
|
||
│ ask │ └────────────┘
|
||
│ bidSize1-5 │
|
||
│ askSize1-5 │ quotes ─────────────┐
|
||
│ pe_ratio │ │ id │
|
||
│ eps │──→│ stock_id │
|
||
│ dividend │ │ timestamp │
|
||
│ ... x80+ more │ │ price │
|
||
└────────────────────────┘ │ volume │
|
||
│ source │
|
||
└───────────────────┘
|
||
|
||
order_book ────────┐
|
||
│ id │
|
||
│ quote_id │
|
||
│ bid_levels (json) │
|
||
│ ask_levels (json) │
|
||
└───────────────────┘
|
||
```
|
||
|
||
### PHASE 2: Quant Engine (Dec-Feb)
|
||
```
|
||
INPUT PROCESS OUTPUT
|
||
Normalized Data: - Nash equilibrium Optimal portfolio
|
||
- Clean data feeds - Adaptive scheduler Dynamic scheduling
|
||
- Multi-source capability - Decision logging Transparent decisions
|
||
- Event detection Audit trail
|
||
Reproducible logic
|
||
```
|
||
|
||
**의사결정 투명성 예시**:
|
||
```
|
||
수집 START (2026-12-15 00:30 KST)
|
||
├─ Factor 1: Sharpe ratio ✓ (1.45 > 1.0)
|
||
├─ Factor 2: Correlation ✓ (< 0.7)
|
||
├─ Factor 3: Nash allocation ✓ (computed)
|
||
├─ Data quality ✓ (98.5%)
|
||
└─ APPROVED: Rebalance to [005930: 40%, 035720: 35%, 051910: 25%]
|
||
|
||
→ 의사결정 로그: dec_20261215_001.json
|
||
→ 언제든 재현 가능: reproduce() → 동일 결과 보장
|
||
```
|
||
|
||
### PHASE 3: Patterns (Mar-Apr)
|
||
```
|
||
INPUT PROCESS OUTPUT
|
||
Scattered patterns: - 패턴 카탈로그화 Pattern library
|
||
- Ad-hoc solutions - ADR 작성 Architecture decisions
|
||
- Knowledge in heads - Style guide Development guidelines
|
||
- Code cleanup Lean codebase
|
||
YAGNI applied
|
||
```
|
||
|
||
### PHASE 4: Optimization (May-Jun)
|
||
```
|
||
INPUT PROCESS OUTPUT
|
||
Stable architecture: - Performance tuning Optimized system
|
||
- Sound design - Reliability hardening 99.9% availability
|
||
- Functional system - Automation setup 87.5% ops automated
|
||
- Monitoring/alerting Production ready
|
||
```
|
||
|
||
---
|
||
|
||
## 3. 핵심 지표 진행도
|
||
|
||
```
|
||
현재(Jul) Phase 1(Nov) Phase 2(Feb) Phase 4(Jun) 목표
|
||
CI 시간 ~40min ~20min ~18min ~12min <15min ✓
|
||
테스트 커버리지 ~60% ~70% ~78% ~85% >80% ✓
|
||
기술부채 점수 ~60% ~45% ~30% ~15% <20% ✓
|
||
포트폴리오 1.0x 1.1x 1.15x 1.2x +20% ✓
|
||
Sharpe ratio
|
||
API 응답시간 500ms 350ms 250ms 200ms <200ms ✓
|
||
수집 시간 15min 10min 8min 6min <6min ✓
|
||
시스템 가용성 98% 98.5% 99% 99.9% >99.9% ✓
|
||
수동 운영 시간 40h/week 30h/week 15h/week 5h/week <5h ✓
|
||
```
|
||
|
||
---
|
||
|
||
## 4. 핵심 의존성 & 선결 조건
|
||
|
||
```
|
||
PHASE 0 ✅
|
||
└─ CI/CD foundations DONE
|
||
└─ PHASE 1 (Sep)
|
||
├─ DB normalization
|
||
├─ Component APIs
|
||
└─ Quality metrics
|
||
└─ PHASE 2 (Dec)
|
||
├─ Game theory engine
|
||
├─ Adaptive scheduler
|
||
└─ Decision logging
|
||
└─ PHASE 3 (Mar)
|
||
├─ Pattern library
|
||
├─ Style guide
|
||
└─ Code cleanup
|
||
└─ PHASE 4 (May)
|
||
├─ Performance
|
||
├─ Reliability
|
||
└─ Automation ✓
|
||
```
|
||
|
||
---
|
||
|
||
## 5. 리스크 히트맵
|
||
|
||
```
|
||
Impact x Likelihood = Priority
|
||
|
||
Data migration HIGH(9) x MEDIUM(5) = 45 (HIGH)
|
||
(Mitigation: Parallel run + automatic rollback)
|
||
|
||
Performance HIGH(8) x MEDIUM(5) = 40 (HIGH)
|
||
regression
|
||
(Mitigation: Before/after benchmarking)
|
||
|
||
KIS API changes HIGH(7) x LOW(2) = 14 (LOW)
|
||
(Mitigation: Adapter pattern + fallbacks)
|
||
|
||
Team capacity MEDIUM(6) x HIGH(7) = 42 (HIGH)
|
||
constraint
|
||
(Mitigation: Prioritize P0 > P1 > P2)
|
||
|
||
Schema drift MEDIUM(6) x MEDIUM(5) = 30 (MEDIUM)
|
||
(Mitigation: Automated validation in CI)
|
||
```
|
||
|
||
---
|
||
|
||
## 6. 관계자별 책임
|
||
|
||
| 역할 | Phase 0 | Phase 1 | Phase 2 | Phase 3 | Phase 4 |
|
||
|------|---------|---------|---------|---------|---------|
|
||
| **설계** | Claude ✓ | Claude | Claude | Team | Team |
|
||
| **구현** | Claude ✓ | Team | Team | Team | Team |
|
||
| **검증** | Claude ✓ | Claude+QA | Claude+QA | QA | QA |
|
||
| **배포** | DevOps ✓ | DevOps | DevOps | DevOps | DevOps |
|
||
| **승인** | Owner ✓ | Owner | Owner | Owner | Owner |
|
||
|
||
---
|
||
|
||
## 7. Go/No-Go 게이트 체크리스트
|
||
|
||
### 🟢 PHASE 0 (Jul-Aug) ✅ APPROVED
|
||
- [x] CI 9 job 병렬화 완료 (40min → 15min)
|
||
- [x] 워크플로우 검증 자동화
|
||
- [x] CLAUDE.md 종합 문서화
|
||
- [x] 데이터 이력 테이블 설계
|
||
|
||
**진행 상태**: 100% | **승인**: 2026-07-24
|
||
|
||
---
|
||
|
||
### 🟡 PHASE 1 (Sep-Nov) PENDING
|
||
**Go 조건** (Sep 30):
|
||
- [ ] DB 정규화 70% 완료
|
||
- [ ] IQuoteRepository, IRunRepository 구현
|
||
- [ ] Data quality validator 작동
|
||
- [ ] 기존 API 호환성 유지 (Adapter pattern)
|
||
- [ ] 데이터 마이그레이션 테스트 통과
|
||
|
||
**의존성**: Phase 0 완료 ✓
|
||
|
||
---
|
||
|
||
### 🟡 PHASE 2 (Dec-Feb) PENDING
|
||
**Go 조건** (Feb 28):
|
||
- [ ] Nash equilibrium 알고리즘 구현
|
||
- [ ] 동적 스케줄러 운영 중
|
||
- [ ] 의사결정 로그 100% 추적
|
||
- [ ] 재현성 검증 완료
|
||
- [ ] 백테스트 통과 (Sharpe ratio +15%)
|
||
|
||
**의존성**: Phase 1 완료
|
||
|
||
---
|
||
|
||
### 🟡 PHASE 3 (Mar-Apr) PENDING
|
||
**Go 조건** (Apr 30):
|
||
- [ ] 패턴 카탈로그 완성
|
||
- [ ] ADR 5개 이상 작성
|
||
- [ ] 불필요한 코드 20% 제거
|
||
- [ ] Style guide 승인
|
||
- [ ] 온보딩 시간 50% 단축 검증
|
||
|
||
**의존성**: Phase 2 완료
|
||
|
||
---
|
||
|
||
### 🟡 PHASE 4 (May-Jun) PENDING
|
||
**Go 조건** (Jun 30):
|
||
- [ ] 99.9% 가용성 달성 (1개월 운영 증명)
|
||
- [ ] 성능 목표 달성 (API <200ms, 수집 <6min)
|
||
- [ ] 운영 자동화 87.5% 달성
|
||
- [ ] RTO/RPO 테스트 통과
|
||
- [ ] 최종 감사 승인
|
||
|
||
**의존성**: Phase 3 완료 + 프로덕션 안정성 입증
|
||
|
||
---
|
||
|
||
## 8. 투자 대비 효과 (ROI 분석)
|
||
|
||
### 비용 (한 명의 개발자 기준)
|
||
```
|
||
Phase 0: 2주 (CI/CD)
|
||
Phase 1: 8주 (Data architecture)
|
||
Phase 2: 12주 (Quant engine)
|
||
Phase 3: 4주 (Patterns)
|
||
Phase 4: 8주 (Optimization)
|
||
─────────────
|
||
Total: 34주 = 8.5개월 = 1 FTE
|
||
|
||
연간 운영 절감: 30시간/주 × 50주 = 1,500시간 절감
|
||
투자 대비 효과: 1,500시간 절감 / (34주 × 40시간 = 1,360시간 투자) = 1.1배
|
||
|
||
추가 효과: 포트폴리오 성과 20% 향상, 시스템 안정성 99.9% 달성
|
||
```
|
||
|
||
### 정성적 효과
|
||
- 👥 **팀 생산성**: 온보딩 50% 단축 (신입 개발자)
|
||
- 🛡️ **리스크 감소**: 데이터 손실 0%, 감시 추적 100%
|
||
- 📊 **의사결정 품질**: 투명성 100%, 재현성 100%
|
||
- ⚡ **정보 반영 속도**: 24시간 → 1시간 이내
|
||
|
||
---
|
||
|
||
## 9. 실패 사례 방지
|
||
|
||
```
|
||
❌ 실패 사례 ✅ 우리의 접근법
|
||
────────────────────────────────────────────────────
|
||
"Big bang" 전환 작은 단위 iterative 개선
|
||
(all or nothing) (각 phase별 go/no-go)
|
||
|
||
마이그레이션 중 장애 Parallel run + 자동 롤백
|
||
(데이터 손실) (backward compatibility)
|
||
|
||
성능 회귀 미발견 Before/after 벤치마킹
|
||
+ 자동화된 성능 게이트
|
||
|
||
기술 선택 이유 불명확 ADR (Architecture Decision Records)
|
||
(누가, 언제, 왜?) (투명한 의사결정)
|
||
|
||
팀 역량 부족 Phase 우선순위 명확화
|
||
(너무 빨리 너무 많이) (P0 > P1 > P2)
|
||
```
|
||
|
||
---
|
||
|
||
## 10. 마일스톤 & 주요 이벤트
|
||
|
||
```
|
||
🟢 2026-07-24 PHASE 0 완료 ✓ CI 9-job, CLAUDE.md updated
|
||
🟡 2026-08-31 PHASE 0 검증 데이터 일관성 검증 완료
|
||
🟡 2026-09-30 PHASE 1 시작 DB 정규화 첫 배포
|
||
🟡 2026-11-30 PHASE 1 완료 검증 Component API 운영
|
||
🟡 2026-12-15 PHASE 2 시작 Game theory engine 첫 결정
|
||
🟡 2027-02-28 PHASE 2 완료 검증 의사결정 투명성 100%
|
||
🟡 2027-03-31 PHASE 3 시작 Pattern library 공개
|
||
🟡 2027-04-30 PHASE 3 완료 검증 Style guide 승인
|
||
🟡 2027-05-31 PHASE 4 시작 성능 최적화
|
||
🟡 2027-06-30 PHASE 4 완료 ✓ 최종 프로덕션 안정화 완료
|
||
```
|
||
|
||
---
|
||
|
||
## 11. 승인 서명
|
||
|
||
| 역할 | 이름 | 서명 | 날짜 |
|
||
|------|------|------|------|
|
||
| Project Owner | [TBD] | _____ | |
|
||
| Technical Lead | Claude + Team | _____ | 2026-07-24 |
|
||
| QA Lead | [TBD] | _____ | |
|
||
| DevOps Lead | [TBD] | _____ | |
|
||
|
||
---
|
||
|
||
**Document Version**: 1.0
|
||
**Status**: Phase 0 ✅ Approved
|
||
**Next Review**: 2026-08-31
|