Skip to content

capstone-design-quantimizer/quantimizer

Repository files navigation

25-2 KHU 캡스톤디자인: 퀀티마이저

퀀티마이저(QuantiMizer) 는 머신러닝 기반 데이터베이스 최적화 기법을 활용해 퀀트 투자 전략의 백테스팅 성능을 높이는 시스템입니다. FastAPI 백엔드와 React 기반 프론트엔드를 중심으로, 전략 생성부터 결과 비교, 모델 관리, 모니터링까지 백테스팅 워크플로우 전반을 지원합니다.

핵심 기능

  • 백테스트/전략 관리: 다양한 전략과 백테스트 설정을 등록하고 실행 결과를 대시보드에서 시각화 및 비교.
  • 블록 기반 전략 빌더: Blockly UI로 지표·매매 로직을 조합하여 코드 없이 전략 구성.
  • ML 모델 운영: 예측 모델 학습·추론 요청과 맞춤 피쳐 선택을 지원하여 전략 성능 개선.
  • DB 및 로깅 최적화: ML 기반 DB 최적화를 전제로, Loki/Promtail/Grafana 스택으로 로그를 수집·관찰.
  • 인증·권한 분리: 사용자/관리자 토큰 기반 인증 흐름을 제공하여 안전한 운영 환경 확보.
  • 커뮤니티 공유: 전략 및 결과를 게시물 형태로 공유해 협업과 피드백을 촉진.

시스템 구성

  • Backend: FastAPI 기반 REST API, SQLAlchemy ORM, JWT 인증. 환경 변수로 DB URL과 JWT 시크릿을 주입해 uvicorn으로 서비스합니다.
  • Frontend: Vite + React(TypeScript) SPA. 차트, 전략 비교, 예측 모델 UI, 관리자/사용자용 페이지를 제공합니다.
  • Observability: Loki + Promtail + Grafana 스택을 docker-compose로 함께 실행하여 서비스 로그를 중앙집중화하고 대시보드로 시각화합니다.

설치 및 실행

1) Docker로 통합 실행

  1. 필수 요구 사항: Docker, Docker Compose.
  2. backend/.env에 핵심 환경 변수를 설정합니다 (예: DATABASE_URL, JWT_SECRET_KEY, ACCESS_TOKEN_EXPIRES, REFRESH_TOKEN_EXPIRES).
  3. 루트에서 다음을 실행해 백엔드·프론트엔드·모니터링 스택을 모두 올립니다:
    docker compose up -d
  4. 기본 포트

2) 로컬 개발 실행

  • Backend
    1. cd backend && python -m venv .venv && source .venv/bin/activate
    2. pip install -r requirements.txt
    3. .env에 DB URL과 JWT 시크릿을 설정한 뒤 개발 서버 실행:
      uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
  • Frontend
    1. cd frontend && npm install
    2. 개발 서버 실행: npm run dev
    3. API 프록시 기본값은 VITE_API_BASE_URL=/api이며 필요 시 .env에 맞게 조정합니다.

프로젝트 구조

├── backend/               # FastAPI 서비스, 도메인별 router/schemas/models
│   ├── app/core           # 설정, 로깅 초기화
│   ├── app/routers        # auth, strategies, backtests, community 등 API 엔드포인트
│   ├── app/services       # 비즈니스 로직 및 백테스트/모델 처리
│   ├── app/db             # 세션 및 모델 베이스 정의
│   └── requirements.txt   # Python 의존성 목록
├── frontend/              # Vite + React(TypeScript) 단일 페이지 앱
│   ├── src/pages          # Onboarding, StrategyBuilder, AdminDashboard 등 주요 화면
│   ├── src/components     # 차트, 모달, Pagination 컴포넌트
│   └── package.json       # 프론트엔드 의존성 및 스크립트
├── docker-compose.yml     # 백엔드/프론트엔드/관측 스택 통합 실행 설정
├── loki-config.yaml       # Loki 설정
└── promtail-config.yaml   # Promtail 설정

라이선스

본 리포지토리의 라이선스 정보는 별도로 명시된 경우를 제외하고 팀 내부 정책을 따릅니다.

About

퀀트 투자 시스템

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published