-
[키움API]개발툴의 선택: 아나콘다-파이썬금융퀀트/(퀀트)증권사API활용(키움) 2023. 10. 24. 07:16반응형
키움API 기본적인 개발환경
키움증권 OpenAPI는 윈도우 운영체제 기반으로 개발해야 하며, 32BIT 플랫폼 기반이다. 이 정보를 바탕으로 우리는 어떤 도구를 사용하여 API 활용 프로그램을 만들지 결정해야 한다.
개발 툴의 선택
마이크로소프트 엑셀
엑셀은 Alt + F11 단축키로 손쉽게 VBA 코딩을 짤 수 있으며 데이터를 작업하고 있는 파일에 저장하면 된다. 심지어 키움에서는 아래 그림 1과 같이 로그인, 현재가 조회, 관심종목 조회, 주문 정도의 기능을 갖춘 엑셀 파일을 제공해 준다.
실제 파일을 다운받아서 내용을 보면 아래와 같이 되어 있다.
하지만 요즘 엑셀을 설치하면 대부분 64BIT 기반인데 32BIT 기반의 키움증권 API 를 사용하려면 32BIT를 지원하는 엑셀을 따로 구해야 한다는 단점이 있다. 그리고 32BIT 기반 구버전 엑셀이 있다고 해도 엑셀에 데이터를 저장해 나가는 과정에서 파일이 느려지는 문제점이 발생한다.
윈도우비주얼 스튜디오(C++ 기반의 MFC활용)
MFC는 마이크로소프트에서 개발한 C++ 기반 응용 프로그램 프레임워크이다. C++ 기반으로 UI까지 쉽게 구현하게 해주는 도구라고 생각하면 된다. Visual Studio Installer에서 아래 표시된 부분을 활성화하면 MFC 프로젝트를 만들 수 있다.(윈도우 검색창에 " Visual Studio Installer"라고 검색하면 쉽게 찾아 들어갈 수 있다.)
MFC 관련 기능 Install이 끝나면 Visual Studio 들어가서 MFC 앱으로 새프로젝트를 만들고 대화상자 기반 어플리케이션을 만들면 개발준비는 끝이 난다.(Visual Studio Code 가 아닌 Visual Studio이다.)
키움에서 API 안내 프로그램으로 KOAstudio에서도 MFC 기반 C++의 예시코드를 주고 있다는 점에서 MFC를 활용해서 개발하는 것이 편할 수 있다. 엑셀과 마찬가지로 OpenAPI 자료실에 MFC 기반 C++ 샘플도 제공해주고 있다.
하지만 Visual Studio라는 무거운 개발 Tool을 사용해야 하고, Visual Studio 2022 같은 최신 버전은 32BIT 지원이 안돼서 엑셀의 경우와 마찬가지로 "khopenapi.ocx"라는 오브젝트를 불러올 수 없는 경우가 발생한다.
아나콘다-파이썬
아나콘다-파이썬 설치는 아나콘다, 파이썬, 비주얼 스튜디오 사용(Windows)이라는 글을 참조하면 된다. 아나콘다-파이썬을 사용하면 가상환경을 만들어서 32BIT, 64BIT를 설정할 수 있기 때문에 32BIT 환경 설정은 상대적으로 자유롭다. "CONDA_FORCE_32BIT=1"이라는 명령어 한 줄로 가능하기 때문이다.
하지만 Visual Studio로 작업하면 MFC프로젝트를 만들고 그 프로젝트 안에서 화면을 그리고 그 화면에 바로 코딩을 입힐 수 있지만 파이썬은 불가능하다. 아나콘다-파이썬에서는 아래 그림 8처럼 Qt designer를 통해서 화면을 따로 그린 뒤
다시 그림 9처럼 Visual Studio Code 등과 같은 프로그램으로 통해서 코드를 작성해야 한다. 코드를 작성할 때도 기본적인 파이썬 코드만드로는 API 사용이 불가능하고 아래 그림 9처럼 C++과 바인딩해 주는 라이브러리인 PyQt5에 의존해서 코드를 작성해야 한다는 단점이 있다.
각 개발 툴마다 장단점이 있지만 64BIT, 32BIT 호환 문제가 가장 해결하기 힘들어서 파이썬을 통해서 키움 API 사용 프로그램 개발을 진행해 나가도록 하겠다.
반응형'금융퀀트 > (퀀트)증권사API활용(키움)' 카테고리의 다른 글
[키움API]python 메인 화면 만들기(Qt Designer 사용) (0) 2023.11.23 [키움API]python API 로그인 (0) 2023.11.14 [키움API]키움 API 작동 구조 (0) 2023.11.11 [키움API]아나콘다-파이썬 가상환경 만들기 (0) 2023.11.07 [키움API]회원 가입 및 API 다운로드 (0) 2023.10.19