백테스팅이란 무엇인가요?
목차
들어가며
백테스팅이란 무엇인가요?
백테스팅은 어떻게 진행되나요?
백테스팅 예시
백테스팅과 모의 트레이딩
수동 백테스팅과 자동 백테스팅
마치며
백테스팅이란 무엇인가요?
아티클
백테스팅이란 무엇인가요?

백테스팅이란 무엇인가요?

중급
Published Dec 8, 2020Updated Aug 23, 2021
6m

요약

백테스팅은 금융 시장에 참여하는 방법을 최적화하는 중요한 과정일 수 있습니다. 이를 통해 여러분의 트레이딩 아이디어와 전략이 타당한지, 이를 통해 향후 수익을 창출할 수 있는지 알아볼 수 있습니다.

간단한 투자 전략으로 백테스팅을 하면 어떨까요? 트레이딩 전략을 테스트할 때는 무엇을 주의해야 할까요? 백테스팅은 모의 트레이딩과 비슷한 것일까요? 이번 아티클에서 자세히 알아보시기 바랍니다.

 

들어가며

백테스팅은 여러분이 한 명의 트레이더 또는 투자자로서 새로운 시장과 전략을 탐색할 때 사용할 수 있는 도구입니다. 이는 데이터를 기반으로 한 몇 가지 중요한 피드백을 제공하며, 여러분의 초기 아이디어가 유효한 것인지를 알 수 있게 합니다.

여러분이 거래하는 자산 유형과 무관하게 백테스팅에서는 여러분이 힘들게 번 자금의 위험 부담이 전혀 없습니다. 시뮬레이션 환경에서 백테스팅 소프트웨어를 사용하여, 특정 시장에 접근하는 방식을 구축하고 최적화할 수 있습니다.

 

백테스팅이란 무엇인가요?

금융 영역에서 백테스팅은 과거 데이터를 기반으로 트레이딩 전략의 실행 가능성을 테스트합니다. 즉, 과거 데이터를 사용해 전략이 어떻게 수행되었는지를 확인합니다. 백테스팅이 좋은 결과를 보여줄 경우, 트레이더 또는 투자자는 실제 환경에 해당 전략을 적용해볼 수 있습니다.

그런데 이 경우 좋은 결과란 무엇을 의미하는 것일까요? 백테스팅 도구의 목적은 특정 전략의 위험과 잠재적인 수익성을 분석하는 것입니다. 잠재적 수익을 극대화하기 위해 통계적 피드백을 기반으로 투자 전략을 최적화하고 개선할 수 있습니다. 또한 잘 수행된 백테스트는 해당 전략이 실제 트레이딩 환경에서 구현될 때 최소한 이를 실행해 볼 수 있다는 것을 보장할 수 있습니다.

자연스레 백테스팅 플랫폼 또는 도구는 특정 전략이 실행 가능하지 않거나 지나치게 위험할 때를 보여주는 데 유용할 수도 있습니다. 백테스팅 결과가 최적의 성과를 내지 못할 경우, 해당 트레이딩 아이디어는 폐기되거나 수정되어야 할 것입니다. 그러나 테스트가 진행된 시장 상황을 고려하는 것도 중요합니다. 시장 상황이 바뀔 경우, 동일한 백테스팅에서 상반된 결과가 나타날 수도 있습니다.

특별히 알고리즘 트레이딩 전략(자동화된 트레이딩)과 같은 보다 전문적인 수준에서는 트레이딩 전략을 백테스팅하는 것이 필수적입니다.

 

백테스팅은 어떻게 진행되나요?

백테스팅의 기본 전제는 과거에 효과가 있었던 것이 미래에도 효과가 있을 수 있다는 것입니다. 그러나 이는 결정하기 어려운 사안일 수도 있습니다. 특정 시장에서는 수익성이 있는 것이 다른 시장 환경에서는 전혀 들어맞지 않을 수 있습니다.

