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

프로그램의 시운전과 에러잡기 -19-

by 인터넷떠돌이 2020. 12. 8.
반응형

안녕하세요?

 

일단 이번 포스팅까지가 2020년 12월 7일 월요일에 있었던, 알고리즘 트레이딩에 들어가기 위한 프로그램을 정비하는 작업을 주로 포스팅 해서 올리겠습니다. 그리고 나서 월요일 하루에 있었던 이런저런 일들을 따로 묶어서 올리도록 하겠습니다. 그럼 간밤에 어떤 준비를 했는지 포스팅을 시작하겠습니다.

 

우선 위 스크린샷에서 볼 수 있는 것과 같이 Sequence_of_Task의 일부 작업을 주석처리 해 주고 나서, 여기서 있는 작업을 따로 실행하라는 식으로 일부 작업만 진행을 시켰습니다.

 

이렇게 작업을 시키고 나서야, 위 스크린샷에서 볼 수 있는 것처럼 일단 Pre_Buy_Traded와 Pre_Sell_Traded라는 데이터 베이스가 별도로 생성이 되는 것을 확인할 수 있었습니다.

 

그런데 여기서 부터 또 문제가 발생합니다. 기존에는 모든 매수 정보를 다 올려주는 줄 알았는데, 그게 아니라, 여기서 올라오는 정보는 하루에 한해 올라오고, 2일 전의 내용은 사라져 있습니다. 이래서야 이걸 어떻게 다시 사용할 수 있는지 모르겠습니다만, 일단 좋지는 않은 상황인건 맞습니다.

 

그래서 이런 상황이 이렇게 말도 않되는 마이너스 항목을 생성한 것이 아닌가 하는 생각이 듭니다. 일단 이 상황을 어떻게 해서든 고칠 수 있어야 합니다.

 

 

일단 할당된 자금을 계산상으로 제대로 된 금액이 될 수 있도록 만들어 주도록 합니다. 이렇게 만들어 놓은 다음에는 이제 제대로 돌아갈 수 있도록 다른 조치를 취하도록 합니다.

 

우선 여기서 처음으로 주목한 것은 opt10085라고 하는 TR에 주목을 하였습니다. 이 TR에 가서는 일단 보유수량등을 알 수 있다는 것을 알았습니다.

 

그래서 Kiwoom.py로 가서, 위 스크린샷에서 볼 수 있는 것처럼, 일단 TR을 받으면 받는대로 어떻게 작용할 수 있도록 한번 작전을 짜 보도록 했습니다.

 

그리고 나서 이걸 받아오기 위한 메서드도 만들어 주도록 했습니다. 그런데 이렇게 메서드까지 만들고 나서 생각을 하니, 굳이 이럴 것 까지 있는가 하는 생각이 들었습니다.

 

그냥 그날그날 다른 매도/매수 기록을 보여주는 것이 기존의 체크방식이라면, 매일 마지막 시간에 이걸 리셋해 주면 된다는 생각이 들었습니다. 그래서 리셋을 해 주기 위해서, 일단 위 스크린샷에서 볼 수 있는 것처럼 새로운 메서드를 하나 만들었습니다.

 

그리고 나서 체크타임에 가서, 이게 장이 종료된 시간이 지나고 나서는 이제 위 스크린샷에서 볼 수 있는 것처럼 일단 새로운 메서드를 실행할 수 있도록 만들어 주도록 합니다.

 

그리고 나서 이 메서드만 따로 실행을 시키니, 일단 위 스크린샷에서 볼 수 있는 것과 같이, 우선 * 기호가 문제가 되었다고 해서 일단 제거를 해 주었습니다.

 

그리고 나서 프로그램을 종료 시키기 위한 quit()에 쓸데없이 self를 넣었다고 해서 이걸 빼 주는 작업을 한번 더 해야 했습니다.

 

이렇게 해서 제대로 작동이 되는 마무리 메서드까지 작업을 하고 나서, 이제 이 월요일의 알고리즘 트레이딩에 들어가기 위한 준비는 다 되었습니다. 다만, 이렇게 했는 것 때문에 제대로 될지 안 될지는 모르겠습니다만, 일단 들어는 가야 제대로 작동하는 것이 맞는지 아닌지 알 수 있을 듯 합니다.

반응형