본문 바로가기

프로그래밍377

가장 힘들어 보이는 장애물을 넘기 위한 시도-13- 안녕하세요? 지난번 포스팅에서 거래해야 하는 주식의 수량까지 가지고 오는 데도 성공한 것을 보여주고 있었습니다. 그래서 이제는 제대로 데이터를 가지고 와서, RLTrader가 보내온 신호를 바탕으로 제대로 거래에 들어가기 위한 과정을 밟아야만 합니다. 일단 RLTrader에서 먼저 위 스크린샷에 보이는 것처럼 결과를 한줄에 표시할 수 있도록 만들어 줍니다. 그리고 나서 중간에 자르기를 위해서 &&&를 준비해 주도록 합니다. 그리고 실제로 부모 프로세스인 pytrader4를 실행시킨 결과, 위 스크린샷과 마찬가지로 제대로 나오는 것을 확인할 수 있기는 있었습니다. 그리고 나서 기존에는 RLTrader에서 action_list.txt에서 행동할 사항을 적어 주어야 하는데, 그걸 pytrader가 하도록 만들.. 2019. 4. 20.
가장 힘들어 보이는 장애물을 넘기 위한 시도-12- 안녕하세요? 지난번 포스팅에서 무언가 잘못 되어서 py파일간, 클래스간 변수를 옮겨서 전달하는 것이 실패하기는 했습니다. 그래서 자료를 검색해 봐서, 한번 이번 포스팅에서 그 오류를 바로 잡고, 단순히 agent.py에서 매수/매도/관망 만이 아니라 얼마나 많은 수식을 거래할 지에 대해서 결정한 결과도 옮기도록 해 보고자 합니다. 먼저 자료를 검색해 보니, 이렇게 클래스 안에서 변수를 선언하기 위해서는 클래스명.변수명 이러는 식으로 변수를 스크립트 파일이 시작하자 마자 나오는 메서드에서 설정을 해 주도록 해 봅니다. 그리고 나서 이 변수를 기존에 self라고 붙어 있던 자리에서 바꾸어서 지정을 해 보도록 합니다. 이렇게 앞에 클래스명을 붙이는 것으로 그 클래스에서 대표적인 변수가라고 해야할까요? 일단 대.. 2019. 4. 20.
가장 힘들어 보이는 장애물을 넘기 위한 시도-11- 안녕하세요? 지난번 포스팅에서 어떻게 main.py라고 RLTrader와 연동이 되는 작업을 하기는 했는데, 문제는 제대로 결과가 출력되지 않았는 것을 볼 수 있었습니다. 그래서 이 문제를 해결하기 위해서 동분서주 하는 것이 이번 포스팅의 주요 내용이 될 것입니다. 그래서 먼저 agent.py에 가서, 위 스크린샷에서 보이는 것처럼 def __init__(self): 라는 초기화라고 해야 할까요? 처음 스크립트가 시작되지 마자 실행되는 파일에서 먼저 self.가 붙은 광역 변수가 실행되도록 만들어 줍니다. 그리고 나서 이 self가 붙은 global(광역) 변수를 위 스크린샷과 같이 각각의 행동이 결정되는 곳에다가 배치해서 그 결과를 저장하도록 만들어 줍니다. 그런데 이렇게 해서는 클래스 안에서는 자유롭.. 2019. 4. 19.
가장 힘들어 보이는 장애물을 넘기 위한 시도-6- 안녕하세요? 이래저래 답이 안 보이는 상황이기는 상황입니다만, 그래도 가지가지 시도를 하면서 어떻게 무언가 해답이 오지 않을까 해서 가지가지 시도를 하고 있으며, 이번 포스팅도 이렇게 답이 안 보이는 상황에서 어떻게 답을 찾아내기 위한 여정을 한번 포스팅 하고자 합니다. 먼저 위 스크린샷에서 보이는 것처럼, 먼저 inputChannelMode라는 것을 작동시키고자 하고, 다음으로는 다 쓸때까지 기다리도록 코드를 짜도록 합니다. 그렇게 했음에도 불구하고 전혀 나아지는 조짐이 없어지는 것을 확인할 수 있기는 있었습니다. 조금의 변화가 나오는 것 같기는 하지만, 이게 무슨 의미가 있는지는 아직 모르겠습니다. 그래서 다음으로는 위 스크린샷에서 보이는 것처럼 waitReadyRead()라는 함수에 숫자를 입력한 .. 2019. 4. 16.