Skip to content

Helper library to fetch current best bid/ask from crypto exchanges orderbook APIs

License

Notifications You must be signed in to change notification settings

tferreira/topbid

Repository files navigation

topbid

Python 3.8 Code style: black

Helper library to fetch and store current orderbook top bid/ask price and volume from crypto exchanges APIs. Currently supports Binance, Bybit, Gateio, Kraken, Kucoin and OKX.

Requires Python 3.8+

Installation

pip install topbid

Usage

>>> from topbid.orderbook import OrderBook

# Instanciate OrderBook.
>>> orderbook = OrderBook()

# Add one or more market pairs to be fetched from an exchange REST API.
>>> orderbook.add("binance", "BTC/USDT")
>>> orderbook.add("kucoin", ["BTC/USDT", "ETH/USDT"])

# Start the background thread fetching prices and volume (here, every 2 seconds).
>>> orderbook.start(update_every=2)

# Retrieve the highest bid on the orderbook.
>>> orderbook.get_orderbook_top_bid("binance", "BTC/USDT")
(23130.41, 0.0584)

# Retrieve the lowest ask on the orderbook.
>>> orderbook.get_orderbook_top_ask("binance", "BTC/USDT")
(23130.43, 0.0214)

# Removes a pair from being fetched.
>>> orderbook.delete("binance", "BTC/USDT")

# Stop the background thread and removes all watched pairs.
# It must be called before exiting your own application.
>>> orderbook.stop()