Files
system-specs/docs/05-roadmap.md

15 KiB

QuantBench 구현 로드맵

1. 전체 일정 개요

gantt
    title QuantBench 개발 일정
    dateFormat YYYY-MM-DD
    section Phase 1: MVP
    프로젝트 설정           :p1_1, 2024-01-01, 2w
    balance 구현           :p1_2, after p1_1, 4w
    data 구현              :p1_3, after p1_1, 4w
    mgmt 구현              :p1_4, after p1_2, 3w
    strategy 구현          :p1_5, after p1_3, 4w
    scheduler 구현         :p1_6, after p1_4, 3w
    risk 구현              :p1_7, after p1_5, 3w
    통합 테스트            :p1_8, after p1_6, 2w

    section Phase 2: Production
    analytics 구현         :p2_1, after p1_8, 4w
    monitor 구현           :p2_2, after p1_8, 4w
    대시보드 개발          :p2_3, after p2_1, 3w
    통합 및 테스트         :p2_4, after p2_2, 2w

    section Phase 3: Enterprise
    audit 구현             :p3_1, after p2_4, 4w
    simulation 구현        :p3_2, after p2_4, 4w
    최종 통합 및 배포      :p3_3, after p3_1, 3w

전체 일정 요약

Phase 기간 주요 산출물
Phase 1: MVP 3-4개월 기본 거래 시스템
Phase 2: Production 2-3개월 모니터링 & 분석
Phase 3: Enterprise 2-3개월 감사 & 시뮬레이션
총 기간 7-10개월 완전한 퀀트 시스템

2. Phase 1: MVP (3-4개월)

목표

안전하게 전략을 실행하고 리스크를 통제할 수 있는 기본 시스템 구축

2.1 프로젝트 설정 (1-2주)

작업 항목:

  • 레포지토리 구조 설정
  • 개발 환경 구축 (Docker, Docker Compose)
  • CI/CD 파이프라인 설정
  • 코드 스타일 가이드 및 린팅 설정
  • 데이터베이스 스키마 초기 설계
  • API 인증/인가 구조 설계

기술 스택 결정:

  • 백엔드: TypeScript + Node.js (또는 Python + FastAPI)
  • 데이터베이스: PostgreSQL + TimescaleDB
  • 캐시: Redis
  • 메시지 큐: RabbitMQ (또는 Kafka)

2.2 Week 1-4: balance + data 기본 구현

balance 컴포넌트 (2-3주)

우선순위 1: 한국투자증권 API 연동

  • BrokerAdapter 인터페이스 정의
  • 한국투자증권 Adapter 구현
    • 인증 및 세션 관리
    • 계좌 잔고 조회
    • 현재가 조회
    • 주문 제출 (시장가, 지정가)
    • 주문 상태 조회
    • 주문 취소
  • API 키 암호화 저장
  • 에러 처리 및 재시도 로직
  • 단위 테스트 작성

우선순위 2: 계좌 관리 기능

  • 계좌 등록/수정/삭제 API
  • 계좌 목록 조회
  • 계좌 상태 관리

data 컴포넌트 (2-3주)

우선순위 1: 데이터 수집

  • 데이터 소스 추상화 인터페이스
  • Yahoo Finance 연동 (과거 데이터)
  • 한국투자증권 API를 통한 실시간 시세 조회
  • 데이터 검증 로직
    • 결측치 탐지
    • 이상치 탐지
    • 데이터 연속성 체크

우선순위 2: 데이터 저장

  • TimescaleDB 스키마 설계
  • 가격 데이터 저장 (PriceBar)
  • Redis 캐시 연동 (실시간 시세)
  • 데이터 조회 API
    • 과거 데이터 조회
    • 최신 시세 조회
    • 다중 종목 배치 조회

2.3 Week 5-8: mgmt + strategy 핵심 기능

mgmt 컴포넌트 (3주)

우선순위 1: 컨테이너 생명주기

  • 컨테이너 생성/수정/삭제 API
  • 가상 잔고 관리
    • 초기 자산 할당
    • 현금 및 포지션 추적
    • 밸런스 조정 (reconciliation)
  • 컨테이너 상태 관리 (ACTIVE/PAUSED/ARCHIVED)

