본문 바로가기

지식공유/매매일지

클래스 101 AI 자동 투자 봇 만들기 시뮬레이션과의 괴리.

클래스 101 AI  자동 투자 봇 만들기 강의를 수강하고 직접 알고리즘을 만들어 실전매매 한 내용을 주기적으로 업데이트 하고 있습니다. 이 글은 시뮬레이션과의 괴리를 줄이기 위한 테스트를 담고 있습니다.

 

지난해 10월 22일 부터 자동 투자 봇으로 실전매매 트레이딩을 하고 있습니다.

 

추세단타 전략으로 알고리즘을 만들고 연평균 수익률 170%의 백테스트 결과가 나와서 실전매매에 투입했었으나,

11월 19일까지의 수익률을 체크해 보니, 코스피, 코스닥 지수 상승률보다도 낮게 나와서

 

동 기간 실전매매 수익률과 백테스트 결과를 비교해보았을때(지난 포스팅) 그래프의 기울기, 수익률 모두 백테스트와 실전매매 간 괴리가 컸었습니다만 170% 상승에 눈이 멀어 시스템을 유지시켰었습니다. 

 

그러나 크리스마스 즈음하여 괴리가 말도 안되게 심해져서 시스템 스탑을 시켰습니다.

아래는 처참한 마이너스 사진입니다.

 

동 기간 시뮬레이션은 3% 이익이었습니다. 여러가지 테스트 중 시뮬레이션 DB 를 초기화 하여 데이터는 없지만 돈을 잃은 데이터는 있기에 첨부합니다. 

약 보름간 고점대비 MDD 12% 정도로 나옵니다. 지난 코로나때 MDD 20% 이상도 견뎠었기 때문에 이정도는 아무 일도 아니지만 시뮬레이션과 결과가 다르게 흘러간다는것이 가장 큰 문제였습니다. 시스템을 스탑하고 어떤것이 원인인지 찾았습니다.

 

원인은 '시뮬레이션보다 실전 매매가 반박자 늦다' 였습니다. 무슨말이냐면, 지난 포스팅에서도 염려했던 부분인데.

 

현재 봇은 TR 요청으로 [ 요청하고 -> 받고 -> 진입 여부 확인하고 -> 진입 ] 이런식으로 진입하게 됩니다. 이 과정에서 약 1초정도 걸리게 되는데 그 시간동안 가격이 변하면 그 가격으로 사게되는 것입니다. 

 

예를들어 삼성전자를 82000원 보다 낮아지면 사도록 하고 현재가가 81000원 이라면

 

1) 시뮬레이션 - 81000원에 산것으로  DB에 저장.

2) 실전매매 - 81000원으로 떨어졌을때 시장가 매수를 넣음, 만약 호가는 81200원에 걸려있음. 81200원에 사게 됩니다.

 

이정도면 큰 차이가 아니라고 생각하실 수 있으나 시뮬레이션에서는 3% 익절 5% 손절로 잡고 테스트를 했었습니다.

 

시뮬레이션에서는 3%익절해서 팔았던 종목이 실전에서는 계속 들고있길래 이것은 무엇인가 싶어서 보니 산 가격이 미세하게 달라서 3% 익절선도 달랐습니다. 

 

그래프는 3% 까지 올라갔다가 내려간게 기록으로 남아있는데 제 봇은 그 가격이 3%가 아닌 2.X% 였던 것입니다.

 

봇으로 하는 단타의 한계를 깨닫고 다른 전략을 만들어 내기로 했습니다.

 

봇의 제약조건은 당일 단타는 안된다는 것이기 때문에 보유일이 최소 1일 이상, 손익절선 넓게 잡음 으로 테스트를 해보려 합니다.

 

아쉽지만 시뮬레이션으로는 작년 한해동안 약 350%를 번 전략은 사용하지 못하게 되었습니다. 

눈앞의 신기루같은 전략은 TR요청 외에 실시간 요청을 이용한 매매를 다시 한 번 공부해보고 적용해보려 합니다.

아래는 저의 신기루 입니다. 1000만원으로 시작해서 4500만원이된 전략(3500만원 이득)

다음 포스팅에서는 보유일 긴 스윙전략을 찾아내어 보겠습니다.

 

감사합니다.