unicex 0.13.0__tar.gz → 0.13.1__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.13.0/unicex.egg-info → unicex-0.13.1}/PKG-INFO +1 -1
- {unicex-0.13.0 → unicex-0.13.1}/pyproject.toml +1 -1
- {unicex-0.13.0 → unicex-0.13.1}/unicex/__init__.py +1 -1
- {unicex-0.13.0 → unicex-0.13.1}/unicex/enums.py +3 -3
- {unicex-0.13.0 → unicex-0.13.1}/unicex/extra.py +10 -9
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/uni_client.py +2 -2
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mapper.py +6 -6
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/adapter.py +23 -11
- {unicex-0.13.0 → unicex-0.13.1}/unicex/utils.py +1 -1
- {unicex-0.13.0 → unicex-0.13.1/unicex.egg-info}/PKG-INFO +1 -1
- {unicex-0.13.0 → unicex-0.13.1}/unicex.egg-info/SOURCES.txt +8 -8
- {unicex-0.13.0 → unicex-0.13.1}/LICENSE +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/README.md +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/setup.cfg +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_abc/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_abc/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_abc/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_abc/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_base/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_base/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/_base/websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/adapter.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/user_websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/binance/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/adapter.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/user_websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bitget/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/adapter.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/user_websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/bybit/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/exceptions.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/__init__.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/adapter.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/client.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/exchange_info.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/uni_websocket_manager.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/user_websocket.py +0 -0
- {unicex-0.13.0/unicex/gateio → unicex-0.13.1/unicex/gate}/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/adapter.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/user_websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/hyperliquid/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PrivateAccountV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PrivateDealsV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PrivateOrdersV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicAggreBookTickerV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicAggreDealsV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicAggreDepthsV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicBookTickerBatchV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicBookTickerV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicDealsV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicFuture_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicIncreaseDepthsBatchV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicIncreaseDepthsV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicLimitDepthsV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicMiniTickerV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicMiniTickersV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicSpotKlineV3Api_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PushDataV3ApiWrapper_pb2.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/adapter.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/user_websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/__init__.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/exchange_info.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/uni_client.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/uni_websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/user_websocket.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/okx/websocket_manager.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex/types.py +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex.egg-info/dependency_links.txt +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/unicex.egg-info/requires.txt +0 -0
- {unicex-0.13.0 → unicex-0.13.1}/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.13.
|
|
7
|
+
version = "0.13.1"
|
|
8
8
|
|
|
9
9
|
description = "Unified Crypto Exchange API "
|
|
10
10
|
readme = "README.md"
|
|
@@ -28,7 +28,7 @@ class Exchange(StrEnum):
|
|
|
28
28
|
BITGET = "BITGET"
|
|
29
29
|
BITUNIX = "BITUNIX"
|
|
30
30
|
BYBIT = "BYBIT"
|
|
31
|
-
|
|
31
|
+
GATE = "GATE"
|
|
32
32
|
HYPERLIQUID = "HYPERLIQUID"
|
|
33
33
|
KCEX = "KCEX"
|
|
34
34
|
MEXC = "MEXC"
|
|
@@ -194,7 +194,7 @@ class Timeframe(StrEnum):
|
|
|
194
194
|
Timeframe.WEEK_1: "1W",
|
|
195
195
|
Timeframe.MONTH_1: "1M",
|
|
196
196
|
},
|
|
197
|
-
(Exchange.
|
|
197
|
+
(Exchange.GATE, MarketType.FUTURES): {
|
|
198
198
|
Timeframe.SECOND_1: "1s",
|
|
199
199
|
Timeframe.MIN_1: "1m",
|
|
200
200
|
Timeframe.MIN_5: "5m",
|
|
@@ -210,7 +210,7 @@ class Timeframe(StrEnum):
|
|
|
210
210
|
Timeframe.WEEK_1: "1w",
|
|
211
211
|
Timeframe.MONTH_1: "30d",
|
|
212
212
|
},
|
|
213
|
-
(Exchange.
|
|
213
|
+
(Exchange.GATE, MarketType.SPOT): {
|
|
214
214
|
Timeframe.MIN_1: "1m",
|
|
215
215
|
Timeframe.MIN_5: "5m",
|
|
216
216
|
Timeframe.MIN_15: "15m",
|
|
@@ -201,7 +201,7 @@ def generate_ex_link(exchange: Exchange, market_type: MarketType, symbol: str):
|
|
|
201
201
|
return f"https://www.mexc.com/ru-RU/futures/{ticker}_USDT?type=linear_swap"
|
|
202
202
|
else:
|
|
203
203
|
return f"https://www.mexc.com/ru-RU/exchange/{ticker}_USDT"
|
|
204
|
-
elif exchange == Exchange.
|
|
204
|
+
elif exchange == Exchange.GATE:
|
|
205
205
|
if market_type == MarketType.FUTURES:
|
|
206
206
|
return f"https://www.gate.com/ru/futures/USDT/{ticker}_USDT"
|
|
207
207
|
else:
|
|
@@ -242,10 +242,11 @@ def generate_tv_link(exchange: Exchange, market_type: MarketType, symbol: str) -
|
|
|
242
242
|
`str`: Ссылка для TradingView.
|
|
243
243
|
"""
|
|
244
244
|
symbol = normalize_symbol(symbol)
|
|
245
|
+
exchange_str = "GATEIO" if exchange == Exchange.GATE else str(exchange)
|
|
245
246
|
if market_type == MarketType.FUTURES:
|
|
246
|
-
return f"https://www.tradingview.com/chart/?symbol={
|
|
247
|
+
return f"https://www.tradingview.com/chart/?symbol={exchange_str}:{symbol}.P"
|
|
247
248
|
else:
|
|
248
|
-
return f"https://www.tradingview.com/chart/?symbol={
|
|
249
|
+
return f"https://www.tradingview.com/chart/?symbol={exchange_str}:{symbol}"
|
|
249
250
|
|
|
250
251
|
|
|
251
252
|
def generate_cg_link(exchange: Exchange, market_type: MarketType, symbol: str) -> str:
|
|
@@ -266,17 +267,17 @@ def generate_cg_link(exchange: Exchange, market_type: MarketType, symbol: str) -
|
|
|
266
267
|
if market_type == MarketType.FUTURES:
|
|
267
268
|
match exchange:
|
|
268
269
|
case Exchange.OKX:
|
|
269
|
-
return f"{base_url}/{
|
|
270
|
+
return f"{base_url}/OKX_{symbol.replace('USDT', '-USDT')}-SWAP"
|
|
270
271
|
case Exchange.MEXC:
|
|
271
|
-
return f"{base_url}/{
|
|
272
|
+
return f"{base_url}/MEXC_{symbol.replace('USDT', '_USDT')}"
|
|
272
273
|
case Exchange.BITGET:
|
|
273
|
-
return f"{base_url}/{
|
|
274
|
-
case Exchange.
|
|
274
|
+
return f"{base_url}/Bitget_{symbol}_UMCBL"
|
|
275
|
+
case Exchange.GATE:
|
|
275
276
|
return f"{base_url}/Gate_{symbol.replace('USDT', '_USDT')}"
|
|
276
277
|
case Exchange.BITUNIX:
|
|
277
|
-
return f"{base_url}/{
|
|
278
|
+
return f"{base_url}/Bitunix_{symbol}"
|
|
278
279
|
case Exchange.HYPERLIQUID:
|
|
279
|
-
return f"{base_url}/{
|
|
280
|
+
return f"{base_url}/Hyperliquid_{symbol.replace('USDT', '-USD')}"
|
|
280
281
|
case _:
|
|
281
282
|
return f"{base_url}/{exchange.capitalize()}_{symbol}"
|
|
282
283
|
else:
|
|
@@ -104,7 +104,7 @@ class UniClient(IUniClient[Client]):
|
|
|
104
104
|
list[KlineDict]: Список свечей для тикера.
|
|
105
105
|
"""
|
|
106
106
|
interval = (
|
|
107
|
-
interval.to_exchange_format(Exchange.
|
|
107
|
+
interval.to_exchange_format(Exchange.GATE, MarketType.SPOT)
|
|
108
108
|
if isinstance(interval, Timeframe)
|
|
109
109
|
else interval
|
|
110
110
|
)
|
|
@@ -138,7 +138,7 @@ class UniClient(IUniClient[Client]):
|
|
|
138
138
|
list[KlineDict]: Список свечей для тикера.
|
|
139
139
|
"""
|
|
140
140
|
interval = (
|
|
141
|
-
interval.to_exchange_format(Exchange.
|
|
141
|
+
interval.to_exchange_format(Exchange.GATE, MarketType.FUTURES)
|
|
142
142
|
if isinstance(interval, Timeframe)
|
|
143
143
|
else interval
|
|
144
144
|
)
|
|
@@ -19,9 +19,9 @@ from .bybit import UniClient as BybitUniClient
|
|
|
19
19
|
from .bybit import UniWebsocketManager as BybitUniWebsocketManager
|
|
20
20
|
from .enums import Exchange
|
|
21
21
|
from .exceptions import NotSupported
|
|
22
|
-
from .
|
|
23
|
-
from .
|
|
24
|
-
from .
|
|
22
|
+
from .gate import ExchangeInfo as GateioExchangeInfo
|
|
23
|
+
from .gate import UniClient as GateioUniClient
|
|
24
|
+
from .gate import UniWebsocketManager as GateioUniWebsocketManager
|
|
25
25
|
from .hyperliquid import ExchangeInfo as HyperliquidExchangeInfo
|
|
26
26
|
from .hyperliquid import UniClient as HyperliquidUniClient
|
|
27
27
|
from .hyperliquid import UniWebsocketManager as HyperliquidUniWebsocketManager
|
|
@@ -36,7 +36,7 @@ _UNI_CLIENT_MAPPER: dict[Exchange, type[IUniClient]] = {
|
|
|
36
36
|
Exchange.BINANCE: BinanceUniClient,
|
|
37
37
|
Exchange.BITGET: BitgetUniClient,
|
|
38
38
|
Exchange.BYBIT: BybitUniClient,
|
|
39
|
-
Exchange.
|
|
39
|
+
Exchange.GATE: GateioUniClient,
|
|
40
40
|
Exchange.HYPERLIQUID: HyperliquidUniClient,
|
|
41
41
|
Exchange.MEXC: MexcUniClient,
|
|
42
42
|
Exchange.OKX: OkxUniClient,
|
|
@@ -47,7 +47,7 @@ _UNI_WS_MANAGER_MAPPER: dict[Exchange, type[IUniWebsocketManager]] = {
|
|
|
47
47
|
Exchange.BINANCE: BinanceUniWebsocketManager,
|
|
48
48
|
Exchange.BITGET: BitgetUniWebsocketManager,
|
|
49
49
|
Exchange.BYBIT: BybitUniWebsocketManager,
|
|
50
|
-
Exchange.
|
|
50
|
+
Exchange.GATE: GateioUniWebsocketManager,
|
|
51
51
|
Exchange.HYPERLIQUID: HyperliquidUniWebsocketManager,
|
|
52
52
|
Exchange.MEXC: MexcUniWebsocketManager,
|
|
53
53
|
Exchange.OKX: OkxUniWebsocketManager,
|
|
@@ -58,7 +58,7 @@ _EXCHANGE_INFO_MAPPER: dict[Exchange, type[IExchangeInfo]] = {
|
|
|
58
58
|
Exchange.BINANCE: BinanceExchangeInfo,
|
|
59
59
|
Exchange.BITGET: BitgetExchangeInfo,
|
|
60
60
|
Exchange.BYBIT: BybitExchangeInfo,
|
|
61
|
-
Exchange.
|
|
61
|
+
Exchange.GATE: GateioExchangeInfo,
|
|
62
62
|
Exchange.HYPERLIQUID: HyperliquidExchangeInfo,
|
|
63
63
|
Exchange.MEXC: MexcExchangeInfo,
|
|
64
64
|
Exchange.OKX: OkxExchangeInfo,
|
|
@@ -57,16 +57,22 @@ class Adapter:
|
|
|
57
57
|
|
|
58
58
|
# NOTE: Обратите внимание, изменение цены в случае с OKX возвращается относительно открытия 1 day свечи.
|
|
59
59
|
"""
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
60
|
+
result = {}
|
|
61
|
+
for item in raw_data["data"]:
|
|
62
|
+
try:
|
|
63
|
+
result[item["instId"]] = TickerDailyItem(
|
|
64
|
+
p=round(
|
|
65
|
+
(float(item["last"]) - float(item["open24h"]))
|
|
66
|
+
/ float(item["open24h"])
|
|
67
|
+
* 100,
|
|
68
|
+
2,
|
|
69
|
+
),
|
|
70
|
+
v=float(item["vol24h"]),
|
|
71
|
+
q=float(item["volCcy24h"]),
|
|
72
|
+
)
|
|
73
|
+
except (ValueError, TypeError, KeyError):
|
|
74
|
+
continue
|
|
75
|
+
return result
|
|
70
76
|
|
|
71
77
|
@staticmethod
|
|
72
78
|
def futures_ticker_24hr(raw_data: dict) -> TickerDailyDict:
|
|
@@ -88,7 +94,13 @@ class Adapter:
|
|
|
88
94
|
@staticmethod
|
|
89
95
|
def last_price(raw_data: dict) -> dict[str, float]:
|
|
90
96
|
"""Преобразует данные о последней цене в унифицированный формат."""
|
|
91
|
-
|
|
97
|
+
result = {}
|
|
98
|
+
for item in raw_data["data"]:
|
|
99
|
+
try:
|
|
100
|
+
result[item["instId"]] = float(item["last"])
|
|
101
|
+
except (ValueError, TypeError, KeyError):
|
|
102
|
+
continue
|
|
103
|
+
return result
|
|
92
104
|
|
|
93
105
|
@staticmethod
|
|
94
106
|
def klines(raw_data: dict, symbol: str) -> list[KlineDict]:
|
|
@@ -208,7 +208,7 @@ def symbol_to_exchange_format(
|
|
|
208
208
|
return symbol_upper.replace("USDT", "-USDT-SWAP")
|
|
209
209
|
elif market_type == MarketType.SPOT:
|
|
210
210
|
return symbol_upper.replace("USDT", "-USDT")
|
|
211
|
-
elif exchange == Exchange.
|
|
211
|
+
elif exchange == Exchange.GATE:
|
|
212
212
|
return symbol_upper.replace("USDT", "_USDT")
|
|
213
213
|
elif exchange == Exchange.HYPERLIQUID:
|
|
214
214
|
if market_type == MarketType.FUTURES:
|
|
@@ -44,14 +44,14 @@ unicex/bybit/uni_client.py
|
|
|
44
44
|
unicex/bybit/uni_websocket_manager.py
|
|
45
45
|
unicex/bybit/user_websocket.py
|
|
46
46
|
unicex/bybit/websocket_manager.py
|
|
47
|
-
unicex/
|
|
48
|
-
unicex/
|
|
49
|
-
unicex/
|
|
50
|
-
unicex/
|
|
51
|
-
unicex/
|
|
52
|
-
unicex/
|
|
53
|
-
unicex/
|
|
54
|
-
unicex/
|
|
47
|
+
unicex/gate/__init__.py
|
|
48
|
+
unicex/gate/adapter.py
|
|
49
|
+
unicex/gate/client.py
|
|
50
|
+
unicex/gate/exchange_info.py
|
|
51
|
+
unicex/gate/uni_client.py
|
|
52
|
+
unicex/gate/uni_websocket_manager.py
|
|
53
|
+
unicex/gate/user_websocket.py
|
|
54
|
+
unicex/gate/websocket_manager.py
|
|
55
55
|
unicex/hyperliquid/__init__.py
|
|
56
56
|
unicex/hyperliquid/adapter.py
|
|
57
57
|
unicex/hyperliquid/client.py
|
|
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.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicAggreBookTickerV3Api_pb2.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unicex-0.13.0 → unicex-0.13.1}/unicex/mexc/_spot_ws_proto/PublicBookTickerBatchV3Api_pb2.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unicex-0.13.0 → unicex-0.13.1}/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
|