우선순위 2: 자산 관리

  • 컨테이너 간 자산 이동
  • 실제 계좌 vs 가상 컨테이너 일치성 검증
  • 컨테이너 조회 API

strategy 컴포넌트 (4주)

우선순위 1: 전략 인터페이스

  • StrategyInterface 정의
  • 전략 등록 및 관리 API
  • 전략 버전 관리
  • 파라미터 관리

우선순위 2: 신호 생성

  • 신호 생성 엔진
  • 신호를 주문으로 변환
  • 내장 전략 구현: Bold Asset Allocation
    • 고정 비중 자산 배분
    • 리밸런싱 로직

우선순위 3: 백테스트

  • 백테스트 엔진 구현
  • 과거 데이터 기반 시뮬레이션
  • 거래 비용 및 슬리피지 모델링
  • 성과 지표 계산 (수익률, 샤프 비율, MDD 등)

2.4 Week 9-12: scheduler + risk

scheduler 컴포넌트 (3주)

우선순위 1: 스케줄 관리

  • 스케줄 생성/수정/삭제 API
  • Cron 기반 트리거
  • 시장 시간 체크 (개장/마감)
  • 휴일 감지 및 자동 스킵

우선순위 2: 실행 관리

  • 실행 트리거 로직
  • 전략 실행 오케스트레이션
    • 컨테이너 정보 조회
    • 신호 생성 요청
    • 리스크 검증
    • 주문 제출
  • 실행 이력 관리

우선순위 3: 승인 워크플로우

  • 승인 요청 생성
  • 승인 대기 및 타임아웃 처리
  • 승인/거부 처리
  • 자동 실행 모드

risk 컴포넌트 (3주)

우선순위 1: 사전 주문 검증

  • 잔고 충분성 체크
  • 포지션 사이즈 한도 검증
  • 집중도 리스크 체크 (단일 종목, 섹터)
  • 레버리지 한도 검증

우선순위 2: 리스크 한도 관리

  • 리스크 한도 설정 API
  • 컨테이너별 한도 조회

우선순위 3: 손절/익절

  • 손절 조건 설정
  • 익절 조건 설정
  • 자동 청산 트리거

2.5 Week 13-16: 통합 테스트 및 버그 수정

통합 테스트:

  • 전체 워크플로우 End-to-End 테스트
    • 컨테이너 생성 → 전략 할당 → 스케줄 설정 → 자동 실행
  • 리스크 시나리오 테스트
    • 잔고 부족 시나리오
    • 리스크 한도 초과 시나리오
    • 손절 트리거 시나리오
  • 증권사 API 연동 테스트 (Paper Trading 계좌)

버그 수정 및 개선:

  • 발견된 버그 수정
  • 성능 최적화
  • 에러 처리 개선
  • 로깅 강화

문서화:

  • API 문서 (Swagger/OpenAPI)
  • 사용자 가이드
  • 운영 매뉴얼

Phase 1 완료 기준

  • 한국투자증권 계좌 연동 완료
  • 1개 이상의 전략 백테스트 성공
  • Paper Trading 환경에서 자동 매매 성공
  • 모든 리스크 체크 통과
  • 전체 시스템 안정성 검증

3. Phase 2: Production Ready (2-3개월)

목표

실전 운영을 위한 모니터링, 분석, 알림 체계 구축

3.1 Week 1-4: analytics 구현

analytics 컴포넌트 (4주)

우선순위 1: 성과 측정

  • 일일 수익률 계산
  • 누적 수익률 추적
  • 리스크 지표 계산
    • 변동성 (Volatility)
    • 샤프 비율 (Sharpe Ratio)
    • 소르티노 비율 (Sortino Ratio)
    • 최대 낙폭 (MDD)

우선순위 2: 귀속 분석

  • 수익 원천 분해
    • 자산 배분 효과
    • 종목 선택 효과
    • 타이밍 효과
  • 섹터별 기여도 분석
  • 종목별 기여도 분석

우선순위 3: 거래 분석

  • 거래 통계 (승률, 손익비 등)
  • 거래 비용 분석
  • 회전율 계산

우선순위 4: 리포트 생성

  • 일일/주간/월간 리포트 템플릿
  • PDF 리포트 생성
  • HTML 리포트 생성
  • 이메일 자동 발송

3.2 Week 5-8: monitor 구현

