더북(TheBook)

그럼 이제 _on_receive_real_data를 슬롯으로 등록하는 코드를 작성하겠습니다. 앞서 했던 방식과 마찬가지로 _set_signal_slots를 다음과 같이 작성합니다.

Kiwoom.py

    def _set_signal_slots(self):
        self.OnEventConnect.connect(self._login_slot)

        self.OnReceiveTrData.connect(self._on_receive_tr_data)

        self.OnReceiveChejanData.connect(self._on_chejan_slot)

        self.OnReceiveRealData.connect(self._on_receive_real_data) ------ 실시간 체결 데이터를 _on_receive_real_data로 받도록 설정

이와 같이 _set_signal_slots의 마지막 줄에 self.OnReceiveRealData.connect(self._on_receive_real_data)를 추가하여 실시간 체결 정보를 _on_receive_real_data로 응답받을 수 있도록 했습니다.

그럼 이제 실시간 데이터를 잘 받아 오는지 확인하는 main.py 코드를 살펴보겠습니다.

main.py

from api.Kiwoom import *
import sys

app = QApplication(sys.argv)
kiwoom = Kiwoom()

# kiwoom.set_real_reg("1000", "", get_fid("장운영구분"), "0")
fids = get_fid("체결시간")
codes = '005930;007700;000660;'
kiwoom.set_real_reg("1000", codes, fids, "0")

app.exec_()
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.