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

Python 바이낸스 선물자동매매 개발 가이드 ep1.프롤로그&패키지 설치

by 행복론자 2022. 12. 29.

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

 

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

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

jsp-dev.tistory.com

 

안녕하세요? 최근 오랜만에 글을 올렸습니다. 

바이낸스 거래소를 이용한 선물거래자동매매 시스템 개발 가이드 전자책을 출시했습니다.

위 글은 책을 통해 얻을 수 있는 것들을 담은 소개글입니다. 

책에 목차를 보시면 아시겠지만 Python 기초내용부터 프로젝트 개발 과정이 담겨있습니다.

 

좋은 블로그, 유튜브들이 많기 때문에 사실은 책이 아니더라도 전과정을 인터넷에서 무료로 배우실 수도 있을 것입니다.

저또한 알게 모르게 많은 매체의 도움을 받았을 것이라 생각합니다.

 

책을 구매해주는 분들께서는 지불한 금액에 맞는 서비스를 받는 것이 당연합니다.

하지만 블로그만으로도 어느 정도 도움이 되고 싶어서 책의 일부 내용을 시리즈로 나눠 무료로 공개하려고 합니다.

 

오늘은 간단히 프롤로그 겸 패키지 설치입니다.

그 전에 당연히 API 발급 및 API Key 저장을 마쳐야합니다.

이 과정은 다음 글을 참조해주세요

2022.07.21 - [파이썬/가상화폐] - Python Binance API 신청법/사용법 바이낸스 API키 발급 받아 저장하기

 

Python Binance API 신청법/사용법 바이낸스 API키 발급 받아 저장하기

Binance에서 API를 이용한 프로그램을 만드려고 합니다. 그러려면 기본적으로 API KEY를 발급받아야겠죠? 오늘은 세계 1등 거래소 BINANCE의 API를 발급받아 저장하는 방법에 대해 알아보겠습니다. 먼저

jsp-dev.tistory.com

 

 

선물시스템 개발 패키지 어떤 것을 쓸까

가상화폐 거래소 API 사용을 도와주는 패키지로는 대표적으로 CCXT가 있습니다.

많이들 사용하는 것 같고 편리한 것 같지만 저는 단순히 웹소켓(Websocket)을 사용하려면 유료 버전을 구매해야해서 사용하지 않았습니다.

 

그러나 현재는 Websocket까지 무료로 지원한다고 들어서 사실 프로그램 개발에 CCXT를 사용하지 않을 이유가 딱히 떠오르진 않습니다. 굳이 억지로 꼽자면 CCXT가 자기들 마음대로 기능을 변경한다던지 사용에 제한을 걸 수도 있기 때문에 공식 거래소에서 제공하는 라이브러리가 아니라 사용하지 않는다고 할 수도 있겠습니다.

 

 

binance-future-connector-python

CCXT를 사용하지 않는 대신 Binance에서 지원하는 binance-future-connector-python를 사용하도록 하겠습니다.

 

Binance 선물거래용 API이며 거래소에서 공식적으로 제공하는 것이기 때문에 믿고 사용할 수 있습니다.

 

설치 과정을 알아보겠습니다.

Anaconda prompt를 실행시킵니다. (windows 검색 > anaconda prompt 실행)


이후 앞서 만든 가상환경 trader_env를 활성화시킵니다.
명령어는 다음과 같습니다. (가상환경명은 trader_env입니다.)

conda activate trader_env

 

명령어를 실행하면 해당 가상환경이 활성화되면서 다음처럼 구분이 됩니다.

 

가상환경을 활성화했으니 필요한 패키지를 설치합니다. 다음 명령어를 입력하고 다시 엔터를 누릅니다. 

pip install binance-futures-connector

 

별다른 문제없이 설정이 끝나면 정상입니다. 만약 에러가 난다면 혹시 오타가 있진 않았는지 확인해보시기 바랍니다.

 

우리가 설치한 패키지는 binance 선물거래 API 사용을 간편하게 도와줄 도구라고 생각하시면 되며 앞으로 다룰 내용들은 아래 링크에 존재하는 샘플 코드들을 기반으로 합니다. 
따라서 API 파트 및 프로젝트를 진행하며 API 문서라고 하면 아래 링크를 의미한다고 기억해주시기 바랍니다. 

https://github.com/binance/binance-futures-connector-python

그럼 이제 Binance Future API를 한번 사용해보도록 하겠습니다.
main.py에 다음 코드를 붙여넣고 정상적으로 실행되는지 확인해보시기 바랍니다.
main.py

from binance.cm_futures import CMFutures

cm_futures_client = CMFutures()

# get server time
print(cm_futures_client.time())

 

 

실행결과는 다음과 같이 나오는게 정상이며 main.py에서 작성한 코드는 선물 API 서버의 시간을 체크한 것입니다. 

{'serverTime': 1669818587460}

 

 

그럼 본격적인 API 사용전에 발급받은 API Key들을 불러와 잘 저장했는지 확인하는 테스트 코드를 실행해보도록 하겠습니다.

import os

API_KEY = os.getenv("BINANCE_API_KEY")
API_SECRET = os.getenv("BINANCE_SECRET_KEY")

print(API_KEY, API_SECRET)

 

 

위 코드에서 사용하는 os 패키지는 운영체제에 관한 정보를 조회할 수 있게 해주며 이를 이용해 환경변수로 설정한 값들을 가져올 수 있는 것입니다. 코드의 정상적인 실행결과는 각자 저장한 BINANCE_API_KEY와 BINANCE_API_SECRET_KEY가 나오면 됩니다.

Key값을 그대로 변수에 넣어 사용해도 프로그램 동작에는 문제가 없지만 API Key는 절대로 외부에 노출되어서 안되기 때문에 코드상에도 확인이 불가해야 합니다.
또한 API Key를 이용해 출금이 되지 않도록 권한설정을 하시기 바라며, 내 PC의 IP에서만 API를 이용할 수 있도록 제한할 수 있습니다. 이 기능을 사용하기를 적극권장드립니다. 
(* 해당설정은 API 발급받았던 Binance 웹/앱 API Management 페이지에서 가능합니다.)

 

이것으로 패키지 설치까지 마쳐봤습니다.

다음은 레버리지 설정을 해보겠습니다. 

 


같이 읽어보면 좋은 글

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

 

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

댓글