홈 > 블로그 > 워크포워드 분석으로 커브 피팅 방지하기

워크포워드최적화커브피팅백테스트MT5

워크포워드 분석으로 커브 피팅 방지하기

공개일: 2026-10-02읽기 시간: 약 6분
⏱ 본 기사는 게시일 시점의 정보입니다. EA의 실적 수치(PF·DD·연율)는 운용 및 재검증으로 변동하므로 최신 값은 각 EA 페이지에서 확인하세요. 최신 EA 실적 보기 →

워크포워드 분석으로 커브 피팅 방지하기 - EA 최적화의 올바른 절차

MT5의 Strategy Tester에서 파라미터를 최적화하면 과거 데이터에 가장 좋은 결과를 보이는 파라미터를 찾을 수 있습니다.

그러나 그 "최적 파라미터"는 과거 데이터에 지나치게 특화되어 있을(커브 피팅) 가능성이 있습니다. 워크포워드 분석은 이러한 과최적화를 방지하기 위한 기법입니다.

이 글의 요점

  • 데이터를 최적화 기간(인샘플)과 검증 기간(아웃오브샘플)으로 70:30으로 나누고, 시계열 순서에 따라 반복한다
  • WFE(아웃오브샘플 PF ÷ 인샘플 PF × 100%)가 60% 이상이면 합격 라인
  • 최적화할 변수는 1~2개로 압축하고, Top1이 아니라 상위 클러스터의 중앙값을 채택한다

워크포워드 분석 절차 (전체 구조)

단계할 일기준
1최적화할 변수를 1~2개로 압축예: EMA 기간만
2인샘플 기간에서 최적화5~7년
3상위 파라미터 선택Top1이 아니라 상위 20% 클러스터의 중앙값
4아웃오브샘플 기간에서 백테스트23년 (비율 70:3080:20)
5WFE를 계산하여 판정60% 이상이면 합격·40% 미만은 커브 피팅 의심
6기간을 옮겨 가며 2~5를 반복각 검증 기간에서 PF가 플러스인가

📧 무료 이메일 강좌(총 8통) + 구독자 전용 MT5 지표 13종 팩

가입 직후, 사이트의 MT5 지표 13종을 컴파일된 파일(.ex5)·소스 코드·사용 가이드로 묶은 구독자 전용 팩의 다운로드 링크를 보내 드립니다. 이어서 FX 자동매매의 본질, 백테스트를 올바르게 읽는 법, 브로커 선택 요령 등을 총 8통(처음 5일은 매일 1통, 이후 가입 7·14·30일 후)으로 전해 드립니다. MQL5 Market 판(출시가·판매량에 따라 단계적 인상)의 가격 인상 전 알림도 받으실 수 있습니다. 이 사이트의 EA는 제휴 브로커의 실계좌가 있으면 무료입니다.

※ 개인정보는 엄격히 보호. 언제든 구독 해지 가능.

커브 피팅(과최적화)이란

백테스트 최적화의 문제점:
과거 10년 데이터에 최적인 파라미터 → 미래에는 통하지 않는다

예: EMA 기간을 10~50 범위에서 최적화했을 때

EMA 기간백테스트 PF포워드 테스트 PF
21(최적값)2.30.9 ← 실제로는 이렇게 된다
30(차점)1.81.3
평균적인 값1.51.4

최적화된 값(EMA=21)은 백테스트에서는 최고이지만, 미래에서는 기대에 못 미치는 경우가 있습니다. 이것이 커브 피팅입니다.


워크포워드 분석의 원리

워크포워드 분석은 데이터를 "최적화 기간(인샘플)"과 "검증 기간(아웃오브샘플)"으로 분할합니다.

이를 시계열 순서에 따라 반복함으로써 과최적화를 검출합니다.

【데이터 분할 예시(10년 분)】

├─ 최적화 기간 ─┤─ 검증 기간 ─┤
2015~2018년    2019년     → 파라미터 A를 도출하여 2019년에 검증
     ↓
