unicex 0.16.2__tar.gz → 0.16.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {unicex-0.16.2/unicex.egg-info → unicex-0.16.5}/PKG-INFO +1 -1
- {unicex-0.16.2 → unicex-0.16.5}/pyproject.toml +1 -1
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_base/websocket.py +5 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/uni_websocket_manager.py +25 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/websocket_manager.py +1 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/uni_client.py +0 -1
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/uni_client.py +0 -1
- {unicex-0.16.2 → unicex-0.16.5/unicex.egg-info}/PKG-INFO +1 -1
- {unicex-0.16.2 → unicex-0.16.5}/LICENSE +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/README.md +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/setup.cfg +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_abc/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_abc/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_abc/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_abc/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_base/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/_base/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/binance/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bingx/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bitget/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/bybit/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/enums.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/exceptions.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/extra.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/gate/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/hyperliquid/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/kucoin/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mapper.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PrivateAccountV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PrivateDealsV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PrivateOrdersV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicAggreBookTickerV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicAggreDealsV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicAggreDepthsV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicBookTickerBatchV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicBookTickerV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicDealsV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicFuture_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicIncreaseDepthsBatchV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicIncreaseDepthsV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicLimitDepthsV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicMiniTickerV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicMiniTickersV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicSpotKlineV3Api_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PushDataV3ApiWrapper_pb2.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/__init__.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/adapter.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/exchange_info.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/uni_client.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/uni_websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/user_websocket.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/okx/websocket_manager.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/types.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex/utils.py +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex.egg-info/SOURCES.txt +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex.egg-info/dependency_links.txt +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex.egg-info/requires.txt +0 -0
- {unicex-0.16.2 → unicex-0.16.5}/unicex.egg-info/top_level.txt +0 -0
|
@@ -4,7 +4,7 @@ name = "unicex"
|
|
|
4
4
|
# • PATCH (x.y.Z) → увеличивается при багфиксе, который не ломает совместимость.
|
|
5
5
|
# • MINOR (x.Y.z) → увеличивается при добавлении новой функциональности, но без ломающих изменений (backward-compatible).
|
|
6
6
|
# • MAJOR (X.y.z) → увеличивается при изменениях, которые ломают обратную совместимость.
|
|
7
|
-
version = "0.16.
|
|
7
|
+
version = "0.16.5"
|
|
8
8
|
|
|
9
9
|
description = "Unified Crypto Exchange API "
|
|
10
10
|
readme = "README.md"
|
|
@@ -103,6 +103,11 @@ class Websocket:
|
|
|
103
103
|
await asyncio.sleep(self._reconnect_timeout)
|
|
104
104
|
await self.start()
|
|
105
105
|
|
|
106
|
+
@property
|
|
107
|
+
def running(self) -> bool:
|
|
108
|
+
"""Возвращает статус вебсокета."""
|
|
109
|
+
return self._running
|
|
110
|
+
|
|
106
111
|
async def _connect(self) -> None:
|
|
107
112
|
"""Подключается к вебсокету и настраивает соединение."""
|
|
108
113
|
self._logger.debug(f"Establishing connection with {self._url}")
|
|
@@ -293,3 +293,28 @@ class UniWebsocketManager(IUniWebsocketManager):
|
|
|
293
293
|
`Websocket`: Экземпляр вебсокета.
|
|
294
294
|
"""
|
|
295
295
|
return self.futures_trades(callback=callback, symbol=symbol, symbols=symbols) # type: ignore
|
|
296
|
+
|
|
297
|
+
def liquidations(
|
|
298
|
+
self,
|
|
299
|
+
callback: CallbackType,
|
|
300
|
+
symbol: str | None = None,
|
|
301
|
+
symbols: Sequence[str] | None = None,
|
|
302
|
+
) -> Websocket:
|
|
303
|
+
"""Открывает стрим ликвидаций (futures) с унификацией сообщений.
|
|
304
|
+
|
|
305
|
+
Параметры:
|
|
306
|
+
callback (`CallbackType`): Асинхронная функция обратного вызова для обработки сообщений.
|
|
307
|
+
symbol (`str | None`): Один символ для подписки.
|
|
308
|
+
symbols (`Sequence[str] | None`): Список символов для мультиплекс‑подключения.
|
|
309
|
+
|
|
310
|
+
Должен быть указан либо `symbol`, либо `symbols`.
|
|
311
|
+
|
|
312
|
+
Возвращает:
|
|
313
|
+
`Websocket`: Экземпляр вебсокета.
|
|
314
|
+
"""
|
|
315
|
+
return self._websocket_manager.all_liquidation(
|
|
316
|
+
callback=self._make_wrapper(self._adapter.liquidations_message, callback),
|
|
317
|
+
category="linear",
|
|
318
|
+
symbol=symbol,
|
|
319
|
+
symbols=symbols,
|
|
320
|
+
)
|
|
@@ -174,7 +174,6 @@ class UniClient(IUniClient[Client]):
|
|
|
174
174
|
items = raw_data if isinstance(raw_data, list) else [raw_data]
|
|
175
175
|
adapted_data = Adapter.funding_rate(raw_data=items) # type: ignore[reportArgumentType]
|
|
176
176
|
return adapted_data[symbol] if symbol else adapted_data
|
|
177
|
-
return adapted_data
|
|
178
177
|
|
|
179
178
|
@overload
|
|
180
179
|
async def open_interest(self, symbol: str) -> OpenInterestItem: ...
|
|
@@ -181,7 +181,6 @@ class UniClient(IUniClient[Client]):
|
|
|
181
181
|
raw_data = await self._client.futures_ticker()
|
|
182
182
|
adapted_data = Adapter.funding_rate(raw_data=raw_data) # type: ignore[reportArgumentType]
|
|
183
183
|
return adapted_data[symbol] if symbol else adapted_data
|
|
184
|
-
return adapted_data
|
|
185
184
|
|
|
186
185
|
@overload
|
|
187
186
|
async def open_interest(self, symbol: str) -> OpenInterestItem: ...
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicAggreBookTickerV3Api_pb2.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicBookTickerBatchV3Api_pb2.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unicex-0.16.2 → unicex-0.16.5}/unicex/mexc/_spot_ws_proto/PublicIncreaseDepthsBatchV3Api_pb2.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|