잘못된 일련의 데이터를 사용한 백테스팅은 그다지 이상적이지 않은 결과를 낼 수도 있습니다. 이것이 바로 백테스팅 기간에 적합한 현재 시장 환경을 반영하는 좋은 예시를 찾는 것이 중요한 이유입니다. 그러나 시장은 계속해서 변하기 때문에 이는 특히나 어려운 일일 수 있습니다.

백테스팅 전략을 결정하기 전, 여러분이 정확히 무엇을 찾고자 하는지 결정하는 것이 좋습니다. 어떻게 해야 실행 가능한 전략이 될까요? 반대로, 무엇이 여러분의 가정을 실패하게 만들까요? 여러분이 이를 사전에 안다면, 결과가 여러분의 편견에 영향을 미치기는 더욱 쉽지 않을 것입니다.

또한 백테스팅은 트레이딩 및 출금 수수료와 더불어 전략에서 발생할 수 있는 모든 비용을 고려해야 합니다. 또한 고급 시장 데이터에 접근하는 것과 마찬가지로 백테스팅 소프트웨어 또한 무척 비쌀 수 있다는 것도 참고해야 합니다.

그런 의미에서 여러분이 바이낸스 선물 플랫폼의 과거 데이터에 접근하고 싶으시다면, 이 신청서를 작성해주시기 바랍니다.
백테스팅은 테스팅이라는 것을 잊지마시기 바랍니다. 기술적 분석 및 차트 작성과 마찬가지로 백테스팅이 완벽히 작동한다는 보장은 없습니다. 과거 데이터를 기반으로 훌륭한 결과를 낸다고 해도 말입니다.

 

백테스팅 예시

비트코인에 대한 아주 간단한 장기 전략을 하나 살펴보도록 하겠습니다.

우리의 트레이딩 시스템은 다음과 같습니다:

  • 비트코인 종가가 20주 이동 평균 위에서 마감할 때 이를 매수합니다.
  • 비트코인 종가가 20주 이동 평균 아래서 마감할 때 이를 매도합니다.

 

이 전략은 일 년에 몇 번의 신호밖에 생성하지 않습니다. 2019년부터 기간을 살펴보도록 하겠습니다.

2019년 이후 비트코인 주간 차트.

 

이 전략은 측정된 기간 동안 다섯 개의 신호를 생성했습니다.

  • 매수 @ ~$4,000

  • 매도 @ ~$8,000

  • 매수 @ ~$8,500

  • 매도 @ ~$8,000

  • 매수 @ ~$9,000

 

이처럼 우리의 백테스팅 결과는 이 전략이 수익성이 있었음을 보여줍니다. 이는 앞으로도 그렇다는 의미일까요? 아닙니다. 이는 일련의 특정 데이터를 살펴볼 때, 해당 전략이 수익을 낼 수 있었다는 의미일 뿐입니다. 여러분은 이러한 결과를 대략적인 기준으로 간주할 수 있습니다.

우리는 단지 2년 이내의 데이터만을 살펴봤다는 것을 잊지마시기 바랍니다. 우리가 이를 실행 가능한 전략으로 만들고자 한다면, 더 많은 시간을 거슬러 올라가 더 많은 가격 움직임과 함께 이를 테스트해보는 것이 좋을 것입니다.

그렇기는 하지만 이는 괜찮은 시작입니다. 우리의 초기 아이디어는 좋아보이며, 약간의 추가적인 최적화와 함께 이를 통해 투자 전략을 만들 수도 있습니다. 여러분은 더 많은 측정 지표와 기술적 지표를 포함해 이러한 신호를 보다 신뢰할 수 있게 만들고 싶을 수도 있습니다. 이는 전적으로 여러분의 아이디어, 투자 기간 범위, 위험 감수도에 달려있습니다.


 

백테스팅과 모의 트레이딩

이제 우리는 백테스팅이 어떠한 것인지 대략적으로 알게 되었으며, 간단한 투자 전략도 살펴봤습니다. 우리는 또한 과거의 성과가 미래의 결과를 의미하는 것도 아니라는 것을 알고 있습니다.

