-
[키움API]파이썬 주식 종목별 종가정보 불러오기6: 데이터 수집시 주의사항금융퀀트/(퀀트)증권사API활용(키움) 2024. 1. 20. 09:10반응형
데이터 요청 횟수 제한
[키움API]파이썬 주식 종목별 종가정보 불러오기5: UI파일 화면구성(Qt Designer) 및 프로그램module과 CLASS구성 에서 완성한 프로그램으로 이제 데이터 수집만 하면 종목 추천을 위한 기본 DB를 구성할 수 있다. 하지만 무작정 아래 그림 1과 같이 종료 인덱스를 10000으로 놓고 기간별 종가 데이터 입수를 하면 안 된다. 키움에서 서버 과부하 방지를 위해서 몇 가지 제약을 걸어놓았기 때문이다.
그림1 : 기간별 종가 데이터입수 세팅 예시(로그인 후 실행) 제약사항은 아래 그림 2와 같이 KOA Studio의 하단 텝의 개발가이드 텝 -> 자주 묻는 질문 -> "키움OpenAPI 개발/구현 중입니다." 항목에 나와 있다. 대표적인 제약사항이 1초당 5회 횟수제한과 서버부하 방지 제한이다.
그림2: 1초당 5회 데이터 요청 횟수제한 [키움API]파이썬 주식 종목별 종가정보 불러오기5: UI파일 화면구성(Qt Designer) 및 프로그램module과 CLASS구성 에서 UIhandle class의 timeseriesdataget 함수 내에 1초당 5회 횟수제한은 아래와 같이 API요청 시에 0.5초 정도 간격을 둠으로써 해결할 수 있다.
그림3: 1초당 5회 횟수제한 해결 서버부하 방지 제한
서버부하 방지 제한은 API를 장시간 반복해서 사용할 경우 발생하는 오류로 코딩으로 해결하기 보다는 사용자가 요청 횟수에 제한을 둬야 하는 부분이다. 이 제약 사항도 KOA Studio의 하단 텝의 개발가이드 텝 -> 자주 묻는 질문 -> "키움OpenAPI 개발/구현 중입니다." 항목에 아래 그림 4와 같이 나와있다.
그림4: 서버부하 방지 제한 따라서 위 그림 1과 같이 종료 인덱스를 10000으로 놓고 무한으로 for 문을 돌리면 서버부하 방지 제한에 걸리기 때문에 인덱스를 200 개 정도로 제한해서 여러 번 요청을 하는 방법으로 아래 그림 5와 같이 데이터를 수집해야 한다.
그림5: 데이터 수집작업 예시 반응형'금융퀀트 > (퀀트)증권사API활용(키움)' 카테고리의 다른 글
[키움API]python 샤프지수를 이용한 종목선정 2 (1) 2024.01.28 [키움API]python 샤프지수를 이용한 종목선정1: 코스피 종목 종가데이터 입수 (0) 2024.01.22 [키움API]파이썬 주식 종목별 종가정보 불러오기5: UI파일 화면구성(Qt Designer) 및 프로그램module과 CLASS구성 (2) 2023.12.19 [키움API]파이썬 주식 종가정보 불러오기4: 데이터 DB저장(mysql) (0) 2023.12.06 [키움API]파이썬 주식 종가정보 불러오기3: 전체종목 기간별 종가조회 (2) 2023.12.02