이번 주 백테스트 회고. 숫자는 그대로, 표본만 조금 늘었다
2026-05-16 · 백테스트 회고
이번 주 결과 한 줄
이번 주 백테스트에서 가장 솔직하게 말할 수 있는 건, 지난 주와 거의 똑같다는 점이다. 7번 돌렸고, 평균 승률 66.7퍼센트, 평균 수익 팩터 2.83, 평균 샤프 0.00. 지난 주(5회 실행)와 비교해 승률 변화는 0.0퍼센트포인트, 수익 팩터도 소수점 둘째 자리까지 동일하다. 실행 횟수만 늘었을 뿐 곡선은 평평하다. 자동 가중치 반영은 또 미적용. 시스템 입장에서는 "아직 안정성 기준에 못 미친다"고 판단하고 있는 셈이다.
핵심 수치
표본을 정리하면 이렇다. 30일 윈도우 기준 총 runs 9회, 누적 시그널 1,154개. 90일로 늘려도 12회 실행에 자동 적용은 0회다. 즉 분기에 가까운 기간 동안 모델이 스스로 "이대로 라이브 비중을 올려도 되겠다"고 판단한 적이 한 번도 없다는 뜻이다. 지난 주 대비 표본 변화는 △+2 runs, 시그널 수는 그에 비례해 늘었지만 분포는 거의 그대로다. 베스트 콤보는 미장에서 fire_threshold=80, eval_window=10일 조합으로 승률 66.7퍼센트, 수익 팩터 2.83, 표본 13건. 표본 13건짜리 결과를 들고 "이게 베스트"라고 부르는 게 얼마나 조심스러운 일인지는 따로 강조해야 한다.
이번 주 새로 측정된 구간
별도로 돌려본 미장 백테스트, fire_threshold=60에 청산 윈도우 5일짜리 결과가 가장 흥미로웠다. 거래 218건, 승률 24.0퍼센트, 수익 팩터 1.34, 누적 PnL +162.62퍼센트, 최대 낙폭 45.74퍼센트. 같은 임계에 윈도우만 7일로 늘리면 거래 195건, 승률 27.0퍼센트, 수익 팩터 1.21, 누적 +104.67퍼센트로 떨어진다. 즉 윈도우를 길게 가져갈수록 승률은 살짝 올라가지만 누적 수익은 깎인다. 청산 타이밍을 늘리면 평균 승은 키워도 손실 구간이 길어지는 전형적 패턴이다.
종목별로 보면 베스트 픽은 두 가지로 갈린다. 첫째, eval_window=7일 구간에서 AMZN이 20거래 중 승 2 패 0으로 누적 +38.72퍼센트. 표본은 작지만 시그널이 발생한 뒤 한 번도 손절을 맞지 않았다는 점이 눈에 띈다. 둘째, AMD가 두 윈도우 모두에서 양호하다. 5일 윈도우에서 +43.09퍼센트, 7일 윈도우에서 +46.50퍼센트. 워스트는 ORCL. 5일 윈도우 기준 23거래에 패 10개, 누적 -19.59퍼센트. AVGO도 -8.39퍼센트로 약했다. 흥미로운 건 AMZN, MSFT, NVDA, GOOGL, AAPL 모두 "승 0"으로 찍힌 줄이 많다는 점인데, 이건 진짜 0승이라기보다 만기 청산(⏰ expire) 비중이 압도적으로 커서 target/stop 분류 자체가 안 잡혔다고 보는 게 맞다. 218건 중 168건이 만기 청산이다. 이 부분은 라벨링 로직을 다시 봐야 한다.
좋았던 것 / 안 좋았던 것
좋았던 건 시스템이 변동성을 일정 범위 안에 가둬두고 있다는 점. 30일과 90일 평균이 소수점 둘째 자리까지 같다는 건 코드/데이터 파이프라인이 일관되게 돌고 있다는 신호다. 베스트 콤보 후보가 같은 자리에 머문다는 것도, 잡음이 적다는 뜻이다.
안 좋았던 건 두 가지. 첫째, 평균 샤프 0.00. 수익 팩터 2.83에 승률 66.7퍼센트인데 샤프가 0이라는 건 이익이 났을 때와 손실이 났을 때의 변동 폭이 비대칭이거나, 측정 구간이 너무 짧아 일별 수익률 시리즈에서 의미 있는 분산이 안 잡힌다는 의미다. 표본 13건 베스트 콤보를 떠올리면 후자일 가능성이 크다. 둘째, 최대 낙폭이 별도 미장 실험에서 40퍼센트대 중반까지 찍혔다는 점. 누적 +162퍼센트라는 숫자 뒤에 -45퍼센트 구간이 숨어 있다면, 실제 운용 관점에서는 절반의 사람은 중간에 내릴 곡선이다.
의미
시장 환경을 보면, 미국 대형 기술주 안에서도 종목별 분산이 커진 국면이다. AMD/AMZN처럼 시그널이 곧장 추세로 이어진 종목과, MSFT/NVDA/GOOGL처럼 시그널은 떴는데 만기까지 박스권을 벗어나지 못한 종목이 공존한다. 모델은 "진입할 만한 자리"는 잘 잡고 있는 듯한데, "언제 빠질지"는 여전히 거칠다. 만기 청산 비중 77퍼센트라는 숫자가 그 한계를 가장 정직하게 보여준다.
다음 주 검증할 가설
세 가지를 보고 싶다. 첫째, fire_threshold를 70/80으로 올렸을 때 만기 청산 비율이 의미 있게 줄어드는지. 신호 자체의 컨빅션을 올리면 expire 비중이 떨어진다는 가설이다. 둘째, eval_window를 5일과 10일로만 비교했을 때 종목별 승률 차이가 일관되는지, 아니면 종목마다 최적 윈도우가 다른지. 종목별 윈도우 튜닝의 여지를 보고 싶다. 셋째, 샤프 0.00이 진짜인지 측정 버그인지. 일별 수익률 시리즈를 직접 찍어 분산을 확인할 계획이다. 자동 가중치가 0회 적용된 상태가 이어진다면, 안정성 기준 자체를 살짝 풀어 라이브 반영 빈도를 늘리는 것도 검토 대상이다. 다만 그건 백테스트가 한 번 더 같은 수치를 찍은 다음의 일이다.
'🔬 백테스트' 카테고리의 다른 글
| 이번 주 백테스트 회고: 최고 콤보는 빛났지만 그리드는 한 발 뒤로 (0) | 2026.05.30 |
|---|---|
| 이번 주 백테스트 회고. 평균이 무너졌고, 최고 콤보는 정지했다 (1) | 2026.05.23 |
| 백테스트 1주 회고. 표본은 늘었지만 자동 적용은 아직 멀었다 (0) | 2026.05.12 |
