증권사 API2017. 10. 25. 08:11

 

 

DevCenter를 통하면 이베스트투자증권 xing API에서 얼마나 많은 정보들을 제공하고 있는지 알 수 있으며 지난 시간에는 조회TR과 RealTR 목록을 보여드렸습니다.

 

 

이번에는 조금 더 들어가보겠습니다.

 

 

 

 

DevCenter를 우선 실행하고 좌측 하단의 TR목록 선택 탭에서 RealTR을 선택하고 S3_ 라는 TR을 클릭 해보겠습니다.

 

 

S3_는 코스피에 속한 종목의 체결 정보를 수신할 수 있는 TR입니다.

 

 

 

 

위 이미지처럼 하나의 TR안에서도 상당히 많은 데이터들이 제공되고 있습니다.

 

 

종목코드를 입력하면 체결시간, 전일대비구분, 전일대비, 등락율, 현재가, 시가시간, 시가, 고가시간, 고가, 저가시간, 저가, 체결구분, 체결량, 누적거래량, 누적거래대금, 매도누적체결량, 매도누적체결건수, 매수누적체결량, 매수누적체결건수, 체결강도, 가중평균가, 매도호가, 매수호가, 장정보, 전이동시간대거래량, 단축코드 등의 정보를 수신받을 수 있습니다.

 

 

이중 체결구분 필드를 선택해보면 아래와 같이 나옵니다.

 

 

 

체결구분의 필드 속성에서 수신되는 값이 +로 나오면 매수체결, -로 나오면 매도체결임을 알 수 있게 됩니다.

 

 

 

 

status (장정보) 필드를 선택 해보았습니다.

 

 

0이 수신되면 장중 체결로 수신된 데이터임을 구분할 수 있고 4는 장후 시간외, 10은 장전시간외로 구분할 수 있습니다.

 

 

필드 속성값을 별도로 가지지 않는 필드들도 있는데요.

 

 

S3_ 에서는 chetime (체결시간), price (현재가) 등은 별도의 필드 속성값을 가지지 않고 수신된 값 그 자체만 보아도 됩니다.

 

 

필드 속성값을 가지는 이유는 처리 용량과 시간등을 위해 일종의 정형화된 압축이라고 보면 됩니다.

 

 

이번에는 다른 TR을 선택 해볼까요?

SC0 주식주문접수 RealTR을 선택 해보겠습니다.

SC0은 사용자 본인이 주문한 주문에 대해서만 응답이 내려오는 RealTR입니다.

 

 

 

 

SC0은 앞서 소개한 S3_ 보다 훨씬 더 많은 데이터를 수신할 수 있네요.

 

 

위 TR은 알고리즘 자동매매 프로그램을 통해 주문한 내용이 증권사 서버에 정상적으로 접수 되었는지 확인하기 위한 Real TR입니다.

 

 

만약 삼성전자(005930)를 100만원에 10주 매수하겠다고 주문 넣었는데 엉뚱한 값이 수신된다면 99.99%는 사용자가 개발한 프로그램의 오류로 잘못된 주문이 접수 된 것이겠고 아주 미약한 확률은 증권사 서버의 문제일수도 있습니다.

 

 

다만 증권사의 주문처리 서버는 아주 오랜시간동안 검증이 되어왔고 전문 인력이 관리하고 있기 때문에 시스템 장애 등의 경우가 아니라면 이런 일은 거의 없습니다.

 

 

 

 

SC0 에서는 gmhogagb (공매도호가구분) 등의 필드가 속성값을 가지며 나머지 대부분의 TR은 필드의 값 그 자체로 보고 이해하면 됩니다.

 

 

 

 

 

이번에는 OK_ (코스닥거래원) TR입니다.

 

 

독자분들이 HTS를 통해 조회해볼 수 있는 "종목별거래원" 등의 데이터가 API에서는 이런식으로 수신됩니다.

 

 

어떤 증권사에서 어떤 종목을 얼만큼 사고 팔았는지 그 증권사가 국내 증권사인지 외국계증권사인지 실시간으로 알 수 있기 때문에 투자 주체별 매매 규모가 매매 로직에 있어서 중요한 분들께는 아주 유용한 데이터가 되겠죠.

 

 

 

 

위 이미지를 보면 무엇이 먼저 떠오르시나요?

 

 

전 편인 " DevCenter에서 제공하는 데이터의 종류 "에서 언급한 북한 미사일 관련 예시가 먼저 떠오른다면 정독하고 계시다고 보여집니다.

 

 

NWS 는 RealTR로써 시장에 뉴스가 발생하면 실시간으로 데이터를 내려줍니다.

 

 

 

 

NWS 에서 id 필드를 보면 각 신문사 등이 나오고 중간에 15:공시가 나오죠?

 

 

