NOONOO TRADING무료 채팅방 입장

백테스팅 하는 법: 절차부터 신뢰 조건까지

백테스팅은 과거 데이터로 매매 규칙을 검증하는 과정입니다. 제대로만 하면 "감"으로 매매하는 단계를 벗어날 수 있지만, 잘못하면 과거에만 맞춰진 환상을 진짜 실력으로 착각하게 됩니다. 핵심 절차와 함정을 정리합니다.

백테스팅이란 무엇인가

백테스팅(Backtesting)은 매매 전략의 규칙을 과거 가격 데이터에 그대로 적용해 가상의 성과를 측정하는 검증 방법입니다. 예를 들어 "20일 신고가를 돌파하면 매수, 10일 신저가면 청산"이라는 규칙을 지난 3년 비트코인 데이터에 적용해 보는 식입니다. 목적은 실제 돈을 넣기 전에 전략이 작동하는지, 어떤 위험이 있는지 미리 파악하는 것입니다.

다만 백테스트 결과가 좋다고 해서 미래 수익이 보장되는 것은 절대 아닙니다. 과거는 미래와 다르며, 백테스트는 어디까지나 "이 규칙이 과거에 어떻게 작동했나"를 보여줄 뿐입니다. 결과를 과신하면 오히려 더 큰 손실로 이어질 수 있습니다.

백테스팅 절차 6단계

  1. 데이터 준비: 거래소 API나 데이터 제공처에서 OHLCV(시가·고가·저가·종가·거래량) 데이터를 받습니다. 최소 3~5년, 가능하면 상승장·하락장·횡보장이 모두 포함된 기간이 좋습니다.
  2. 규칙 정의: 진입·청산·손절 조건을 모호함 없이 숫자로 명확히 적습니다. "강하게 오르면 매수" 같은 표현은 코드로 옮길 수 없습니다.
  3. 비용 반영: 거래 수수료와 슬리피지(체결 미끄러짐)를 반드시 포함합니다. 이걸 빼면 결과가 통째로 거짓이 됩니다.
  4. 실행: 데이터를 시간 순서대로 한 봉씩 흘려보내며 규칙을 적용합니다.
  5. 성과 측정: 수익률, 최대낙폭(MDD), 승률, 손익비(PF), 거래 횟수를 집계합니다.
  6. 검증: 아래의 인샘플/아웃샘플 분리로 과적합 여부를 확인합니다.

수수료와 슬리피지, 얼마나 반영해야 하나

현물 기준 거래소 수수료는 보통 편도 0.05~0.1%입니다. 한 번 사고 파는 왕복(round-trip)이면 0.1~0.2%가 빠집니다. 슬리피지는 시장가 체결 시 호가가 밀리는 비용으로, 유동성이 낮은 종목일수록 큽니다.

예시 하루 10회 매매하는 스캘핑 전략이 왕복 0.15% 비용이면, 하루에만 1.5%가 비용으로 나갑니다. 월 거래일 22일이면 비용만 33%. 백테스트에서 비용을 0으로 두면 "월 +20% 전략"으로 보이지만, 실제로는 비용 때문에 적자일 수 있습니다. 레버리지 사용 시에는 청산 위험과 펀딩비까지 추가로 따져야 합니다.

인샘플과 아웃샘플 분리

백테스팅의 가장 큰 함정은 과적합(오버피팅)입니다. 파라미터를 과거 데이터에 계속 맞추다 보면, 그 기간에만 완벽하고 새 데이터에선 무너지는 전략이 만들어집니다. 이를 거르는 방법이 데이터를 둘로 나누는 것입니다.

구분역할비율(예시)
인샘플(In-sample)전략 개발·파라미터 최적화약 70%
아웃샘플(Out-of-sample)건드리지 않고 최종 검증용으로만 사용약 30%

인샘플에서 만든 전략을 한 번도 본 적 없는 아웃샘플에서 돌렸을 때도 성과가 유지되어야 신뢰할 수 있습니다. 더 엄밀하게는 시간을 앞으로 밀며 반복 검증하는 워크포워드(walk-forward) 방식을 씁니다. 아웃샘플을 보고 다시 전략을 고치면 그 순간 그것도 인샘플이 되니, 검증용 데이터는 정말 마지막에 딱 한 번만 써야 합니다.

도구: 파이썬과 트레이딩뷰

도구는 거들 뿐이고, 결과의 정직함은 데이터 품질과 비용 반영에서 결정됩니다. 화려한 라이브러리보다 깨끗한 데이터가 먼저입니다.

신뢰할 수 있는 결과의 조건

백테스트를 통과해도 끝이 아닙니다. 다음 단계는 실제 시장에서 소액으로 돌리는 포워드 테스트(페이퍼 트레이딩)입니다. 과거 검증과 실시간 검증이 모두 일관될 때 비로소 전략을 조심스럽게 운용할 수 있습니다. 백테스트는 출발선이지 도착선이 아니며, 어떤 검증도 손실 가능성을 없애 주지는 못합니다. 변동성 돌파 같은 구체적 전략 사례는 변동성 돌파 글에서 이어집니다.

NOONOO TRADING 무료 채팅방에서 실시간 매매를 같이 봅니다.

무료 채팅방 입장 →

📈 OKX 신규 가입 시 거래 수수료 할인

OKX 수수료 할인 가입 →