100건을 채웠고, 그 시스템을 폐기했습니다 — 자동매매 봇 3개월의 결론

3개월 전 저는 “6주 만에 진짜 알파를 찾았다”고 썼습니다. 그 시스템은 지금 없습니다. 100건을 채웠고, 폐기했습니다.

이 글은 자동매매 봇을 만든 기록의 마지막 편입니다. 그런데 결말이 성공이 아닙니다.

6월에 쓴 마지막 회차에는 이렇게 적혀 있습니다.

“한 달 안의 은퇴는 환상이었다. 하지만 우리는 6주 만에 진짜 알파를 찾았다. 그 사실이 훨씬 더 큰 가치다.”

지금 그 문장을 다시 보면 두 부분이 다릅니다. 앞은 맞았고, 뒤는 틀렸습니다.

그때 저는 100건 중 17건이었습니다

항목 2026년 6월 시점
실전 전환 카운트 17 / 100 (84건 더 필요)
예상 소요 약 1.5~2개월
시드 약 1,110만 원 (시작 대비 +11.1%)
회귀 테스트 138건, 주간 수동 정정 0건

표본은 17건인데 “진짜 알파를 찾았다”고 썼습니다. 제가 스스로 정한 기준이 100건이었는데도요.

왜 그랬는지는 지금도 기억납니다. 시드가 +11% 늘어 있었고, 봇은 안정적으로 돌고 있었고, 몇 주 전에는 음수 기댓값 시스템 하나를 스스로 폐기하기까지 했으니까요. 잘 되고 있다는 신호가 계속 왔습니다.

⚠️ 주의 그런데 17건은 판단할 수 있는 숫자가 아닙니다. 동전을 17번 던져도 앞면이 11번 나오는 일은 흔합니다. 제가 100건이라는 기준을 세운 이유가 정확히 이것이었는데, 정작 17건에서 결론을 냈습니다.

이건 감이 아니라 산수입니다. 매매 한 건의 결과는 전략이 만든 부분과 시장이 만든 부분이 섞여 있습니다. 건수가 적으면 시장이 만든 몫이 통째로 남아서, 좋은 장을 만나면 아무 전략이나 좋아 보입니다. 건수가 늘어야 그 몫이 서로 상쇄되면서 전략의 실력이 드러납니다. 17건은 아직 시장이 지배하는 구간이었어요.

그런데 저는 그때 이런 식으로 생각했습니다. “17건이지만 방향은 분명하다.” 이 문장이 위험합니다. 방향이 분명해 보이는 것 자체가 표본이 적을 때 나타나는 현상이거든요. 적은 표본에서는 그림이 오히려 깔끔하게 보입니다. 예외가 아직 안 나왔으니까요.

기준을 세우는 것과 그 기준을 지키는 것은 다른 일이더군요. 기준은 성적이 나쁠 때만 시험받는 게 아닙니다. 성적이 좋을 때도 똑같이 시험받습니다. 오히려 좋을 때가 더 어렵습니다. 나쁠 때는 기준이 나를 보호해주는데, 좋을 때는 기준이 나를 막아서니까요.

실제로 그날 저는 기준을 어긴 게 아닙니다. 실전으로 넘어가지는 않았거든요. 다만 글에는 결론을 써버렸습니다. 행동보다 말이 먼저 나간 셈인데, 이게 별거 아닌 것 같아도 그렇지 않습니다. 한 번 “찾았다”고 쓰고 나면 그 뒤로는 그 결론을 지지하는 증거만 눈에 들어오기 시작하니까요.

그리고 나머지 83건이 쌓였습니다

100건을 채웠습니다. 그리고 폐기했습니다

결과부터 말하면 이렇습니다.

“끝났고 결과는 안 좋았다. 폐기함.”

100건이 채워졌고, 시작할 때 정해둔 여섯 개 조건을 통과하지 못했습니다. 그래서 그 시스템은 실전으로 넘어가지 못했고, 지금은 돌리지 않습니다.

17건에서 “찾았다”고 했던 그 알파는, 83건이 더 쌓이자 사라졌습니다. 없던 게 있는 것처럼 보였던 거죠.

여기서 한 가지는 분명히 해두고 싶습니다. 이건 게이트가 실패한 게 아니라 게이트가 작동한 겁니다. 100건이라는 조건이 없었다면 저는 17건 시점에서 실전으로 넘어갔을 겁니다. 시드가 +11%였고 기분이 좋았으니까요. 그리고 진짜 돈으로 나머지 83건을 겪었겠죠.

