시세데이터2019. 1. 26. 12:30

 

 

시세 데이터 공유 관련 안내 페이지입니다.

 

 

관련 상세 내용은 오픈 채팅방에 입장한 후, 채팅방 상단의 공지 사항을 통해 확인 하시기 바랍니다.

 

 

Posted by 투자의神
암호통화 API2018. 1. 17. 11:30

 

 

가상통화(가상화폐, 가상증표, 전자통화, 이하 가상통화로 통일) 를 대상으로 알고리즘 자동매매 시스템을 구축하기 위해 기존의 알고리즘과 별도의 알고리즘에 대한 검증 작업을 하려다보니 많은 종목의 많은 데이터를 확보하는 것이 중요하다고 판단하여 어쩌다보니 중국 상해(상하이)에 위치한 바이낸스(Binance)의 API를 다뤄보게 되었습니다.

 

 

국내의 가상통화 거래소도 있는데 굳이 해외 거래소의 API를 다뤄보게 된 조금 더 상세한 이유는 다음과 같습니다.

 

- 국내의 경우 서버 과부하를 이유로 조회 제한이 심한 상태이다.

 

- 국내의 경우 상장된 종목의 수가 대체로 적다.

 

- (추후 다뤄볼 예정인) 업비트의 경우 상장된 종목이 100여종목이 넘고 API 도메인은 있지만 현재까지는 공식적으로 지원하지 않고 있다.

 

- 바이낸스의 경우 API 조회제한이 분당 1200회로 빗썸과 동일하다 (빗썸은 초당 20회로 제한)지만 빗썸 서버는 트래픽 폭주로 다운되는 경우가 잦아 안정적인 시세의 확보가 불가능하다.

 

- 이른바 김치 프리미엄(김프)으로 인해 글로벌 시세와 이격이 상당하고 단기 조정권의 투매 흐름이 나타날시 글로벌 시세와의 이격이 더욱 현격하게 벌어진다.

 

 

현재 업비트, 고팍스, 빗썸 등에서 시세를 수신하여 데이터베이스에 저장하고 있기는 하지만 조회제한, 안정성 문제 등의 이유로 인해 바이낸스의 API를 다뤄보게 되었습니다.

 

 

바이낸스가 중국 업체이긴하나 한글 웹페이지를 서비스하고 있기 때문에 한국의 사이트와 비슷한 정도의 편의성으로 이용할 수 있다고 봅니다.

 

 

다만, 해외 업체이기 때문에 본인 확인시에는 국내의 주민등록증, 운전면허증으로는 되지 않고 오로지 여권(Passport)으로만 가능합니다.

 

 

필자는 여행을 좋아하기에 여권을 보유하고 있는덕에 쉽게 본인 인증을 받을 수 있었습니다.

 

 

이외 API 를 신청하고 API Key와 Secret Key를 발급 받는 과정을 국내와 대동소이 하므로 생략합니다.

 

 

빗썸의 경우에는 샘플 코드를 제공하지만 바이낸스는 자체적으로 제공하는 샘플 코드는 찾아볼 수 없고 대신 GitHub(깃)을 통해 다양한 샘플 코드들이 공개되고 있으니 참고하면 됩니다.

 

 

 

▲ 제공되는 여러 모듈들에 대한 정보입니다.

 

▲ 시세 조회는 rest-api 를 이용하게 될 것입니다.

 

 

시세 조회를 함에 있어서 바이낸스 서버에 부하를 가하면 안되기 때문에 바이낸스 측에서는 각 api 별로 조회제한을 설정 해두었는데 어느정도의 제한 설정이 되어 있는지는 아래의 링크를 클릭하여 exchangeinfo.json 파일을 다운로드 받아 확인할 수 있습니다.

 

 

JSON 파일이라고는 하지만 메모장 등의 텍스트 에디터로 확인할 수 있는 형식의 문서이니 시작부터 겁 먹을 이유는 없습니다.

 

 

 

