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

이제서야 들어가본 모의투자와 발생한 문제-5-

by 인터넷떠돌이 2019. 3. 30.
반응형

안녕하세요?

 

지난번 포스팅에서 어떻게 해서 산넘어 산이라고 무슨 세번째 오류가 발생한 것을 확인할 수 있었습니다. 그래도 한번 모의투자에 들어가 보기 위해서 이 에러를 해결하기는 해결해야 했기에, 한번 이번 포스팅에서 이걸 어떻게 해결할 수 있는지에 대해서 들어가 보고자 합니다.

 

먼저 위 스크린샷을 보시면, 기존의 수익모델을 만들기 위해서 사용하는 yellowoperation 프로젝트의 main.py입니다. 여기서는 위 스크린샤을 보시면 17개의 입력 모델이 들어가기 위해서는 위 스크린샷처럼 training_data에서 특정한 항목을 제한해야 할 필요가 있습니다.

 

위 스크린샷에서 나와 있는 것처럼, 일단 newTestAI에서 이 구문을 집어 넣도록 합니다. 이렇게 해서 이게 해결이 되는 것인지는 모르겠습니다만, 일단 이렇게라도 해 봅니다.

 

그리고 나서 main.spec파일로 가서, 위 스크린샷에 보이는 것처럼 한번 만들어 질 exe파일의 이름을 바꾸어 보도록 합니다.

 

일단 여기서는 pyinstaller --noconfirm --log-level=WARN --nowindow --onefile main.spec을 아나콘다 프롬프트에서 입력해서 exe파일을 만들어 보도록 합니다.

 

 

그리고 나서 잠시간의 시간이 흐르고 나서, 제대로 된 RLTrader가 나오는 것을 확인할 수 있기는 있었습니다. 이제 이것이 제대로 작동을 하는 지를 확인하러 갈 시간입니다.

 

일단 위 스크린샷에서 보이는 것처럼 응답없음이라고 해서, 그 특유의 subprocess가 작동을 하게 되면 gui가 마비가 되는 현상을 볼 수 있었습니다.

 

이제서야 pytrader2를 실행시켰을 때, 제대로 된 반응이 나오는 것을 확인할 수 있기는 있었습니다. 그래서 제대로 finished라는 메세지가 뜨는 것을 확인할 수 있었습니다.

 

그리고 나서 action_list.txt라는 RLTRader가 제대로 성공했으면, 제대로 된 결과를 내주는 파일을 보았더니, 정말로 매도까지 제대로 된 액션을 취하는 것까지 확인을 할 수 있었습니다.

 

그래서 이번에는 pytrader2의 부모 프로세스를 실행시켜서 제대로 된 종목코드를 비롯한 데이터를 입력해서 작동시켜 보도록 합니다.

 

그리고 실전 모의투자에 본격적으로 들어가 보고자 했더니, 이번에는 위 스크린샷에 보이는 것처럼 부모 프로세스에 있는 while문에 15번 반복하면 자동으로 while문을 빠져나가는 구문이 있어서 생기는 오류가 있었기 때문에, 이걸 주석처리 해 주도록 합니다.

 

일단 주식 인공지능을 돌려보니까, 이번에는 위 스크린샷처럼 핸들값이 없다는 에러 메세지가 뜨는 것을 볼 수 있기는 있습니다만, 그래도 프로그램이 제대로 돌아가는 것을 볼 수 있기는 있었습니다.

 

그리고 마지막으로 상당히 치명적인 것을 하나 볼 수 있었습니다. RLTrader가 모두 관망만을 한 것도 아닌데, 문제는 제대로 된 실제로 주문을 하지 않았던 것을 볼 수 있었습니다. 이게 어떻게 된 일인지는 모르겠습니다만, 산넘어서 또 다른 산이 나온 것 뿐이기도 합니다. 아마 주말을 지나서 다음주 월요일이 되기 전에 이 에러를 어떻게 처리해야 겠다는 생각이 듭니다.

반응형