공부방 ›

[백테스트] [심화] 선견 편향: 백테스트가 미래를 훔쳐보는 실수

大현자 마스터운영진2026. 10. 31. 08:36조회 461추천 28댓글 0

백테스트가 실전보다 훨씬 좋게 나오는 가장 흔한 원인이 선견 편향(look-ahead bias)입니다. 그 시점에는 알 수 없던 정보를 쓰는 거예요.

흔한 예

  • 아직 닫히지 않은 봉의 종가로 신호를 내는 것
  • 하루가 끝나야 확정되는 값(일봉 고가·저가)으로 장중에 진입하는 것
  • 나중에 값이 바뀌는 리페인팅 지표 (지그재그, 일부 프랙탈)
  • 상위 타임프레임 봉이 끝나기 전 값을 쓰는 것

MQL5에서 피하는 법

// 새 봉이 시작될 때 한 번만 판단
datetime lastBar = 0;
bool IsNewBar()
{
   datetime t = iTime(_Symbol, PERIOD_CURRENT, 0);
   if(t != lastBar) { lastBar = t; return true; }
   return false;
}

// 신호는 "이미 닫힌 봉"(인덱스 1)으로
double c1 = iClose(_Symbol, PERIOD_CURRENT, 1);
double h4Close = iClose(_Symbol, PERIOD_H4, 1);   // 상위 타임프레임도 1번 봉

점검법

  • 백테스트를 "시가 기준"과 "실제 틱 기준"으로 각각 돌려 결과가 크게 다르면 의심하세요
  • 데모 계좌에서 1~2주 돌린 체결 시점과, 같은 기간 백테스트 체결 시점을 비교해 보세요

댓글 0

목록
Vantage 앱 광고광고
현자 탄생기념 부스터 이벤트