본문 바로가기
  • "Backtest, backtest, backtest." - Martin Schwartz
[백테스팅] 소개

백테스팅 이란? 정의, 방법, 단점, 팁

by Eirene 2022. 11. 2.
반응형

백테스팅이란? 정의, 방법, 단점, 팁
백테스팅이란? 정의, 방법, 단점, 팁

백테스팅이란?

백테스팅과거 데이터를 기반으로 매매 전략의 실행 가능성을 테스트하는 것 입니다.

본 글에서는 백테스팅에 대한 장점, 방법, 예시, 단점, 에 대해 설명하겠습니다.

 

백테스팅은 과거 시장 데이터를 기반으로 매매 전략에 대해 기대 수익률을 검증 할 수 있습니다.
백테스팅은 과거 시장 데이터를 기반으로 매매 전략에 대해 기대 수익률을 검증 할 수 있습니다.

스마트폰, 태블릿, 노트북 등을 구매하기 전에, 그 제품이 잘 작동하는지 테스트하고 싶어 합니다. 이것과 같이, 암호화폐나 주식을 매매(Trading) 시 매매 전략이 효과가 있는지 테스트가 수행이 되어야 합니다.

 

많은 새로운 거래자들은 효과가 있는 것처럼 보이는 전략을 개발하여 잠시 사용하다가 몇 번 손실을 입은 후, 그 전략을 버리는 일이 많습니다. 그런 다음 다른 전략을 찾고 난 후 다시 잠시 적용 후 또 전략을 버립니다. 결과적으로 그 들 중 많은 사람들은 시장에서 일관되게 수익을 낼 수 없거나, 거래를 포기합니다.

그 대신에 과거 데이터로 매매 전략을 테스트하여 돈을 위험에 빠뜨리지 않고 시간이 지남에 따라 어떻게 진행되었는지 확인할 수 있고, 테스트하여 긍정적인 결과를 얻은 매매 전략에 대래 더 거래자를 자신감을 갖는데 도움이 됩니다.

백테스팅은 과거 데이터를 테스트하여 좋은 결과를 가져오는 매매 전략은 미래 시장에서도 잘 수행될 가능성이 높다는 것을 기반으로 하여 매매 전략의 잠재적 성과를 평가할 수 있습니다.

 

매매 전략에 대해 백테스팅을 해야 하는 4가지 이유

1. 무위험(Zero-Risk) 전략 테스트

매매 전략을 테스트할 때 당신의 전략을 위험에 빠뜨릴 필요가 없습니다. 실시간 거래 계좌에서 매매 전략을 테스트하는 대신, 백테스팅은 이상적인 해결책입니다.

2. 전략 미세 조정(Fine-Tune) 가능

백테스팅은 전략의 강점과 약점을 보여줍니다. 그런 다음 매매 필요 사항과 당신의 성격 유형에 맞게 전략을 조정할 수 있습니다.

3. 매매 전략에 대해 더 많은 신뢰(More Trust)

많은 시장 데이터에서 잘 수행되는 매매 전략 중 최고의 것을 선택 함에 따라, 전략에 대한 자신감을 높일 수가 있습니다.

4. 새로운 아이디어(New Idea) 발굴 가능

백테스팅 과정에서 많은 데이터에 노출되기 때문에, 더 반복적인 매매 패턴을 볼 수 있으므로 새로운 매매 전략 아이디어를 얻을 수 있습니다.

 

백테스팅을 하는 2가지 방법

1. 수동 백테스팅

수동으로 백테스팅하기 위해서는 과거 데이터를 볼 수 있는 증권사 또는 차트 제공 사이트(TradingView 등)에서 수익률을 측정하는 방법이다. 백테스트에는 전략이 필요하기 때문에 전략에 사용할 도구나 지표(이동 평균, 피보나치 되돌림 등)에 대해 과제 데이터부터 최근까지 차트를 스크롤하면서 수익률을 기록합니다.

예를 들어, 이동평균을 이용한 비트코인에 대한 장기 전략을 설명하겠습니다.

  • 매수 : 종가가 20주 이동 평균 위에서 마감 시
  • 매도 : 종가가 20주 이동 평균 아래에서 마감 시

아래 차트는 2019년 이후 현재까지 1주 단위 캔들 차트입니다. 파란색 실선은 20주 기준 이동 평균으로써 수동 백테스팅 결과 7번의 매매가 이루어졌습니다. 7번 중 5번은 수익 발생, 2번은 손실이 발생했으며, 총수익률은 +561.71%입니다.

  1. '19년 4월 18일 매수 → '19년 9월 16일 매도 : +144.54% 수익
  2. '19년 10월 2일 매수 → '20년 3월 2일 매도 : +1.65% 수익
  3. '20년 4월 27일 매수 → '20년 8월 31일 매도 : +22.01% 수익
  4. '20년 9월 14일 매수 → '21년 5월 10일 매도 : +379.70% 수익
  5. '21년 8월 2일 매수 → '21년 9월 20일 매도 : -7.69% 손실
  6. '21년 9월 27일 매수 → '21년 11월 29일 매도 : +26.22% 수익
  7. '22년 3월 21일 매수 → '22년 4월 4일 매도 : -4.72% 손실

