[자동매매 봇 여정 #6] 첫 +57% — 그러나 그건 우리 알파가 아니었다

자동매매 봇 여정 · 6화

HTS에 찍힌 숫자를 보고 잠깐 멍했습니다. +57.6%. 봇이 산 종목 하나가 상한가에 묶이며 만든 수익이었어요. 트레이더라면 환호할 순간이었죠. 그런데 나는 웃지 못했습니다. 그건 우리 시스템의 실력이 아니라 — 결함이 만든 횡재였거든요.

삼화콘덴서, 그리고 묶여버린 매도

봇은 5월 21일 삼화콘덴서를 80,500원에 25주 샀습니다. 우리 전략의 익절 목표는 +20%, 즉 92,520원이었어요. 그런데 다음 날, 종목이 상한가에 락(lock)되며 102,000원에 묶였습니다. 목표가를 한참 넘긴 거죠. 그러면 봇이 신나게 팔았어야 하는데 — 09시 11분부터 15시 13분까지 약 12번의 매도 시도가 전부 조용히 스킵됐습니다. 매도 0건. 결국 며칠 뒤 내가 직접 121,500원에 팔았고, 수익률은 +57.6%로 찍혔습니다.

+57.6% — 그러나 이건 우리 실력이 아니었다

범인은 ‘침묵’이었다

코드를 열어보니, 상한가 락 상태에서 현재가 조회가 0으로 돌아오자 봇이 이렇게 행동하고 있었습니다.

if cur_price <= 0:
    continue   # ← 로그 한 줄 없이 조용히 스킵

가격을 못 가져오면, 아무 말 없이 그냥 넘어간 거예요. 이번엔 운 좋게 익절을 못 해서 ‘더 큰 수익’이 났지만, 정말 무서운 건 따로 있었습니다. 똑같은 침묵 실패가 손절에서 일어나면? 팔아야 할 종목을 못 팔고 손실이 눈덩이처럼 불어나는 거죠. 위험관리의 붕괴였습니다.

그래서 패치했어요. 가격 조회를 3번 재시도하고, 그래도 안 되면 호가창의 매수 1호가로 대체(상한가 락에선 그게 곧 매도 가능가니까요), 3번 연속 실패하면 텔레그램으로 경고를 쏘도록. 봇이 더 이상 조용히 실패하지 못하게 만들었습니다.

+57%를 +20%로 적다

그리고 가장 중요한 결정. 이 거래를 실전 전환 기준인 100건 카운트에 넣을 때, 우리는 +57.6%가 아니라 시스템이 의도했던 +20%(380,623원)로 집계했습니다. 초과분 +37.6%는 알파가 아니라 버그가 준 횡재였으니까요.

“텔레그램에 익절 알림이 안 와서 HTS를 직접 봤다. +57%. 기뻐할 일이지만, 그건 우리 알파가 아니었다. 그건 결함이었다.”

이 편의 교훈

큰 수익도 정직하게 카운트해야 합니다. 결함이 이번엔 내게 유리하게 작동했다는 건, 다음엔 똑같이 불리하게 작동할 수 있다는 뜻이거든요. 알파와 노이즈를 구분하는 것 — 그게 시스템 개발자의 직업윤리였습니다.

이렇게 정직하게 카운트를 쌓아가던 6월 8일, 시장이 무너졌습니다. 네 종목이 동시에 손절됐고, 하루에 -72만 원이 날아갔어요. 그리고 봇은 — 스스로 멈췄습니다. 다음 화, ‘폭락의 하루’입니다.

◀ 이전 화  ·  다음 화 — 폭락의 하루 ▶

이 시리즈는 개인의 실제 운영 경험을 기록한 글이며, 특정 종목·전략의 투자를 권유하지 않습니다. 모든 거래에는 원금 손실 위험이 있고, 본문의 수익·손실은 개인의 사례일 뿐 동일한 결과를 보장하지 않습니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