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

가장 힘들어 보이는 장애물을 넘기 위한 시도-13-

by 인터넷떠돌이 2019. 4. 20.
반응형

안녕하세요?

 

지난번 포스팅에서 거래해야 하는 주식의 수량까지 가지고 오는 데도 성공한 것을 보여주고 있었습니다. 그래서 이제는 제대로 데이터를 가지고 와서, RLTrader가 보내온 신호를 바탕으로 제대로 거래에 들어가기 위한 과정을 밟아야만 합니다. 

 

일단 RLTrader에서 먼저 위 스크린샷에 보이는 것처럼 결과를 한줄에 표시할 수 있도록 만들어 줍니다. 그리고 나서 중간에 자르기를 위해서 &&&를 준비해 주도록 합니다.

 

그리고 실제로 부모 프로세스인 pytrader4를 실행시킨 결과, 위 스크린샷과 마찬가지로 제대로 나오는 것을 확인할 수 있기는 있었습니다.

 

그리고 나서 기존에는 RLTrader에서 action_list.txt에서 행동할 사항을 적어 주어야 하는데, 그걸 pytrader가 하도록 만들어 주도록 합니다.

 

그리고 나서 이전에는 주석 처리가 되어 있었던 trade_stocks라는 메서드를 주석처리에서 해제하도록 해 봅니다. 이렇게 해서 이제 다음 단계로 들어가 봅니다.

 

 

그리고 나서 다음으로는 trader_stocks라는 메서드에서는 새로 바뀐 경로의 txt파일을 열 수 있도록 만들어 주도록 합니다. 

 

일단 실행을 해 보기는 봤는데, action_list.txt가 생성은 되기는 되었습니다. 문제는 여기에 아무런 데이터도 적히지 않는 초유의 사태가 벌어지는 것을 확인할 수 있었습니다.

 

그래서 다음으로는 state라는 것으 str이라고 문자열로 지정이 되지 않아서 벌어진 것이 아닌가 하는 생각이 들었습니다. 이번에는 문자열로 일일히 지정해 주도록 합니다.

 

그런데 문제는 위 스크린샷에 보이는 것처럼 현재 시간이 찍혀야 해서 나와야 하는 부분이 있는데, 이 부분에서 전에 없던 에러가 발생하는 것을 볼 수 있었습니다.

 

 

그래서 스크립트 파일의 초반부에 위 스크린샷처럼 datetime이라는 것을 만들어 주도록 만들어 봅니다. 그리고 나서 어디서 에러가 나오는지 확인해 보도록 합니다.

 

다시 실행을 시켰더니, 무슨 산넘어 산이라고 이번에는 새로운 문제점이 발생하는 것을 확인할 수 있었습니다. 이 에러가 발생한 이유가 무엇인고 하니.....

 

위 스크린샷에서 보이는 것처럼 원래는 한줄로 이어져야 하는 txt파일의 출력이 왜인지 모르게 두줄로 나오는 것을 확인할 수 있었습니다.

 

일단 여기서 에러가 생긴 것이 아닌가 하는 생각이 들어서, 먼저 stock_unit을 문자열로 바꾸어 주도록 해 봅니다. 이렇게 하면 2줄로 바뀌는 에러가 수정이 되리라 생각을 했습니다.

 

그런데 문제는 여전히 pytrader4를 실행시켰을 경우에는 계속해서 발생하는 것을 확인할 수 있었습니다. 이래서야 상황이 아나질 리가 없습니다.

 

어떻게 하다보니 위 스크린샷처럼 이제서야 제대로 한줄로 표기가 되는 것을 확인할 수 있었습니다. 하도 여러가지 조작을 하다보니 어디가 문제였는지 확실하지 않지만.....

 

일단 위 스크린샷에서 보실 수 있는 것처럼, \n을 없애보도록 했습니다. 이렇게 하는 것으로 이제는 작업이 제대로 일어날 수 있으리라 생각이 들었습니다.

 

그런데 이번에는 인덱스 에러라는 것이 발생하는 것을 확인할 수 있었습니다. 산을 2번 넘었더니, 이번에는 3번째 산이 나오는 것을 확인할 수 있었습니다. 아무튼 이 에러도 어떻게 처리가 되기는 되었으며, 그 내용을 다음 포스팅에서 이어서 올릴 것을 약속드립니다.

반응형