Note ≡
이 결과는 평일 장 중에만 확인할 수 있습니다.
체결 정보가 없어 종목 코드만 출력될 때도 있지만 대부분 거래량이 많은 종목이라 체결 정보들이 잘 출력되는 것을 확인할 수 있습니다. 여기서 알 수 있는 사실은 RSIStrategy.py 파일의 run 함수가 동작하는 동시에 TR 및 실시간 응답을 받는 데 사용한 Kiwoom 클래스의 슬롯들 역시 잘 동작하고 있다는 것입니다.
이제 미리 구상했던 프로세스대로 로직을 하나씩 채워 보겠습니다.
RSIStrategy.py
(...)
def run(self):
while self.is_init_success:
try:
if not check_transaction_open(): ------ 장 중인지 확인
print("장시간이 아니므로 5분간 대기합니다.")
time.sleep(5 * 60)
continue
for idx, code in enumerate(self.universe.keys()):
print('[{}/{}_{}]'.format(idx+1, len(self.universe), self.universe[code]
['code_name']))
time.sleep(0.5)
if code in self.kiwoom.order.keys(): ------ 접수한 주문이 있는지 확인
print('접수 주문', self.kiwoom.order[code]) ------ 주문이 있음
if self.kiwoom.order[code]['미체결수량'] > 0: ------ ‘미체결수량’을 확인하여 미체결 종목인지 확인
pass
except Exception as e:
print(traceback.format_exc())