▲ 필자는 기존에 다운로드 받아 별도로 저장해둔 exchangeinfo.json 파일이 있기 때문에 exchangeinfo2.json 으로 이름을 변경하여 저장하였습니다.

 

▲ 보시다시피 메모장에서 해당 파일을 열어볼 수 있습니다.

 

▲ 다만 줄바꿈이 되어 있지 않다보니 가독성이 좋지 않아 별도로 파싱(Parsing)과정이 필요합니다.

 

 

 

▲ 보기 쉽게 별도로 정렬 한 모습입니다.

 

▲ 분당 조회 요청 제한 횟수, 초당 주문 제한 횟수, 1일간 주문 제한 횟수 정보를 먼저 볼 수 있습니다.

 

▲ 위 이미지는 ETH to BTC의 거래로써 심볼은 ETHBTC입니다.

 

▲ baseAsset 는 ETH (이더리움)으로, 거래 종목 코드라고 보시면 됩니다.

 

▲ 이외에도 수신받을 수 있는 데이터의 자릿수, 주문 가능 유형, 최소 가격, 최대 가격, 최소 틱 크기, 최소 주문 수량, 최대 주문수량 등의 기본 정보가 상세하게 제공되고 있습니다.

 

 

위 내용중 제일 중요한것을 꼽자면 단연 rateLimitType 입니다.

 

 

앞서 각 API별로 조회 제한을 두고 있다고 말씀 드렸는데요.

 

 

만약 이 조회 제한을 어기고 서버에 부하를 주게 되면 최소 몇시간에서 최대 3일 동안 조회 요청에 대해 서버측에서 거부를 하기 때문에 이런 치명적인 상황을 만들지 않도록 잘 계산하여 반복 조회를 실행하기 바랍니다.

 

 

참고로 필자의 경우에는 바이낸스에 상장되어 있는 200개 이상의 전 종목의 데이터를 수신하기 위해 1분당 5회만 조회 하도록 해두었다가 현재는 바이낸스 API를 사용하지 않고 있는데 그 이유는 마지막에 적겠습니다.

 

 

아래의 링크를 클릭하면 24hr.json 파일을 다운로드 할 수 있으며 역시 메모장 등의 텍스트 편집기로 열어볼 수 있습니다.

https://api.binance.com/api/v1/ticker/24hr

 

 

 

▲ 24hr.json 파일을 메모장으로 열어본 모습입니다.

 

▲ 역시나 가독성 따위는 고려하지 않은 출력 화면을 볼 수 있는데 그 이유는 json 파일은 컴퓨터끼리의 통신을 위한 것이지 각 사용자가 편리하게 열람하라고 만들어 둔 것이 아니기 때문입니다.

 

 

 

▲ 어떤 내용인지 살펴보기 위해 가독성을 높이려고 정리 해봤습니다.

 

▲ 앞서 조회 해보았던과 동일한 종목인 ETHBTC의 체결 데이터입니다.

 

▲ 가격변화(대비), 등락율, 평균 체결가, 직전 체결가, 직전 체결 수량, 매수가격, 매수수량, 매도가격, 매도수량, 시가, 고가, 저가, 시가시각(Unix TimeStamp), 종가시각(Unix TimeStamp), 체결건수 등의 정보를 제공하고 있습니다.

 

 

체결 데이터에 대한 상세한 내용을 보여주고 있습니다.

 

 

결국 앞서 포스팅했던 빗썸, 고팍스 API와 크게 다르지 않고 사용하기 어렵지 않게 데이터를 제공하고 있습니다.

 

 

JSON 파일을 수신받아 필요한 데이터는 파일이나 데이터베이스에 저장 하거나 연산을 할 수도 있고 rest-api.md 이외의 다른 api를 이용하여 주문을 하는 등의 행위에 대해 처리할 수 있습니다.

 

 

이상으로 바이낸스 api를 다뤄보았으며 추가 내용은 뭔가 생각나거나 아니면 독자분들의 별도 요청이 있을때 진행할 예정입니다.

 

 

