一个python api,以一种简单、快速、灵活、健壮和功能齐全的方式使用binance websocket api。
unicorn-binance-websocket-api的Python项目详细描述
Unicorn Binance WebSocket API
使用一个简单、快速、灵活、健壮和功能齐全的方法来使用Binance Websocket API的(COM,泽西,敏捷/链)的Python API。创建到Binance的多路WebSocket连接,只需3行代码:
from unicorn_binance_websocket_api.unicorn_binance_websocket_api_manager import BinanceWebSocketApiManager
binance_websocket_api_manager = BinanceWebSocketApiManager(exchange="binance.com")
binance_websocket_api_manager.create_stream(['trade', 'kline_1m'], ['btcusdt', 'bnbbtc', 'ethbtc'])
还有4行用于打印接收:
while True:
oldest_stream_data_from_stream_buffer = binance_websocket_api_manager.pop_stream_data_from_stream_buffer()
if oldest_stream_data_from_stream_buffer:
print(oldest_stream_data_from_stream_buffer)
使用UnicornFy:
unicorn_fied_stream_data = UnicornFy.binance_com_websocket(oldest_stream_data_from_stream_buffer)
就这样!
说明
python模块UNICORN Binance WebSocket API 为Binance的二进制WebSocket API提供API ,Binance Jersey, Binance DEX和 Binance DEX Testnet并支持 所有公共流,如trade、kline、ticker、depth和blockheight,以及所有需要的私有用户数据流 与来自二进制交换的有效api_密钥和api_机密一起使用 www.binance.com或 www.binance.je-对于需要用户地址的dex www.binance.org或testnet.binance.org 你可以为testnet get funds。
该模块需要Python3.5.3或更高版本,因为它依赖于Pythons异步/并发的最新异步特性 处理。列出了当前依赖项 here。
请注意,binance websocket api只提供接收数据的功能。如果你想下订单,取款等等 在上,必须使用二进制rest api(com, je, org)组合。
Unicorn Binance WebSocket API有什么好处?
完全管理的WebSocket和100%自动重新连接!
支持的交换:
- Binance
BinanceWebSocketApiManager(exchange="binance.com")
- Binance Jersey
BinanceWebSocketApiManager(exchange="binance.je")
- Binance DEX
BinanceWebSocketApiManager(exchange="binance.org")
- Binance DEX testnet
BinanceWebSocketApiManager(exchange="binance.org-testnet")
- Binance
流正在处理异步/并发(python asyncio),每个流都在单独的线程中启动。
不使用Twisted模块,因此可以在守护应用程序中使用此库(与 python-daemon)。
如果由于临时技术问题而无法存储数据,可以将数据回退到 流缓冲区,它将接收数据存储在ram中,直到您能够再次以正常方式处理数据为止。
与UnicornFy兼容,以便从 将api端点加密到格式良好的python字典中。
有用的管理功能,如
get_binance_api_status()
、get_stream_info()
、get_stream_list()
,get_stream_statistic()
,is_websocket_uri_length_valid()
,replace_stream()
,wait_till_stream_has_started()
,get_current_receiving_speed()
还有更多,探索它们 here。Monitoring API service 还有一个check_command 对于ICINGA/nagios
在Linux、Mac和Windows上测试过多
如果你喜欢这个项目,请it on GitHub!如果你使用 UNICORN Binance WebSocket API在你的项目中, 在twitter上告诉我们@unicorn_data!
安装和升级
请注意:unicornfy不再是此包的一部分,请访问https://github.com/unicorn-data-analysis/unicorn_fy 更多信息。
最新版本的轮子,pip来自PyPI
pip install unicorn-binance-websocket-api --upgrade
来自最新版本的源,pip来自Github
Linux、MacOS,…
在bash中运行:
pip install https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api/archive/$(curl -s https://api.github.com/repos/unicorn-data-analysis/unicorn-binance-websocket-api/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")').tar.gz --upgrade
窗口
对您确定的版本(如1.3.8)使用下面的命令 here:
pip install https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api/archive/1.3.8.tar.gz --upgrade
来自最新的源(dev stage),pip来自Github
这不是一个发布版本,不能被认为是稳定的!
pip install https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api/tarball/master --upgrade
Conda environment,Virtualenv或普通的python
下载latest release 或者current master branch 并使用:
- /environment.yml
- /requirements.txt
- /setup.py
演示
如何
- Howto: UNICORN Binance WebSocket API
- Howto: Monitoring UNICORN Binance WebSocket API Manager with ICINGA2
文档
https://www.unicorn-data.com/unicorn-binance-websocket-api.html
来源,下载,示例,…
https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api
更改日志
https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api/blob/master/CHANGELOG.md
维基
https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api/wiki
接收通知
要接收有关可用更新的通知,您可以
^{a26上的存储库},写下你的
own script
使用binance_websocket_api_manager.is_update_availabe()
或
monitoring API service。
接收有关Binance API订阅其电报组的新闻(如检查窗口/维护):
如何报告错误或提出改进建议?
List of planned features- 如果需要或建议使用新功能,请单击!
在报告错误之前,try the latest release。如果问题仍然存在,提供错误跟踪,操作系统 以及python版本,并解释如何重现错误。一个演示脚本是赞赏的。
如果找不到与主题相关的问题,请打开新问题: https://github.com/unicorn-data-analysis/unicorn-binance-websocket-api/issues
贡献
UNICORN Binance WebSocket API是打开的 欢迎贡献的源项目,可以是从简单的文档修复到新功能的任何东西。到 贡献跟随 this guide。
我们开源!