안내본 서비스는 시장 데이터와 기술적 분석 정보를 제공하기 위한 교육·정보용 서비스입니다. 특정 자산의 매수·매도 또는 투자를 권유하지 않으며, 최종 판단과 책임은 이용자에게 있습니다.
RESEARCH NOTE · 실전 검증

백테스트는 수익인데 실전은 손실인 이유 7가지

백테스트가 우상향인데 실전에서는 전혀 다른 결과가 나오는 경험은 자동매매 개발에서 흔한 문제입니다. 원인은 단순히 '시장이 변했다' 하나가 아닙니다. 과거 데이터의 선택 편향, 체결 비용, 구현 차이, 브로커 시간, 동시 포지션과 같은 여러 층이 겹칠 수 있습니다.

업데이트 2026-08-18읽는 시간 8분자체 연구 데이터 기반
이론 진입가 실제 체결가 비용 시간 오류 상태를 기록하는 포워드 로그 필드 표
백테스트와 실전 차이를 추적하기 위해 남기도록 설계한 포워드 로그 필드입니다.
자료 기준

이 글은 계좌방위대의 2026-08-09 1RR 다자산 시간대 필터 연구와 2026-08-18 5/20 SYSTEM RESET 연구 기록을 바탕으로 재구성했습니다. 공개 목적에 맞게 전략의 구체적인 진입 조건과 내부 파라미터는 제외하고 검증 방법과 관찰 결과에 집중합니다.

1. 과거 데이터에 규칙을 맞췄다

많은 파라미터와 필터를 반복해서 바꾸면 미래에 반복되지 않을 과거의 우연까지 규칙에 포함될 수 있습니다. 최근 연구에서는 성과가 개선돼도 오래된 구간에서 반복되지 않는 필터를 일부러 제거했습니다.

2. 거래목록 자체가 오염됐다

피라미딩, FIFO, 진입·청산 매칭 오류가 있으면 승률과 R이 왜곡됩니다. 이런 오류는 결과 표만 봐서는 발견하기 어렵고 거래별 ID와 청산 원장을 확인해야 합니다.

3. TradingView와 EA의 상태머신이 다르다

손절 후 같은 봉 재진입, 보유 중 새 신호, 포지션 종료 후 상태 초기화 같은 규칙이 플랫폼마다 다르게 구현되면 같은 전략 이름을 사용해도 다른 시스템이 됩니다.

4. 브로커 시간과 상위봉이 다르다

일봉 시작 시각과 DST 변환이 다르면 상위 시간봉 OHLC와 이동평균 값이 달라집니다. 상위봉을 방향 필터로 사용하는 전략에서는 신호 자체가 달라질 수 있습니다.

5. 스프레드와 슬리피지가 빠졌다

백테스트의 이론 진입가와 실제 체결가는 다릅니다. 작은 손절폭이나 잦은 거래일수록 비용이 기대값을 크게 깎을 수 있습니다. Gross R과 Net R을 따로 기록해야 합니다.

6. 동시 포지션 위험을 무시했다

종목별 백테스트를 단순 합산하면 여러 종목이 동시에 진입할 때의 실제 계좌 위험이 보이지 않습니다. 상관관계가 높은 자산이 같은 방향으로 겹치면 순간 손실이 예상보다 커질 수 있습니다.

7. 백테스트가 미래 예측이라고 생각했다

백테스트는 전략이 과거 조건에서 어떻게 작동했는지 보여줄 뿐입니다. 최근 연구에서도 최종 판단을 백테스트가 아니라 고정 파라미터 포워드 로그가 내리도록 설계했습니다. 시장은 변할 수 있고 어떤 과거 성과도 미래 수익을 보장하지 않습니다.

실전으로 옮길 때 확인할 순서

문제를 한꺼번에 해결하려 하지 말고 검증 단계를 분리하면 원인을 찾기 쉬워집니다.

  • 거래 데이터 무결성 감사
  • 전략 규칙 단순화와 파라미터 민감도 확인
  • 다른 기간·자산·브로커 교차검증
  • TradingView↔EA 신호 parity 테스트
  • 스프레드·슬리피지 포함 실행 검증
  • 규칙을 동결한 포워드 테스트
주의

백테스트와 연구 수치는 과거 데이터의 관찰 결과이며 미래 수익을 보장하지 않습니다. 실제 거래 결과는 체결 비용, 슬리피지, 포지션 크기, 시장 환경에 따라 달라질 수 있습니다.