OptiNod 아카데미

백테스트 검증

백테스트 검증 시리즈 9편 전체에서 필요한 편부터 바로 시작하세요.

이 시리즈가 다루는 범위

백테스트 숫자가 실전 성과와 갈라지는 지점을 먼저 확인하고, 거래비용과 테스트 설정 오류를 제거한 다음, 과최적화를 걸러 내고 마지막으로 결과 지표를 읽습니다.

먼저 읽을 글

백테스트와 실전 — 수익 곡선이 갈라진 첫 거래를 찾는 법

뒤 글은 앞 글에서 정의한 용어를 그대로 씁니다. 순서대로 읽으면 중간에 막히는 곳이 줄어듭니다.

학습 순서

1. 백테스트와 실전의 차이

검증을 시작하기 전에 두 곡선이 어디서 갈라지는지부터 확인합니다.

  1. 백테스트와 실전 — 수익 곡선이 갈라진 첫 거래를 찾는 법 같은 코드·시장·체결 설정부터 맞춘 뒤, 신호·주문·체결·비용 기록을 대조합니다. 곡선 차이의 원인을 단정하지 않고 검증하는 순서를 알아봅니다.

2. 거래비용과 테스트 설정

수수료·슬리피지·유동성을 반영하고, 룩어헤드와 리페인팅을 걷어 냅니다.

  1. 슬리피지·수수료·유동성 — 백테스트가 숨긴 거래비용 수수료와 체결비용을 같은 명목금액 기준으로 계산합니다. 스프레드 중복, 거래 빈도의 분모, 실제 주문 크기와 호가 깊이를 점검합니다.
  2. 룩어헤드와 리페인팅 — 신호를 알 수 있었던 시점을 확인하세요 변하는 실시간 값, 상위 시간대 미확정값, 과거 위치 표시와 미래 누수를 구분합니다. 차트 화살표의 위치보다 신호를 처음 알 수 있었던 시점을 검증합니다.

3. 과최적화와 절차 검증

설정값이 우연히 맞은 것인지 구분하고, 최적화 절차 자체를 검증합니다.

  1. 과최적화 — 최고점 주변이 평평한 설정만 실전에서 버팁니다 백테스트 최고 수익률을 낸 파라미터는 과거 노이즈에 맞춰진 곡선인 경우가 많습니다. 옆 설정값까지 같이 좋은 고원형 성과 곡선만 실전에서 버팁니다.
  2. 워크포워드 분석 — 최적화 절차 자체를 검증하는 법 전체 기간을 한 번에 최적화한 점수는 미래를 미리 보고 맞춘 점수입니다. 워크포워드는 인샘플에서 고른 설정을 다음 아웃샘플에서만 평가해 절차 자체를 시험합니다.

4. 결과 지표 읽기

강건성, 이익계수 (PF), 샤프와 소르티노가 각각 무엇을 감추는지 확인합니다.

  1. 강건성 세 가지 — 같은 수익률 두 설정 중 어느 쪽을 믿을지 판가름하는 기준 수익률이 같은 두 설정 중 무엇을 믿을지 정할 때 쓰는 세 가지 강건성 점수(이웃 안정성, Edge Consistency, 상위 N 일관성)의 계산 방식과 종합 점수·파라미터 민감도를 읽는 법을 OptiNod 실제 구현 기준으로 설명합니다.
  2. 수익 팩터 — 하나의 숫자가 감추는 분포와 표본 수익 팩터를 거래 수만으로 신뢰하지 않습니다. 손익 집중도, 비용 반영, 승률과 평균 손익비, 미사용 구간을 함께 확인합니다.
  3. 샤프와 소르티노 — 변동성으로 나눈 성과, 그리고 상방까지 벌하는 한계 수익률만으로 전략을 비교하면 같은 수익에 도달하는 길의 변동성 차이를 놓칩니다. 샤프 지수의 한계와 소르티노 지수가 실전에 더 가까운 이유를 정리합니다.

5. TradingView에서 실습하기

TradingView 전략 테스터를 설정하고 거래 내역을 내보내 결과를 점검합니다.

  1. 트레이딩뷰 백테스트 방법 — 첫 설정부터 CSV 분석까지 전략 적용부터 자본·수수료·슬리피지와 기간 설정, 거래 0건 처리, 결과 해석과 CSV 분석까지 따라갑니다. 같은 조건을 기록해 다음 검증과 비교합니다.