건방진 착각: 타임프레임 최적화면 다 될 줄 알았다
비트코인 15분봉의 휩소(노이즈)에 시드가 갈려 나간 후, 타임프레임을 4시간봉으로 넓히자 +485%라는 백테스트 수익률이 찍혔다. 그때 나는 건방지게도 퀀트 트레이딩의 모든 해답을 찾았다고 착각했다. 자잘한 파도만 피하면 무조건 돈이 복사될 줄 알았다.
하지만 내 얄팍한 오만함은 데이터를 더 과거로 돌려보는 순간 여지없이 박살 났다.
2022년, 끝없이 추락하던 ‘대세 하락장(Crypto Winter)’ 구간에 내 알고리즘을 밀어 넣었을 때의 일이다. 아무리 타임프레임을 4시간봉으로 넓혔어도, 시장 전체가 폭포수처럼 무너져 내리는 상황에서는 실시간 모멘텀 측정(Alpha Trigger)조차 아무런 의미가 없었다.

알고리즘은 거대한 하락 추세를 읽지 못했다. 그저 투매 속에서 아주 잠깐 나오는 기술적 반등을 ‘바닥’으로 착각하고 기계적으로 롱(매수) 버튼을 눌러댔다. 떨어지는 칼날을 맨손으로 잡고, 손절이 나가고, 또 반등에 속아 진입하는 미련한 짓의 반복. 수익금은 순식간에 녹아내렸고 계좌는 피투성이가 되었다.
무언가 단단히 잘못되었다. 사냥개(알고리즘)에게 사냥감을 무는 법만 가르쳤지, 폭우가 쏟아질 때 동굴에 엎드려 기다리는 법을 가르치지 않았던 것이다. 하락장에서는 절대 입을 벌리지 못하게 막는 ‘강력한 목줄’이 필요했다.
심해를 가르는 절대적인 기준: 4시간봉 EMA 200
백지상태로 돌아가 다시 데이터를 뜯어보았다. 하락의 쓰나미가 닥쳤을 때, 이것이 단순한 건강한 조정인지 아니면 끝없는 지하실의 시작인지 실시간으로 구분할 수 있는 절대적인 기준선이 필요했다.
수많은 이동평균선과 보조지표를 며칠 밤낮으로 백테스트 엔진에 갈아 넣었다. 그러다 문득, 시장을 움직이는 거대 자본(스마트 머니)들이 강세장과 약세장을 구분할 때 쓰는 기준이 무엇일지 역으로 생각해 보았다. 그들은 복잡한 수식이 아니라 아주 직관적이고 무거운 선을 보고 있었다.
바로 **4시간봉 EMA 200 (200일 지수이동평균선)**이었다.

단순 평균(SMA)보다 최근 가격에 민감하게 반응하면서도, ‘200’이라는 묵직한 기간을 담고 있는 이 선. 차트를 길게 늘여놓고 보니, 이 선은 마치 바다의 수면과도 같았다. 캔들이 이 선 밑으로 가라앉으면 그곳은 수급이 말라붙은 ‘심해’였다. 가짜 반등과 투매만 난무하는 절망의 구간.
나는 복잡한 조건을 다 버리고, 내 알고리즘에 아주 무식하고 단순한 코드 한 줄을 필터로 끼워 넣었다.
“캔들이 EMA 200선 위에 있을 때만 매수 시그널을 수용한다. 캔들이 EMA 200선 밑으로 가라앉으면, 하단에서 무슨 완벽한 시그널이 뜨더라도 절대 진입하지 말고 현금을 쥔 채 관망한다.”
아무것도 하지 않는 것의 위대함
이 단순한 필터 하나가 가져온 변화는 충격적이었다. 2022년 대폭락장 한복판에 이 방어막을 장착한 봇을 다시 풀어놓았다.
결과 창을 본 나는 한동안 모니터 앞을 떠날 수 없었다.

봇은 2022년 내내 쏟아지던 수백 번의 가짜 매수 신호들을 무표정하게 튕겨냈다. 캔들이 줄곧 EMA 200선 밑(심해)에 갇혀 있었기 때문이다. 결과적으로 봇은 1년이 넘는 대폭락장 기간 동안 거의 거래 하지 않았다.
잦은 손절로 밑빠진 독처럼 새어나가던 자산 그래프(Equity Curve)는 일직선(Flat)을 그렸다. 수익률 0%. 돈을 벌지는 못했다. 하지만 시장 참여자의 99%가 반토막이 나고 퇴출당하던 그 끔찍한 시기에, 내 봇은 아무것도 하지 않음으로써 **’시드를 100% 온전히 보존’**했다.
폭락장에서 현금을 지켜낸 봇은, 지루한 하락장이 끝나고 캔들이 다시 EMA 200 수면 위로 올라오는 순간, 깎이지 않은 온전한 시드를 바탕으로 다음 상승장의 수익을 밑바닥부터 긁어모으기 시작했다. 하락장에서의 승리는 베팅을 잘하는 것이 아니라, 베팅을 쉬는 것에 있었다는 것을 뼈저리게 배운 날이다.
다음 기록을 위한 메모: 내 안의 버그, 인간의 감정
이제 알고리즘의 뼈대는 갖춰졌다. 모멘텀을 재고, 노이즈를 걷어내고, 폭락장 방어막까지 쳤다.
하지만 실전에 이 로직을 적용하려고 하니, 가장 치명적이고 고치기 힘든 버그가 발생했다. 바로 모니터 앞에 앉아있는 ‘나’라는 인간의 감정이었다. 완벽한 타점 알람이 울려도 무서워서 진입을 못 했고, 기계적인 손절 라인에 도달해도 본전 생각에 매도 버튼을 누르지 못했다.
수식이 완벽해도 내 손가락이 말을 듣지 않으면 아무 소용이 없었다. 나라는 인간의 나약한 육체와 감정을 이 프로세스에서 완전히 도려내야만 했다. 다음번에는 알람을 받는 것을 넘어, n8n과 거래소 API를 연결해 24시간 내 의지 없이 돌아가는 무인 자동매매 시스템을 구축하며 겪었던 며칠간의 삽질을 기록해 두어야겠다.

