Blog

승률 44%인데 돈을 번다고?

· 0
#ai#trading#python#beginners

승률 44.3%. 100번 중 56번을 진다.

이 전략이 180일 동안 +6.78% 수익을 냈다. 처음에는 내 백테스트가 틀렸나 싶어서 세 번 돌려봤다. 맞았다. 반 이상 지는데 돈을 번다.

여기서 처음 깨달았다. 승률은 전략의 반쪽도 안 된다.


이기는 크기가 지는 크기를 압도한다

V1h 전략의 실제 숫자를 보자.

평균 수익 (이긴 거래): +4.64%
평균 손실 (진 거래):   -2.54%

이길 때 4.64%를 먹고, 질 때 2.54%를 뱉는다. 손익비가 1.83:1이다.

100번 거래한다고 치면 44번 이겨서 +204%를 벌고, 56번 져서 -142%를 잃는다. 차이 +62%. 이게 Profit Factor 1.45의 정체다.

총 이익을 총 손실로 나눈 값이 Profit Factor다. 1.0이면 본전, 1.0 이상이면 돈을 번다. V1h는 1.45. 질 때마다 1달러를 잃으면, 이길 때마다 1.45달러를 벌어온다는 뜻이다.

승률이 80%여도 PF가 0.9면 돈을 잃는다. 승률이 30%여도 PF가 2.0이면 돈을 번다.

승률은 심리적 만족감이다. PF가 현실이다.


손절을 넓히면 왜 승률이 오르는가

원래 SL은 2.0%였다. “손실을 최소화하려면 빨리 자르는 게 좋다”는 상식에 따랐다. 근데 그리드서치를 돌려보니 SL 3.0%가 압도적으로 좋았다.

SL 1.5%  → 승률 ~28%  PF ~0.85  손실
SL 2.0%  → 승률 ~35%  PF ~1.1   겨우 본전
SL 3.0%  → 승률 44.3% PF 1.45   수익
SL 4.0%  → 승률 ~47%  PF ~1.25  수익 감소

SL이 좁으면 노이즈에 걸린다. 1시간봉에서 가격이 진입가 대비 -1.5% 찍고 다시 올라가는 일은 아주 흔하다. 그때마다 손절 당하면 “결국 올랐는데 나만 잘렸다”가 반복된다.

SL 3.0%는 그 노이즈 구간을 넘긴다. 진짜 방향이 틀렸을 때만 잘린다.

근데 SL 4.0%로 더 넓히면? 승률은 올라가는데 PF가 떨어진다. 한 번 질 때 잃는 금액이 너무 커져서 손익비가 깨진다.

최적 SL은 “노이즈는 버티고, 진짜 실패만 자르는” 지점에 있다. XRP 1시간봉에서 그 지점이 3.0%였다.


트레일링 스탑의 함정

수익이 나기 시작하면 트레일링 스탑으로 이익을 지키고 싶어진다. “2% 수익 나면 활성화, 고점 대비 1% 되돌리면 청산.” 논리적으로 완벽하다.

근데 너무 일찍 활성화하면 승자를 죽인다.

+2%에서 트레일링이 켜지고, 잠깐 -1% 되돌리면 +1%에서 청산된다. 그 뒤에 +4.5%까지 갔을 수도 있는 포지션을 +1%에서 잘라버린 거다.

최적화 결과 트레일링 활성은 +3.1%, 콜백은 -2.1%였다. 충분히 달리게 놔둔 뒤에야 보호가 시작된다.

트레일링 활성 2.0% → 승자를 너무 일찍 자름 (win small)
트레일링 활성 3.1% → 충분히 달리고 나서 보호 (win big)

“이익을 빨리 지키자”는 본능이 수익을 깎는다. 직관과 정반대다.


시간 청산이라는 안전장치

48시간 동안 포지션을 들고 있는데 수익이 마이너스다. 방향이 맞을 수도 있지만, 48시간 동안 못 올랐으면 시장 상황이 변한 거다.

원래 시간 청산은 48시간이었다. 그리드서치로 72시간이 최적이란 걸 찾았다. 48시간에 마이너스였던 포지션이 72시간 안에 플러스로 돌아서는 경우가 꽤 있었다.

포지션 평균 보유 시간은 30봉, 약 30시간이다. 대부분은 SL(-3.0%), TP(+4.5%), 시그널 반전으로 30시간 안에 끝난다. 72시간 시간 청산은 “뭔가 이상하게 옆으로 가는” 소수의 포지션을 정리하는 안전장치다.


숫자 정리

V1h 전략의 180일 백테스트 전체 그림이다.

총 거래:       70회
승/패:         31승 39패 (44.3%)
Profit Factor: 1.45
총 수익률:     +6.78% (3x 레버리지)
최대 낙폭:     -1.00%
평균 수익:     +4.64%
평균 손실:     -2.54%
손익비:        1.83:1
거래당 기대값: +0.64%

청산 이유별로 보면 TP(익절) 26회, SL(손절) 22회, 시그널 반전 17회, 시간 청산 4회, 데이터 종료 1회다.

TP가 SL보다 많다. 이게 PF > 1의 물리적 근거다. 진입하면 손절보다 익절에 먼저 닿을 확률이 더 높도록 SL/TP 비율이 설정되어 있다.

승률에 집착하면 본질을 놓친다.

중요한 건 얼마나 자주 이기느냐가 아니라, 이길 때 얼마나 크게 이기느냐다.

jidonglab.com

댓글 0

0 / 1000