급락장에서 얻어맞고 나서 봇에 넣은 방어 로직들
이 글은 개인 기록이며 투자 조언이 아닙니다. 등장하는 수치는 제 설정값일 뿐, 누구에게나 맞는 값이 아닙니다.
저는 전략별로 나눈 자동매매 봇 여러 개를 홈서버에서 돌립니다. 올해 초 급락장에서 하루에 뼈아픈 손실을 봤고, 그 주말에 봇 전체를 뜯어서 복기했습니다. 결론부터 말하면 — 손실의 가장 큰 원인은 전략이 아니라, 방어 로직이 없던 봇들이었습니다.
복기에서 나온 사실
봇들을 나눠 보니 두 그룹이었습니다. 방어 로직이 있던 봇들은 급락 중에 알아서 매매를 멈추거나 포지션을 줄여서 손실이 제한됐습니다. 반면 “장기 적립식이니까 방어가 필요 없다”고 생각해서 방어를 안 넣은 봇들(적립식·고배당·연금 계좌용)이 전체 손실에서 큰 비중을 차지했습니다. 얌전한 전략일수록 안전할 거라는 생각이 정확히 반대로 작동한 겁니다.
이후 전 봇에 적용한 방어 로직
복기 후 모든 봇에 공통으로 넣은 메커니즘입니다.
- 서킷 브레이커 — 변동성이 평소(ATR 기준)의 2.5배를 넘으면 그날 매매 자체를 중단.
- MDD 스탑 — 고점 대비 -15%에 도달하면 포지션 절반 청산.
- 전량 청산선 — -20%에 도달하면 전부 정리. 여기까지 오면 전략이 아니라 생존 문제.
- 동적 비중 축소 — 변동성 비율이 높아지면 신규 매수 비중을 자동으로 줄임.
- 레버리지 하드스탑 — 레버리지 ETF는 종목별로 -8~-15% 개별 손절선.
- 갭다운 비상매도 — 시초가가 -6~-8% 이상 갭다운으로 열리면 즉시 청산.
깨진 착각들
“적립식은 방어가 필요 없다.” 평범한 조정장에서는 맞는 말일 수 있습니다. 하지만 구조적 하락에서는 떨어지는 칼날을 기계적으로 계속 잡는 게 적립식 봇입니다. 최소한의 중단 조건은 필요했습니다.
“MDD 스탑이 있으니 안전하다.” 3배 레버리지에서는 하루 만에 -15%가 트리거됩니다. 방어 로직도 대상의 변동성에 맞게 설계해야지, 하나의 설정을 복붙하면 안 됩니다.
“계좌별 비중 합이 100%면 안전하다.” 봇 여러 개가 같은 총자산 기준으로 비중을 계산하면, 각자는 규칙을 지켜도 합산 노출이 초과될 수 있습니다. 봇별 점검이 아니라 전체 합산 점검이 필요했습니다.
남긴 교훈
방어 로직은 수익을 만들어 주지 않습니다. 평시에는 오히려 수익을 조금씩 갉아먹습니다. 그래서 넣기 싫어지는데, 그 비용은 최악의 하루에 살아남는 값입니다. 백테스트로 전략의 수익률만 보던 시절에는 이걸 몰랐고, 실제로 얻어맞고 나서야 모든 봇의 첫 번째 요구사항이 “수익”에서 “생존”으로 바뀌었습니다.