2016~2019년    2020년     → 파라미터 B를 도출하여 2020년에 검증
     ↓
2017~2020년    2021년     → 파라미터 C를 도출하여 2021년에 검증
     ↓
(이후 반복)

각 검증 기간의 결과를 집계함으로써, "이 EA의 파라미터는 시장 환경이 바뀌어도 안정적인가"를 평가할 수 있습니다.


워크포워드 분석 실시 방법(MT5)

MT5의 Strategy Tester에는 "포워드" 설정(기간의 1/2·1/3·1/4 또는 시작일 지정)이 있어, 최적화 시 지정한 기간을 아웃오브샘플로 남겨 두고 1회 포워드 검증을 할 수 있습니다("최적화 결과" 탭과 "포워드 결과" 탭에서 비교). 다만 창을 이동시키며 여러 번 반복하는 롤링형 워크포워드 분석은 표준 기능에 없으므로, 다음 방법으로 대체할 수 있습니다.

방법①:수동으로 인샘플 / 아웃오브샘플 분할

절차:

  1. 백테스트 기간을 2015~2020년으로 설정하고 최적화
  2. 최적화 결과에서 상위 파라미터를 3~5개 선택
  3. 선택한 파라미터로 2021~2025년(아웃오브샘플)에서 백테스트
  4. 최적화 기간과 아웃오브샘플의 PF를 비교
평가 기준(워크포워드 효율):
WFE = 아웃오브샘플 PF ÷ 인샘플 PF × 100%

WFE 60% 이상 → 합격(과최적화 없음)
WFE 40~60% → 관찰 필요
WFE 40% 미만 → 커브 피팅 의심(사용 금지)

방법②:서드파티 도구 사용

도구할 수 있는 것
Strategy Quant X워크포워드 분석의 자동화가 가능
MT5 표준 "포워드" 설정최적화마다 1회만 아웃오브샘플 검증(롤링형은 수동으로 반복)

최적화 시 주의사항

주의①:최적화할 변수는 1~2개로 압축

동시에 많은 파라미터를 최적화할수록 커브 피팅의 리스크가 높아집니다.

✅ 좋은 예:EMA 기간만 최적화(10~50, 스텝 5)
❌ 나쁜 예:EMA 기간 × ATR 배율 × RSI 기간을 동시 최적화

최적화 변수를 늘리면 "조합 폭발"로 인해 우연히 최적 조합을 찾을 확률이 올라갈 뿐입니다.

주의②:최적화 결과의 Top1을 사용하지 않기

최적화 결과 목록에서 가장 높은 PF를 보인 파라미터는 커브 피팅되어 있을 가능성이 가장 높은 파라미터입니다.

대신 다음 방법을 사용합니다:

권장 접근법:
1. 상위 20%의 파라미터를 추출
2. 서로 근접한 파라미터 군(클러스터)을 찾는다
3. 클러스터의 중앙값 부근의 파라미터를 채택

예:EMA 기간의 최적화 결과가 PF 높은 순으로 21, 23, 19, 35, 22, 20...으로 나열되는 경우, 2023의 클러스터가 존재합니다. 이 클러스터의 중앙값(2122)을 채택합니다.

주의③:최적화 기간을 길게 잡기

권장 설정:
- 최적화(인샘플)기간:5~7년
- 검증(아웃오브샘플)기간:2~3년
- 비율(인샘플:아웃오브샘플):70:30~80:20

최적화 기간이 짧을수록 과최적화의 리스크가 높아집니다.


워크포워드 분석 결과 해석 방법

관점좋은 EA의 특징주의가 필요한 EA의 특징
WFE(워크포워드 효율)60% 이상40% 미만
검증 기간별 성적각 검증 기간에서 PF가 플러스(전 기간에서 플러스)특정 검증 기간만 성적이 좋음(다른 기간은 마이너스)
PF 수준아웃오브샘플의 PF가 인샘플의 50~90% 범위 내인샘플의 PF가 3.0 이상(과최적화의 전형)

과최적화되기 어려운 파라미터 설계 팁

팁①:파라미터의 감도를 확인한다

