This commit is contained in:
dsyoon
2023-02-09 10:12:32 +09:00
parent 63e1590115
commit 6cdb43571b
3 changed files with 33 additions and 49 deletions

View File

@@ -234,57 +234,41 @@ class HTS:
ord('P'): '플러스론',
ord('I'): '자기융자',
}
while True:
objRq.BlockRequest()
# 통신 및 통신 에러 처리
rqStatus = objRq.GetDibStatus()
rqRet = objRq.GetDibMsg1()
#print("통신상태", rqStatus, rqRet)
if rqStatus != 0:
return False
cnt = objRq.GetHeaderValue(7)
if cnt > 3:
return jangoDic
objRq.BlockRequest()
# 통신 및 통신 에러 처리
rqStatus = objRq.GetDibStatus()
rqRet = objRq.GetDibMsg1()
#print("통신상태", rqStatus, rqRet)
if rqStatus != 0:
return False
for i in range(cnt):
item = {}
code = objRq.GetDataValue(12, i) # 종목코드
item['종목코드'] = code
item['종목명'] = objRq.GetDataValue(0, i) # 종목명
item['대출일'] = objRq.GetDataValue(2, i) # 대출일
item['잔고수량'] = objRq.GetDataValue(7, i) # 체결잔고수량
item['매도가능'] = objRq.GetDataValue(15, i)
item['장부가'] = objRq.GetDataValue(17, i) # 체결장부단가
item['평가금액'] = objRq.GetDataValue(9, i) # 평가금액(천원미만은 절사 됨)
item['평가손익'] = objRq.GetDataValue(11, i) # 평가손익(천원미만은 절사 됨)
# 매입금액 = 장부가 * 잔고수량
item['매입금액'] = item['장부가'] * item['잔고수량']
item['현재가'] = 0
item['대비'] = 0
item['거래량'] = 0
cnt = objRq.GetHeaderValue(7)
if cnt < 0:
return jangoDic
# 잔고 추가
# key = (code, item['현금신용'],item['대출일'] )
key = code
jangoDic[key] = item
for i in range(cnt):
item = {}
code = objRq.GetDataValue(12, i) # 종목코드
item['종목코드'] = code
item['종목명'] = objRq.GetDataValue(0, i) # 종목명
item['대출일'] = objRq.GetDataValue(2, i) # 대출일
item['잔고수량'] = objRq.GetDataValue(7, i) # 체결잔고수량
item['매도가능'] = objRq.GetDataValue(15, i)
item['장부가'] = objRq.GetDataValue(17, i) # 체결장부단가
item['평가금액'] = objRq.GetDataValue(9, i) # 평가금액(천원미만은 절사 됨)
item['평가손익'] = objRq.GetDataValue(11, i) # 평가손익(천원미만은 절사 됨)
# 매입금액 = 장부가 * 잔고수량
item['매입금액'] = item['장부가'] * item['잔고수량']
item['현재가'] = 0
item['대비'] = 0
item['거래량'] = 0
if len(jangoDic) >= 3: # 최대 3 종목만,
break
# 잔고 추가
# key = (code, item['현금신용'],item['대출일'] )
key = code
jangoDic[key] = item
if len(jangoDic) >= 3:
break
if (objRq.Continue == False):
break
check = False
for item in jangoDic:
if item:
check = True
break
if not check:
return None
return jangoDic
# 예약 주문 내역 조회 및 미체결 리스트 구하기