Skip to main content

Ccxw - CryptoCurrency eXchange Websocket Library

Project description

CCXW - CryptoCurrency eXchange Websocket Library

This library is designed to fetch data from exchange WebSocket APIs and store or update data in a temporary SQLite database in the background, making it readily accessible for retrieval.

Currently, it is available for several exchanges, including Binance, Bybit, and more. You can find a complete list of supported exchanges using Ccxw.get_supported_exchanges().

Furthermore, the library supports a variety of endpoints, such as order_book, kline, and more. A comprehensive list of supported endpoints can be found via Ccxw.get_supported_endpoints().

Example:

###Install

pip install ccxw

###Use

import time
import pprint
from ccxw import Ccxw

symbol = 'BTC/USDT'

streams = [\
                {\
                    'endpoint': 'order_book',\
                    'symbol': symbol
                },\
                {\
                    'endpoint': 'kline',\
                    'symbol': symbol,\
                    'interval': interval\
                },\
                {\
                    'endpoint': 'trades',\
                    'symbol': symbol
                },\
                {\
                    'endpoint': 'ticker',\
                    'symbol': symbol
                }\
        ]

wsm = Ccxw('binance',\
            streams,\
            result_max_len=5,\
            data_max_len=10)

wsm.start()  # Start getting data

time.sleep(2)  # Wait for available data

for i in range(0, 10):
    for stream in streams:
        interval = 'none'
        if 'interval' in stream:
            interval = stream['interval']
        data = wsm.get_current_data(stream['endpoint'], stream['symbol'], interval)
        pprint.pprint(data, sort_dicts=False)
        print('----------------------------------')
        time.sleep(1)
    print('============================================================')

wsm.stop()  # Stop getting data

Important Information

Please be aware that each instance opens a new connection to websockets. If you create multiple instances for the same exchange, you may exceed the websockets connection limits set by exchanges. Make sure to check the connection limits of exchanges before opening numerous instances.

View License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ccxw-0.2.9.tar.gz (39.5 kB view details)

Uploaded Source

Built Distribution

ccxw-0.2.9-py3-none-any.whl (43.0 kB view details)

Uploaded Python 3

File details

Details for the file ccxw-0.2.9.tar.gz.

File metadata

  • Download URL: ccxw-0.2.9.tar.gz
  • Upload date:
  • Size: 39.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.2

File hashes

Hashes for ccxw-0.2.9.tar.gz
Algorithm Hash digest
SHA256 84ed20e24ffcaf075ae83fa0a7def8ef3013e6f2923dbffb42043cfcf76ebfcc
MD5 de94e2ce21c57ebd7b122b51621a1f24
BLAKE2b-256 73a5a7626e79178e19004dc6e2cc56c21f0e0756c9fd97cb40f4e3778d5aead1

See more details on using hashes here.

File details

Details for the file ccxw-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: ccxw-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 43.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.2

File hashes

Hashes for ccxw-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 4c5d61907f34d155462dd290fc52c17510781c9956ae45b08ebe668c2b0d2d73
MD5 b3bea45a825c37327c9f6fe4b046b730
BLAKE2b-256 71591c2f307aa5867f42a4f629f4d094c8ab08096afd43fc60d549ccbaef45f0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page