인사이트

백테스팅 과최적화, 비트코인 이동평균 162개 조합으로 확인한 학습과 검증의 차이

백테스팅 과최적화를 비트코인 데이터로 직접 시험했습니다. 이동평균 교차 162개 조합 중 학습 구간 1위(+126%)는 검증 구간에서 −24%로 160위였고, 두 구간 순위 상관은 −0.13이었습니다. 과최적화를 줄이는 백테스트 방법을 정리합니다.

한 봉우리만 뾰족하게 솟은 지형과 그 옆의 넓고 완만한 언덕, 백테스팅 과최적화를 상징하는 일러스트
목차
  1. 실험 설계: 162개 조합, 두 개의 구간
  2. 학습 1위의 검증 성적: +126%에서 −24%로
  3. 과최적화를 알려 준 신호: 주변 조합의 흔들림
  4. 과최적화를 줄이는 백테스트 방법 5단계
  5. 시스템트레이딩이라면 백테스트 결과를 이렇게 씁니다
  6. 백테스팅 과최적화 실험 요약
  7. 자주 묻는 질문
  8. Q. 백테스팅 과최적화는 어떻게 확인하나요?
  9. Q. 과최적화와 최적화는 무엇이 다른가요?
  10. Q. 백테스트 방법에서 데이터는 어떻게 나누나요?
  11. Q. 트레이딩뷰 백테스트 방법으로도 과최적화를 막을 수 있나요?
  12. 투자 위험 고지
  13. 출처

백테스팅 과최적화가 얼마나 위험한지는 숫자로 보면 분명합니다. 비트코인 일봉으로 이동평균 교차 전략 162개 조합을 시험했더니, 학습 구간(2024-01-10~2025-06-30)에서 1위였던 10일·20일 조합은 +126.5%를 냈지만, 같은 설정을 검증 구간(2025-07-01~2026-10-04)에 쓰자 −23.6%로 162개 중 160위가 됐습니다. 두 구간의 순위 상관계수는 −0.13으로, 학습 성적이 검증 성적을 전혀 설명하지 못했습니다.

이 글은 퀀트알파가 비트스탬프 BTC/USD 일봉 999개로 직접 계산한 결과를 표로 보여 드리고, 과최적화를 줄이는 백테스트 방법을 단계별로 정리합니다(수수료 회당 0.1% 반영, 롱 전용, 종가 체결로 단순화).

실험 설계: 162개 조합, 두 개의 구간

  • 전략 — 내용: 단기 이동평균이 장기 이동평균 위면 보유, 아래면 현금
  • 단기 기간 — 내용: 5~50일(5일 간격)
  • 장기 기간 — 내용: 20~200일(10일 간격), 단기의 1.5배 초과만
  • 조합 수 — 내용: 162개
  • 학습 구간 — 내용: 2024-01-10~2025-06-30(보유 시 +129.6%)
  • 검증 구간 — 내용: 2025-07-01~2026-10-04(보유 시 −18.2%)

학습 구간은 큰 상승장, 검증 구간은 고점 이후 하락과 반등이 섞인 구간입니다. 시장 성격이 바뀐 상황에서 학습 결과가 얼마나 버티는지를 보는 실험입니다.

학습 구간과 검증 구간으로 나뉜 비트코인 일봉 종가 차트(경계선 표시)

학습 1위의 검증 성적: +126%에서 −24%로

  • 10일·20일 수익률 — 학습 구간: +126.5% · 검증 구간: −23.6%
  • 10일·20일 최대 낙폭 — 학습 구간: −24.6% · 검증 구간: −39.1%
  • 10일·20일 순위 — 학습 구간: 1위 · 검증 구간: 160위(162개 중)
  • 학습 상위 10개 평균 — 검증 구간: −4.5%
  • 전체 162개 평균 — 학습 구간: +22.6% · 검증 구간: −4.0%

학습 상위 10개를 골라도 검증 평균은 −4.5%로, 아무 조합이나 고른 평균(−4.0%)보다도 나빴습니다. 반대로 검증 구간 1위였던 5일·60일(+23.7%)은 학습 구간에서 88위였습니다. 학습에서 이익, 검증에서 손실을 낸 조합은 59.3%였습니다.

162개 조합의 학습 수익률과 검증 수익률 산점도(학습 1위 강조, 직접 계산)

과최적화를 알려 준 신호: 주변 조합의 흔들림

학습 1위 주변(단기 ±5일, 장기 ±10일) 5개 조합의 학습 수익률 평균은 +69.1%로, 1위(+126.5%)와 큰 차이가 났습니다. 1위가 주변보다 유난히 튀어 있었다는 뜻입니다. 이 주변 조합들의 검증 평균은 −11.7%였습니다.

  • 1위 vs 주변 평균(학습) — 결과: +126.5% vs +69.1% · 해석: 1위만 튀는 '뾰족한 봉우리'
  • 학습·검증 순위 상관 — 결과: −0.13 · 해석: 학습 성적이 검증을 설명하지 못함
  • 학습 플러스·검증 마이너스 — 결과: 59.3% · 해석: 상승장에 맞춘 조합이 다수

과최적화된 설정은 지도로 그리면 뾰족한 봉우리처럼 보이고, 견고한 설정은 넓은 언덕처럼 보입니다. 같은 수익률이라면 언덕 위의 숫자를 고르는 편이 안전합니다.

