본문 바로가기

코딩221

초기 테스터(initial tester)의 제작-11- 안녕하세요? 지난번 포스팅까지는 어떻게 프로그레스 바를 완성하는 것 까지 포스팅을 하였습니다. 하지만 이렇게 유저 인터페이스만 꾸미고 있을 것이 아니라, 이 일련의 포스팅의 이름처럼 일단 initial test를 진행하기 위한 프로그램을 만드는 것이 목적이라면 목적입니다. 그래서 이 작업을 하기 위해서 일단 매수/매도 룰을 계산하는 프로그램을 만들어야 했는데, 이 과정에서 생각지 못한 많은 오류가 발생해서 이를 수정하는데 상당한 시간이 걸렸습니다. 지금부터 일련의 이 작업이 이루어 지는 것에 대해서 한번 포스팅을 해 볼까 합니다. 먼저 001번 룰이라는 메서드를 만드는데, 나중에 따로 차트 데이터를 넘겨 받으려고 하면 상당히 골치가 아프기 때문에, 미리미리 메서드의 시작 부분에서 변수를 넘겨 받을 수 있.. 2020. 1. 15.
초기 테스터(initial tester)의 제작-5- 안녕하세요? 이번 포스팅에서는 어떻게 해서 데이터를 한줄한줄 차례차례 불러와서 작업을 하는 것을 다루어 보고자 합니다. 일단 이 작업을 하기 위해서는 제가 RLTrader를 많이 참고한 탓인지 여러개의 py파일을 만들게 되었습니다. 그래도 이 작업을 하는 와중에 어떻게 해답이 보일듯 말듯 합니다. 일단 이 작업을 하기 위해서 이번에는 차트 데이터를 다룰 py파일을 생성해 주도록 합니다. 원래는 이렇게 파일을 일일히 만들지 않아도 될 듯 합니다만, 너무 많은 변형을 주는 것도 그다지 좋아 보이지는 않아 보입니다. 일단 이 항목은 원래 RLTrader의 environment.py를 그대로 가지고 왔는데, 여기서 클래스 명과 같은 것만 바꾸는 변화를 일단 주었습니다. 그리고 나서 다시 메인이 되는 곳으로 돌아.. 2020. 1. 11.
병렬처리 방법을 이용한 새 방법의 시도 part3 안녕하세요? 지난번 포스팅에서 어떻게 문제가 생겼습니다. 그래서 이 문제를 해결하기 위해서 좌우충돌, 이래저래 시행착오를 하는 과정을 이번 포스팅에서 올려 보고자 합니다. 먼저 kiwoom.py를 하나 공유해서 이런 문제가 생긴 것이 아닌가 해서, 한번 위 스크린샷처럼 새로운 kiwoom.py파일들의 복사본을 만들어 보았습니다. 이렇게 해서, 모두 총 6개의 kiwoom.py파일을 만들어 놓는데 성공하기는 했습니다. 이제 남은 것은 이 각각의 py파일들을 각자 가지고 가도록 만드는 것 입니다. 위 스크린샷처럼, 먼저 import를 다루는 항목에서 기존의 kiwoom대신에 다른 py파일의 이름을 만들어서 두도록 합니다. 이렇게 하는 것으로 다음 작업을 하도록 합니다. 그런데 이러한 시도에도 불구하고 여전히.. 2019. 6. 17.
병렬처리 방법을 이용한 새방법의 시도 part2 안녕하세요? 지난번 포스팅에서 종목코드와 데이터 베이스라는 편의기능을 생각하기는 했습니다만, 문제가 생기기는 생겼습니다. 바로 그게 뭐냐 하면, 진짜로 6개 종목을 한번에 돌리는 것이 가능한가 하는 것 입니다. 실제로 4개 종목 이상 돌리지 못하면 아무런 의미가 없기는 없습니다. 먼저 이 실험을 위해서 여러개의 복사된 py파일을 만들어 주어야 하는 필요성이 있어 보입니다. 이렇게 하는 것으로 총 6개의 파일을 만들어 보았습니다. 다음으로는 일단 나중에 하기로 하고, 지금은 지금대로 해당하는 communication.txt의 이름을 바꾸어 주도록 합니다. 이렇게 하는 것으로 일단 다른 데이터 베이스와 종목코드가 우선 들어가도록 합니다. 그리고 좀 구닥다리 같은 방법이기는 하지만, 일단 txt파일에서 일일히.. 2019. 6. 17.