끝으로, 바이낸스 API를 다뤄보았지만 사용하지 않고 있는 이유를 말씀 드리겠습니다.

 

 

지금까지 다뤄본 많은 거래소의 API들이 필자에게 익숙한 증권사의 API와 기본 구조가 다른데 결정적으로 누락될 수 있는 데이터가 있기 때문에 정밀한 시뮬레이션을 통한 로직 검증에는 다소 무리가 있으며 이정도 규모의 데이터라면 이미 시세 데이터를 수신받고 있는 업비트와 크게 다르지 않기 때문에 중복으로 저장할 이유가 없다고 판단되었습니다.

 

 

증권사의 실시간 체결 데이터는 사용자가 별도로 요청하지 않아도 개장전 실시간 체결 데이터 요청을 해두면 장중 발생한 모든 체결 데이터를 사용자에게 전송 해주지만 가상통화 거래소의 실시간 체결 데이터는 매번 사용자가 요청해야 되고 조회 요청 제한을 두고 있기에 중간에 값이 누락될 여지가 존재합니다.

 

 

어느 시장에서 어떤 데이터를 받아 거래를 하는지는 사실 큰 의미는 없습니다.

 

 

일시적이지 않고 꾸준히 수익을 낼 수 있는 로직을 보유하여 알고리즘 자동매매 시스템을 구축할 수 있느냐가 최대 관건이지 누락없는 데이터를 아무리 잘 제공한다 하더라도 수익 로직을 가지지 못하면 의미가 없으니 말입니다.

 

 

이상으로 "바이낸스 API 다뤄보기 #1" 마칩니다.

 

 

향후 필자가 주로 사용하게 될 거래소가 어디일지 또 어떤 API를 사용하게 될지에 대한 것은 확정된 것이 없는 상황입니다.

 

 

새로운 거래소와 API를 찾을수도 있고 기존에 다뤄본 거래소와 API가 될수도 있습니다.

 

 

호가창에서 뵙겠습니다.

 

 

Posted by 투자의神
시스템 성과 합산2017. 12. 6. 18:30

 

 

 

 

 

새벽에 눈이 떠지는 바람에 사무실에 출근해서 일 좀 보고 아침 일찍 낚시를 다녀왔습니다.

 

 

어차피 잃을 사람은 어떻게 해도 잃고 벌 사람은 어떻게든 벌게 되어 있는 것이므로 언제부터 신경 썼다고 시스템에 신경 쓸 생각도 없고 편안히 잘 다녀왔습니다.

 

 

얼마전 인천 영흥도 낚싯배 사고로 걱정하는 분들이 많으셨는데 필자의 경우 선상 낚시(배 위에서 낚시)는 즐기지 않는 편이라 다행이라면 다행이지요.

 

 

여러분의 염려덕에 잘 다녀왔습니다.

 

 

금일의 수익으로써 대략 한달여전의 복수전을 겨우 한 듯 보입니다.

 

 

새벽에 사무실에서 잠시 HTS를 켜보고는 "아 이거 갭상승 나오면 시스템 역방향 걸리겠는데?" 싶은 생각이 들었습니다만 다행히 그동안 잠잠하던 V2 7-72와 10-72가 침묵을 깨고 거래를 했고 어제까지 거래를 했던 13-64는 침묵을 지켰는데요.

 

 

7-72와 10-72가 하방으로 정방향 거래를 했고 13-64는 역방향에 걸렸지만 일전에도 말씀 드린적이 있는 여러 조건값에 의해서 거래 없이 관망만 했네요.

 

 

사실 예상 했던 흐름은 금일 갭상승 흐름이 나오면 바로 위에 저항대가 강하게 형성되어 있기 때문에 7-72와 10-72에서 역방향으로 큰 손실이 발생하고 13-64에서 일부 만회하는 것이었는데 예상이 보기좋게 빗나갔습니다.

 

 

그래도 수익을 내주니 기특하네요.

 

 

