ssc2ce
A set of simple connectors for access to few cryptocurrency Exchanges via websocket based on aiohttp.
Supported Exchanges:
- Bitfinex - only public API,
- CEX.io,
- Coinbase Pro
- Deribit
This is more of a pilot project, if you have any wishes for adding exchanges or expanding functionality, please register issues.
Installation
Install ssc2ce with:
$ pip install ssc2ce
You can run some examples with
Bitfinex
Description
API description look at Websocket API v2
Basic example
import asyncio
from ssc2ce import Bitfinex
conn = Bitfinex()
def handle_subscription(data, connector: Bitfinex):
print(data, f"received:{connector.receipt_time}")
async def subscribe():
await conn.subscribe({
"channel": "ticker",
"symbol": "tBTCUSD"
}, handler=handle_subscription)
conn.on_connect_ws = subscribe
loop = asyncio.get_event_loop()
try:
loop.run_until_complete(conn.run_receiver())
except KeyboardInterrupt:
print("Application closed by KeyboardInterrupt.")
Deribit
Description
API description look at Deribit API v2 websocket
Basic example
import asyncio
from ssc2ce import Deribit
conn = Deribit()
async def subscribe():
await conn.send_public(request={
"method": "public/subscribe",
"params": {
"channels": ["deribit_price_index.btc_usd"]
}
})
def handle_subscription(data):
method = data.get("method")
if method and method == "subscription":
if data["params"]["channel"].startswith("deribit_price_index"):
index_name = data["params"]["data"]["index_name"]
price = data["params"]["data"]["price"]
print(f" Deribit Price Index {index_name.upper()}: {price}")
conn.on_connect_ws = subscribe
conn.method_routes += [("subscription", handle_subscription)]
loop = asyncio.get_event_loop()
try:
loop.run_until_complete(conn.run_receiver())
except KeyboardInterrupt:
print("Application closed by KeyboardInterrupt.")
Run examples from a clone
If you clone repository you can run examples in docker container.
make run cmd='python examples/bitfinex/bitfinex_basic_example.py'
To run the private.py example, you must create and fill in the .env file, look at .env.example
make run cmd='python examples/deribit/deribit_private.py'
Release files for ssc2ce 0.14.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ssc2ce-0.14.4.tar.gz | 23.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ssc2ce-0.14.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.8 kB
Release files / ssc2ce-0.14.4.tar.gz
| Download URL | ssc2ce-0.14.4.tar.gz |
|---|---|
| Size | 23.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2bf3a56cd8af9918a7fbacf50830784d5bab95242b0b658d722f927b93860a8e
|
|
BLAKE2b-256 checksum How to use checksums |
cfb290ef282cc07763c6cc3b95942c5b87da43e3c78b69def2e30b7b1e2e2e4a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.1
|
Release files / ssc2ce-0.14.4-py3-none-any.whl
| Download URL | ssc2ce-0.14.4-py3-none-any.whl |
|---|---|
| Size | 38.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ace719f8175d3bb75e7f308f77cbce9b613268bcb72c676a294187a6d4987277
|
|
BLAKE2b-256 checksum How to use checksums |
e66db68e4c4f0824acf7e363c0a18111b5fff78fab426cdb8a0ff35e39681a95
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.1
|