이전 강의에서 조건 검색식 목록을 가져왔으며, 이번 강의에서는 그 목록에 대응하는 종목을 받아오기 위한 기초 세팅을 하겠습니다. 한 번에 다 설명드리면 저도 힘들기 때문에 끊어서 설명드리겠습니다.
혹시 이해가 되지 않으시는 분들은 이전 강의 또는 기초반 강의를 완강하시기 바랍니다. 중급반 강의인만큼 자세한 설명은 생략합니다.
1. GUI 생성 및 Main 스크립트에 조건 검색식 종목 받아오기 코딩
아래 그림과 같이 Push Button을 만들어 objectName은 search_kiwoom_stock이라 이름을 명합니다. 그리고 보여주는 이름은 종목 수동 검색으로 하였으며, 여러분들이 원하시는 이름으로 입력하시면 됩니다.
아래 그림과 같이 Main 스크립트인 Kiwoom_meme.py에 위에서 생성한 GUI가 클릭되면 self.search_stock 함수가 실행되게 코딩합니다.
search_stock함수는 아래와 같이 구성되어 있습니다.
-search_stock이 클릭되면 setText를 통해 완료라는 문구가 pushbutton에 뜨게 하고, setStyleSheet를 통해 색은 빨간색으로 설정합니다.
- 그리고 Thread52가 동작하게 합니다. Thread52는 여러분들이 선택한 조건 검색식 종목을 키움 서버에 요청하고 받아와 GUI에 전시하는 역할을 수행할 것입니다.
2. 조건검색식 종목 받아오는 Qthread_52 스크립트 기초 세팅
조건검색식 종목을 받아오는 Qthread_52 스크립트의 기초 세팅을 아래와 같이 4단계에 걸쳐 설명드리겠습니다.
(1) 코딩을 위해 키움 및 파이썬에서 제공하는 클래스 또는 함수를 받아옵니다.
(2) 코딩할 객체 및 부모 클래스를 초기화합니다. 그리고 self.parent에 parent를 인스턴스화 함으로써, 앞으로 Qthread_52에서 부모 GUI 접속 시 self.parent를 사용합니다. 또한, 키움 서버로 명령 전송 및 다양한 공유 데이터에 접속하기 위해 Kiwoom() 클래스를 가지고 옵니다(Kiwoom 클래스는 싱글턴으로 우리가 예 전에 만든 함수입니다.). 키움 서버로 특정 명령 전송 시 완료될 때까지 다음 코드가 실행되지 않도록 QEventLoop()도 설정해 줍니다.
(3) 앞으로 키움조건 검색식으로 검색된 종목을 받아올 방을 OnReceiveTrCondition을 이용하여 구성합니다. self.OnReceiveTrConditon 함수에 받아오게 됩니다.
(4) self.request_stock()을 이용해 우리가 이전 강의에서 받아온 조건검색식 목록에 대응하는 종목을 키움 서버로 요청합니다. 요청된 결과는 self.OnReceiveTrConditon으로 받겠죠?. 그리고 받아온 종목들을 우리 눈으로 볼 수 있게 self.searchItem2() 함수를 이용해 표에다 붙입니다.
다음 강의에서 가장 중요한 self.request_stock()과 self.searchItem2() 함수 알아보도록 하겠습니다. 고생하셨습니다.
'주식 자동매매 강의 > 중급반(시황 및 차트 구현)' 카테고리의 다른 글
[키움 조건검색식 주식자동매매(9)] 특정 시간마다 원하는 함수(종목검색식 종목 받아오기) 실행 코딩 (7) | 2022.08.08 |
---|---|
[키움 조건검색식 주식자동매매(7)] 조건검색식 종목 받아온 후 QTableWidget에 전시하기 (6) | 2022.08.06 |
[키움 조건검색식 자동매매 (5)] 키움 조건검색식 목록 요청 및 가져오기 (10) | 2022.08.01 |
[키움 조건검색식 자동매매 (4)] 키움 조건검색식 프로그램 구성도 (2) | 2022.08.01 |
[키움 조건검색식 자동매매 (3)] 조검검색식 값을 가져오기 위한 기초 세팅 (8) | 2022.07.29 |