monitor 컴포넌트 (4주)

우선순위 1: 시스템 헬스 체크

  • 컴포넌트별 헬스 체크
  • API 연결 상태 모니터링
  • 데이터베이스 응답 시간 추적
  • 리소스 사용률 모니터링 (CPU, 메모리)

우선순위 2: 이상 탐지

  • 급격한 포지션 변화 감지
  • 비정상 주문 탐지
  • 시장 이상 조건 감지 (극심한 변동성, 유동성 부족)

우선순위 3: 알림 시스템

  • 알림 규칙 엔진
  • 다채널 알림 발송
    • 이메일 (SendGrid/AWS SES)
    • SMS (Twilio)
    • 푸시 알림 (Firebase)
    • Slack 웹훅
  • 알림 이력 관리
  • 알림 빈도 제한 (Throttling)

우선순위 4: 대시보드 데이터

  • 실시간 메트릭 수집
  • 대시보드 API
  • WebSocket을 통한 실시간 업데이트

3.3 Week 9-12: 대시보드 개발 및 통합

프론트엔드 개발 (3주):

  • 프로젝트 설정 (React + TypeScript)
  • 주요 화면 개발
    • 대시보드 홈 (전체 계좌 요약)
    • 컨테이너 상세 (포지션, 성과, 차트)
    • 전략 관리 (등록, 수정, 백테스트 실행)
    • 주문 승인 화면
    • 알림 센터
    • 설정 화면
  • 차트 컴포넌트 (TradingView, Chart.js)
  • 실시간 업데이트 (WebSocket)

통합 및 테스트 (2주):

  • 프론트엔드-백엔드 통합
  • E2E 테스트
  • 성능 테스트
  • 사용자 시나리오 테스트

Phase 2 완료 기준

  • 실시간 대시보드 동작
  • 자동 리포트 생성 및 발송
  • 알림 시스템 정상 작동
  • 이상 탐지 시나리오 검증
  • 사용자 인수 테스트 통과

4. Phase 3: Enterprise Grade (2-3개월)

목표

규제 대응, 감사 추적, 고급 시뮬레이션

4.1 Week 1-4: audit 구현

audit 컴포넌트 (4주)

우선순위 1: 감사 로그

  • 감사 이벤트 정의
  • 불변 로그 저장 (Append-Only)
  • 해시 체인 구현 (무결성 보장)
  • 주요 이벤트 자동 기록
    • 주문 생성/취소/체결
    • 설정 변경
    • 승인/거부
    • 로그인

우선순위 2: 변경 추적

  • 엔티티별 변경 이력
  • Before/After 스냅샷
  • 변경 사유 기록

우선순위 3: 규제 리포팅

  • 거래 내역 보고서
  • 포지션 명세서
  • 이상 거래 보고서
  • CSV/JSON 내보내기

우선순위 4: 무결성 검증

  • 감사 로그 무결성 체크
  • 해시 체인 검증
  • 주기적 무결성 검사 스케줄

4.2 Week 5-8: simulation 구현

simulation 컴포넌트 (4주)

우선순위 1: Paper Trading

  • 가상 계좌 생성
  • 가상 주문 체결 엔진
    • 실시간 호가 기반 체결 시뮬레이션
    • 슬리피지 모델링
    • 수수료 계산
  • 가상 포트폴리오 관리

우선순위 2: 시뮬레이션 환경

  • 과거 데이터 리플레이
  • 다중 시나리오 테스트
  • 스트레스 테스트
    • 극단 변동성 시나리오
    • 유동성 부족 시나리오
    • 블랙스완 이벤트

우선순위 3: 파라미터 최적화

  • 그리드 서치
  • 랜덤 서치
  • 베이지안 최적화 (선택)
  • Walk-Forward 분석
  • 과최적화 검증

우선순위 4: 실계좌 전환

  • Paper → Real 전환 검증
  • 설정 복제 및 검증
  • 점진적 자산 이전

4.3 Week 9-12: 최종 통합 및 배포

보안 강화 (2주):

  • 침투 테스트 (Penetration Testing)
  • API 키 관리 강화
  • 역할 기반 접근 제어 (RBAC) 세밀화
  • 감사 로그 접근 제어

