미래 정보를 과거 시점의 의사결정에 흘려 넣는 오류. 그날 종가를 알고 그날 진입하거나, 지표 계산에 미래 봉이 한 줄만 섞여도 곡선이 통째로 뒤집힌다.
핵심
- 지표에
shift(1)미적용이 대표적 - 코드 한 줄 실수로 성과가 가짜가 됨
- 가장 흔하고 가장 치명적인 거짓말
- 자가진단: ‘지표에 shift(1)을 적용했는가?’
왜 중요한가
여섯 가지 거짓말 중 가장 흔하고 가장 치명적입니다. 미래 정보가 한 방울만 섞여도 전략은 ‘답을 알고 시험을 보는’ 셈이라, 백테스트는 환상적으로 보여도 실전에서는 재현이 불가능합니다.
예시 (가상)
오늘 종가가 20일 최고가를 넘으면 매수한다고 합시다. 그런데 종가는 장이 끝나야 확정됩니다 — 장중에 그 가격에 사려면 미래(종가)를 알아야 하죠. 또 이동평균에 미래 봉이 한 칸 섞이면(=shift 누락) 신호가 실제보다 한 박자 빨리 떠서 성과가 부풀려집니다.(가상 예시)
확인법
모든 지표·신호에 shift(1)을 적용했는지 확인하세요. ‘이 시점에 내가 실제로 알 수 있었던 정보만 썼는가?’를 매 신호마다 자문하면 됩니다. 의심되면 신호 시점을 한 칸 늦춰 다시 돌려, 성과가 크게 떨어지면 룩어헤드가 있었던 겁니다.
강의 연결
검증 1관문. AI에게 사양서로 ‘룩어헤드 차단’을 명시해야 한다.