본문 바로가기
파이썬/가상화폐

Python 바이낸스 거래소 선물자동매매 개발 가이드 ep6.호가창 조회

by 행복론자 2023. 1. 13.

 

아래는 지난 글인 캔들 데이터 조회입니다.

2023.01.06 - [파이썬/가상화폐] - Python 바이낸스 거래소 선물자동매매 개발 가이드 ep5.캔들 데이터 조회

 

Python 바이낸스 거래소 선물자동매매 개발 가이드 ep5.캔들 데이터 조회

지난 글에서는 ep4. 잔고, 포지션 조회를 다뤄봤습니다 2023.01.05 - [파이썬/가상화폐] - Python 바이낸스 거래소 선물자동매매 개발 가이드 ep4.잔고 포지션 조회 Python 바이낸스 거래소 선물자동매매

jsp-dev.tistory.com

 

 

호가 조회 API는 현재 호가창에서 최고매수호가, 최고매도호가 및 대기주문수량을 얻어오며 본 프로젝트는 호가창 정보를 조회해 포지션 오픈/종료시 주문 접수 가격으로 사용할 예정입니다.

아래는 웹브라우저에서 확인한 Binance 호가창의 모습입니다. 

 

 

이에 대해 간단히 설명하면, 위 호가창에서 현재 체결가격이 16803.0 USDT이고 현재가 바로 위에 매도호가영역 중 16803.0이 최고매도호가(현재 제일 높은 매도호가, best ask price)이며 현재가 아래 영역 중 16802.9이 최고매수호가(현재 제일 높은 매수호가, best bid price)를 의미합니다.

이 정보를 가져오는 샘플 코드는 링크에 있으며 바로 사용해보도록 하겠습니다.
main.py

import logging
from binance.um_futures import UMFutures
from binance.lib.utils import config_logging

config_logging(logging, logging.DEBUG)

um_futures_client = UMFutures()

logging.info(um_futures_client.book_ticker("BTCUSDT"))

 

실행결과는 다음과 같습니다.

 

잘 안 보이실 수 있어 조회결과만 놓고 살펴보겠습니다.
응답 결과는 간결하며 특징은 호가창에 전체 정보를 가져오는 것이 아니라 최고매수/매도호가만 하나씩 가져옵니다.

{'symbol': 'BTCUSDT', 'bidPrice': '16800.10', 'bidQty': '12.033', 'askPrice': '16800.20', 'askQty': '23.596', 'time': 1670404950049}

 

 

위 결과에서 ‘bidPrice’는 최고매수호가, ‘bidQty’는 매수주문량을 의미하며 반대로 ‘askPrice’는 최고매도호가, ‘askQty’는 매도주문량을 의미합니다. 
이렇게 가격(캔들, 호가) 조회 방법까지 알아봤지만 약간의 맹점이 있습니다. 
바로 이렇게 조회한 데이터가 최신이 아닐 수 있다는 점입니다. 
그 이유는 API 호출은 다음과 같은 프로세스로 이루어지기 때문입니다.

1.사용자(Client)  > Python 프로그램(API를 이용한 데이터 요청)
2.거래소 > 사용자(Client)의 요청수신 >  데이터 전달 > Python 프로그램(데이터수신)

즉, 사용자가 요청을 보내고 나서 API 서버로부터의 응답을 기다리는 사이에 가격이나 호가가 충분히 변경될 수 있습니다.
물론 가격을 조회하는 코드를 실행해보면 금방 응답이 오기 때문에 일반적인 경우 응답을 주고 받는 사이에 데이터 변경의 폭이 크지 않아 프로그램을 운영하는데 큰 문제가 될 정도는 아닙니다. (지표발표 및 긴급 이슈로 인한 급등락 발생시에는 큰 차이가 발생할 수 있습니다.)

이에 대한 대안으로는 데이터를 주고 받는 측끼리 서로 연결한 뒤 이후부터 별 다른 요청없이도 계속해서 최신 데이터를 전송해주는 Websocket을 사용하는 방법이 있습니다. 이 방법은 앞으로 온오프라인 강의에서 진행할 예정이라 본 프로젝트를 진행하는 현재로서는 약간의 빈틈이 있다는 정도로만 알고 넘어가셔도 충분합니다. 

 

 


같이 읽어보면 좋은 글

2022.12.27 - [파이썬/가상화폐] - [전자책] 바이낸스 코인선물자동매매 시스템 개발 방법을 담은 책이 출시되었습니다.

 

[전자책] 바이낸스 코인선물자동매매 시스템 개발 방법을 담은 책이 출시되었습니다.

🎁 바이낸스 자동매매 시스템 개발 방법을 담은 책이 출시되었습니다. "나 대신 일해주는 코인선물자동매매 프로그램 개발, 노하우 및 소스를 모두 공개합니다" ✔️ Q: 무슨 내용인가요? Python

jsp-dev.tistory.com

 

2022.11.05 - [파이썬/가상화폐] - [공지] 코인거래소별 프리미엄 체크봇 개발 가이드와 풀소스 전자책 | binance bybit | 업비트 김치프리미엄

 

[공지] 코인거래소별 프리미엄 체크봇 개발 가이드와 풀소스 전자책 | binance bybit | 업비트 김치프

https://kmong.com/gig/417785 거래소별 코인 프리미엄 알림봇 개발 가이드를 드립니다 | 36000원부터 시작 가능한 총 평점 5점의 3개 총 작업 개수 완료한 총 평점 5점인 JSDEV의 전자책, 투잡·재테크 전자

jsp-dev.tistory.com

 

반응형
이 포스팅은 쿠팡파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

댓글