룩어헤드 편향: 백테스트는 이기는데 실계좌는 지는 이유

2026-07-06

전략을 만들고 백테스트를 돌리면 에쿼티 커브가 우상향한다. 실전에 투입하면 한 달 안에 계좌가 녹는다. 가장 흔한 원인은 불운이 아니라 룩어헤드 편향(look-ahead bias)이다 — 실제 주문을 넣어야 했던 그 순간에는 존재하지 않았던 정보를 백테스트가 몰래 사용한 것.

룩어헤드가 위험한 이유는 아무 문제도 없어 보이기 때문이다. 코드는 돌아가고 숫자는 아름다운데, 버그는 인덱스 하나의 오프셋이나 캔들 데이터에 대한 부주의한 가정 하나에 숨어 있다.

형태 1: 시그널이 뜬 캔들에서 바로 거래하기

지표 값은 그 캔들이 마감되어야 확정된다. RSI가 N번 캔들에서 50을 돌파했는데 백테스트가 N번 캔들의 시가나 저가에 진입한다면, 시간여행을 한 것이다. 라이브에서는 그 캔들이 진행되는 동안 RSI가 오르내리고 있었고, 당신이 근거로 삼은 돌파는 아직 일어나지 않았다.

정직한 규칙: 시그널은 캔들의 마감 확정값으로 판정하고, 진입은 다음 캔들 시가에 체결한다. 라이브 봇이 시장을 경험하는 방식 그대로이며, 이 사이트의 엔진이 모든 거래에 강제하는 규칙이다.

형태 2: 익절과 손절이 같은 캔들 안에 있을 때

+3% 익절과 −2% 손절을 걸어둔 포지션에서, 한 캔들의 고가가 익절선을 넘고 저가가 손절선을 뚫었다. 뭐가 먼저 걸렸을까? OHLC 데이터만으로는 알 수 없다 — 캔들은 내부에서 가격이 지나간 경로를 기록하지 않는다.

낙관적인 백테스트는 익절이 먼저 체결됐다고 가정하고, 그 승률 부풀림은 정확히 가장 중요한 거래들(변동성 큰 캔들)에서 발생한다. 방어 가능한 선택은 보수적인 쪽이다: 둘 다 닿았다면 손절이 먼저 체결됐다고 가정하라. 백테스트가 실제보다 약간 나빠 보이는 것이, 훨씬 좋아 보이는 것보다 낫다. 이 엔진은 모든 모호한 캔들에 손절 우선 원칙을 적용한다.

형태 3: 아직 안 닫힌 상위 타임프레임 캔들 참조

인기 있는 필터: "4시간봉 추세가 상승일 때만 롱 진입." 미묘한 버그: 10시 시점에 현재 4시간봉(08~12시)은 아직 진행 중이다. 백테스트가 타임스탬프로 4h 지표 값을 조회하면, 라이브에서는 아직 그려지고 있던 캔들의 최종값을 읽게 된다 — 그 구간 안의 1시간봉 4개 중 3개가 미래의 값으로 게이트되는 셈이다.

상위 타임프레임 필터는 현재 하위 캔들이 열리기 전에 완전히 마감된 HTF 캔들만 참조해야 한다. 멀티 타임프레임 전략에서 가장 흔하고 가장 파괴적인 버그다 — 추세의 미래를 아는 추세 필터는 언제나 천재처럼 보이기 때문이다.

형태 4: 전체 데이터로 계산된 지표

전체 기간을 사용해 정규화·랭킹·스케일링하는 모든 것은 미래를 과거로 누출시킨다: 전체 데이터 min-max 스케일링, 전기간 평균을 쓰는 z-score, 아직 오지 않은 연도까지 포함해 계산한 "거래량 상위 10%" 같은 것들. 전략이 N번 캔들에서 읽는 모든 값은 0..N번 캔들만으로 계산 가능해야 한다.

형태 5: 한 캔들 안의 양방향 진입

위에 매수 스톱, 아래에 매도 스톱을 동시에 거는 돌파 시스템은 형태 2와 같은 경로 문제를 만난다: 한 캔들이 양쪽 레벨을 다 쓸었다면 어느 쪽이 먼저 터치됐는지 OHLC로는 알 수 없다. 이 모호함을 수익 나는 쪽(상승장에서는 흔히 "무조건 롱 먼저")으로 해석하는 백테스트는 존재하지 않는 엣지를 제조하는 것이다.

내 백테스트 자가진단법

  • 시프트 테스트: 모든 진입을 한 캔들 늦춰보라. 엣지가 대부분 사라진다면 그것은 시장의 성질이 아니라 정보 누출이었다.
  • 너무 좋음 테스트: 타이트한 익절에 승률 70% 이상, 또는 의미 있는 드로다운이 없는 에쿼티 커브는 축하가 아니라 의심의 대상이다.
  • 경로 모호성 감사: 익절과 손절이 같은 캔들에서 둘 다 닿은 횟수를 세어보라. 승리 거래의 큰 비중을 차지한다면 당신의 결과는 측정이 아니라 가정이다.
  • 교차 구현: 가능하다면 같은 명세로 완전히 독립된 코드를 다시 작성해 거래 단위로 비교하라. 불일치는 최소 한쪽이 거짓말하고 있다는 뜻이다.
백테스트는 언제나 라이브의 근사치일 뿐이다. 목표는 완벽한 시뮬레이션이 아니라, 모든 모호함이 당신에게 불리하게 해석되도록 만드는 것이다 — 그래야 실전이 좋은 쪽으로 당신을 놀라게 한다.

읽는 것도 좋지만 직접 돌려보는 게 낫다 — 바이낸스 7년 데이터로 진짜 백테스트를 무료로.

백테스터 써보기