콘텐츠로 건너뛰기
Reddit

과최적화 백테스트를 잡아내는 3가지 검증법🚦

r/Daytrading 조회 1
원문 보기 →
💡

백테스트 전략이 실제 수익을 내지 못하는 이유 중 과최적화 문제가 큽니다. 가장 비용이 적게 드는 검증부터 순서대로 3가지 테스트를 거치면 허위 전략을 걸러낼 수 있습니다. 독자들은 각 테스트의 의미와 단계별 검증 순서를 이해해 전략 선별에 활용하는 데 집중해야 합니다.

백테스트에서는 좋은 성과가 나와도 실제 투자에서는 실패하는 경우가 많습니다. 그 이유 중 하나는 여러 가지 파라미터를 조합하면서 우연히 좋은 결과에 집착하는 과최적화 문제 때문입니다. 저는 이런 문제를 줄이기 위해 비용이 가장 적게 드는 검증부터 순서대로 세 가지 테스트를 돌리고 있습니다.

첫 번째는 디플레이트 샤프 비율 검증입니다. 이 검증은 여러 시도 중 우연히 높은 샤프 비율을 기록한 경우를 가려내며, 간단한 계산 한 번이면 결과를 알 수 있어 시간과 비용이 거의 들지 않습니다. 만약 확률이 95% 미만이면 여기서 멈춥니다.

두 번째는 몬테카를로 시뮬레이션으로, 실제 거래 순서를 여러 번 임의로 섞어서 전략 결과의 우연성을 가늠합니다. 만약 95번째 백분위수의 최대 손실이 내가 감당할 수 있는 위험 한도를 넘는다면, 이 전략은 실전에 적합하지 않습니다.

세 번째는 워크포워드 분석입니다. 과적합된 파라미터들을 잡아내기 위해 과거 데이터에서 여러 구간으로 나누어 반복적으로 재최적화 및 검증을 진행합니다. 만약 여러 구간 중 대부분에서 수익성이 떨어지면 이 전략은 실제로 신뢰할 수 없다는 신호입니다.

이처럼 3가지 검증을 순서대로 돌리면서 빠르게 전략의 신뢰도를 평가합니다. 비용이 작은 테스트에서 걸러내면 시간 낭비를 줄일 수 있고, 여러 실패 유형을 구분해내 거래에 쓸 수 있는 전략을 찾는 데 도움이 됩니다.

💬 원문 댓글 (1)

u/COD******* ▲ 1
검증 순서가 아주 좋네요. 저는 마지막에 하나 더 심심한 검증을 추가하는데요, 상위 몇 개 거래를 빼도 전략이 여전히 유효한지 확인하는 겁니다.
많은 전략들이 부드러운 수익곡선을 보이는 이유는 극소수의 특이치 거래가 몇 달치 잡음을 메워주기 때문이거든요.
원문 보기
Good order of operations. I also like adding one boring check before trusting any survivor: does the setup still make sense if you remove the best few trades?

A lot of systems have a smooth equity curve only because a small number of outliers paid for months of noise.

댓글 (0)

로그인하고 댓글을 작성하세요.

아직 댓글이 없습니다.