본문 바로가기
무모한 도전-주식 인공지능 만들기

백테스트의 에러찾기 여정 -3-

by 인터넷떠돌이 2021. 6. 22.
반응형

안녕하세요?

 

지난번 포스팅에서 어떻게 에러를 잡는 가 싶었더니, 그동안 생각했던 매도를 할 때 발생하는 것이 아니라, 매수를 할 때 부터 무언가가 잘못되어 있었습니다. 그래서 이번에도 이런 에러의 위치를 마치 숨어있는 무언가를 찾듯이 뒤져봐야 할 상황입니다.

 

그래서 먼저 알아봐야 하는 것으로는 위 스크린샷에서 볼 수 있는 것처럼, 일단 매수를 할 때부터 저 position size가 제대로 나오는 지 아닌지를 알아보도록 해야 합니다.

 

일단 어째서 인지는 정말 모르겠습니다만, 매수하라는 양 - position size를 계산해 보니, 무슨 우주의 모든 주식이란 주식은 다 사고도 모자랄 매수량을 만들어 내고 있습니다.

 

그래서 더 위에 있는 position size를 계산하기 위 한 account risk나 trade risk에서 무슨 문제가 생긴 것이 아닌가 해서, 일단 print함수를 써서 알아보도록 합니다.

 

 

실제로 trade risk는 그런데로 합리적인 수준으로 나오는 것을 볼 수 있으나, 어째서 인지 account risk는 너무 커다란 숫자로 나오는 것을 확인할 수 있었습니다.

 

그래서 다음으로 알아보기 위한 것으로는 저 account risk가 왜 저렇게 되었는지 알아보기 위해서 계산하는데 필요한 요소를 한번 가지고 오라는 식으로 print함수를 사용했습니다.

 

그렇게 했더니, 어째서 인지 모르겠지만, account가 마이너스가 되었고, 그 양도 심각할 정도로 커지는 것을 확인할 수 있었습니다. 이래서야 뭐가 제대로 될 리가 없다는 생각이 듭니다.

 

그래서 문제가 무엇인가 하면, 더 이상은 거래를 할 수 없어진 상황에서 계속 거래를 하라고 만들어서 문제가 된 것 입니다. 이걸 지난번에 해결이 된 것으로 생각했었는데, 실은 아니었나 봅니다.

 

우선 2군데에 계좌가 0원 이하 = 깡통계좌가 되면 더 이상의 거래를 하지 말라는 식으로 말을 해서 어떻게 거래를 중단 시키도록 했습니다.

 

그런데 어디서 잘못된 코드가 있는 것인지, 제대로 모든 코드를 다 보기도 전에, 첫번째 종목에서 그만 멈추고 말았습니다. 이래서야 아직도 무언가 이상이 있는 것 같은데, 어쨎든 간에 해결을 하지 않으면 안되는 상황이기는 합니다. 버그하나 잡기가 상당히 애를 먹습니다.

반응형