트레이딩

[키움API] KOA StudioSA 톺아보기 - OpenAPI 사용시 발생하는 오류코드 정리

성민석 2023. 7. 22. 13:00

안녕하세요 성민석입니다.

오늘은 키움증권 API와 관련된 기본 설명과 동작을 설명드릴 예정입니다. 기본적으로 KOA StudioSA에서 제공해주는 내용을 바탕으로 글을 작성해나갈 예정입니다. 여기서 제 개인적인 의견이나 첨언이 들어갈 경우 파란색으로 표시하겠습니다.

 

이번 포스팅에서는 키움증권API를 사용할 때 발생할 수 있는 오류코드와 관련된 내용에 대해서 알려드리겠습니다.



OpenAPI는 각 함수에서 리턴값으로 함수성공여부를 판단할 수 있습니다. 함수에따라 리턴값이 0 또는 1일때 함수 정상호출 이며, 0보다 작은 값은 에러를 나타냅니다. 주요 에러코드는 -200번(시세과부하), -308번(주문전송 과부하)입니다.

 

※ 함수호출이 0 또는 1로 정상호출인 경우에도 서버에서 에러처리가 될 수 있습니다. 이 경우 OnReceiveMsg() 이벤트에서 서버의 에러메세지를 확인할 수 있습니다.
          
              1         // 정상처리                                                                    
              0         // 정상처리                                                                    
            -10        // 실패
            -11        // 조건번호 없슴                                                                
            -12        // 조건번호와 조건식 불일치                                                     
            -13        // 조건검색 조회요청 초과                                                       
          -100        // 사용자정보교환 실패                                                           
          -101        // 서버 접속 실패                                                                
          -102        // 버전처리 실패                                                                 
          -103        // 개인방화벽 실패                                                               
          -104        // 메모리 보호실패                                                               
          -105        // 함수입력값 오류                                                               
          -106        // 통신연결 종료                                                                 
          -107        // 보안모듈 오류                                                                 
          -108        // 공인인증 로그인 필요                                                          
                                                                                                    
          -200        // 시세조회 과부하                                                               
          -201        // 전문작성 초기화 실패.                                                         
          -202        // 전문작성 입력값 오류.                                                         
          -203        // 데이터 없음.                                                                  
          -204        // 조회가능한 종목수 초과. 한번에 조회 가능한 종목개수는 최대 100종목.           
          -205        // 데이터 수신 실패                                                              
          -206        // 조회가능한 FID수 초과. 한번에 조회 가능한 FID개수는 최대 100개.               
          -207        // 실시간 해제오류                                                               
          -209        // 시세조회제한                                                               
                                                                                                    
          -300        // 입력값 오류                                                                   
          -301        // 계좌비밀번호 없음.                                                            
          -302        // 타인계좌 사용오류.                                                            
          -303        // 주문가격이 주문착오 금액기준 초과.                                                     
          -304        // 주문가격이 주문착오 금액기준 초과.                                                     
          -305        // 주문수량이 총발행주수의 1% 초과오류.                                          
          -306        // 주문수량은 총발행주수의 3% 초과오류.                                          
          -307        // 주문전송 실패                                                                 
          -308        // 주문전송 과부하                                                               
          -309        // 주문수량 300계약 초과.                                                        
          -310        // 주문수량 500계약 초과.                                                        
          -311        // 주문전송제한 과부하
          -340        // 계좌정보 없음.                                                                
          -500        // 종목코드 없음.                                                                

 

제 경우에는 아래와 같이 딕셔너리 형태로 정리하여 사용하고 있습니다.

ERROR_CODE = {
	0: ('OP_ERR_NONE', '정상처리'),
    -10: ('OP_ERR_FAIL', '실패'),
    -100: ('OP_ERR_LOGIN', '사용자정보교환실패'),
    -101: ('OP_ERR_CONNECT', '서버접속실패'),
    -102: ('OP_ERR_VERSION', '버전처리실패'),
    -103: ('OP_ERR_FIREWALL', '개인방화벽실패'),
    -104: ('OP_ERR_MEMORY', '메모리보호실패'),
    -105: ('OP_ERR_INPUT', '함수입력값오류'),
    -106: ('OP_ERR_SOCKET_CLOSED', '통신연결종료'),
    -200: ('OP_ERR_SISE_OVERFLOW', '시세조회과부하'),
    -201: ('OP_ERR_RQ_STRUCT_FAIL', '전문작성초기화실패'),
    -202: ('OP_ERR_RQ_STRING_FAIL', '전문작성입력값오류'),
    -203: ('OP_ERR_NO_DATA', '데이터없음'),
    -204: ('OP_ERR_OVER_MAX_DATA', '조회가능한종목수초과'),
    -205: ('OP_ERR_DATA_RCV_FAIL', '데이터수신실패'),
    -206: ('OP_ERR_OVER_MAX_FID', '조회가능한FID수초과'),
    -207: ('OP_ERR_REAL_CANCEL', '실시간해제오류'),
    -300: ('OP_ERR_ORD_WRONG_INPUT', '입력값오류'),
    -301: ('OP_ERR_ORD_WRONG_ACCTNO', '계좌비밀번호없음'),
    -302: ('OP_ERR_OTHER_ACC_USE', '타인계좌사용오류'),
    -303: ('OP_ERR_MIS_2BILL_EXC', '주문가격이20억원을초과'),
    -304: ('OP_ERR_MIS_5BILL_EXC', '주문가격이50억원을초과'),
    -305: ('OP_ERR_MIS_1PER_EXC', '주문수량이총발행주수의1 % 초과오류'),
    -306: ('OP_ERR_MIS_3PER_EXC', '주문수량은총발행주수의3 % 초과오류'),
    -307: ('OP_ERR_SEND_FAIL', '주문전송실패'),
    -308: ('OP_ERR_ORD_OVERFLOW', '주문전송과부하'),
    -309: ('OP_ERR_MIS_300CNT_EXC', '주문수량300계약초과'),
    -310: ('OP_ERR_MIS_500CNT_EXC', '주문수량500계약초과'),
    -340: ('OP_ERR_ORD_WRONG_ACCTINFO', '계좌정보없음'),
    -500: ('OP_ERR_ORD_SYMCODE_EMPTY', '종목코드없음')
}

 


 

키움증권 API와 관련된 자세한 내용을 확인하고 싶으신 분들은 PDF를 확인해보시면 좋을 것 같습니다.

 

마지막으로 같이 트레이딩하는 분들과 소통하고 싶습니다. 언제든지 트레이딩이나 인공지능과 관련된 내용을 함께 공유하고 토론하고 싶으시다면 아래의 오픈 카카오톡 링크로 연락주세요.
https://open.kakao.com/me/minsuksung

 

성민석 (Minsuk Sung)님의 오픈프로필

인공지능을 공부하는 연구자이자 시스템 트레이딩을 하는 트레이더입니다. 

open.kakao.com

 

728x90
반응형