성능 최적화 (1주):

  • 데이터베이스 쿼리 최적화
  • 캐싱 전략 개선
  • API 응답 시간 최적화
  • 부하 테스트

배포 준비 (2주):

  • 프로덕션 환경 설정
  • 데이터베이스 마이그레이션 스크립트
  • 백업 및 복구 절차 수립
  • 모니터링 및 알림 설정 (Prometheus, Grafana)
  • 장애 복구 계획 (DR Plan)
  • 운영 문서 작성

최종 검증 (1주):

  • 전체 시스템 통합 테스트
  • 보안 검증
  • 성능 검증
  • 사용자 인수 테스트 (UAT)

Phase 3 완료 기준

  • 모든 거래가 감사 로그에 기록됨
  • Paper Trading 환경 정상 작동
  • 파라미터 최적화 기능 검증
  • 보안 감사 통과
  • 프로덕션 배포 완료

5. 마일스톤

timeline
    title QuantBench 주요 마일스톤
    section Phase 1
        M1.1 : 증권사 API 연동 완료
        M1.2 : 첫 백테스트 성공
        M1.3 : Paper Trading 자동매매 성공
        M1.4 : Phase 1 완료
    section Phase 2
        M2.1 : 실시간 대시보드 런칭
        M2.2 : 자동 리포트 시스템 가동
        M2.3 : Phase 2 완료
    section Phase 3
        M3.1 : 감사 시스템 가동
        M3.2 : Paper Trading 환경 오픈
        M3.3 : 프로덕션 배포
마일스톤 예상 일정 주요 산출물
M1.1 1개월차 한국투자증권 API 연동, 데이터 수집
M1.2 2개월차 Bold Asset Allocation 전략 백테스트 성공
M1.3 3개월차 Paper Trading 환경에서 자동매매
M1.4 4개월차 Phase 1 완료 (MVP)
M2.1 5개월차 실시간 대시보드
M2.2 6개월차 자동 리포트 시스템
M2.3 7개월차 Phase 2 완료 (Production Ready)
M3.1 8개월차 감사 시스템
M3.2 9개월차 Paper Trading 플랫폼
M3.3 10개월차 프로덕션 배포 완료

6. 리스크 및 대응 방안

리스크 영향 확률 대응 방안
증권사 API 변경 높음 중간 추상화 레이어 강화, 다중 증권사 지원
데이터 품질 문제 중간 높음 데이터 검증 강화, 다중 데이터 소스
성능 병목 중간 중간 초기부터 부하 테스트, 확장 가능 아키텍처
보안 취약점 높음 낮음 정기 보안 감사, 침투 테스트
일정 지연 중간 높음 애자일 방식, 2주 단위 스프린트, 우선순위 조정
규제 변경 중간 낮음 감사 로그 강화, 유연한 설계

7. 추가 고려사항

7.1 다중 증권사 지원 계획

Phase 1.5 (선택): 삼성증권 또는 키움증권 추가 연동

  • 예상 기간: 2-3주
  • BrokerAdapter 패턴 검증
  • 다중 계좌 통합 관리 테스트

7.2 고급 전략 추가

Phase 2.5 (선택): 추가 전략 구현

  • Momentum 전략
  • Value 전략
  • Mean Reversion 전략
  • 각 전략당 2-3주 소요

7.3 글로벌 시장 지원

Phase 4 (선택): 미국 주식 시장 지원

  • Interactive Brokers API 연동
  • 시간대 처리 (타임존)
  • 환율 처리
  • 예상 기간: 2-3개월

8. 성공 지표 (KPI)

Phase 1 완료 시

  • 시스템 가동률: 95% 이상
  • API 응답 시간: 평균 < 500ms
  • 주문 처리 성공률: 99% 이상
  • 백테스트 정확도: 실제 거래 대비 ±1% 이내

Phase 2 완료 시

  • 시스템 가동률: 99% 이상
  • 알림 발송 성공률: 99.5% 이상
  • 리포트 생성 시간: < 10초
  • 대시보드 로딩 시간: < 2초

Phase 3 완료 시

  • 시스템 가동률: 99.9% 이상
  • 감사 로그 무결성: 100%
  • Paper Trading 정확도: 실거래 대비 ±0.5% 이내
  • 보안 취약점: 0건 (Critical/High)

9. 관련 문서

구성요소 상세 문서