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

다시금 시작해 보는 exe파일 만들기 작전-5-

by 인터넷떠돌이 2019. 1. 11.
반응형

안녕하세요?


지난번 포스팅에서 제 예상과는 다르게 RLTrader가 자기가 위치해 있는 폴더에서 텍스트 문서 파일을 찾지 않고, pytrader가 실행중으로 있는 위치로 가서 찾는다는 것을 알 수 있었습니다. 그래서 이번 포스팅에서는 이런 사실을 알기는 알았으니, 계속해서 이어지는 문제인 몸과 두뇌역할을 하는 프로그램간 신호 주고 받기가 안되는 것을 해결해 보고자 합니다.



먼저 가정을 하나 했습니다. 일단 여기서 나오지는 않았지만, 이전에 해보니까 RLTrader와 관련된 텍스트문서에 제대로 경로만 설정되어 있으면 아무런 문제없이 RLTrader가 작동을 하는 것을 확인할 수 있었습니다. 그래서 이번에는 이전에는 같은 메서드에서 데이터를 준비하고, 텍스트 문서에 내용을 적고, 다음으로 RLTrader를 작동시켰는데, 텍스트 문서에 내용을 적고나서, 다른 메서드에서 RLTrader를 작동시키면 어떻까 하는 생각을 하였습니다.



그렇게 원래는 1개의 메소드였던 코드를 2개의 메소드로 나누었고, 이제 pytrader를 작동시킬 준비를 모두 마치기는 했습니다. 남은건 이게 제대로 동작을 하는 지 테스트에 들어가는 것 입니다.



그리고 분명히 나타내는 것이지만, 여기서 사용이 되는 main.exe는 pytrader가 있는 폴더가 아니라, newTestAI라고 하는 다른 프로젝트의 경로에 있는 것을 알려드립니다.



일단 이전에는 없었던 databasePath.txt와 같은 텍스트 파일이 생성이 되어서, RLTrader에 정보를 넘겨주기 위한 준비가 다 끝난 것을 볼 수 있었습니다.




일단 메서드가 바뀌어서 그런 효과인지는 몰라도, 이번에는 제대로 텍스트문서 파일에 내용이 기록으로 남아 있는 것을 볼 수 있기는 있었습니다.



다음으로는 위 스크린샷과 같이 제대로 기존에 없던 데이터 베이스가 생성이 된 것을 볼 수 있었는데, 이것으로 제대로 키움증권 서버에서 데이터를 가지고 온다는 것을 알 수 있었습니다.



그런데 어떻게 된 것인지, 일단 buy_list.txt에서는 아무런 내용도 없는 것을 알 수 있습니다. 물론 거래가 없어서 이럴 수도 있지만, 이게 정상적인 것은 아니라는 생각이 들었습니다.



그리고 이전에 만들어 두었는 main.exe에다가 pytrader에 있던 텍스트 문서를 가지고 오도록 합니다. 왜 이런 것을 하느냐 하면, 진짜로 아무런 매수나 매도 명령이 없었던 것이 맞는지 알아보기 위해서 입니다.




그래서 일단 main.exe를 작동시켜 보도록 합니다.



다음으로는 한번 제대로 RLTrader를 작동시켜 보았습니다만, 여기서는 매수만 14번이나 나오는 것을 볼 수 있었습니다. 이걸로 봐서 제대로 작동을 하는 것이 아니라는 것을 알 수 있었습니다.



실제로 제대로 작동한 경우에는 buy_list.txt에서는 제대로 위 스크린샷처럼 매수를 하라는 명령이 나와 있는 것을 볼 수 있었습니다.



왜 이런 일이 벌어졌느냐 했더니, RLTrader를 작동시키라는 명령어가 없어서 생긴 문제였습니다. 그래서 부랴부랴 이걸 추가해 놓고나서, 한번 작업에 들어가 보도록 합니다.



그런데 RLTrader가 중간에 작동하자 마자 이번에도 역시나 같은 에러가 나오는 것을 볼 수 있었습니다. 바로 데이터 베이스에서 테이블이 없다고 나오는데, 문제는 제대로 stockCode가 안 뜨는 것을 볼 수 있었습니다. 즉, 무슨일이 일어난 것인지는 모르겠습니다만, 문제는 주식의 종목코드마져 제대로 전달이 안되는 것을 알 수 있었습니다.

반응형