저번 게시글에서는 예수금 정보를 가져오는 것 까지 진행하였다.
이번 게시글에서는 계좌평가잔고내역을 가져오는 과정을 진행한다.
책에서는 모의투자 하면서 산 종목들을 불러오지만 난 장이 끝난 후에 책을 펴서 미처 주식을 사지 못했다. 그래서 예수금만 들어있는 상태로 진행하도록 한다.
먼저 이번에 사용할 TR은 opw00018 계좌평가잔고내역요청 이다.
트랜잭션 요청의 전문은 예수금 요청과 모드 같지만 SetInputValue에 들어가는 데이터는 각각 다르다.
먼저 계좌평가잔고내역을 요청하는 코드를 작성한다.
요청하는 전문은 저번 게시글과 동일하다. 결괏값을 받는 슬롯 부분을 추가하자.
빨간 기호 안쪽이 새로 작성한 코드다.
코드를 작성했지만 실행해도 결괏값이 반환되지 않았다. 이는 이벤트루프 때문으로, 이벤트루프를 추가하는 코드도 작성해준다.
마지막으로 슬롯 영역에서 이벤트루프를 종료시킨다.
책에서는 이렇게 하면 잘 나오는데 나는 안 나와서 한참을 헤맸다. 저자 깃헙 들어가서 코드를 확인해도 잘 모르겠고 대체 뭐가 문제일까 찾아보면서 책과 깃헙의 소스가 다른 부분을 몇 가지 수정했지만 그래도 아래와 같이 예수금 정보까지밖에 안 나왔다. 밑에 8 9가 출력된 건 위에 소스에서도 볼 수 있듯이 저 부분이 실행이 안 되는 것 같아 어디까지 실행이 되는지 확인하기 위해 넣어본 출력이다. 위 소스에서는 3, 4를 넣었지만 출력되지 않았다.
저자의 깃헙을 보면서 몇 가지 수정한 부분이 있는데, 먼저 init 함수에서 이벤트루프를 선언할 때 책에서는 =None 으로 선언하였지만, 깃헙은 선언하면서 QEventLoop() 로 선언하였기 때문에 우선 수정했다.
선언을 None이 아닌 QEventLoop로 하였기 때문에 detail_account_mystock() 함수에서 다시 QEventLoop로 선언한 부분을 지웠다. (사진 아래 설명 중 빨간 박스 첫 줄입니다.)
아무튼 이것저것 코드를 수정하다 보니
어떻게 성공하긴 했다.
trdata_slot() 함수에서 sRQName 조건문 들에서 self.stop_screen_cancel(self.screen_my_info) 코드에 주석을 달아줬다.
self.stop_screen_cancel(self.screen_my_info) 코드를 실행하지 않고 넘어가니 계좌평가잔고내역까지 볼 수 있었고, 혹시나 싶어 깃헙을 다시 봤는데 이 코드들은 그대로 남아있었다. 왜 나는 이 코드들이 없어야 정상적으로 작동이 되는지는 잘 모르겠다. 우선 수정한 부분이다.
두 번째 줄은 깃헙을 보고 수정하였다. 아무래도 이벤트루프가 생겼으니 활용하는 걸까 싶다.
그리고 이 첫 줄을 주석처리 한 이유는, 책에서는 sRQName이 "계좌평가잔고내역요청" 일 때 조건문의 마지막에 저 코드를 넣어주었는데, 깃헙에서는 그 부분이 들어가 있지 않았다. sRQName이 "예수금상세현황요청" 일 때만 들어가 있고, "계좌평가잔고내역요청"에서는 들어있지 않아 혹시나 싶어 지워봤더니 잘 나왔다. 종종 이런 오류들이 생기는 것이 살짝 힘들지만 그래도 이런 에러들을 찾아보면서 공부가 되는 것 아닐까 싶다.
다음 내용은 '멀티데이터로 보유 종목 정보 처리하기' 부분이다. 하지만 이 부분은 매수한 종목이 있어야 만 진행할 수 있어 보여서 지금 당장은 진행이 불가능할 것 같다.
오늘은 여기까지.
이 카테고리 게시글들은 아래 책을 따라하는 후기로, 자세한 내용은 아래 책과 저자의 유튜브를 참고하시고, 예제소스는 저자의 깃헙에서 확인하실 수 있습니다.
책 정보 : https://book.naver.com/bookdb/book_detail.nhn?bid=16330702
손가락 하나 까딱하지 않는 주식 거래 시스템 구축(위키북스 프로그래밍 & 프랙티스 시리즈 23)
매일 주식만 바라보던 일상에서 해방되어 가족 또는 친구들과 행복한 시간을 보내길 바랍니다!24시간 자동으로 주식을 분석하고 거래하는 시스템을 구축하는 방법을 배우고 나머지 시간은 더 ��
book.naver.com
저자 유튜브 : www.youtube.com/watch?v=1lHzaihEb48&list=PLDtzZPtOGenaSknTbsb6x6L39V0VPz_rS&index=2&t=0s
( 위 유튜브는 이 책을 설명해주는 재생목록의 첫 번째 영상입니다.)
저자 Github : https://github.com/programgarden
programgarden - Overview
책 : 24시간 운영 가능한 주식투자 시스템 구축하기[파이썬으로 만드는 자동 트레이딩 시스템] 유튜브: 프로그램 동산 학습코드 자료입니다. - programgarden
github.com
예제 소스는 저자의 깃허브에서 확인하실 수 있습니다.
위 3개의 링크는 매 게시글마다 올라갈 예정입니다.
'파이썬으로 주식 거래 시스템 구축' 카테고리의 다른 글
CHAPTER 4. 계좌 정보 가져오기 다섯 번째 이야기 (0) | 2020.07.14 |
---|---|
CHAPTER 4. 계좌 정보 가져오기 네 번째 이야기 (0) | 2020.07.13 |
CHAPTER 4. 계좌 정보 가져오기 두 번째 이야기 (3) | 2020.07.06 |
CHAPTER 4. 계좌 정보 가져오기 첫 번째 이야기 (4) | 2020.07.01 |
CHAPTER 3. 키움 API 첫 번째 이야기 (0) | 2020.06.30 |