그렇다면 우리는 어떻게 현재 시장 상황에 대해 체계적인 전략을 최적화할 수 있을까요? 우리는 실제 자금의 위험부담 없이 실제 시장에서 이를 시도해볼 수 있습니다. 이를 선행 성능 테스팅 또는 모의 트레이딩이라고도 합니다.

모의 트레이딩은 실제 트레이딩 환경에서 전략을 시뮬레이션하는 것입니다. 이는 거래를 문서화하고 기록하지만, 실제 자금을 사용하지 않기 때문에 모의 트레이딩이라고 합니다. 이를 통해 전략을 개선하고 성능을 파악할 수 있는 추가적인 과정을 거칠 수 있습니다.

좋습니다. 그런데 어디서부터 시작할 수 있을까요? 바이낸스 선물 테스트넷은 여러분의 자금에 대한 위험 부담없이 전략을 테스트할 수 있는 완벽한 장소입니다. 몇 분 만에 계정을 생성하고 실시간으로 시장에서 트레이딩을 하는 것과 유사한 환경에서 전략을 테스트할 수 있습니다.

여기서 한 가지 주의해야 할 것은 "체리 피킹(cherry-picking)"입니다. 이는 편향된 관점을 확정하는 일련의 데이터만을 선택하는 것을 의미합니다. 선행 테스트의 목적은 전략을 실시간으로 테스트하는 것입니다. 시스템이 무언가를 지시할 경우, 이를 진행해야 합니다. 여러분이 개인적인 편견에 따라 "좋아 보이는" 거래만을 선택한다면, 체계적 전략에 대한 테스트는 무효가 될 것입니다.

 

수동 백테스팅과 자동 백테스팅

수동 백테스팅은 차트 및 과거 데이터를 분석하고 전략에 따라 수동으로 거래를 배치하는 과정을 포함합니다. 자동 백테스팅은 기본적으로는 동일하지만, 진행 과정이 컴퓨터 코드(파이썬이나 특화된 백테스팅 소프트웨어를 사용)에 의해 자동화됩니다.

많은 트레이더들은 전략의 성과를 평가하기 위해 구글 또는 액셀 스프레드시트를 사용합니다. 이러한 문서는 전략 테스터 보고서 기능을 합니다. 여기에는 트레이딩 플랫폼, 자산 유형, 승패 거래 수, 샤프 비율(Sharpe ratio), 최대 낙폭, 순수익 등과 같은 모든 종류의 정보가 포함될 수 있습니다.
샤프 비율이란 간단히 말해 특정 전략의 위험 대비 잠재적인 수익률(ROI)을 평가하는 것입니다. 샤프 비율이 높을수록 투자 또는 트레이딩 전략은 더 유망한 것입니다.

최대 낙폭은 여러분의 트레이딩 전략이 가장 최근의 정점에 비해 가장 낮은 성과를 보이는 순간을 나타냅니다(즉, 분석 기간 동안 포트폴리오에서 발생한 가장 큰 하락률).

 

마치며

다수의 체계적인 트레이더와 투자자들은 자신의 전략에 대한 백테스팅에 크게 의존하고 있습니다. 이는 모든 알고리즘 트레이더에게 필수적인 도구 중 하나입니다.

동시에 백테스팅 결과를 해석하는 것은 까다로울 수 있습니다. 여러분의 편견을 백테스팅 방법에 쉽게 투영할 수 있기 때문입니다. 백테스팅만으로는 성공적인 트레이딩 전략을 만들 수 없을 것처럼 보이지만, 이는 몇 가지 아이디어를 테스트해보고 시장의 움직임을 파악하는 데 도움이 될 것입니다.

트레이딩 알고리즘과 데이터 분석에 대해 더 알아보고 싶으신가요? 바이낸스 아카데미의 Q&A 플랫폼 아카데미 질문을 확인해보시기 바랍니다. 커뮤니티 구성원들이 여러분의 궁금증을 해결해 줄 것입니다.