본문으로 건너뛰기

첫 백테스트

quant-ai의 백테스트 엔진은 vectorbt 기반으로, 5개 기본 전략을 즉시 사용할 수 있습니다. 이 페이지에서는 첫 번째 백테스트를 실행하고 결과 지표를 해석합니다.

사전 준비

  • 10분 퀵스타트 완료 (계정 + 로그인)
  • 페이퍼 키 등록은 백테스트에 필수가 아닙니다 (저장된 OHLCV만 사용)

Step 1: Backtest 화면 열기

다음 두 위치 중 한 곳에서 진입할 수 있습니다.

  • 좌측 사이드바 → Backtest (Crypto 전용 단순 화면)
  • EquityBacktest 탭 (멀티자산: crypto / us_equity / kr_equity)

이 가이드는 멀티자산 화면(Equity → Backtest)을 기준으로 설명합니다.

📸 Equity 백테스트 폼 (추후 자동 캡처 예정)


Step 2: 파라미터 설정

폼 필드:

필드옵션 / 예시
Asset Classcrypto / us_equity / kr_equity
Strategymomentum, mean_reversion, trend_following, breakout, ma_golden_cross
Symbolcrypto는 BTC/USDT 고정 / 주식은 자유 입력 (AAPL, 005930)
Timeframe1m / 5m / 15m / 1h / 4h / 1d
Start Date예: 2024-01-01
End Date예: 2025-01-01
Initial Capital예: 10000 ($) — KR 자산은 KRW 환산

지원 전략 전체 목록과 시그널 정의는 부록 / 지원 전략 에 있습니다.

데이터 가용 구간

백테스트는 DB에 저장된 OHLCV만 사용합니다. 데이터가 비어 있는 구간을 지정하면 결과가 비거나 0거래로 끝납니다. 가용 구간은 데이터 / OHLCV 커버리지 화면에서 확인하세요.


Step 3: 실행

Run Backtest 버튼 클릭 시 다음 요청이 전송됩니다:

POST /api/backtest/run
Authorization: Bearer <access_token>

{
"strategy": "ma_golden_cross",
"symbol": "BTC/USDT",
"timeframe": "1h",
"start_date": "2024-01-01",
"end_date": "2025-01-01",
"initial_capital": 10000,
"asset_class": "crypto"
}

응답이 들어오면 폼 아래에 결과 패널이 표시됩니다.


Step 4: 결과 해석

📸 백테스트 결과 + equity curve (추후 자동 캡처 예정)

4-1. 핵심 지표

지표좋은 값 (참고)의미
total_return> 0기간 누적 수익률 (final_equity / initial_capital - 1)
sharpe_ratio> 1.0위험조정수익률 ((평균 수익 - 무위험) / 표준편차)
max_drawdown> -20% (절댓값 작을수록 양호)고점 대비 최대 낙폭
win_rate> 0.5승률 (이긴 거래 / 전체 거래)
profit_factor> 1.5총이익 / 총손실 절댓값
total_trades통계 신뢰 가능한 N전체 체결 횟수
절대 룰
  • 페이퍼/백테스트 단계에서 한 번이라도 max_drawdown-25% 이하 면 해당 전략은 라이브 후보에서 제외됩니다.
  • Sharpe < 0.5 인 전략도 마찬가지입니다.
  • 자세한 게이트: 페이퍼 → 라이브.

4-2. equity_curve 차트

equity_curve 는 시점별 잔고(time, equity) 시계열입니다. 차트에서 다음 포인트를 확인하세요:

  1. 우상향 추세 — 전체 곡선의 기울기가 양인가?
  2. drawdown 구간의 깊이와 길이 — 한 번 빠지고 회복하는 데 며칠 걸렸는가?
  3. 횡보 구간 — 시그널이 거의 없어 잔고가 평탄한 구간이 너무 길지 않은가? (전략-시장 미스매치)

4-3. 거래 분포

trades 배열에는 개별 거래 (entry_time, exit_time, pnl, return_pct)가 들어 있습니다. 승/패 분포가 한쪽으로 극단적으로 치우치면 (예: 승률 90% / 평균손실이 평균이익의 5배) 표면 지표가 좋아 보여도 fragile 한 전략입니다.


Step 5: 비교 / 저장

  • 다른 전략으로 동일 기간 다시 실행 → 결과 패널이 갱신됩니다.
  • 좋은 결과는 백테스트 프로파일 에 저장하면 다음에 같은 파라미터를 한 번에 불러올 수 있습니다.
  • Walk-forward 검증으로 강건성을 추가 확인하세요: walk-forward.

자주 보는 에러

메시지원인해결
total_trades=0전략 시그널이 0건 → 시장-전략 부정합 또는 데이터 비어있음다른 전략/기간 시도, OHLCV 커버리지 확인
422 Invalid symbol자산군 ↔ 심볼 불일치자산군 토글 변경
404 Strategy not found잘못된 전략 키지원 전략 목록 참고
500 ENGINE_FAILED엔진 내부 오류 (drift 등)잠시 후 재시도, 지속되면 트러블슈팅

다음 단계: 다음 단계에서 라이브 모드 게이트, 멀티자산 운영, Grafana 모니터링 등 후속 학습 경로를 확인합니다.