증권사 API를 사용한지 한달이 다 되가는데, 처음에는 키움증권API를 사용하는 예제가 많길래 키움증권으로 공부를 시작했습니다. 그러다가 선배의 권유로 대신증권 API도 사용해보기 시작했습니다. API를 활용하여 하고자 했던 목적은 정말 간단하게 데이터를 가져오기 위함이었습니다. 그러다가 거래량을 중심으로 트레이딩하는 모델을 만들어보자라는 생각이 들어 여기까지 오게 됐습니다.
주저리 주저리 떠들었는데, 키움증권 API와 대신증권 API 각각 모두 장당점이 있다는 걸 알게 되었습니다. 기술적으로 자세한 내용은 퀀티랩(QuantyLab)이라는 블로그에서 잘 정리해두었습니다. 여기서 확인해보시면 될 것 같습니다. 간단하게 설명하자면 키움증권API는 OCX방식이고, 대신증권API는 COM이란 방식이라고 합니다. 그리고 키움증권API를 활용하기 위해선 PyQt를 무조건적으로 사용해야하지만, 대신증권API를 활용하기 위해선 단순히 win32com이란 라이브러리를 통해서 직접 객체를 생성하여 만들 수 있다는 점이 다릅니다. 저도 그래서 아래 블로그에서 언급한대로 대신증권의 COM방식이 훨씬 편한다고 생각합니다. 아무래도 객체를 직접 만들게 된다면 파라미터로 공유하여 사용할 수 있게 될테니깐요.
두 증권사의 비교는 여기까지만 하고, 저는 조건검색을 하여 실시간 급등주를 포착하는 시스템을 만들어서 거래량을 이용하여 트레이딩을 하고자 했습니다. 하지만 문제는 여기 있습니다. 키움증권API에서 조건검색을 사용할 수 있다고 생각해서 당연히 대신증권API에서도 사용할 수 있을 것이라고 착각하고 대신증권API를 기반으로 개발을 하고 있었습니다. 하지만 대신증권API는 키움증권과 달리 조건검색을 할 수 있는 API를 제공하지 않는다고 하더군요. 제가 철저하게 자료조사를 하지 못한 탓이죠. ㅠㅠ
그래서 제가 세운 전략은 두 증권사 API를 불편하지만 동시에 쓸까 고민중에 있습니다. 일단 데이터를 가져와서 데이터베이스를 구축하는건 아무래도 대신증권이 더 편하다고 생각이 들고, 조건검색식과 같은 기능은 키움증권이 더 편하다고 생각이 들었기 때문이죠. 사실 이 두 증권사API를 한꺼번에 쓰지 않고 하나의 증권사API로만 개발하고 싶은데 말이죠. 사실 키움으로만 한다면 이 모든걸 간단하게 끝낼 수 없지만 PyQt의 늪에 빠져서 코딩하는데 어려움을 한번 겪어보고 나니까 아무래도 대신증권쪽이 더 손이 가더라구요. 일단 계속해서 조건검색을 대신하여 실시간 급등주를 포착하기 위한 다른 방법들을 모색해볼 생각입니다. (대신증권에선 특징주라고 API를 따로 제공해주기도 하더군요). 실시간 급등주를 포착하기 위해서 필요한 대신증권 API를 찾아보았습니다. 일단 Dscbo1.StockMst라는 API인데 아무래도 활용할 수 있을지는 의문입니다.
대신증권 API에서 거래량 관련 API를 찾아봤습니다. 문제는 실시간으로 거래량을 가져온다고 한들, 대략 3,000여개 이상의 종목들을 모두 한꺼번에 모니터링할 순 없을 겁니다. (조건검색이 진짜 좋은거구나..)
그나마 대신증권 API에서 DsCbo1.CpSvrNew8119라는 API는 시간대별로 종목별 프로그램매매 추이 리스트를 알려주긴 합니다. 근데 조금 이상한 건 그냥 매도/매수 수량이 아니라 프로그램 매수/매도 수량 증감입니다.
아직까진 키움증권의 조건검색API를 대체하기 위해서 대신증권에서 어떤 API를 사용해야하는지 감이 안오네요...
'금융(Finance) > 시스템 트레이딩(System Trading)' 카테고리의 다른 글
[예제] 대신증권API를 이용한 트레이딩 시스템 - 데이터 요청 방법 2가지 BlockRequest 와 Request 방식 비교하기 (0) | 2020.09.22 |
---|---|
[개발] 대신증권API를 이용한 트레이딩 시스템 - 예수금 가져오기 (0) | 2020.09.22 |
[개발] 대신증권API를 이용한 트레이딩 시스템 - 주식 현재가 조회 (0) | 2020.09.18 |
[개발] 대신증권API를 이용한 트레이딩 시스템 - 종목정보 구하는 예제 (0) | 2020.09.18 |
[개발] 대신증권API를 이용한 트레이딩 시스템 - 개발 환경 설정 (0) | 2020.09.18 |