17건
“알파를 찾았다”고 쓴 시점
100건
실제로 판정한 시점
0원
이 판정에 든 실제 손실

모의계좌로 돌린 덕분에 이 검증에 든 실제 비용은 0원입니다. 3개월과 코드 몇천 줄이 들어갔을 뿐이에요. 같은 결론을 실제 계좌로 얻었다면 얼마가 들었을지는 계산해보지 않았습니다.

여기서 솔직하게 덧붙일 게 있습니다. 제가 이 시스템을 지울 수 있었던 이유 중에 돈이 안 걸려 있었다는 점이 분명히 있습니다. 실제 계좌였다면 “조금만 더 해보자”는 생각이 안 들었을까요. 저는 그 시험을 아직 안 봤습니다.

다만 폐기가 감정적으로 쉬운 결정은 아니었습니다. 3개월 동안 매일 돌린 코드고, 그 안에는 여러 번 고쳐가며 잡은 결함들이 들어 있으니까요. 그래서 미리 정해둔 조건이 필요했던 겁니다. 그 순간에 판단하려고 했다면 저는 아마 안 지웠을 겁니다. 지울 이유는 스스로 만들기 어렵고, 안 지울 이유는 얼마든지 만들 수 있거든요.

중간에 카운트를 부풀렸다면 어떻게 됐을까

이 대목이 지나고 나서 제일 무섭습니다.

100건을 쌓는 도중에 봇이 상한가 종목을 못 팔아서 +57.6%가 난 적이 있습니다. 시스템이 의도한 건 +20% 익절이었으니, 초과분 +37.6%포인트는 전략이 번 게 아니라 버그가 준 몫이었어요. 그래서 카운트에는 설계값인 +20%만 넣었습니다.

그런데 만약 계좌에 찍힌 +57.6%를 그대로 넣었다면 어떻게 됐을까요. 계산해봤습니다.

항목 값
해당 종목 매수 금액 80,500원 × 25주 = 약 201만 원
버그가 준 초과분 +37.6%p → 약 75만 7천 원
100건으로 나누면 거래당 약 7,567원
게이트 ③ 통과 기준 거래당 +1,000원 이상
결과 이 한 건만으로 기준의 약 7.6배가 얹힘

단 한 건입니다. 100건 중 한 건을 부풀렸을 뿐인데, 그 한 건이 통과 기준의 7배가 넘는 값을 평균에 얹습니다. 다른 99건이 아무리 시원찮아도 성적표는 통과 쪽으로 기울었을 겁니다.

그랬다면 저는 지금 실제 돈으로 이 전략을 돌리고 있었을 겁니다. 통계가 인정했다고 믿으면서요. 그리고 그 통계는 제가 손으로 부풀린 것이었을 테고요.

🔑 핵심 성과 기록에서 운이 준 몫을 빼는 일이 왜 중요한지가 여기서 드러납니다. 그건 정직함의 문제이기 전에, 그 기록으로 다음 결정을 내릴 사람이 자기 자신이라는 문제입니다.

같은 이유로 손실 쪽도 정정했습니다. 봇이 진입가를 잘못 잡아서 안 팔아도 될 종목을 판 날이 있었는데, 그건 전략이 진 게 아니라 코드가 틀린 거라 실제 값으로 고쳐서 넣었습니다. 이익을 안 부풀리는 것과 손실을 안 과장하는 것은 같은 규칙입니다.

이 두 정정이 없었다면 100건의 성적표는 실제와 다른 그림이 됐을 겁니다. 그리고 저는 그 그림을 보고 결정을 내렸겠죠. 검증이라는 건 결국 기록의 정확도만큼만 유효합니다. 아무리 좋은 기준을 세워도 들어가는 숫자가 틀리면 그 기준은 아무것도 걸러내지 못합니다.

사실 이건 개인 투자에서도 그대로 통합니다. 수익률을 계산할 때 세금과 수수료를 빼는지, 중간에 추가 입금한 돈을 수익으로 세지 않는지, 손실 난 계좌를 빼고 잘된 계좌만 세지 않는지요. 내 성적표를 내가 만드는 상황에서는 부풀릴 방법이 얼마든지 있습니다. 그리고 그 성적표를 보고 다음 결정을 내리는 사람도 나입니다.

그래서 알파는 찾았나

3개월 전의 저에게 물어보면 찾았다고 답할 겁니다. 지금 물어보면 답은 이렇습니다.

“아니. 아직도 새로운 로직을 만들고 있어.”

