본문 바로가기

코딩199

kiwoom.py에 있었던 변경사항 -1- 안녕하세요? 이 블로그에서 최근에 댓글 주시는 분도 많고, 따라 하시려는 분도 많은데, 아마 많은 분들이 여러움이 많으시리라 생각이 됩니다. 저야 최근까지 그 이유를 몰랐는데, 일단 kiwoom.py를 기존에 [파이썬으로 배우는 알고리즘 트레이딩]이라는 책에서 나오는 kiwoom.py에 비해서 엄청나게 많은 부분이 달라졌다는 것을 알 수 있었습니다. 그래서 이 바뀐 부분에 대해서 한번 이야기를 해야 하는데, 하고 보니 너무나 많은 부분이 달라져서 한번의 포스팅으로는 다 보여드릴 수가 없어서 몇 번의 포스팅으로 나누어야 했습니다. 일단 기본적은 kiwoom.py의 코드는 여기서 가지고 왔습니다. 먼저 시작부터 엄청나게 달라진 부분이 있습니다. 일단 datetime이라는 것을 추가했고, QThread라는 것.. 2020. 2. 24.
초기 테스트에 멀티 스레드를 적용해 보기 -1- 안녕하세요? 지난번에 120개 분봉을 이용해서 평균과 표준편차를 구해서 초기 테스트를 하였고, 그 결과를 분석해 보았습니다만, 문제는 끔찍하게 속도가 많이 느렸습니다. 그래서 하는 수 없이 이걸 멀티 스레드를 이용해서 한번에 여러개의 조건을 동시에 시도해 볼 수 없을까 해서 한번 시도해 보기로 했습니다. 먼저 하려고 하는 작업은 exe파일로 빌드가 가능한지 다시한번 더 작업을 해 보았습니다. 먼저 해야 하는 일은 새로운 이름으로 새로운 프로젝트를 생성하는 작업을 먼저 시도하기로 했습니다. 이 작업을 하기 위해서 새로 이름을 붙여야 했습니다. 그리고 나서 필요한 py파일과 ui파일들을 새로 생성된 프로젝트의 폴더에 복사해서 가지고 오도록 합니다. 일단 일련의 파일들을 위 스크린샷에서 보이는 대로 입니다. .. 2020. 2. 21.
QThread와 main 스레드간의 통신 연결-6- 안녕하세요? 이번 포스팅에서는 드디어 프로그레스 바의 세세한 부분까지 지정하기 위해서 이제 작업에 들어가 보고자 합니다. 일단 이 작업을 위해서는 역시나 만만치 않은 작업이 남아 있지만, 일단 갈 때까지 가도록 해 보겠습니다. 일단 이 작업을 추가로 이어가기 위해서는 pyqtSignal이 더 필요했습니다. 이 작업을 하기 위한 밑 발판을 깔아 두도록 합니다. 그리고 나서 이 작업을 하기 위한 sleep()함수와 마찬가지로 있는 신호를 송출하기 위한 메서드를 만들어 보도록 ㅎ바니다. 그리고 나서 다음으로 해야 할일은 위 스크린샷에서 볼 수 있는 것처럼 일단 프로그레스 바에 작업을 하기 위해서 메서드를 추가로 만들어 줍니다. 그리고 나서 다음으로 해야 할일은 위 스크린샷에서 볼 수 있는 것처럼 일단 뭔래라면.. 2020. 2. 7.
QThread와 main 스레드간의 통신 연결-5- 안녕하세요? 지난번 포스팅에서 제 의도와는 상당히 벗어난 결과가 나와서 통신은 어떻게 되기는 되는데, 정작 QThread에서 메인 스레드의 GUI 구성요소를 제대로 제어하지 못하는 현상이 발생했습니다. 그래서 이번에는 이런 상황을 타개하고자 어떻게 여러가지 시행착오를 거쳤고, 그 내용을 올리고자 합니다. 먼저 이 작업을 위해서 QThread에서 Stop이라는 메서드를 따로 만들도록 합니다. 왜 이렇게 하느냐 하면, 그냥은 정지하라는 메서드가 없기 때문에, 일단 위 스크린샷처럼 self.terminate()란느 명령으로 강제로 종료를 시킬 수 밖에 없습니다. 그리고 나서 다음으로 해야 할일은 위 스크린샷에서 볼 수 있는 것과 같이, 일단 wait()이라는 명령어를 써서 QThread가 종료가 될 때까지 일.. 2020. 2. 6.