백테스트에서 시가 진입 오류를 발견하고 전략을 새로 만들었다.
이번엔 KDJ 지표를 활용한 BTC 선물 양방향 전략이었다.
KDJ는 주식이나 코인에서 자주 쓰는 기술적 지표다.
K, D, J 세 개의 선이 움직이면서 매수·매도 타이밍을 알려준다.
K선이 D선을 위로 뚫으면 골든크로스, 아래로 뚫으면 데드크로스.
자동매매에서 가장 많이 쓰는 진입 신호 중 하나다.
이 전략으로 AI한테 봇 제작을 부탁했다. 설명하자마자 봇이 뚝딱 만들어졌다.
설레는 마음으로 CMD 창을 열었다.
python btc1bot.py
엔터를 눌렀다.
오류 메시지가 쫙 나왔다.
뭔 말인지 하나도 몰랐다. 코딩을 모르니까.
그냥 오류 메시지를 통째로 복사해서 AI한테 붙여넣었다.
AI가 뭔가 설명을 했다. 무슨 말인지 하나도 몰랐다.
"그냥 수정해줘."
수정된 코드를 받아서 다시 실행했다. 이번엔 로그가 출력됐다. 뭔가 되는 것 같았다.
근데 또 문제가 생겼다.
계좌 잔고를 못 읽었다. 또 AI한테 물어봤다.
수정을 몇 번이나 했다. 그래도 해결이 안 됐다.
그때 처음 느꼈다.
"이거 AI가 완벽한 게 아니구나."
AI를 처음 써본 날 바로 유료 결제를 했던 나였다. 뭐든 다 될 줄 알았다.
아니었다.
AI는 실수를 정말 많이 한다. 자신있게 틀린다.
모르면 모른다고 하지 않고 그럴듯한 답을 만들어낸다.
코딩을 모르는 나는 그게 맞는지 틀린지조차 몰랐다. 그게 제일 무서운 점이었다.
수정을 반복했다. 또 수정. 또 수정.
열 번 가까이 거치고 나서야 드디어 계좌 정보를 읽는 데 성공했다.
"이제 첫 진입만 성공하면 된다."
봇을 실행하고 컴퓨터를 켜둔 채로 출근했다.
오후 1시. KDJ 진입 신호가 발생할 타이밍이었다. 봤더니 진입을 안 했다.
"왜 이러지?"
퇴근 시간이 다가오던 4시 59분. 다시 확인했다.
4시간봉이 마감되는 정각 직후에 데이터 값이 바로 반영되지 않았다. 몇십 초가 지나고 나서야 반영됐다.
이유가 있었다.
4시간봉은 봉 하나가 4시간에 걸쳐서 만들어진다.
정각에 봉이 닫히면 바이낸스 서버에서 그 데이터를 처리하고 API로 내보내는 데 시간이 걸린다.
봉이 닫힌 바로 그 순간에 봇이 데이터를 가져오면 아직 반영이 안 된 이전 봉 데이터를 보게 된다.
퇴근 후 집에 도착해서 바로 컴퓨터 앞에 앉았다.
"4시간봉은 데이터 반영이 늦어. 진입 시간을 5분 뒤로 바꿔줘."
봇을 다시 시작했다.
다음날 드디어 진입했다.
근데 웬걸. 종가가 확정된 시점이 아니라 봉이 진행 중인 도중에 실시간 데이터를 보고 진입했다.
이게 왜 문제냐면.
봉이 완성되기 전 실시간 가격은 계속 바뀐다.
KDJ 신호도 함께 흔들린다.
지금 골든크로스처럼 보여도 봉이 닫힐 때는 아닐 수 있다.
실시간 데이터를 기준으로 진입하면 가짜 신호에 걸리는 경우가 생긴다.
백테스트는 종가 기준으로 계산하는데 봇이 실시간으로 들어가면 결과가 달라질 수밖에 없다.
집에 가서 또 컴퓨터 앞에 앉았다.
"종가가 확정된 데이터가 반영된 후에 그걸 기준으로 진입해야 해."
수정했다. 봇을 다시 시작했다.
그리고 다음날. 드디어 제대로 됐다.
종가 확정. 데이터 반영. 그 다음 진입.
오류 수정만 수십 번. 퇴근하고 매일 컴퓨터 앞에 앉아서 반복했다.
그러면서 한 가지를 배웠다.
AI는 코드를 만들어준다.
하지만 거래소 서버가 어떻게 동작하는지, 데이터가 어느 시점에 확정되는지는
직접 실행해보고 확인해야 한다.
그 경험이 없으면 아무리 코드가 완성돼도 실전에서 틀린다.
'바이낸스 선물 자동매매' 카테고리의 다른 글
| 가비아 VPS 서버 만들기, 자동매매 봇 24시간 운영 시작 (0) | 2026.05.31 |
|---|---|
| 5화 "VPS 처음 써봤다-가상서버로 봇 24시간 돌린 날" (0) | 2026.05.29 |
| 바이낸스 TP/SL 취소 오류, Algo 주문 API 따로 있었다 (0) | 2026.05.27 |
| 백테스트 수익률 1,200만% 정체, AI가 타임머신 진입했다 (0) | 2026.05.26 |
| 바이낸스 자동매매 API 발급 순서, 서브계정이 먼저인 이유 (0) | 2026.05.23 |