C++/C#

c#으로 만들어본 키움증권 주식 자동거래프로그램

컨텐츠 정보

본문

잠시 쉬어갈 시간 여유가 생겨 이 소중한 시간을 어떻게 의미있게 쓸까 고민하다가 HTS로는 가끔 이용해본 키움증권 시스템 트레이딩 프로그램을 만들어보기로 결정했습니다.

시스템 트레이딩이라는 거창(?)한 표현은 접고 간단하게 얘기해서 사람 대신해 주식을 자동으로 정해진 규칙에 따라 사고파는 자동거래 프로그램이 정확한 표현이 아닐까요?


생각나는대로 자동거래 프로그램의 장점이랍시고 나열해 본다면


첫째, 주식투자 한다고 컴퓨터 앞이나 객장에서 머리 뽑히는 고통과 스트레스로부터 벗어나서 좋고

둘째, 정해진 규칙에 따라 한치의 오차도 없이 냉철한 투자와 손절 타이밍을 잡을 수 있다는 점

셋째, 필요에 따라 수십개의 종목을 동시에 사고 파는 멀티투자가 가능하다는 점

넷째, 시간적인 여유가 너무도 많아진다는 점.. 프로그램 돌려놓고 놀러가거나 출근하거나...

다섯째, 설정에 따라 장기, 스윙, 데이, 스캘핑 등 그 어떤 투자방법도 모두 소화가 된다는 점. 기타 등등..


단점으로는,


첫째, 머릿속에 그리는 그림대로 만들기가 무척이나 어렵다는 점.

둘째, 수없는 시행착오를 통해 원하는 결과가 나올 때까지 제작에 많은 고생을 각오해야 한다는 점.

셋째, 제작 의뢰를 하면 돈이 많이 들고 직접 만들자니 전문적인 프로그래밍 지식이 필요하다는 점.

넷째, OpenAPI가 최적화 되있지 않아 신경써서 프로그래밍하지 않을 경우 반응속도가 한타임 느릴 수 있다는 점. 기타 등등..


전에 대신증권 CYBOS PLUS로는 만들어서 쏠쏠한 재미를 보고는 있었으나, 문제는 수수료가 사이보스PLUS는 너무 비싸다는거.. 그러나, 확인 해 본 결과 키움증권은 HTS와 동일하게 농특세, 거래세 포함한 수수료까지 합쳐서 0.33%란다. 그래서 도전해보기로 마음 먹었 습니다.


키움증권 API에 대한 사전지식은 전무한 상태.. 주어진 기한은 딱 2주일.. 챠트나 그래프등을 사용한 화려함 보다는 쓰기 편하고 내실있는 간단한 인터페이스 구성을 하기로 마음 먹었습니다. 열심히 만들어 테스트 해본 결과 수익률(수수료와 세금을 공제 한 실질 수익률)은 실전투자 기준으로 1일 수익률 평균치가 2 ~ 5% 전후 이라지만 시장 분위기에 따라 편차가 있는 것 같았습니다.

물론, 중간중간 대박도 한번씩 터트리기도 했구요. 시장분위기 안 좋을때는 1일 수익률이 1%까지도 하락했었습니다.

일단은 꿈의 수익률은 아니었지만 적자가 한번도 발생 안했다는 점에 만족하고 추후 업그레이드 작업을 해야 할 것 같습니다.


키움증권만의 독특한 API 체계 때문에 초창기 제작에 많은 공부가 필요했었습니다만, 익숙해 지니 좋더군요.

다만, 어려웠던 점은 키움API는 TR기반이 아닌 Real 기반인 경우 장중에만 디버깅이 가능하다는 점.. 그리고 TR기반으로 하더라도 TR횟수제한이 라는 것이 있어서 1초당 5회로 TR이 제한되어 있다는 사실... ㅠㅠ

또한, 모의투자에서는 IOC나 FOK는 꿈도 못꾸고 오로지 지정가와 시장가 거래 밖에 지원 안한다는 점.. 장종료 이후 다음날 장 오픈 전에는 실행 테스트를 할 수가 없어, 머리속으로 실행결과를 상상하면서 코딩하는 이미지 코딩을 할 수 밖에 없었습니다.


키움은 최근 오픈한 API치고는 그런 점들이 조금 아쉬웠습니다. 아래 첨부사진은 1주전쯤 찍은 사진 같은데요. 그 이후 많이 바뀌긴 했지만 스샷 찍기 귀차니즘에 그냥 첨부..ㅎ 모두 성투하시고 대박나시길...





관련자료

댓글 1
소스 오픈을 요구하는 글이 많습니다.
최적화도 안되어 있어 창피한 것도 있고, 예전에 잠깐 소스 공개했다가 일부 악용하는 사례가 많아 잡음이 있었습니다.
그래서, 다시 중단하였으므로 이점 널리 양해 바랍니다.
Total 9 / 1 Page
번호
제목
이름

최근글


새댓글


알림 0