오늘 적당히 수익 냈으면 괜찮았을텐데 종가가 저가 부근이라 이 흐름을 이어 받아 내일 갭하락 출발후 상승 전환이나 갭 상승후 하락 흐름이 나오면 한번 당할것 같습니다.

 

 

물론 이 예상이 또 다시 빗나가기를 바라지만 말입니다.

 

 

오늘은 낚시로 바빴고 내일과 모레는 선약이 있으니 이번 주말경에는 일전에 예고했던대로 다른 시스템의 성과도 정리하여 올려볼까 생각중이니 많은 격려와 응원 바랍니다.

 

 

 

Posted by 투자의神
시스템 03호2017. 12. 6. 18:00

 

 

 

 

 

Posted by 투자의神
시스템 02호2017. 12. 6. 17:30

 

 

 

 

 

 

Posted by 투자의神
시스템 01호2017. 12. 6. 17:00

 

 

 

 

 

Posted by 투자의神
증권사 API2017. 12. 6. 00:30

 

 

이베스트 투자증권에서 제공하는 "주식현재가및호가_실습교육용_연결체크" 입니다.

 

 

xingAPI Guide #1부터의 내용을 따라오면서 직접 실습 해보기 위해서는

 

1. 이베스트 투자증권 회원가입

 

2. 모의투자 신청 또는 비대면 계좌 개설

 

3. xingAPI 사용등록

 

위 3개는 기본적으로 해두셔야 하며

 

 

이외에 부가적으로 독자분들의 컴퓨터에 Microsoft Excel 이 설치되어 있어야 하며 Excel에서 Visual Basic 옵션이 활성화 되어 있어야 하는데 이 부분은 일전에 포스팅 했던 내용으로 대체할테니 아래의 링크를 확인 해주세요.

( http://systemtraders.tistory.com/183?category=723909 )

 

 

샘플을 별도로 살펴보지는 않겠고 첨부 파일로 등록 해둘테니 필요한분은 다운로드 받아서 천천히 살펴보기 바랍니다.

 

 

이해가 잘 안되는 부분에 대해서는 VBA 코드를 포함한 질문 내용을 Comment로 남겨주세요.

 

 

주식현재가및호가_실습교육용_연결체크.xlsm

 

 

 

Posted by 투자의神
시스템 성과 합산2017. 12. 5. 18:30

 

 

 

 

모처럼 원웨이에 가까운 흐름이 나타났지만 장중에 HTS를 볼 시간도 없고 볼 필요도 없기에 모르고 있다가 점심경에 만난 손님중 한분이 시장 얘기를 하셔서 아이고 블로그에 공개한 3개 시스템 도합 한 1500~2000만원쯤 손실이 발생하겠구나 싶은 생각이 들었는데 조금전 사무실에 돌아와서 보니 오히려 가장 걱정이 컸던 2개 시스템은 거래가 없었고 아쉽게 2~3틱(호가) 차이로 역방향 진입 했겠구나 싶었던 시스템인 13-64 혼자 거래를 했고 수익을 내두었네요.

 

 

오랜만의 수익다운 수익을 거둔것 같은데 약 한달전 만기일에 입은 내상을 회복하기에는 역부족인것 같습니다.

 

 

7-72와 10-72는 거의 한달 가까이 거래를 쉬고 있고 12월물 옵션 만기일까지는 불과 일주일 남짓 남은 상황이니 곧 거래를 하리라 생각합니다.

 

 

비트코인, 이더리움 등의 가상화폐에 대한 관심도와 열기가 나날이 높아지는 것 같아 관련하여 글을 적어보려고 "가상화폐" 카테고리를 만들어 두었으니 가상화폐에 관심있는분은 한번 들러 보세요.

 

 

날씨가 많이 춥고 연말이 다가오고 있습니다.

 

 

남은 거래일동안 수익 가득하시길 바랍니다.

 

 

 

Posted by 투자의神
시스템 03호2017. 12. 5. 18:00

 

 

 

 

 

Posted by 투자의神
시스템 02호2017. 12. 5. 17:30

 

 

 

 

 

Posted by 투자의神