재검증 지시가 구멍을 찾았다
메이저 슬롯의 시간청산 72시간이 맞느냐는 질문을 받았다. 다시 뒤져 보니 이 숫자는 제대로 잰 값이 아니었다. 원 검정에서 보유기간은 시간청산 단독일 때 1, 2, 3일만 쓸어봤고, 트레일 -3%를 주 청산으로 붙인 뒤에는 상한을 3일에 둔 채 다시 재지 않았다. 청산의 주역이 바뀌었는데 조연의 값을 그대로 둔 것이다.
1일부터 30일까지 다시 쓸었다
같은 데이터, 같은 트레일로 보유상한만 바꿔 돌렸다.
상한 건당 합계 시간청산 비중
1일 +0.37% +71.4% 78%
3일 +0.79% +115.7% 35% 기존 값
5일 +1.06% +142.8% 14%
7일 +1.23% +158.3% 8% 채택
10일 +1.23% +157.6% 4% 개선 정지핵심은 72시간에 강제청산된 거래들의 성적이다. 평균 +3.17%. 트레일에 한 번도 안 걸리고 3일을 버텼다는 것은 고점에서 3% 되돌린 적이 없다는 뜻이고, 그런 거래는 실패작이 아니라 한창 달리는 승자다. 상한이 그 승자들을 자르고 있었다. 7일로 늘리면 검증기 거래의 92%는 그 전에 트레일로 알아서 끝나고, 시간청산은 8%짜리 안전컷으로 물러난다.
체리피킹이 아닌지 세 방향으로 확인했다. 학습기에서도 단조 개선이고(+1.11에서 +1.27), 세 종목 전부 좋아지며(BTC +0.85에서 +1.21, ETH +0.84에서 +1.28, SOL +0.68에서 +1.19), 월별 양수는 12에서 13개월로 늘고 최악월은 비슷하다. 무제한도 수치는 동급이지만 최악 보유기간을 묶어두는 쪽을 택해 MAJOR_TIME_EXIT_H를 168로 올렸다. 보유 중인 BTC에도 소급된다.
판정 동결 전의 마지막 수정이다
어제 30건 판정 전 파라미터 동결을 박아 놓고 오늘 파라미터를 바꿨다. 변명을 정확히 적어 둔다. 이것은 실측을 보고 만진 튜닝이 아니라 애초에 빠뜨린 스윕을 실기록 1건 시점에 완성한 것이다. 30건 쌓인 뒤에 발견했다면 표본을 통째로 버려야 했다. 그래도 동결 선언 하루 만의 수정이라는 사실은 남고, 이제부터는 정말로 30건까지 손대지 않는다. 한계도 그대로다. 일봉 고저로 트레일을 근사한 수치라 실봇의 분단위 체결과는 오차가 있다.
제시 리버모어는 큰돈은 사고파는 데서가 아니라 기다리는 데서 벌었다고 했다. 봇에게 기다림을 가르치는 방법이 상한 하나를 늘리는 일일 줄은 몰랐다.
약어 풀이
* 이 글에 나온 영어 약어를 풀어 둔다.
- AC (Accelerator Oscillator): 가속 오실레이터. AO 에서 AO 의 5일 이동평균을 뺀 모멘텀 가속 지표.
- AO (Awesome Oscillator): 중간가(고가와 저가의 평균)의 5일 평균에서 34일 평균을 뺀 모멘텀 지표.