실시간 뉴스와 실시간 공시가 바로 수신됨을 알 수 있으며 뉴스만 보겠다는 분도 계실테고 나는 공시만 빨리 보면된다는 분도 계시고 둘다 볼 수도 있겠죠?

 

 

선택적으로 각종 뉴스와 공시를 수신할 수 있습니다.

 

 

단 NWS에서 수신한 데이터는 뉴스 또는 공시의 제목만 보여줍니다.

 

 

제목만 봐도 되면 여기까지만 봐도 되고 자세한 내용을 모두 보고 싶으면 realkey 필드의 값을 이용할 수 있습니다.

 

 

조금 더 나아가서는 code 필드에서 수신한 종목코드가 내가 모니터링하는 종목에 포함될 때만 본문을 볼 수도 있고요.

 

 

 

 

실시간으로 수신한 뉴스의 키값 (NWS TR의 realkey 필드)을 t3102에 넣으면 뉴스 본문 전문을 조회할 수 있습니다.

 

 

제목과 본문을 분리하는 이유는 한꺼번에 모든 데이터를 송수신하면 이베스트 투자증권 서버도 부담을 받고 독자분들의 서버나 PC도 부담이 될 수 있기 때문에 필요에 따라 선택적으로 송수신이 용이하게 하는 목적으로 분리 서비스 하고 있습니다.

 

 

NWS로 수신받은 종목코드와 realkey 값으로 t3102을 수신하는 테스트 프로그램을 만들어서 작동시켜 보니 0.018초만에 뉴스 본문까지 모두 수신이 되었습니다.

 

 

이 과정을 조금 더 풀어보면,

 

 

1. 제 서버의 테스트 프로그램에서 NWS 데이터 패킷 수신

2. t3102에 원하는 realkey 값을 넣고 데이터 조회 요청

3. 이베스트 서버에서 데이터 조회 요청을 접수

4. 이베스트 서버에서 제 서버로 데이터 송신

5. 제 서버에서 데이터 수신

 

 

이 정도로 축약해볼 수 있습니다.

 

 

이 모든 과정이 0.018초 만에 이뤄진다니 놀랍지 않으십니까?

 

 

뉴스에 따라 반응하는 알고리즘 자동매매 프로그램의 경우에도 NWS 데이터 패킷을 수신받고 실제 주문을 넣기까지 약 0.1초가 채 걸리지 않았습니다.

 

 

21세기 정보화 시대라는 말은 많이 들어봤어도 이 정도일줄은 상상도 못한분이 다수 일텐데요.

 

 

필자의 알고리즘 자동매매 프로그램과 독자분이 HTS 호가창에서 만나면 독자분들은 백전백패 할 수 밖에 없습니다.

 

 

손매매는 빨리 버릴수록 좋습니다.

 

 

그럼 호가창에서 뵙겠습니다.^^

 

 

 

Posted by 투자의神
증권사 API2017. 10. 20. 08:59

 

 

제가 현재 사용하고 있는 이베스트 투자증권의 Xing API에 대해서 소개 해보려고 합니다.

 

 

이미 동 증권사 API를 사용중이라면 패스하셔도 될 부분이니 참고하세요.

 

 

앞서 API가 무엇인지 간략하게 설명을 드렸었는데요.

아무래도 글로만 적다보니 감이 잘 오지 않을 수 있기에 오늘은 이베스트에서 API를 이용해서 할 수 있는 것들에 대해

소개한 페이지 캡쳐까지 곁들여 보겠습니다.

 

 

 

 

증권사에서 제공하는 Xing API의 구성에 대해서 우선 보겠습니다.

 

첫번째로 가장 중요한 Xing API가 있고 DevCenter, xingACE, ChartData 등이 있다고 적혀 있군요.

 

 

 

 

Xing API는,

고객이 직접 작성한 '트레이딩(자동매매/신호포착 시스템 등) 프로그램'이 이베스트 투자증권의 서버를 통하여

데이터를 주고 받거나 매매가 가능하도록 해주는 통신연결 프로그램입니다. 라고 친절히 설명 해놨습니다.

 

 

더불어 xing API는 별도의 트레이딩툴(HTS/MTS 등)을 제공하지 않으며 프로그래밍이 가능하고 이베스트 투자증권 계좌를 보유하고 계시는 고객이라면 누구든지 사용 가능하다고도 합니다.

 

 

여기에서 중요한 점!

API는 저를 비롯해 각 트레이더가 사용하는 컴퓨터 또는 서버와 증권사 서버를 연결해주는 통신 프로그램이기 때문에

이 연결 프로그램을 통해 어떤 데이터를 주고 받으며 또 어떤 처리를 할 것인지에 대한 부분은 각자가

직접 프로그램을 개발하여 처리해야 될 부분입니다.

 