최적값의 앞뒤(±10~20%)의 파라미터에서도 PF가 안정적인지 확인합니다.

EMA=21이 최적값인 경우:
EMA=18: PF 1.25
EMA=19: PF 1.31
EMA=20: PF 1.34
EMA=21: PF 1.38  ← 최적값
EMA=22: PF 1.33
EMA=23: PF 1.29
EMA=24: PF 1.24

→ 인근 파라미터에서도 안정적으로 PF가 플러스 = 견고한 전략

앞뒤에서 PF가 급격히 변하는 경우 과최적화의 가능성이 있습니다.

팁②:오버피팅되기 어려운 단순한 로직 사용

파라미터가 적고 단순한 로직의 EA일수록 커브 피팅되기 어렵습니다. EMA 크로스, ATR 기반의 SL/TP 설정 등의 단순한 요소를 조합하세요.


정리

워크포워드 분석 정리:

  1. 인샘플(최적화):아웃오브샘플(검증)= 70:30으로 분할
  2. WFE(워크포워드 효율)= 아웃오브샘플 PF ÷ 인샘플 PF × 100%
  3. WFE 60% 이상이 합격 라인
  4. 최적화 변수는 1~2개로 압축
  5. 최적값이 아닌 클러스터의 중앙값을 채택

워크포워드 분석을 수행함으로써, 포워드 테스트에서도 안정적으로 동작하는 EA를 특정할 수 있습니다. 백테스트 성적이 지나치게 좋은 EA일수록 이 검증이 중요합니다.


FAQ

Q: MT5 순정 기능으로 워크포워드 분석이 가능한가요?

일부는 가능합니다. Strategy Tester의 "포워드" 설정(기간의 1/2·1/3·1/4 또는 시작일 지정)을 사용하면 최적화와 동시에 후반 기간을 아웃오브샘플로 1회 검증할 수 있으며, "최적화 결과" 탭과 "포워드 결과" 탭에서 비교할 수 있습니다. 다만 창을 이동시키며 반복하는 롤링형 워크포워드 분석은 표준 기능에 없으므로, 수동으로 기간을 분할해 여러 번 실시하거나 외부 도구를 사용합니다.

Q: WFE가 50%라도 사용할 수 있나요?

WFE 50%는 경계선입니다. 아웃오브샘플의 PF가 1.2 이상이라면 실운용은 가능하지만, 포워드 테스트에서 6개월 이상의 실적을 쌓은 후 판단할 것을 권장합니다.

Q: 워크포워드 분석 없이 EA를 사용하는 것은 위험한가요?

위험하다고 단정할 수는 없지만, 커브 피팅의 리스크가 높아집니다. 최소한 "최적화 기간의 일부를 아웃오브샘플로 남겨두는" 방법만이라도 실시해 주세요.


관련 페이지

📧 무료 이메일 강좌(총 8통) + 구독자 전용 MT5 지표 13종 팩

가입 직후, 사이트의 MT5 지표 13종을 컴파일된 파일(.ex5)·소스 코드·사용 가이드로 묶은 구독자 전용 팩의 다운로드 링크를 보내 드립니다. 이어서 FX 자동매매의 본질, 백테스트를 올바르게 읽는 법, 브로커 선택 요령 등을 총 8통(처음 5일은 매일 1통, 이후 가입 7·14·30일 후)으로 전해 드립니다. MQL5 Market 판(출시가·판매량에 따라 단계적 인상)의 가격 인상 전 알림도 받으실 수 있습니다. 이 사이트의 EA는 제휴 브로커의 실계좌가 있으면 무료입니다.

※ 개인정보는 엄격히 보호. 언제든 구독 해지 가능.

EA나 FX에 대해 궁금한 점이 있나요?

Nattzy 트레이딩 포럼에 질문을 올릴 수 있습니다(무료 가입). 이 글의 내용이 아니어도 EA 설정이나 브로커 선택 등 어떤 질문이든 환영합니다.

Nattzy에서 질문하기 ↗

댓글 및 질문