그 사이에 여러 가설을 검증했고 대부분 기각됐습니다. 가격이 눌린 자리에서 사는 계열은 다섯 번 시도해서 다섯 번 다 안 됐습니다. 규칙 문서를 확정한 당일에 원문과 어긋난 곳을 발견해서 스스로 철회한 적도 있고요. 하나가 처음으로 검증을 통과하긴 했지만, 그건 이 봇과는 다른 라운드입니다.

그래서 지금은 로직을 새로 짜고 있습니다. 3개월 전보다 진도가 뒤로 간 것처럼 보일 수도 있어요. 실제로 돌아가던 시스템 하나가 없어졌으니 그 말이 맞습니다.

그런데 남은 것도 있습니다

🧱 검증 절차
사전에 기준을 얼고, 라운드당 판정은 한 번. 결과 보고 기준 바꾸는 걸 막습니다
🔎 잡아낸 결함들
조용히 넘어가던 매도, 틀린 진입가, 거짓말하던 감시 — 다 모의에서 걸렀습니다
📏 올라간 기준
표본 100건 → 라운드에 따라 200건. 못 채우면 성적을 열어보지도 않습니다

세 번째가 실제로 있었던 일입니다. 어떤 라운드는 표본이 52건에서 멈췄는데, 수익률을 아예 열어보지 않고 닫았습니다. 200건 기준을 못 채웠으니 판정할 자격이 없다고 봤어요. 열어보고 나면 “이 정도면 기준을 좀 낮춰도 되지 않나”라는 생각이 반드시 따라오거든요.

3개월 전의 저는 17건에서 결론을 냈습니다. 지금의 저는 52건에서 결론을 안 냈습니다. 바뀐 건 전략이 아니라 이쪽입니다.

  • ✓기준은 성적이 좋을 때 더 시험받는다 — 나쁠 때는 나를 보호하지만 좋을 때는 나를 막는다
  • ✓표본이 적을 때 나온 좋은 결과는 결과가 아니라 아직 정보가 아니다
  • ✓성과 기록에서 운·버그가 준 몫을 빼야 그 기록으로 결정을 내릴 수 있다
  • ✓폐기는 실패가 아니라 검증 절차가 작동했다는 뜻이다

그래서 여기서 끝나지 않습니다

이 시리즈는 원래 성공기로 끝날 예정이었습니다. 100건을 채우고 실전으로 넘어가는 장면으로요. 실제로는 100건을 채우고 시스템을 지우는 것으로 끝났습니다.

그래도 마지막 문장은 정해뒀습니다.

“내 도전은 끝나지 않았고 아직도 진행하고 있다. 진정한 알파를 찾기 위해 꾸준히 노력할 것이다.”

3개월 전이었다면 이 문장을 성과 뒤에 붙였을 겁니다. 지금은 폐기 뒤에 붙입니다. 그런데 이쪽이 더 정확한 것 같습니다.

이 기록을 남기는 이유도 그겁니다. 자동매매 이야기는 대개 성공한 사람이 씁니다. 안 된 사람은 조용히 그만두니까요. 그래서 세상에 남는 기록이 한쪽으로 쏠립니다. 시작하려는 사람이 참고할 수 있는 건 대부분 잘된 사례뿐이고, 그러면 이 일이 실제보다 쉬워 보입니다.

저는 잘 안 됐고, 그 과정을 남깁니다. 다음 라운드가 어떻게 될지는 모르겠습니다. 지금 짜고 있는 로직도 기각될 수 있고요. 그래도 기각됐다는 사실을 정확히 아는 것이 아무것도 모른 채 진짜 돈을 넣는 것보다는 낫다고 생각합니다. 3개월 동안 얻은 게 그거라면 그것도 나쁘지 않습니다.

⏱ 3줄 요약
  • 6월에 17건에서 ‘알파를 찾았다’고 썼는데, 제 기준은 100건이었습니다
  • 100건을 다 채웠고 기준을 통과하지 못해 폐기했습니다 — 게이트가 작동한 겁니다
  • 중간에 버그가 준 +57.6%를 그대로 넣었다면 그 한 건만으로 통과했을 수도 있습니다
  • 모의계좌였기에 이 검증에 든 실제 손실은 0원입니다

모의투자 계좌는 각 증권사에서 신청할 수 있고, 투자 관련 소비자 정보는 금융감독원에서 확인할 수 있습니다.

시리즈 처음부터 읽기: ① 월 20%를 목표로 봇을 만들었습니다 · ② 상한가에서 못 팔아 +57% · ③ 하루에 72만 원

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

댓글 달기

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

위로 스크롤