비트코인(BTCUSDT) 2019년 이후 데이터 기반 이동평균(20일) 기준 백테스팅 결과
비트코인(BTCUSDT) 2019년 이후 데이터 기반 이동평균(20일) 기준 백테스팅 결과

참고로, TradingView와 같은 일부 플랫폼을 사용하면 과거 데이터를 자동으로 재생하고 일시 중지할 수 있으므로 스스로 스크롤할 필요가 없습니다. 수동 백테스팅은 나쁜 거래 심리를 제거하는 데 도움이 될 수 있고, 코딩 기술을 필요로 하지 않습니다. 하지만 시간이 많이 걸리고 실수가 있을 수 있습니다.

2. 자동 백테스팅

코딩을 사용한 자동화된 방법은 수동 방법처럼 기간, 거래 자산 및 테스트할 전략을 선택해야 합니다. 주요 차이점은 모든 프로세스를 설정하고, 모든 주문을 기록하고, 이익과 손실을 스스로 계산할 필요가 없다는 것입니다. 모두 자동으로 수행됩니다.

 

백테스팅 단점

과거의 성공이 미래 결과를 보장하지 않습니다.

과거 데이터 결과에 따라 전략을 조정하고 개선하면 효율성에 영향을 미칠 수 있습니다. 하지만, 시장 상황은 끊임없이 변화하고 있어서, 과거에 잘 작동했던 전략이 미래에 잘 작동하지 않을 수도 있습니다. 또한 테스트할 때 사용하는 과거 데이터는 많은 불리한 시장 사건, 부정적이고 긍정적인 감정 등으로 특징지어질 있습니다. 예를 들어, 2020년 코로나 팬데믹 폐쇄 기간 동안의 시장 상황은 정기적인 시장 상황을 나타내지 않을 수 있으며, 그러한 데이터를 통해 얻은 결과는 미래의 시장 상황을 잘 나타내지 못할 수 있습니다.

특히, 암호 화폐 시장은 여전히 새롭습니다.

암호화폐 시장은 비교적 새롭고, 일부 토큰에는 전략을 테스트하기에 충분한 데이터가 없습니다. 예를 들어, 2022년 10월에 상장된 APTOS 토큰의 경우는 이전 데이터가 존재하지 않습니다. 암호화폐 시장은 또한 젊고 불안정하여 외환 및 주식 시장과 같은 명확한 패턴을 발견하기가 어렵습니다. 또한 비트코인의 가격은 여전히 다른 많은 암호화폐의 가격에 큰 영향을 미칩니다.

 

백테스팅에 대한 3가지 중요한

1. 선택적으로 데이터를 만들지 마세요.

전략을 선호하는 것으로 보이는 세트뿐만 아니라 무작위 데이터 세트를 사용해야 합니다. 전략을 좋게 보이게 하는 과거 데이터만 사용하여 자신을 속이지 말아야 합니다.

2. 철저하게 하세요.

서두르지 말고 철저하게 하면 인과 백테스트가 놓쳤을 수도 있는 결함을 발견하는 데 도움이 될 것입니다. 철저하기 위해, 당신은 당신의 전략이 다른 시장 상황에서 어떻게 작동하는지 보기 위해 가능한 한 많은 데이터를 사용해야 합니다.

3. 완벽한 전략을 가질 수는 없습니다.

모든 전략에는 연승을 잃는 경험을 할 때 결함이나 시간이 있습니다. 보장하고 싶은 것은 당신이 사용하는 어떤 거래 스타일이 장기적으로 수익성이 있고 원하는 결과를 제공하는 것입니다. 또한 이것을 실현하기 위해 몇 가지 위험 관리 관행을 사용해야 할 것입니다.

 

백테스팅과 트레이딩뷰에 대해서는 아래 책 참고 부탁 드립니다.
 

트레이딩뷰 파인 스크립트 개발: 기술적 지표, 신호, 전략, 백테스팅

이 책는 트레이딩뷰(TradingView) 플랫폼에서 사용되는 프로그래밍 언어인 파인 스크립트(Pine Script)를 배우고 숙달하기 위한 궁극적인 가이드입니다. 이 포괄적인 …

wikidocs.net

 

[ 참고 ]

728x90
반응형

댓글