단기·장기 이동평균 기간별 학습 수익률 히트맵(직접 계산)

과최적화를 줄이는 백테스트 방법 5단계

  1. 학습·검증 분리: 설정은 학습 구간으로만 고르고, 검증 구간은 마지막에 한 번만 확인합니다.
  2. 주변 안정성 확인: 최고점 하나가 아니라 주변 조합들의 평균과 최저값을 봅니다.
  3. 구간 이동 검증: 학습·검증 창을 조금씩 옮겨 가며 반복해, 특정 기간에만 맞는 설정을 걸러냅니다.
  4. 국면별 분리: 상승·하락·횡보 구간의 성적을 따로 계산해 약한 환경을 미리 확인합니다.
  5. 비용 반영: 수수료·슬리피지·펀딩비를 넣고, 거래 수가 적으면 결론을 미룹니다.

트레이딩뷰 백테스트 방법으로 전략을 시험할 때도 기간 설정을 바꿔 결과를 비교하는 것이 출발점입니다. 기본 기간 한 번의 결과만 보고 판단하면 이번 실험의 1위 조합과 같은 함정에 빠지기 쉽습니다.

학습·검증·이동 검증·국면 분리·비용 반영 다섯 단계 계단 일러스트

시스템트레이딩이라면 백테스트 결과를 이렇게 씁니다

  1. 최고 수익 설정 대신 견고한 구간을 고릅니다. 주변 조합의 성적이 고르게 괜찮은 영역의 중간값을 씁니다.
  2. 낙폭 기준을 먼저 둡니다. 검증 구간 최대 낙폭이 감당 범위를 넘는 설정은 수익률과 관계없이 제외합니다.
  3. 실전에서도 검증을 계속합니다. 실거래 성과가 백테스트 범위를 벗어나면 비중을 줄이고 원인을 다시 확인합니다.

퀀트알파도 과거 최고 수익 설정을 그대로 쓰지 않고, 검증 구간과 국면별 낙폭을 먼저 봅니다. 그럼에도 모든 구간에서 이길 수는 없다는 점은 퀀트알파이야기 10편 "그렇다면 퀀트알파는 단점이 없을까요? 아닙니다"(https://www.quant-alpha.kr/blog/quant-alpha-story-10)에 솔직하게 정리해 두었습니다.

뾰족한 봉우리 대신 넓은 언덕 위에 깃발을 꽂는 견고한 설정 선택 일러스트

백테스팅 과최적화 실험 요약

  • 162개 조합 중 학습 1위(+126.5%)는 검증 구간에서 −23.6%, 160위였습니다.
  • 학습 상위 10개의 검증 평균(−4.5%)은 전체 평균(−4.0%)보다 나빴습니다.
  • 학습·검증 순위 상관은 −0.13, 학습 이익·검증 손실 조합은 59.3%였습니다.
  • 주변 안정성, 구간 이동 검증, 국면별 분리, 비용 반영이 과최적화를 줄이는 기본 절차입니다.

함께 읽으면 좋은 글

자주 묻는 질문

Q. 백테스팅 과최적화는 어떻게 확인하나요?

A. 설정을 고를 때 쓰지 않은 구간에서 다시 시험하고, 주변 설정들의 성적도 함께 봅니다. 이번 실험처럼 학습 1위가 검증에서 크게 무너지면 과최적화 신호입니다.

Q. 과최적화와 최적화는 무엇이 다른가요?

A. 최적화는 합리적인 설정을 찾는 과정이고, 과최적화는 과거의 우연까지 맞춰 새 데이터에서 무너지는 상태입니다. 검증 구간 성적과 주변 안정성으로 구분합니다.

Q. 백테스트 방법에서 데이터는 어떻게 나누나요?

A. 보통 앞쪽 60~70%로 설정을 고르고 나머지로 검증합니다. 창을 옮겨 가며 여러 번 반복하면 특정 기간에 맞춘 설정을 더 잘 걸러낼 수 있습니다.

Q. 트레이딩뷰 백테스트 방법으로도 과최적화를 막을 수 있나요?

A. 기간과 설정을 바꿔 결과를 비교하고, 가장 좋은 숫자가 아니라 주변까지 고르게 괜찮은 숫자를 고르면 위험을 줄일 수 있습니다.

가장 많이 번 설정 대신 검증 구간과 낙폭으로 전략을 고르는 퀀트알파의 운용 원칙이 궁금하다면 홈페이지에서 확인해 보세요. 텔레그램 무료방 안내도 홈페이지에서 제공됩니다.

https://quant-alpha.kr

투자 위험 고지

본 글의 백테스트는 과거 일봉 종가와 단순 가정(종가 체결, 수수료 0.1%, 롱 전용)으로 계산한 교육용 자료이며 투자 권유가 아닙니다. 실제 매매에서는 체결 오차·세금·자금 제약으로 결과가 달라질 수 있고, 과거 성과는 미래 수익을 보장하지 않습니다. 가상자산은 변동성이 매우 커 원금 손실이 발생할 수 있습니다.

출처

  • 비트스탬프 BTC/USD 일봉 999개(2024-01-10~2026-10-04, 2026-10-06 08:01 KST 조회)로 퀀트알파가 직접 계산
← 블로그 목록