Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Archives
Today
Total
관리 메뉴

IT쟁이 블로그

스파르타 코딩클럽 주식자동매매 종합반 - 3주차 본문

카테고리 없음

스파르타 코딩클럽 주식자동매매 종합반 - 3주차

RollingStone 2021. 6. 28. 00:09

3주차 목표: 키움 API 실습을 통해 API 사용법 습득

 

1) KOA Studio

    - 키움 API 사용 설명을 위한 실행파일

    - 다운로드(Link)

 

    - KOA Studio 실행 전에 Visual C++ 2010 재배포 가능 패키지 다운로드 (Link)

      -> vcredist_x86.exe 선택 후 설치

 

    - KOA Studio 실행 후 '개발 가이드' 학습

       -> 각 항목별 '기본설명', '기본동작', '관련함수'가 분류되어 있고, 클릭 시 각 항목 별 설명이 가운데 창에 나옴

 

2) 키움 API 기초

    - 키움 API는 일반 함수와 이벤트 함수로 구성

    - 일반 함수: 호출 시 바로 반환 값을 받을 수 있는 함수, 키움서버에 데이터를 전송하지 않음

    - 이벤트 함수: 호출 시 다른 함수에서 결과를 받게 되는 함수, 키움서버에 데이터를 전송

                       모든 이벤트 함수는 비동기 방식(데이터 가공이 끝나는대로 키움서버에서 응답 전송)

    => 요청-응답이 순서대로 일어나게 하기 위해 키움 API 비동기 함수 데코레이터인 SyncRequestDecorator 를 함수 단위로 설정하여 사용함.

 

3) 키움 API 를 이용한 로그인

    - commConnect() 를 이용하여 로그인을 시도하고, GetLoginInfo() 를 통해 로그인 성공 시까지 대기

      ※ GetConnectState()는 단순 서버 접속을 뜻하므로 로그인 성공여부 파악이 안됨.

 

4) 키움 API 를 이용한 주식 기본정보 가져오기

    - 데이터를 요청하는 TR(Transaction) 으로 SetInputValue() → CommRqData() → [이벤트] OnReceiveTrData() 을 사용

    - KOA Studio에서 관련 함수를 사용하여 작성

 

5) 키움 API 를 이용한 조건식 결과 가져오기

    - 키움 HTS(Home Traiding System)에서 먼저 조건식을 생성(조건검색, 0150)

    - GetConditionLoad() - 사용자 조건검색 목록을 요청

    - GetConditionNameList() - 조건식 고유번호와 조건식 이름 리스트 요청

    - SendCondition() - 조건검색결과 요청

    - [이벤트] OnReceiveTrCondition() - 조검검색결과 응답

 

6) 키움 API 를 이용한 여러 주식종목에 대한 정보를 한 번에 가져오기

    - CommKwRqData() - 한 번에 100종목까지 조회할 수 있는 복수종목 조회함수

    - GetRepeatCnt() - OnReceiveTRData() 안에서 복수종목의 갯수를 얻는 함수