실패 모드
미래 예측 편향
백테스트는 거래 시점에 아직 존재하지 않았을 정보를 사용할 때 미래 예측 편향을 범하며, 그 결과로 나타나는 곡선은 우리가 테스트하는 가장 설득력 있는 가짜입니다.
가장 흔한 버전은 당황스러울 정도로 간단합니다. 당일 종가에 계산된 신호가 마치 종가가 이미 발생한 것처럼 같은 날 시가에 실행되는 경우입니다. 사후에 당일의 승자를 순위 매기고 아침 바부터 거래하면, 백테스트는 내일의 신문을 거래하는 셈입니다. 아무도 의도적으로 그 규칙을 작성하지 않았습니다. 이는 스프레드시트 수식, 한 바만큼 어긋난 룩백 윈도우, 숨겨진 엿보기가 있는 지표를 통해 스며듭니다.
리페인팅 지표는 더 교활한 버전입니다. 지표는 새로운 바가 도착함에 따라 과거 값을 조용히 수정하므로, 현재 차트에 있는 신호는 실시간으로 그렇게 깨끗하게 발생하지 않았습니다. 리페인팅된 기록에 대해 백테스트하면 모든 진입이 선견지명처럼 보입니다. 그것은 선견지명입니다. 다음에 무엇이 올지 아는 상태에서 계산되었기 때문입니다.
이것이 미래 예측 편향을 백테스팅에서 가장 위험한 버그로 만드는 이유입니다. 전체 감사에서 가장 설득력 있는 가짜를 만들어냅니다. 실제 우위가 없는 전략은 일반적으로 이를 보여줍니다. 즉, 자산 곡선이 들쭉날쭉하고 얇으며 설득력이 없습니다. 미래 예측 편향이 있는 전략은 그 반대입니다. 거래의 상당 부분이 미래 정보로 결정되었기 때문에 결코 거래될 수 없었던 부드럽고 높은 Sharpe 곡선을 생성합니다. 그것이 유출입니다. 지친 검토자가 실행하는 모든 표면 검사를 통과합니다.
미래 예측 편향은 인트라바 체결 가정과 밀접한 관련이 있습니다. 둘 다 전략이 실시간으로 도달할 수 없었던 가격을 건드리게 합니다. 인트라바 버전은 단일 캔들 내의 시퀀싱 오류입니다. 미래 예측 편향은 시간을 가로지르는 직접적인 유출이며, 둘 중 더 날카로운 것입니다.
저희 파이프라인에서는 숫자를 통과하는 모든 전략이 이를 포착하기 위해 특별히 구축된 두 번째 검사를 받습니다. 저희의 가장 강력한 모델은 각 생존 전략을 적대적으로 감사하여, 엿본 체결 또는 아직 마감되지 않은 바에서 유출된 값을 찾아내고, 단일 인샘플 실행 대신 워크포워드 분할에 대해 타이밍을 교차 확인합니다.
이는 실제 우위 없음보다 저희가 거부하는 전략 중 더 작은 부분이지만, 실제 우위 없음만으로도 저희가 거부하는 전략의 약 절반을 차지합니다. 그러나 이는 더 값비싼 실패입니다. 이들은 실제로 거래하기 직전까지 가장 좋아 보이다가, 그 후 무너지는 전략들입니다.
이것의 배경 연구
- López de Prado (2018). “Advances in Financial Machine Learning.” Wiley. — 백테스트 과적합 및 데이터 유출에 대한 표준 참고 자료 — 바로 이 실패 모드의 학술적 틀.
- TradingView. “Pine Script® Docs: Repainting.” — 차트에서 미래 예측 편향으로 오염된 신호를 생성하는 메커니즘인 리페인팅에 대한 TradingView 자체 문서.
- White (2000). “A Reality Check for Data Snooping.” Econometrica 68(5). — 백테스트 결과가 실제 기술을 반영하는지 아니면 단순히 데이터를 엿봐서 운이 좋았는지 테스트하는 방법을 공식화합니다.
외부 연구 자료는 맥락과 추가 자료를 위해 연결되었습니다. FoxAlgo는 독립적이며 이들 저자 또는 출판사와 제휴하지 않습니다.
이것들은 The No List의 배경이 되는 용어들입니다. — 모든 전략과 지표의 이름, 판정, 그리고 성공 또는 실패의 정확한 이유를 담은 전체 감사 보고서입니다.
The No List 받기 →