Skip to main content

Python3 Bybit HTTP/WebSocket API Connector

Project description

pybit

All Contributors

Build Status Build Status contributions welcome

Official Python3 API connector for Bybit's HTTP and WebSockets APIs.

Table of Contents

About

Put simply, pybit (Python + Bybit) is the official lightweight one-stop-shop module for the Bybit HTTP and WebSocket APIs. Originally created by Verata Veritatis, it's now maintained by Bybit employees – however, you're still welcome to contribute!

It was designed with the following vision in mind:

I was personally never a fan of auto-generated connectors that used a mosh-pit of various modules you didn't want (sorry, bravado) and wanted to build my own Python3-dedicated connector with very little external resources. The goal of the connector is to provide traders and developers with an easy-to-use high-performing module that has an active issue and discussion board leading to consistent improvements.

Development

pybit is being actively developed, and new Bybit API changes should arrive on pybit very quickly. pybit uses requests and websocket-client for its methods, alongside other built-in modules. Anyone is welcome to branch/fork the repository and add their own upgrades. If you think you've made substantial improvements to the module, submit a pull request and we'll gladly take a look.

Installation

pybit requires Python 3.10 or higher. The module can be installed manually or via PyPI with pip:

pip install pybit

Usage

You can retrieve a specific market like so:

from pybit.unified_trading import HTTP

Create an HTTP session and connect via WebSocket for Inverse on mainnet:

session = HTTP(
    testnet=False,
    api_key="...",
    api_secret="...",
)

Information can be sent to, or retrieved from, the Bybit APIs:

# Get the orderbook of the USDT Perpetual, BTCUSDT
session.get_orderbook(category="linear", symbol="BTCUSDT")

# Create five long USDC Options orders.
# (Currently, only USDC Options support sending orders in bulk.)
payload = {"category": "option"}
orders = [{
  "symbol": "BTC-30JUN23-20000-C",
  "side": "Buy",
  "orderType": "Limit",
  "qty": "0.1",
  "price": i,
} for i in [15000, 15500, 16000, 16500, 16600]]

payload["request"] = orders
# Submit the orders in bulk.
session.place_batch_order(payload)

Check out the example python files or the list of endpoints below for more information on available endpoints and methods. Usage examples on the HTTP methods can be found in the examples folder.

Contact

Reach out for support on your chosen platform:

Contributors

Thanks goes to these wonderful people (emoji key):


dextertd

💻 📖

ervuks

💻 📖

verata-veritatis

💻 📖

APF20

💻

Cameron Harder-Hutton

💻

Tom Rumpf

💻

OnJohn

💻

Todd Conley

🤔

Kolya

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pybit-5.15.0.tar.gz (61.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pybit-5.15.0-py2.py3-none-any.whl (55.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file pybit-5.15.0.tar.gz.

File metadata

  • Download URL: pybit-5.15.0.tar.gz
  • Upload date:
  • Size: 61.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for pybit-5.15.0.tar.gz
Algorithm Hash digest
SHA256 954dfd47b8a5cf025b2de9167df8e308b7fdbb5a6bd887178ca6bc2ea7f0240a
MD5 bc21f93090b6583ed6c09a2b0ee7a06c
BLAKE2b-256 1831eb32db6badcc80fb0e328d752f2354760e250fa58d96495debad4b315c55

See more details on using hashes here.

File details

Details for the file pybit-5.15.0-py2.py3-none-any.whl.

File metadata

  • Download URL: pybit-5.15.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 55.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for pybit-5.15.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7ddcb72495ad70bb96d48cb239dbd1ac09680ae3e174ff1f0db6e5ae26895cd0
MD5 f4d1f2a2e087481884c251fa762bb3ff
BLAKE2b-256 a49363ee2b8cd9b2f67a49d7f2accaed4946cc2ab826fec3618875d3a8a98803

See more details on using hashes here.

Supported by

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