백테스트는 하나의 거래 순서를 보여 줍니다. 보이는 낙폭은 그 특정한 순서 에서의 최악의 하락입니다. 같은 거래가 다른 순서로, 손실이 연달아 일어났다면 하락은 훨씬 깊었을 수 있습니다. 몬테카를로 섞기는 그 정도를 추정합니다.
아이디어
청산된 거래와 그 수익률 목록을 가져옵니다. 순서를 무작위로 섞고, 자산 곡선을 다시 만들고, 최대 낙폭을 측정합니다. 이를 여러 번 반복하면 같은 거래 집합이 만들어 낼 수 있었던 낙폭의 분포를 얻습니다.
Backte.st의 방법
거래 순서 섞기 점검은 거래 순서를 200번 섞고 95번째 백분위 낙폭 을 보여 줍니다. 섞은 순서 중 5%만이 넘어선 수준입니다. 고정된 난수 시드를 쓰므로 같은 리포트는 항상 같은 숫자를 냅니다.
유용한 이유
- 포지션 크기. 섞은 낙폭이 백테스트보다 훨씬 깊다면 거래당 위험을 줄이고 싶을 수 있습니다.
- 기대치. 30% 하락이 충분히 있을 수 있다는 것을 알면 부진한 시기에도 전략을 유지하기 쉽고, 혹은 스스로 견딜 수 없다는 것을 미리 판단할 수 있습니다.
- 비교. 수익률이 비슷한 두 전략도 섞은 낙폭은 매우 다를 수 있습니다.
기억해야 할 한계
- 거래 도중의 손실은 무시합니다. 섞기는 청산된 거래의 수익률을 쓰므로 포지션 보유 중의 하락은 포함되지 않습니다.
- 거래가 서로 독립이라고 가정합니다. 실제로 손실 거래는 특정 시장 국면에 몰리는 경향이 있고, 섞기는 그 뭉침을 깨뜨립니다.
- 새로운 종류의 거래를 만들지 않습니다. 기록에 폭락이 없었다면 섞기에도 없습니다.
- 충분한 거래가 필요합니다. 거래가 너무 적으면 분포에 의미가 없고, 점검은 거래 부족으로 표시합니다.
다른 점검과 함께 쓰기
섞기는 "이 거래들로 얼마나 나빠질 수 있었나?"에 답합니다. 다른 점검은 거래 자체를 믿을 수 있는지 묻습니다. 표본 외 에서도, 비용이 높아져도, 몇 번의 최고 수익 을 빼도 버티는지 말입니다.
랩 에서 아무 실행의 견고성 점검을 열어 섞은 낙폭을 실제 낙폭과 나란히 확인해 보세요.