몬테카를로 시뮬레이션이란? 백테스트 결과의 불확실성 확인하기

업데이트

몬테카를로 시뮬레이션은 백테스트에서 나온 거래 수익률(또는 일별 수익률)을 무작위로 다시 뽑아 수백~수천 개의 가상 경로를 만들고, 최종 수익률과 최대 낙폭이 어느 범위에 분포하는지 보는 방법입니다. 예측이 아니라 과거 결과의 불확실성을 가늠하는 도구입니다.

백테스트는 '하나의 경로'일 뿐이다

백테스트 결과는 과거에 실제로 일어난 단 하나의 순서로 계산됩니다. 같은 거래들이 다른 순서로 일어났다면 어땠을까요? 총수익은 거의 같더라도, 손실 거래가 연달아 앞에 몰렸다면 중간 낙폭은 훨씬 깊었을 수 있습니다. 하나의 결과만 보면 이 운의 요소를 알 수 없습니다.

몬테카를로 시뮬레이션은 이 질문에 답하기 위해, 같은 재료로 다른 경로를 많이 만들어 봅니다.

기본 원리

백테스트에서 얻은 수익률 목록을 무작위로 복원추출(뽑은 것을 다시 넣고 뽑기)해 새로운 경로를 만들고, 이를 수백~수천 번 반복합니다. 각 경로마다 최종 수익률과 최대 낙폭을 계산하면 결과의 분포가 만들어집니다.

이렇게 만든 경로는 미래 예측이 아닙니다. '과거에 관측된 수익률 분포가 순서만 달리 나타났다면 어떤 범위의 결과가 가능했는가'를 보여 줄 뿐입니다.

두 가지 재표본 방식

  • 거래 단위 재표본: 완료된 거래들의 수익률을 복원추출로 섞습니다. 전략의 거래 손익 분포를 그대로 쓰므로 거래 순서에 따른 낙폭 변화를 보는 데 쓰입니다. 거래 수가 너무 적으면 분포가 불안정하므로 일정 건수(널스탁은 최소 20건) 이상일 때만 실행합니다.
  • 일별 수익률 블록 부트스트랩: 수익률을 하루씩 독립적으로 뽑는 대신 연속된 며칠을 한 덩어리(블록)로 뽑아 이어 붙입니다. 시장 수익률에는 연속적인 상승·하락 같은 자기상관이 있는데, 블록 단위로 뽑으면 이 성질이 어느 정도 보존됩니다.

결과 읽는 법

몬테카를로 결과는 하나의 숫자가 아니라 분포로 읽습니다.

  • 백분위 범위: 예를 들어 최종 수익률의 5% 지점과 95% 지점 사이에 시뮬레이션 경로의 90%가 들어왔다면, 그 범위가 불확실성의 폭입니다. 범위가 넓을수록 결과가 운에 많이 좌우된다는 뜻입니다.
  • 최대 낙폭 분포: 원래 백테스트의 MDD가 시뮬레이션 분포의 어디쯤인지 보면, 과거 MDD가 운 좋게 얕았던 것은 아닌지 가늠할 수 있습니다. 시뮬레이션의 나쁜 쪽 백분위 MDD는 원래보다 깊은 경우가 많습니다.
  • 양수 수익 확률: 시뮬레이션 경로 중 최종 수익률이 플러스로 끝난 비율이고, 나머지가 원금 아래로 끝난 경로의 비율입니다.
  • 원래 결과의 위치는 낙폭(MDD)에서만 읽습니다: 재표본 분포는 관측된 평균을 중심으로 만들어지므로 원래 수익률(CAGR)은 구조적으로 분포의 가운데 근처에 놓입니다. 수익률의 위치로 우연의 기여를 판단할 수는 없고, 원래 MDD가 분포의 어디쯤인지만 참고합니다.

몬테카를로 시뮬레이션의 한계

  • 과거 분포가 미래에도 같다고 가정합니다. 시장 환경이 바뀌면 분포 자체가 달라질 수 있습니다.
  • 거래 수가 적으면 재표본의 재료가 부족해 결과를 믿기 어렵습니다.
  • 백테스트 자체의 편향(생존편향, 룩어헤드 편향 등)은 몬테카를로로 고쳐지지 않습니다. 편향된 재료를 아무리 섞어도 편향은 남습니다.
  • 분포의 범위는 '가능한 결과의 폭'이지 발생 확률에 대한 약속이 아닙니다.

널스탁의 몬테카를로 시뮬레이션

널스탁은 백테스트를 마친 전략에 대해 거래 단위 또는 일별 수익률(블록 크기 지정) 방식으로 몬테카를로 시뮬레이션을 실행하고, 최종 수익률·최대 낙폭의 분포를 보여 줍니다. 결과는 과거 거래의 재배열에 기반한 서술이며 투자 판단을 대신하지 않습니다.

자주 묻는 질문

몬테카를로 시뮬레이션은 미래를 예측하나요?
예측하지 않습니다. 백테스트에서 얻은 수익률을 무작위로 다시 뽑아 만든 가상 경로로, 과거에 관측된 분포가 순서만 달리 나타났다면 어떤 범위의 결과가 가능했는지를 보여 줍니다.
거래 단위 재표본과 일별 수익률 블록 부트스트랩은 무엇이 다른가요?
거래 단위 재표본은 완료된 거래들의 수익률을 복원추출로 섞고, 블록 부트스트랩은 연속된 며칠을 한 덩어리로 뽑아 이어 붙여 연속적인 상승·하락 같은 성질을 어느 정도 보존합니다.
몬테카를로가 백테스트의 편향을 고쳐 주나요?
고쳐 주지 않습니다. 생존편향·룩어헤드 편향 같은 백테스트 자체의 편향은 편향된 재료를 아무리 섞어도 남습니다.

떠오른 전략 아이디어를 문장으로 입력하면 과거 데이터로 백테스트해 볼 수 있습니다.

전략 백테스트하기

이 가이드는 투자 연구에 필요한 개념과 계산 방법을 설명하는 교육 자료입니다. 특정 종목·전략의 매수·매도를 권유하거나 미래 수익을 예측하지 않으며, 백테스트 결과는 과거 데이터 기반 시뮬레이션이므로 미래 수익은 보장되지 않습니다.