Skip to main content

Unified Crypto Exchange API

Project description

Unified Crypto Exchange API

unicex - библиотека для работы с криптовалютными биржами, реализующая унифицированный интерфейс для работы с различными криптовалютными биржами.

✅ Статус реализации:

Sync:

Exchange Client UniClient Adapter WebsocketManager UniWebsocketManager UserWebsocket
Binance [x] [x] [x] [x] [x] [x]
Bybit [ ] [ ] [ ] [ ] [ ] [ ]
Bitget [ ] [ ] [ ] [ ] [ ] [ ]
Okx [ ] [ ] [ ] [ ] [ ] [ ]
Mexc [ ] [ ] [ ] [ ] [ ] [ ]
Gate [ ] [ ] [ ] [ ] [ ] [ ]

Async:

Exchange Client UniClient Adapter WebsocketManager UniWebsocketManager UserWebsocket
Binance [x] [x] [x] [x] [x] [x]
Bybit [ ] [ ] [ ] [ ] [ ] [ ]
Bitget [ ] [ ] [ ] [ ] [ ] [ ]
Okx [ ] [ ] [ ] [ ] [ ] [ ]
Mexc [ ] [ ] [ ] [ ] [ ] [ ]
Gate [ ] [ ] [ ] [ ] [ ] [ ]

❗️ Возможные проблемы:

  • Спот вебсокет на бинансе может отключиться и не переподключиться, потому что renew_listen_key не дает информации о том, когда ключ просрочен.

Блок для разработчика:

📋 Todo

  • Добавить веса и рейт лимиты в документацию клиентов
  • Привести в порядок обработку ответа после запроса
  • Пересмотреть вопрос: должен ли быть адаптер интерфейсом?
  • Добавить генерацию ссылок в extra
  • Пересмотреть политику Literal в types
  • Прокидывать ошибку дальше: 2025-09-24 13:08:06.552 | ERROR | unicex._base.sync.websocket:_on_error:212 - Websocket error: Message queue is overflow
  • Потестить bitget
  • AdapterError можно сделать красивее и удобнее
  • Может быть uni socket manager будет принимать тип рынка?
  • Добавить дефолтный overload для uniclient uniwebsoccketmanager
  • Добавить ссылку на доку во все вебсокет менеджер эндпоинты
  • Определить в каком порядке возвращать значения из адаптера (это касается всех методов)
  • Проверить типы BitgetClient
2025-09-24 13:14:03.812 | ERROR    | unicex._base.sync.websocket:_on_error:212 - Websocket error: Message queue is overflow
2025-09-24 13:14:03.812 | INFO     | unicex._base.sync.websocket:stop:121 - Stopping websocket
2025-09-24 13:14:04.291 | ERROR    | unicex._base.sync.websocket:stop:144 - Error stopping websocket thread: cannot join current thread
2025-09-24 13:14:09.294 | INFO     | unicex._base.sync.websocket:start:87 - Starting websocket
2025-09-24 13:14:09.295 | ERROR    | unicex._base.sync.websocket:_on_error:212 - Websocket error: 'NoneType' object has no attribute 'pending'
2025-09-24 13:14:09.296 | INFO     | unicex._base.sync.websocket:stop:121 - Stopping websocket
2025-09-24 13:14:10.544 | INFO     | unicex._base.sync.websocket:_on_open:187 - Websocket opened
2025-09-24 13:14:10.544 | ERROR    | unicex._base.sync.websocket:_on_error:212 - Websocket error: 'NoneType' object has no attribute 'sock'
2025-09-24 13:14:10.544 | INFO     | unicex._base.sync.websocket:stop:121 - Stopping websocket
2025-09-24 13:14:10.545 | ERROR    | unicex._base.sync.websocket:stop:144 - Error stopping websocket thread: cannot join current thread

📋 Todo 24 september

  • Написать 1-2 examples
  • Написать октрытый интерес на бинанс uni

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

unicex-0.1.16.tar.gz (75.6 kB view details)

Uploaded Source

Built Distribution

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

unicex-0.1.16-py3-none-any.whl (102.7 kB view details)

Uploaded Python 3

File details

Details for the file unicex-0.1.16.tar.gz.

File metadata

  • Download URL: unicex-0.1.16.tar.gz
  • Upload date:
  • Size: 75.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for unicex-0.1.16.tar.gz
Algorithm Hash digest
SHA256 ab377ace1fdb3029d01350f74eb26005304976d5d0ff29ee49abbd1301631e20
MD5 be5d4ffbbfb0d0ff264cad4635d748de
BLAKE2b-256 1547d46d535c61338ad4f0d906c6d68d52f802d74096a9dfc5e5ffc9a22b2fd3

See more details on using hashes here.

File details

Details for the file unicex-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: unicex-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 102.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for unicex-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 ba5e57fc75bae82e70f9c0639175d4bbb6d7f0a2bdde81a4b6709de3db2c30c2
MD5 570f90bd5ba0d0bca478b42907934e26
BLAKE2b-256 217c38477d214494d2900a6cd25816c037abf0d6e3abd5fd2fa2f405e2fea86f

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