증권사 API2017. 11. 25. 07:00

 

 

xingAPI 가이드를 위한 가이드 세번째 편입니다.

 

 

독자님들은 지난 두번째 편을 보고 난 뒤에 어떤 프로그래밍 언어를 선택해서 개발을 진행할 것인지 결정하셨나요?

 

 

xingAPI에서는 다양한 언어들을 지원하고 있지만 그 선택은 맹목적으로 편리함만을 추구하거나 빠른속도만을 고집할 이유가 전혀 없습니다.

 

 

프로그래밍 언어의 선택에서 중요한 두가지 요소를 알려드리겠습니다.

○. 원하는 결과물(프로그램)을 최대한 빨리 만들어 볼 수 있는 개발의 생산성

○. 어떤 목적으로 프로그램을 만들것인가의 기준

     (ex. 단순한 매매, 시세데이터 수신, 복잡한 매매, 시뮬레이터 구동 등)

 

 

예로 든 내용들을 기준으로 설명 해드리겠습니다.

 

1. 단순한 매매

: Microsoft Office Excel VBA 만으로 충분히 가능합니다.

 

2. 시세데이터 수신

: Microsoft Office Excel VBA로 가능하지만 Excel 자체가 빠른 처리를 요하는 프로그램이 아니며 메모리 문제로 사용이 불가능한 상태가 될 수 있기에 VBA는 제외하는편이 좋습니다. (이외 언어로 충분히 가능)

 

3. 복잡한 매매

: 2번과 마찬가지입니다.

 

4. 시뮬레이터 구동

: 2번과 마찬가지입니다.

 

어떤 프로그램이든 VBA로 구동하게 되면 Excel (엑셀) 프로그램이 항상 활성화 상태여야 합니다. (전자동 시스템)

 

 

모든면에서라고 할 수는 없겠지만 대체적으로 속도가 빠를수록 프로그래밍 언어를 학습하는데 소요되는 시간은 반비례하게 길어집니다. (예로, 프로그래밍에 대해 아무것도 모르는 사람이 Visual C++ 로 개발하려면 우선 학습에만 최소 1년 이상 소요)

 

 

프로그래밍 언어를 선택하고 어떤 버전의 xingAPI (COM, DLL 중 택일)를 사용할 것인지 결정했다면 이제 본격적으로 시작 해보겠습니다.

 

 

xingAPI를 다운로드 해야 하는데 이 부분은 아래 링크를 참조하여 다운로드 및 설치 하시기 바랍니다.

http://systemtraders.tistory.com/176?category=726546

 

 

xingAPI (증권사 데이터 송수신용 통신 모듈 프로그램)의 내부를 잠시 살펴 보겠습니다.

 

 

* 이후 모든 내용은 이베스트투자증권에서 제공하는 샘플을 설명하기 위해 VBA + COM버전을 기준으로 설명합니다.

 

 

 

 

 

갑자기 어려워 보이는 용어가 튀어나와서 놀래셨나요?

 

 

깊이 알지 못하더라도 크게 상관없는 내용이고 내부적으로 저런 객체들을 제공하며 사용자는 저 범위 내에서 사용할 수 있다고 이해하면 됩니다.

 

 

분명 COM 버전을 선택했는데 파일명이 *.dll 이지요?

xingAPI는 COM버전이라 하더라도 DLL을 사용하게 되어 있습니다.

 

 

DLL은 Dynamic Link Library의 약자로써 쉽게 표현해서 xingAPI에서 제공하는 통신 모듈 프로그램 코드가 저 dll 파일에 들어있다고 이해하면 되고 실제로도 그렇습니다.

 

 

 

 

 

 

이 그림을 보면 필자의 글이 더욱 잘 이해되리라 믿습니다.

 

 

위 *.dll 파일을 독자분들의 프로그램과 연결하여 무언가 원하는 작업을 처리 할 수 있는데 우선 연결하는 과정이 필요합니다.

 

 

우선 엑셀을 구동하여 주시고요.

 

 

 

 

상단 메뉴중 "개발 도구"를 클릭하고 하위 메뉴에서 "Visual Basic" 를 클릭합니다.

 

 

눈치 빠른분들은 VBA가 Visual Basic과도 연관성이 있구나 하실겁니다.

 

 

만약 해당 메뉴가 없다면" Excel 옵션"에서 메뉴를 추가할 수 있습니다.

 

 

 

 

위에서 "Visual Basic"를 클릭하면 별도의 창이 뜨게 될텐데 "도구" > "참조"를 클릭하여 xingAPI와 Excel을 연결하는 첫번째 작업을 할 수 있습니다.

 

 

 

 

 

위 링크(http://systemtraders.tistory.com/176?category=726546)의 내용대로 잘 따라 하였다면 참조 목록에 뜨는 내용중 "Xing DataSet Lib", "Xing Session Lib"를 선택할 수 있습니다.

 

 

위 내용들중 잘 안되는 부분이 있으면 Comment 남겨주세요.

확인하는대로 Reply 하겠습니다.

 

 

다음 시간에 또 뵙지요.

 

 

<자료 출처 : 이베스트투자증권 (http://ebestsec.co.kr)>

 

 

Posted by 투자의神