저의 경우 Microsoft 에서 만든 C#이라는 프로그래밍 언어를 주로 다루며 이를 통해 Microsoft Windows 기반의

프로그램을 만들었습니다.

또한 각종 시세 데이터의 실시간 데이터를 제 서버로 내려 받고 데이터베이스에 모두 저장 하고 있기도 합니다.

 

C#이 아니더라도 엑셀 프로그래밍(VBA), Visual Basic, Delphi, Python, C, C++, Visual C++ 등 다양한 종류의

프로그래밍 언어를 지원하고 운영체제는 Microsoft Windows는 물론 Linux 도 지원하고 있습니다.

 

 

 

DevCenter는,

'API 이용 프로그램' 개발 시에 함께 사용하는 'API 전용 개발보조도구'라고 설명되어 있지요?

 

 

위 설명대로 프로그램 개발을 위한 보조도구도 함께 제공해주고 있는데요.

실제로 저도 이 프로그램을 많이 사용했고 또 지금도 사용하고 있는 아주 편리한 프로그램이며,

"특허출원"이라고 마크도 달아놨네요.

 

 

이 프로그램의 상세한 부분에 대해서는 추후 다시 포스팅 하겠으니 우선은 가볍게 넘어갑니다.

 

 

 

 

XingACE입니다.

이쯤되면 뭔가 많은 것들을 제공하고 있구나 싶으실텐데요.

 

 

예전부터 증권사들간의 수수료 경쟁이 심화되다보니 이제는 '네가 죽는지 내가 죽는지 한판 붙어보자' 라는 식으로

수수료를 하락시켜 경쟁에 참여 하기 보다는 이런 부가 서비스(또는 프로그램)를 제공하는 경향이 강하고

간혹 주식수수료 무료, 선물수수료 무료 등의 이벤트도 곁들이기도 하는 편입니다.

 

 

XingACE는 저처럼 C#등의 언어로 개발한 프로그램을 '가상 테스트'하기 위한 가상거래소 프로그램으로 편리하다고는

합니다만 저는 개인적으로 사용해보지 않았습니다.

 

 

이유는 앞서 말씀드린대로 별도의 데이터베이스 서버에 상당히 많은 분량의 시세 데이터를 저장하고 있기 때문입니다.

 

 

 

 

ChartData 부분인데요.

여러가지 부가 기능을 제공하고 있다 정도로만 보시면 되고,

위 이미지 중단이하의 내용은 추후 별도로 언급할 DevCenter 라는 프로그램을 통해 이뤄지고 있음을 알 수 있습니다.

 

 

여기까지 이베스트 투자증권에서 XingAPI 를 통해 다양한 서비스를 제공하고 있는 모습에 대해 알아봤습니다.

 

 

"시스템 트레이딩은 사람보다 빠르고 정확합니다." 라고 블로그 메인에 적어둔 글이 허언이 아님을 느끼실겁니다.

정말 빠르고 정확합니다.

 

 

누군가는 빠르고 정확한 API를 통해 매매 수익을 거두는가 하면

또 누군가는 9시가 되고 땡하면 매수, 매도 할거라고 HTS앞에서 눈에 불을켜고 앉아 있겠지요.

 

 

저처럼 API서비스를 이용하고 또 자동매매 프로그램을 만들어서 사냥하는 사람이 있는가 하면

석기 시대도 아닌데 여전히 돌도끼를 들고 사냥하는 사람이 있겠지요.

 

 

IBM에서 만든 인공지능 왓슨이 암진단을 하고 알파고가 바둑 랭커들에게 압승하는 시대입니다.

 

 

"마음을 추수르고 다시 해보자! 그러면 잘 될거야!" 라고 자기 암시 해봐야 이미 시작부터 틀렸습니다.

자동매매 시스템은 그 시작부터 "심리"라는 것이 없기 때문에 애초에 마음을 추스를 필요가 없기 때문입니다.

 

 

서두르셔야 합니다.

지금이 아니면 더 늦습니다.

제2의 알파고가 어딘가에서 나타나서 시장을 점령한다면 말이지요.

 

 

감사합니다.

Posted by 투자의神
시세데이터2017. 10. 19. 14:36

 

 

안녕하세요.

 

 

이곳은 시세데이터 카테고리입니다.

 

 

본래 필자가 가진 데이터를 주기적으로 백업하는 공간으로 삼기 위해 만든 카테고리인데 업로드 가능한 용량에 상당한

제한이 있는것을 뒤늦게 발견했습니다. (제한 용량 10MB)

 

 

제가 가진 데이터는 수십TB(테라바이트) 규모를 넘어서기 때문에 분할해서 올리더라도 무리가 있을 것 같습니다.

 

 

카테고리를 제거할까 하다가 문득 든 생각이 아이디어도 있고 로직도 있는데 테스트 해 볼 적당한 데이터를 구하기

