로그인 창 띄우기

---------------------------------------------------------------------------------------------------------------------------------------------------------

안녕하세요! 오늘은 키움증권 API를 이용하여 로그인 창을 띄어보는 것까지 해볼거에요. 아직까지는 쉬운것 같습니다. 그럼 그림을 보면서 알아볼까요!

 우선, 저희는 C++기반의 MFC 를 사용할꺼잖아요? C++에 있는 MFC 응용 프로그램을 선택해줍시다.


 그 다음 나오는 창에서 꼭 대화 상자 기반으로 선택하셔야되요~


 여기까지 하셨으면 이런 창이 뜨겠죠?


 여기서 버튼을 한번 만들어 줄꺼에요. 왼쪽의 도구상자 탭에서 버튼을 창으로 드래그 앤 드롭 하시면 버튼이 생깁니다. 간단하죠??


  버튼을 누르시고 오른쪽 하단의 속성 탭을 누르시면, 속성을 변경할 수 있어요. 우리는 버튼 이름만 바꿀꺼니까 캡션 부분에서 Start로 바꿔봅시다.


  여기가 가장 중요한데요, 이제 필요한 두 가지 기반작업을 할거에요. 첫번째로는 API를 다운 받을 것이고, 두번쨰로는 키움증권의 Active X를 활성화 시킬거에요. 

 일단, 우리에게 필요한 API를 다운 받겠습니다. 저는 지난 시간에 말씀드렸던 사이트 에서 다운받을 건데요, 어렵지 않아요. 밑의 그림을 따라가 봅시다.


 여기서 C++을 사용하고 있는 샘플을 다운받아서 압축을 풀면


  내부에 khopenapictrl1.h, khopenapictrl1.cpp 이 두파일이 있어요 이걸 프로젝트로 복사해주세요. 그리고 복사한다음에 프로젝트에도 포함시켜야겠죠? cpp확장자는 소스에, h 확장자는 헤더 파일에 넣어주세요~


 헤더를 추가할 시간입니다. stdafx.h 에 키움증권에서 제공하는 헤더를 include 해줄까요? #include "khopenapictrl1.h"

 

 키움증권에서 제공하는 Active X를 넣어 봅시다. 대화상자에서 오른쪽클릭을하면, Active X 컨트롤 삽입 항목이 있는데, 이걸 누르고 위의 KHOpenAPI Control을 선택해 주세요


 위의 그림처럼 나오면 성공이에요. 


 API를 추가 해주었으니 이걸 사용할려면 API의 객체를 선언해주어야 해요. 위와 같이 선언해줄까요? 이름은 뭐 상관없어요.


 아까 Start 버튼을 더블 클릭하면 자동적으로 

void Cstock_examDlg::OnBnClickedButton1() 함수 쪽으로 이동하게 되는데요, 여기서 위와 같이 소스를 추가해주세요. CommConnect() 하는 함수가 로그인을 하게 하는 함수이구요, return 값은 0이면 성공, 음수이면 실패입니다.


 그 다음에는 Active X와 우리가 선언한 객체를 연결해줄거에요. DDX_Control을 통해서 이걸 연결해주면됩니다.

 

 이제 실행시키면 위와 같은 창이 뜰텐데요, 여기서 Start 버튼을 눌러볼까요??


  이렇게 로그인 창이 뜨는걸 볼수 있습니다!! ㅎㅎ 이제 거이 뭐 전 되게 신기합니다.


하지만 로그인 하려고하면 다음과 같은 오류같은게 뜨는데요, 이건 다음 시간에 해결해보도록하겠습니다... 아 어떻게 해결하는거지... ㅜㅜ


어쨋든 이렇게 한발자국씩 나가다보면 언젠간 나만의 HTS를 구축할수있겠죠?? 그때까지 화이팅 해봅시다!! 화이팅 ㅎㅎ

---------------------------------------------------------------------------------------------------------------------------------------------------------

(참고)

DDX_Control

MFC Class

------------------------------------------------------------------------------------------------------------------------------------------------------------------  * 버전 처리 오류 해결! - 2016-07-02

버전 처리 오류는 그냥 키움 번개가 업그레이드 됨에 따라서 생기는 오류? 인것 같아요.

키움 번개만 실행시켜서 버전업그레이드를 시켜준다음에 실행시키면 오류는 사라집니다!

유튜브 참고(<-- 클릭)하세용


키움증권 API 입문

---------------------------------------------------------------------------------------------------------------------------------------------------------

 어떻게 하면 빈둥대면서 돈을 벌수있을까..?? 그 답은 자동 투자 프로그램에 있지 않을까요? ㅋㅋ 어쨋든 1년 휴학을 하게 되면서 그전에 소홀했던 경영학과 공부와 앞으로 업으로 삼을 전자공학의 중간선 상에서 이 프로젝트를 진행하려고 합니다!

 우선 키움 증권 API를 기반으로 HTS를 만드려고 해요~ 이는 키움증권 홈페이지에서 회원 가입을 한뒤 받을 수 있어요.

https://www3.kiwoom.com/ (키움증권 홈페이지)

 회원 가입 후 밑의 탭을 보면 빨간색으로 쳐진 대가 있는데 저길 누르면...


 로드맵이 나오는데 밑의 로드맵에 따라서 설치를 진행하면 되요! 단, Step2에서는 키움 Open API+ 모듈을 설치하기 이전에 번개(HTS)를 먼저 다운 받아야 합니다. 안그러면 에러가 뜨네요. 그리고 마지막 Step 4까지 진행하면 일단은 우리의 목표의 반은 한겁니다. 시작이 반이래잖아요?

 



아 그리고 전 C/C++ 로 프로그래밍을 할거에요. 아직 언어 하나를 완벽히 다루지 못해서 이번 기회에 C++을 마스터 해야겠습니다.




 이제 다 설치를 하셨으면 KDA Studio를 켜보세요. 그럼 밑의 창이 나오는데, 빨간색으로 쳐진 <Open API 접속> 버튼을 눌러서 로그인을 하세요.



 그러면, 비어있던 창에 여러가지 항목이 생겨요. 우리가 주목해야할 탭은 바로 TR목록입니다. TR 목록 탭에서 여러 항목을 누르면 해당 내용을 추출할 수 있는 함수들을 보여주는데요, 종목정보 탭에서 본 종목코드를 우측 상단에 입력해 넣으면 어떻게 output이 작동하는 지도 볼수가 있어요.



 전 게임빌의 종목코드를 쳐보았는데요 저기 빨간색으로 쳐진 부분들이 변한 게 보이시죠?? 저렇게 함수가 어떻게 작용하는지 하나하나 볼수가 있답니다. ㅎㅎ 이제 시작하는 저에게는 신기하기도 하고 유용할 것 같네요.




 오늘은 일단 키움증권 API를 설치하고 어떤 함수들이 있는지 확인하였는데요, 내일 부터는 직접 C++코딩을 어떻게 해야하는지 MFC 기반으로 살펴보도록하겠습니다~ 오늘도 즐거운 하루 되세요!





+ Recent posts