LUCIT-UNICORNFY-Banner

GitHub Release GitHub Downloads Conda Release Conda Downloads PyPi Release PyPi Downloads License Supported Python Version PyPI - Status Language grade: Python Total alerts Unit Tests Azure Pipelines codecov Read the Docs Github Telegram Gitter

UnicornFy

Supported Exchanges | Installation | Change Log | Documentation | Examples | Wiki | Social | Notifications | Bugs | Contributing | Disclaimer

Convert received raw data from crypto exchange API endpoints into well-formed python dictionaries.

Part of 'UNICORN Binance Suite'.

import unicorn_fy

received_stream_data_json = {"stream": "[email protected]",
                             "data": {"e": "trade",
                                      "E": 1556876873656,
                                      "s": "BTCUSDT",
                                      "t": 117727701,
                                      "p": "5786.76000000",
                                      "q": "0.03200500",
                                      "b": 341831847,
                                      "a": 341831876,
                                      "T": 1556876873648,
                                      "m": True,
                                      "M": True}}

unicornfy = unicorn_fy.UnicornFy()

unicorn_fied_stream_data = unicornfy.binance_com_websocket(received_stream_data_json)
print(unicorn_fied_stream_data)

Output:

{'stream_type': '[email protected]', 'event_type': 'trade', 'event_time': 1556876873656, 'symbol': 'BTCUSDT',
 'trade_id': 117727701, 'price': '5786.76000000', 'quantity': '0.03200500', 'buyer_order_id': 341831847,
 'seller_order_id': 341831876, 'trade_time': 1556876873648, 'is_market_maker': True, 'ignore': True,
 'unicorn_fied': ['binance', '0.11.1']}

This lib is integrated into UNICORN Binance WebSocket API and can be activated by setting parameter output_default of BinanceWebSocketApiManager() to UnicornFy or for specific streams with the parameter output of create_stream() to UnicornFy.

Get the right logger:

logging.getLogger("unicorn_fy")

Supported Exchanges

Websockets

Exchange Docs Status
Binance (API) binance_com_websocket(stream_data_json) STABLE
Binance Testnet (API) binance_com_websocket(stream_data_json) STABLE
Binance Margin (API) binance_com_margin_websocket(stream_data_json) STABLE
Binance Margin Testnet (API) binance_com_margin_websocket(stream_data_json) STABLE
Binance Isolated Margin (API) binance_com_isolated_margin_websocket(stream_data_json) STABLE
Binance Isolated Margin Testnet (API) binance_com_isolated_margin_websocket(stream_data_json) STABLE
Binance Futures (API) binance_com_futures_websocket(stream_data_json) STABLE
Binance Futures Testnet (API) binance_com_futures_websocket(stream_data_json) STABLE
Binance Coin Futures (API) binance_com_coin_futures_websocket(stream_data_json) NEEDS_YOUR_HELP
Binance Coin Futures Testnet (API) binance_com_coin_futures_websocket(stream_data_json) NEEDS_YOUR_HELP
Binance Jersey (API) binance_je_websocket(stream_data_json) STABLE
Binance US (API) binance_us_websocket(stream_data_json) STABLE
Binance TR (API) trbinance_com_websocket(stream_data_json) STABLE
Binance JEX (API) jex_com_websocket(stream_data_json) STABLE
Binance DEX (API) binance_org_websocket(stream_data_json) NEEDS_YOUR_HELP
Binance DEX Testnet (API) binance_org_websocket(stream_data_json) NEEDS_YOUR_HELP

REST

  • none

If you like the project, please star it on GitHub!

Installation and Upgrade

The module requires Python 3.6.0 or above.

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-fy --upgrade

A conda package of the latest release with conda from Anaconda via CONDA-FORGE.

conda install -c conda-forge unicorn-fy

conda update -c conda-forge unicorn-fy

From source of the latest release with PIP from Github

Linux, macOS, ...

Run in bash:

pip install https://github.com/LUCIT-Systems-and-Development/unicorn-fy/archive/$(curl -s https://api.github.com/repos/lucit-systems-and-development/unicorn-fy/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")').tar.gz --upgrade

Windows

Use the below command with the version (such as 0.7.0) you determined here:

pip install https://github.com/LUCIT-Systems-and-Development/unicorn-fy/archive/0.7.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-fy/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

Change Log

https://unicorn-fy.docs.lucit.tech//CHANGELOG.html

Documentation

Examples

Project Homepage

https://github.com/LUCIT-Systems-and-Development/unicorn-fy

Wiki

https://github.com/LUCIT-Systems-and-Development/unicorn-fy/wiki

Social

Receive Notifications

To receive notifications on available updates you can watch the repository on GitHub, write your own script with using is_update_available() or you use the monitoring API service.

Follow us on Twitter or on Facebook for general news about the unicorn-binance-suite!

How to report Bugs or suggest Improvements?

List of planned features - click thumbs-up 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: https://github.com/LUCIT-Systems-and-Development/unicorn-fy/issues

Report a security bug!

Contributing

UnicornFy 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.

Contributors

Contributors

We love open source!

Disclaimer

This project is for informational purposes only. You should not construe this information or any other material as legal, tax, investment, financial or other advice. Nothing contained herein constitutes a solicitation, recommendation, endorsement or offer by us or any third party provider to buy or sell any securities or other financial instruments in this or any other jurisdiction in which such solicitation or offer would be unlawful under the securities laws of such jurisdiction.

If you intend to use real money, use it at your own risk.

Under no circumstances will we be responsible or liable for any claims, damages, losses, expenses, costs or liabilities of any kind, including but not limited to direct or indirect damages for loss of profits.

Arrange a free & no obligation consultation

Together we will clarify your needs and you will receive a detailed offer

Make an appointment now