어려운 경우가 많기에 공유의 목적으로 존치하기로 결정했습니다.

 

 

보유하고 있는 데이터는 다음과 같습니다.

 

@. 코스피 종목 마스터 데이터

 

@. 코스피 체결 틱 데이터

@. 코스피 호가 틱 데이터

@. 코스피 체결 1분 데이터

@. 코스피 체결 3분 데이터

@. 코스피 체결 5분 데이터

@. 코스피 체결 10분 데이터

@. 코스피 체결 30분 데이터

@. 코스피 체결 60분 데이터

@. 코스피 체결 일 데이터

 

@. 코스닥 종목 마스터 데이터

 

@. 코스닥 체결 틱 데이터

@. 코스닥 호가 틱 데이터

@. 코스닥 체결 1분 데이터

@. 코스닥 체결 3분 데이터

@. 코스닥 체결 5분 데이터

@. 코스닥 체결 10분 데이터

@. 코스닥 체결 30분 데이터

@. 코스닥 체결 60분 데이터

@. 코스닥 체결 일 데이터

 

@. 실시간 지수 틱 데이터

 

@. 코스피200 지수 일 데이터

@. 코스피200 지수 틱 데이터

 

@. 실시간 프로그램 매매 틱 데이터

 

@. 실시간 거래원 틱 데이터

 

@. 실시간 투자자별 매매 동향 틱 데이터

 

@. 거래일별 개장 폐장시각 데이터

 

@. 거래일별 주식 상한가 데이터

 

@. 거래일별 VI(동적/정적완화장치발동) 틱 데이터

 

@. 월물별 주야간 선물 종목 마스터 데이터

 

@. 주간 선물 체결 틱 데이터

@. 주간 선물 체결 분 데이터

@. 주간 선물 호가 틱 데이터

 

@. 주간 옵션 체결 틱 데이터

@. 주간 옵션 호가 틱 데이터

 

@. 월물별 주야간 옵션 종목 마스터 데이터

 

@. 야간 선물 체결 틱 데이터

@. 야간 선물 체결 분 데이터

@. 야간 선물 호가 틱 데이터

 

@. 야간 옵션 체결 틱 데이터

@. 야간 옵션 호가 틱 데이터

 

 

목록에 누락된 내역이 있거나 신규로 추가되는 데이터가 있을시 추가 하겠습니다.

 

 

필요한 시세데이터가 있다면 필요한 데이터의 명칭과 기간, 연락처(휴대전화 또는 이메일)를 비밀댓글로 남겨 주시면

연락드리겠습니다.

 

 

감사합니다.

 

 

덧1)

시세데이터, 개발의뢰 카테고리 관련 안내
http://systemtraders.tistory.com/notice/989

 

 

Posted by 투자의神
증권사 API2017. 10. 19. 13:46

 

 

API란?

구글에서 "API"를 키워드로 검색하면,

API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다.

라고 친절히 안내 해줍니다.

 

 

증권사 API란?

주식, 선물, 옵션 투자를 위해 많은 사람들이 사용하고 있는 HTS, MTS와 같이 시세와 관련된 데이터를 보관하고 있는

증권사 서버에 접속하여 데이터를 조회하거나 주문을 내거나 잔고 조회를 할 수 있는 일종의 커스터마이징 형태의

"증권사 서버 접속 모듈 프로그램"이라고 이해하면 쉽습니다.

 

 

이러한 API를 이용하는 이유는,

HTS, MTS로 시세 데이터를 조회하고 주문을 내기까지 여러 프로세서들을 거치게 되는데요.

사람의 눈을 통해 직관적으로 데이터를 조회하고 해당 데이터(차트, 거래량, 주가, 뉴스, 공시 등 많은 정보)를 기초로

매매 판단을 하기까지 시간이 많이 걸리므로 중요한 진입과 청산의 타점에서는 수익이 감소할 수 밖에 없습니다.

 

 

때문에 미리 입력된 일정의 알고리즘을 통해 컴퓨터 프로그램이 스스로 증권사 서버에 접속하여 데이터를 주고 받고

빠르고 정확하게 진입과 청산하여 보다 높은 수익을 얻기 위함입니다.

 

 

현재 제가 사용하고 있는 증권사는 eBest(이베스트)투자증권이며 접속서버는 일반서버가 아니라 VIP고객에게만

공개되는 VIP서버입니다.

 

 

이베스트투자증권 이외에도 현존하는 대부분의 국내 증권사에서도 API서비스를 제공하고 있습니다.

 

 

오늘은 블로그 첫 개설일이자 본 글이 첫 포스팅이므로 간략하게 적도록 하고

이베스트투자증권의 API에 대한 자세한 내용은 다음 기회에 포스팅 하겠습니다.

 

 

Posted by 투자의神