Description | Installation | How To | Documentation | Examples | Change Log | Wiki | Social | Notifications | Bugs | Contributing | Commercial Support
An unofficial Python API to use the Binance REST API`s (com+testnet, com-margin+testnet, com-isolated_margin+testnet, com-futures+testnet, us, tr) in a easy, fast, flexible, robust and fully-featured way.
Part of 'UNICORN Binance Suite'.
import unicorn_binance_rest_api
api_key = "aaa"
api_secret = "bbb"
ubra = unicorn_binance_rest_api.BinanceRestApiManager(api_key, api_secret, exchange="binance.com")
# get market depth
depth = ubra.get_order_book(symbol='BNBBTC')
print(f"{depth}")
# get all symbol prices
prices = ubra.get_all_tickers()
print(f"{prices}")
# get the used weight:
# https://github.com/binance-us/binance-official-api-docs/blob/master/rest-api.md#limits
print(f"Used weight: {ubra.get_used_weight()}")
Get the right logger:
logging.getLogger("unicorn_binance_rest_api")
This is a fork of Sam McHardy`s python-binance 0.7.10 - package. Extended, cleaned up and reduced to pure REST tasks, with PRs added and improved. No asyncio support!!
The Python module UNICORN Binance REST API provides an API to the Binance REST API`s of Binance (+Testnet), Binance Margin (+Testnet), Binance Isolated Margin (+Testnet), Binance Futures (+Testnet), Binance COIN-M Futures, Binance US, Binance TR and Binance JEX and needs to be used with a valid api_key and api_secret from the Binance Exchange www.binance.com, testnet.binance.vision, www.binance.us or www.jex.com.
Be aware that the Binance REST API is request based. if you want to receive high frequency and high volume data, you can use the UNICORN Binance Websocket API in combination.
- Supported exchanges:
Exchange | Exchange string |
---|---|
Binance | BinanceRestApiManager(exchange="binance.com") |
Binance Testnet | BinanceRestApiManager(exchange="binance.com-testnet") |
Binance Margin | BinanceRestApiManager(exchange="binance.com-margin") |
Binance Margin Testnet | BinanceRestApiManager(exchange="binance.com-margin-testnet") |
Binance Isolated Margin | BinanceRestApiManager(exchange="binance.com-isolated_margin") |
Binance Isolated Margin Testnet | BinanceRestApiManager(exchange="binance.com-isolated_margin-testnet") |
Binance USD-M Futures | BinanceRestApiManager(exchange="binance.com-futures") |
Binance USD-M Futures Testnet | BinanceRestApiManager(exchange="binance.com-futures-testnet") |
Binance Coin-M Futures | BinanceRestApiManager(exchange="binance.com-coin-futures") |
Binance US | BinanceRestApiManager(exchange="binance.us") |
Binance TR | BinanceRestApiManager(exchange="trbinance.com") |
- Helpful management features like
get_used_weight()
,
The current dependencies are listed here.
If you run into errors during the installation take a look here.
A wheel and a source file of the latest release with pip
from PyPI
pip install unicorn-binance-rest-api --upgrade
A conda package of the latest release with conda
from Anaconda via CONDA-FORGE.
conda install -c conda-forge unicorn-binance-rest-api
conda update -c conda-forge unicorn-binance-rest-api
From source of the latest release with PIP from Github
Run in bash:
pip install https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/archive/$(curl -s https://api.github.com/repos/lucit-systems-and-development/unicorn-binance-rest-api/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")').tar.gz --upgrade
Use the below command with the version (such as 1.3.0) you determined here:
pip install https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/archive/1.3.0.tar.gz --upgrade
From the latest source (dev-stage) with PIP from Github
This is not a release version and can not be considered to be stable!
pip install https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/tarball/master --upgrade
Conda environment, Virtualenv or plain Python
Download the latest release or the current master branch and use:
- ./environment.yml
- ./requirements.txt
- ./setup.py
https://unicorn-binance-rest-api.docs.lucit.tech/CHANGELOG.html
- example_doing_something.py
- example_easy_migration_from_python-binance.py
- example_historical_data.py
- example_logging.py
- example_orders.py
- example_version_of_this_package.py
https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api
https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/wiki
To receive notifications on available updates you can
the repository on GitHub, write your
own script
with using
is_update_availabe()
.
Follow us on Twitter or on Facebook for general news about the unicorn-binance-suite!
To receive news (like inspection windows/maintenance) about the Binance API`s subscribe to their telegram groups:
- https://t.me/binance_api_announcements
- https://t.me/binance_api_english
- https://t.me/Binance_JEX_EN
- https://t.me/Binance_USA
- https://t.me/TRBinanceTR
- https://t.me/BinanceDEXchange
- https://t.me/BinanceExchange
List of planned features - click if you need one of them or suggest a new feature!
Before you report a bug, try the latest release. If the issue still exists, provide the error trace, OS and Python version and explain how to reproduce the error. A demo script is appreciated.
If you dont find an issue related to your topic, please open a new issue!
UNICORN Binance REST API is an open source project which welcomes contributions which can be anything from simple documentation fixes and reporting dead links to new features. To contribute follow this guide.
Do you need a developer, operator or consultant?
Contact me for a non-binding initial consultation via my company LUCIT from Vienna (Austria) or via Telegram.