Closed jhyunetp closed 3 months ago
"tr_cont" : "N" if page.search != "" else "" # 다음 페이지가 있는 경우, N을 입력하고 아니라면 비워놓는다.
일단 이렇게 제거하고 사용하고 있습니다. 혹시 소유주님께 도움이 되실까 하여 공유드립니다.
시간 내어 원인을 찾아주셔서 감사합니다.
현재 라이브러리를 개편하면서, 국내 및 해외 구분 없이 동일한 인터페이스로 쿼리할 수 있는 기능이 개발되었습니다.
해당 버그 또한 v2에서 해결되어, 2.0.1
버전으로 라이브러리로 업데이트 하시고 이용해주시면 됩니다.
pip install python-kis --upgrade
Tutorial#3.1. 예수금 및 보유 종목 조회 문서를 참고하여 예수금 및 보유종목을 조회하실 수 있습니다.
from pykis import PyKis
kis = PyKis("secret.json", keep_token=True)
account = kis.account()
balance = account.balance()
print(repr(balance)) # repr을 통해 객체의 주요 내용을 확인할 수 있습니다.
KisIntegrationBalance(
account_number=KisAccountNumber('50113500-01'),
deposits={
'KRW': KisDomesticDeposit(account_number=KisAccountNumber('50113500-01'), currency='KRW', amount=2447692, exchange_rate=1),
'USD': KisForeignPresentDeposit(account_number=KisAccountNumber('50113500-01'), currency='USD', amount=0, exchange_rate=1384.6),
},
stocks=[
KisDomesticBalanceStock(account_number=KisAccountNumber('50113500-01'), market='KRX', symbol='000660', qty=14, price=192600, amount=2696400, profit=22900, profit_rate=0.856555077613615111277351786),
KisDomesticBalanceStock(account_number=KisAccountNumber('50113500-01'), market='KRX', symbol='039200', qty=118, price=39600, amount=4672800, profit=-199500, profit_rate=-4.094575457176282248630010467)
],
purchase_amount=7545800,
current_amount=7369200,
profit=-176600,
profit_rate=-2.340374778022211031302181346
)
버그 설명
일부 계좌에서 balance_all() 함수에 무한루프 현상이 존재합니다.
재구현
주식잔고조회 API 호출 후 50 개 이상의 종목이 있는 경우에 연속 조회가 이루어지는데, 연속 조회 과정에서 Loop에 빠지는 것 같습니다.
해당 테스트 계좌는 정확히 50종목만 보유한 계좌입니다.
원인
while loop에 빠져서 나오질 못함
개발 환경
파이썬 버전: 3.10
추가 내용