ccxt 4.4.32__py2.py3-none-any.whl → 4.4.33__py2.py3-none-any.whl
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.
- ccxt/__init__.py +1 -1
- ccxt/abstract/coinbaseexchange.py +1 -0
- ccxt/abstract/kraken.py +1 -0
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/base/exchange.py +1 -1
- ccxt/async_support/binance.py +153 -0
- ccxt/async_support/bybit.py +134 -6
- ccxt/async_support/cex.py +3 -1
- ccxt/async_support/coinbase.py +2 -22
- ccxt/async_support/coinbaseexchange.py +2 -1
- ccxt/async_support/coinex.py +1 -0
- ccxt/async_support/hyperliquid.py +11 -2
- ccxt/async_support/kraken.py +1 -0
- ccxt/async_support/kucoinfutures.py +1 -1
- ccxt/async_support/lbank.py +1 -0
- ccxt/async_support/okx.py +92 -1
- ccxt/async_support/phemex.py +17 -6
- ccxt/base/exchange.py +79 -1
- ccxt/binance.py +153 -0
- ccxt/bybit.py +134 -6
- ccxt/cex.py +3 -1
- ccxt/coinbase.py +2 -22
- ccxt/coinbaseexchange.py +2 -1
- ccxt/coinex.py +1 -0
- ccxt/hyperliquid.py +11 -2
- ccxt/kraken.py +1 -0
- ccxt/kucoinfutures.py +1 -1
- ccxt/lbank.py +1 -0
- ccxt/okx.py +92 -1
- ccxt/phemex.py +17 -6
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/okx.py +8 -0
- ccxt/test/tests_async.py +3 -1
- ccxt/test/tests_helpers.py +1 -1
- ccxt/test/tests_sync.py +3 -1
- {ccxt-4.4.32.dist-info → ccxt-4.4.33.dist-info}/METADATA +4 -4
- {ccxt-4.4.32.dist-info → ccxt-4.4.33.dist-info}/RECORD +40 -40
- {ccxt-4.4.32.dist-info → ccxt-4.4.33.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.32.dist-info → ccxt-4.4.33.dist-info}/WHEEL +0 -0
- {ccxt-4.4.32.dist-info → ccxt-4.4.33.dist-info}/top_level.txt +0 -0
ccxt/kucoinfutures.py
CHANGED
@@ -1423,7 +1423,7 @@ class kucoinfutures(kucoin, ImplicitAPI):
|
|
1423
1423
|
:param str [params.postOnly]: Post only flag, invalid when timeInForce is IOC or FOK
|
1424
1424
|
:param float [params.cost]: the cost of the order in units of USDT
|
1425
1425
|
----------------- Exchange Specific Parameters -----------------
|
1426
|
-
:param float [params.leverage]: Leverage size of the order
|
1426
|
+
:param float [params.leverage]: Leverage size of the order(mandatory param in request, default is 1)
|
1427
1427
|
:param str [params.clientOid]: client order id, defaults to uuid if not passed
|
1428
1428
|
:param str [params.remark]: remark for the order, length cannot exceed 100 utf8 characters
|
1429
1429
|
:param str [params.stop]: 'up' or 'down', the direction the stopPrice is triggered from, requires stopPrice. down: Triggers when the price reaches or goes below the stopPrice. up: Triggers when the price reaches or goes above the stopPrice.
|
ccxt/lbank.py
CHANGED
ccxt/okx.py
CHANGED
@@ -1199,6 +1199,97 @@ class okx(Exchange, ImplicitAPI):
|
|
1199
1199
|
},
|
1200
1200
|
'brokerId': 'e847386590ce4dBC',
|
1201
1201
|
},
|
1202
|
+
'features': {
|
1203
|
+
# https://www.okx.com/docs-v5/en/#order-book-trading-trade-post-place-order
|
1204
|
+
'default': {
|
1205
|
+
'sandbox': True,
|
1206
|
+
'createOrder': {
|
1207
|
+
'triggerPrice': True,
|
1208
|
+
'triggerPriceType': {
|
1209
|
+
'last': True,
|
1210
|
+
'mark': True,
|
1211
|
+
'index': True,
|
1212
|
+
},
|
1213
|
+
'triggerDirection': False,
|
1214
|
+
'stopLossPrice': True,
|
1215
|
+
'takeProfitPrice': True,
|
1216
|
+
'marginMode': True,
|
1217
|
+
'attachedStopLossTakeProfit': {
|
1218
|
+
'triggerPriceType': {
|
1219
|
+
'last': True,
|
1220
|
+
'mark': True,
|
1221
|
+
'index': True,
|
1222
|
+
},
|
1223
|
+
'limitPrice': True,
|
1224
|
+
},
|
1225
|
+
'timeInForce': {
|
1226
|
+
'GTC': True,
|
1227
|
+
'IOC': True,
|
1228
|
+
'FOK': True,
|
1229
|
+
'PO': True,
|
1230
|
+
'GTD': False,
|
1231
|
+
},
|
1232
|
+
'hedged': True,
|
1233
|
+
# even though the below params not unified yet, it's useful metadata for users to know that exchange supports them
|
1234
|
+
'selfTradePrevention': True,
|
1235
|
+
'trailing': True,
|
1236
|
+
'twap': True,
|
1237
|
+
'iceberg': True,
|
1238
|
+
'oco': True,
|
1239
|
+
},
|
1240
|
+
'createOrders': {
|
1241
|
+
'max': 20,
|
1242
|
+
},
|
1243
|
+
'fetchMyTrades': {
|
1244
|
+
'daysBack': 90,
|
1245
|
+
'limit': 100,
|
1246
|
+
'untilDays': 10000,
|
1247
|
+
},
|
1248
|
+
'fetchOrder': {
|
1249
|
+
'marginMode': False,
|
1250
|
+
'trigger': True,
|
1251
|
+
'trailing': True,
|
1252
|
+
},
|
1253
|
+
'fetchOpenOrders': {
|
1254
|
+
'limit': 100,
|
1255
|
+
'marginMode': False,
|
1256
|
+
'trigger': True,
|
1257
|
+
'trailing': True,
|
1258
|
+
},
|
1259
|
+
'fetchOrders': None, # not supported
|
1260
|
+
'fetchClosedOrders': {
|
1261
|
+
'limit': 100,
|
1262
|
+
'daysBackClosed': 90, # 3 months
|
1263
|
+
'daysBackCanceled': 1 / 12, # 2 hour
|
1264
|
+
'untilDays': None,
|
1265
|
+
'marginMode': False,
|
1266
|
+
'trigger': True,
|
1267
|
+
'trailing': True,
|
1268
|
+
},
|
1269
|
+
'fetchOHLCV': {
|
1270
|
+
'limit': 300,
|
1271
|
+
},
|
1272
|
+
},
|
1273
|
+
'spot': {
|
1274
|
+
'extends': 'default',
|
1275
|
+
},
|
1276
|
+
'swap': {
|
1277
|
+
'linear': {
|
1278
|
+
'extends': 'default',
|
1279
|
+
},
|
1280
|
+
'inverse': {
|
1281
|
+
'extends': 'default',
|
1282
|
+
},
|
1283
|
+
},
|
1284
|
+
'future': {
|
1285
|
+
'linear': {
|
1286
|
+
'extends': 'default',
|
1287
|
+
},
|
1288
|
+
'inverse': {
|
1289
|
+
'extends': 'default',
|
1290
|
+
},
|
1291
|
+
},
|
1292
|
+
},
|
1202
1293
|
'commonCurrencies': {
|
1203
1294
|
# the exchange refers to ERC20 version of Aeternity(AEToken)
|
1204
1295
|
'AE': 'AET', # https://github.com/ccxt/ccxt/issues/4981
|
@@ -3077,7 +3168,7 @@ class okx(Exchange, ImplicitAPI):
|
|
3077
3168
|
if not isAlgoOrder:
|
3078
3169
|
if price is not None:
|
3079
3170
|
request['newPx'] = self.price_to_precision(symbol, price)
|
3080
|
-
params = self.omit(params, ['clOrdId', 'clientOrderId', 'takeProfitPrice', 'stopLossPrice', 'stopLoss', 'takeProfit'])
|
3171
|
+
params = self.omit(params, ['clOrdId', 'clientOrderId', 'takeProfitPrice', 'stopLossPrice', 'stopLoss', 'takeProfit', 'postOnly'])
|
3081
3172
|
return self.extend(request, params)
|
3082
3173
|
|
3083
3174
|
def edit_order(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: Num = None, price: Num = None, params={}):
|
ccxt/phemex.py
CHANGED
@@ -525,7 +525,7 @@ class phemex(Exchange, ImplicitAPI):
|
|
525
525
|
def parse_swap_market(self, market: dict):
|
526
526
|
#
|
527
527
|
# {
|
528
|
-
# "symbol":"BTCUSD",
|
528
|
+
# "symbol":"BTCUSD", #
|
529
529
|
# "code":"1",
|
530
530
|
# "type":"Perpetual",
|
531
531
|
# "displaySymbol":"BTC / USD",
|
@@ -533,7 +533,7 @@ class phemex(Exchange, ImplicitAPI):
|
|
533
533
|
# "markSymbol":".MBTC",
|
534
534
|
# "fundingRateSymbol":".BTCFR",
|
535
535
|
# "fundingRate8hSymbol":".BTCFR8H",
|
536
|
-
# "contractUnderlyingAssets":"USD",
|
536
|
+
# "contractUnderlyingAssets":"USD", # or eg. `1000 SHIB`
|
537
537
|
# "settleCurrency":"BTC",
|
538
538
|
# "quoteCurrency":"USD",
|
539
539
|
# "contractSize":"1 USD",
|
@@ -577,6 +577,7 @@ class phemex(Exchange, ImplicitAPI):
|
|
577
577
|
quoteId = self.safe_string(market, 'quoteCurrency')
|
578
578
|
settleId = self.safe_string(market, 'settleCurrency')
|
579
579
|
base = self.safe_currency_code(baseId)
|
580
|
+
base = base.replace(' ', '') # replace space for junction codes, eg. `1000 SHIB`
|
580
581
|
quote = self.safe_currency_code(quoteId)
|
581
582
|
settle = self.safe_currency_code(settleId)
|
582
583
|
inverse = False
|
@@ -2540,7 +2541,7 @@ class phemex(Exchange, ImplicitAPI):
|
|
2540
2541
|
if stopLossDefined:
|
2541
2542
|
stopLossTriggerPrice = self.safe_value_2(stopLoss, 'triggerPrice', 'stopPrice')
|
2542
2543
|
if stopLossTriggerPrice is None:
|
2543
|
-
raise InvalidOrder(self.id + ' createOrder() requires a trigger price in params["stopLoss"]["triggerPrice"]
|
2544
|
+
raise InvalidOrder(self.id + ' createOrder() requires a trigger price in params["stopLoss"]["triggerPrice"] for a stop loss order')
|
2544
2545
|
if market['settle'] == 'USDT':
|
2545
2546
|
request['stopLossRp'] = self.price_to_precision(symbol, stopLossTriggerPrice)
|
2546
2547
|
else:
|
@@ -2554,7 +2555,7 @@ class phemex(Exchange, ImplicitAPI):
|
|
2554
2555
|
if takeProfitDefined:
|
2555
2556
|
takeProfitTriggerPrice = self.safe_value_2(takeProfit, 'triggerPrice', 'stopPrice')
|
2556
2557
|
if takeProfitTriggerPrice is None:
|
2557
|
-
raise InvalidOrder(self.id + ' createOrder() requires a trigger price in params["takeProfit"]["triggerPrice"]
|
2558
|
+
raise InvalidOrder(self.id + ' createOrder() requires a trigger price in params["takeProfit"]["triggerPrice"] for a take profit order')
|
2558
2559
|
if market['settle'] == 'USDT':
|
2559
2560
|
request['takeProfitRp'] = self.price_to_precision(symbol, takeProfitTriggerPrice)
|
2560
2561
|
else:
|
@@ -2715,13 +2716,13 @@ class phemex(Exchange, ImplicitAPI):
|
|
2715
2716
|
request['orderQtyRq'] = self.amount_to_precision(market['symbol'], amount)
|
2716
2717
|
else:
|
2717
2718
|
request['baseQtyEV'] = self.to_ev(amount, market)
|
2718
|
-
stopPrice = self.
|
2719
|
+
stopPrice = self.safe_string_n(params, ['triggerPrice', 'stopPx', 'stopPrice'])
|
2719
2720
|
if stopPrice is not None:
|
2720
2721
|
if isUSDTSettled:
|
2721
2722
|
request['stopPxRp'] = self.price_to_precision(symbol, stopPrice)
|
2722
2723
|
else:
|
2723
2724
|
request['stopPxEp'] = self.to_ep(stopPrice, market)
|
2724
|
-
params = self.omit(params, ['stopPx', 'stopPrice'])
|
2725
|
+
params = self.omit(params, ['triggerPrice', 'stopPx', 'stopPrice'])
|
2725
2726
|
response = None
|
2726
2727
|
if isUSDTSettled:
|
2727
2728
|
posSide = self.safe_string(params, 'posSide')
|
@@ -3960,6 +3961,9 @@ class phemex(Exchange, ImplicitAPI):
|
|
3960
3961
|
def set_margin_mode(self, marginMode: str, symbol: Str = None, params={}):
|
3961
3962
|
"""
|
3962
3963
|
set margin mode to 'cross' or 'isolated'
|
3964
|
+
|
3965
|
+
https://phemex-docs.github.io/#set-leverage
|
3966
|
+
|
3963
3967
|
:param str marginMode: 'cross' or 'isolated'
|
3964
3968
|
:param str symbol: unified market symbol
|
3965
3969
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -4223,6 +4227,10 @@ class phemex(Exchange, ImplicitAPI):
|
|
4223
4227
|
def transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={}) -> TransferEntry:
|
4224
4228
|
"""
|
4225
4229
|
transfer currency internally between wallets on the same account
|
4230
|
+
|
4231
|
+
https://phemex-docs.github.io/#transfer-between-spot-and-futures
|
4232
|
+
https://phemex-docs.github.io/#universal-transfer-main-account-only-transfer-between-sub-to-main-main-to-sub-or-sub-to-sub
|
4233
|
+
|
4226
4234
|
:param str code: unified currency code
|
4227
4235
|
:param float amount: amount to transfer
|
4228
4236
|
:param str fromAccount: account to transfer from
|
@@ -4299,6 +4307,9 @@ class phemex(Exchange, ImplicitAPI):
|
|
4299
4307
|
def fetch_transfers(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[TransferEntry]:
|
4300
4308
|
"""
|
4301
4309
|
fetch a history of internal transfers made on an account
|
4310
|
+
|
4311
|
+
https://phemex-docs.github.io/#query-transfer-history
|
4312
|
+
|
4302
4313
|
:param str code: unified currency code of the currency transferred
|
4303
4314
|
:param int [since]: the earliest time in ms to fetch transfers for
|
4304
4315
|
:param int [limit]: the maximum number of transfers structures to retrieve
|
ccxt/pro/__init__.py
CHANGED
ccxt/pro/okx.py
CHANGED
@@ -2135,6 +2135,7 @@ class okx(ccxt.async_support.okx):
|
|
2135
2135
|
#
|
2136
2136
|
# {event: 'error', msg: "Illegal request: {"op":"subscribe","args":["spot/ticker:BTC-USDT"]}", code: "60012"}
|
2137
2137
|
# {event: 'error", msg: "channel:ticker,instId:BTC-USDT doesn"t exist", code: "60018"}
|
2138
|
+
# {"event":"error","msg":"Illegal request: {\\"id\\":\\"17321173472466905\\",\\"op\\":\\"amend-order\\",\\"args\\":[{\\"instId\\":\\"ETH-USDC\\",\\"ordId\\":\\"2000345622407479296\\",\\"newSz\\":\\"0.050857\\",\\"newPx\\":\\"2949.4\\",\\"postOnly\\":true}],\\"postOnly\\":true}","code":"60012","connId":"0808af6c"}
|
2138
2139
|
#
|
2139
2140
|
errorCode = self.safe_string(message, 'code')
|
2140
2141
|
try:
|
@@ -2160,6 +2161,13 @@ class okx(ccxt.async_support.okx):
|
|
2160
2161
|
# if the message contains an id, it means it is a response to a request
|
2161
2162
|
# so we only reject that promise, instead of deleting all futures, destroying the authentication future
|
2162
2163
|
id = self.safe_string(message, 'id')
|
2164
|
+
if id is None:
|
2165
|
+
# try to parse it from the stringified json inside msg
|
2166
|
+
msg = self.safe_string(message, 'msg')
|
2167
|
+
if msg is not None and msg.startswith('Illegal request: {'):
|
2168
|
+
stringifiedJson = msg.replace('Illegal request: ', '')
|
2169
|
+
parsedJson = self.parse_json(stringifiedJson)
|
2170
|
+
id = self.safe_string(parsedJson, 'id')
|
2163
2171
|
if id is not None:
|
2164
2172
|
client.reject(e, id)
|
2165
2173
|
return False
|
ccxt/test/tests_async.py
CHANGED
@@ -183,6 +183,7 @@ class testMainClass:
|
|
183
183
|
is_load_markets = (method_name == 'loadMarkets')
|
184
184
|
is_fetch_currencies = (method_name == 'fetchCurrencies')
|
185
185
|
is_proxy_test = (method_name == self.proxy_test_file_name)
|
186
|
+
is_feature_test = (method_name == 'features')
|
186
187
|
# if this is a private test, and the implementation was already tested in public, then no need to re-test it in private test (exception is fetchCurrencies, because our approach in base exchange)
|
187
188
|
if not is_public and (method_name in self.checked_public_tests) and not is_fetch_currencies:
|
188
189
|
return
|
@@ -190,7 +191,7 @@ class testMainClass:
|
|
190
191
|
supported_by_exchange = (method_name in exchange.has) and exchange.has[method_name]
|
191
192
|
if not is_load_markets and (len(self.only_specific_tests) > 0 and not exchange.in_array(method_name, self.only_specific_tests)):
|
192
193
|
skip_message = '[INFO] IGNORED_TEST'
|
193
|
-
elif not is_load_markets and not supported_by_exchange and not is_proxy_test:
|
194
|
+
elif not is_load_markets and not supported_by_exchange and not is_proxy_test and not is_feature_test:
|
194
195
|
skip_message = '[INFO] UNSUPPORTED_TEST' # keep it aligned with the longest message
|
195
196
|
elif isinstance(skipped_properties_for_method, str):
|
196
197
|
skip_message = '[INFO] SKIPPED_TEST'
|
@@ -336,6 +337,7 @@ class testMainClass:
|
|
336
337
|
|
337
338
|
async def run_public_tests(self, exchange, symbol):
|
338
339
|
tests = {
|
340
|
+
'features': [],
|
339
341
|
'fetchCurrencies': [],
|
340
342
|
'fetchTicker': [symbol],
|
341
343
|
'fetchTickers': [symbol],
|
ccxt/test/tests_helpers.py
CHANGED
@@ -228,7 +228,7 @@ def init_exchange(exchangeId, args, is_ws=False):
|
|
228
228
|
|
229
229
|
def get_test_files_sync(properties, ws=False):
|
230
230
|
tests = {}
|
231
|
-
finalPropList = properties + [PROXY_TEST_FILE_NAME]
|
231
|
+
finalPropList = properties + [PROXY_TEST_FILE_NAME, 'features']
|
232
232
|
for i in range(0, len(finalPropList)):
|
233
233
|
methodName = finalPropList[i]
|
234
234
|
name_snake_case = convert_to_snake_case(methodName)
|
ccxt/test/tests_sync.py
CHANGED
@@ -180,6 +180,7 @@ class testMainClass:
|
|
180
180
|
is_load_markets = (method_name == 'loadMarkets')
|
181
181
|
is_fetch_currencies = (method_name == 'fetchCurrencies')
|
182
182
|
is_proxy_test = (method_name == self.proxy_test_file_name)
|
183
|
+
is_feature_test = (method_name == 'features')
|
183
184
|
# if this is a private test, and the implementation was already tested in public, then no need to re-test it in private test (exception is fetchCurrencies, because our approach in base exchange)
|
184
185
|
if not is_public and (method_name in self.checked_public_tests) and not is_fetch_currencies:
|
185
186
|
return
|
@@ -187,7 +188,7 @@ class testMainClass:
|
|
187
188
|
supported_by_exchange = (method_name in exchange.has) and exchange.has[method_name]
|
188
189
|
if not is_load_markets and (len(self.only_specific_tests) > 0 and not exchange.in_array(method_name, self.only_specific_tests)):
|
189
190
|
skip_message = '[INFO] IGNORED_TEST'
|
190
|
-
elif not is_load_markets and not supported_by_exchange and not is_proxy_test:
|
191
|
+
elif not is_load_markets and not supported_by_exchange and not is_proxy_test and not is_feature_test:
|
191
192
|
skip_message = '[INFO] UNSUPPORTED_TEST' # keep it aligned with the longest message
|
192
193
|
elif isinstance(skipped_properties_for_method, str):
|
193
194
|
skip_message = '[INFO] SKIPPED_TEST'
|
@@ -333,6 +334,7 @@ class testMainClass:
|
|
333
334
|
|
334
335
|
def run_public_tests(self, exchange, symbol):
|
335
336
|
tests = {
|
337
|
+
'features': [],
|
336
338
|
'fetchCurrencies': [],
|
337
339
|
'fetchTicker': [symbol],
|
338
340
|
'fetchTickers': [symbol],
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.4.
|
3
|
+
Version: 4.4.33
|
4
4
|
Summary: A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 100+ exchanges
|
5
5
|
Home-page: https://ccxt.com
|
6
6
|
Author: Igor Kroitor
|
@@ -273,13 +273,13 @@ console.log(version, Object.keys(exchanges));
|
|
273
273
|
|
274
274
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
275
275
|
|
276
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.
|
277
|
-
* unpkg: https://unpkg.com/ccxt@4.4.
|
276
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.33/dist/ccxt.browser.min.js
|
277
|
+
* unpkg: https://unpkg.com/ccxt@4.4.33/dist/ccxt.browser.min.js
|
278
278
|
|
279
279
|
CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
|
280
280
|
|
281
281
|
```HTML
|
282
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.
|
282
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.33/dist/ccxt.browser.min.js"></script>
|
283
283
|
```
|
284
284
|
|
285
285
|
Creates a global `ccxt` object:
|
@@ -1,10 +1,10 @@
|
|
1
|
-
ccxt/__init__.py,sha256=
|
1
|
+
ccxt/__init__.py,sha256=x9YRP59O8Gi4c955ZWo0AoksKjIx_Bw14epIKwNyNGI,16586
|
2
2
|
ccxt/ace.py,sha256=UaRnqw4wwXqFZATcADG2EXWEcZADVW0vN-AZwmt4xpU,42350
|
3
3
|
ccxt/alpaca.py,sha256=ww58sz4ka_Yf8rDwpOIqnhGeT4ZI8r_HDpk5VUBEwyU,68949
|
4
4
|
ccxt/ascendex.py,sha256=kE9zNgHgORDwfrFL9WoT-eUJSb89Z0WJGrCw6aRl5LE,151609
|
5
5
|
ccxt/bequant.py,sha256=XePxHZlKFJ-2FwVR9hIpdM-Ng9-ZnIhTjemMnap7H0Q,1154
|
6
6
|
ccxt/bigone.py,sha256=DfRPqC7CX1OC_h62CEFAAPoyU-w7KqjvFY-mAtt8I_k,91288
|
7
|
-
ccxt/binance.py,sha256=
|
7
|
+
ccxt/binance.py,sha256=vBAp6HS2Yc9KeR6CCsNMnBoprhxoyKaBi5CiicBs1wQ,668812
|
8
8
|
ccxt/binancecoinm.py,sha256=2nFh2PcLqhqQK1uuQjsZa0eFkP-ew3liJ01ctdHcCd4,1681
|
9
9
|
ccxt/binanceus.py,sha256=IT0iDdiWKzRu2ZCUB56YGfaHxCuFEEV4xi40Tp6Emxc,9182
|
10
10
|
ccxt/binanceusdm.py,sha256=yoCcFvGD4MFYkShMpArxk_eLm8RR2ugyYHLk5e2AV08,2611
|
@@ -35,15 +35,15 @@ ccxt/btcalpha.py,sha256=EgTdyJSCKrdhsb-rya1FVi0pJq92T3s4Q6Sv5XnLjEo,36667
|
|
35
35
|
ccxt/btcbox.py,sha256=1K37C76sTvl_AYMAUHVcoltbKoxzlh3MzlRqzZqWkm4,27723
|
36
36
|
ccxt/btcmarkets.py,sha256=OIDF7Dg7WwT8jWc8vj30F52Nk3p_4lL8dLpsrERoLzw,52651
|
37
37
|
ccxt/btcturk.py,sha256=nksPhEqDy5xoG16bjm1H0gShOykWhlFSFqrPbGpsL0k,36955
|
38
|
-
ccxt/bybit.py,sha256
|
39
|
-
ccxt/cex.py,sha256=
|
40
|
-
ccxt/coinbase.py,sha256=
|
38
|
+
ccxt/bybit.py,sha256=-6aU2zsNQtY3OMpR3p2xfpHqFfaJjO59BlCcow6HQyw,427598
|
39
|
+
ccxt/cex.py,sha256=VMoz5iMO1vDZB7IY_37MZB4ERphahbD3Ug69wR1ynFk,69591
|
40
|
+
ccxt/coinbase.py,sha256=ANxCXousQd-KHb5JeNszHldbpsMeeFJbeno1vPNmWG4,222108
|
41
41
|
ccxt/coinbaseadvanced.py,sha256=d5g6nRx-NCcCwZDdtp8FsI2D-pRjSvnAP9ISSKY_nCQ,538
|
42
|
-
ccxt/coinbaseexchange.py,sha256=
|
42
|
+
ccxt/coinbaseexchange.py,sha256=_QfGfNlb6criH_G1Tx1dTHzbVfmtQBYpZ7Twi--Fu4M,79118
|
43
43
|
ccxt/coinbaseinternational.py,sha256=mMRFXhDedcNhsfOeCskwrFazAV63T60B4ovb1ybt2CA,97423
|
44
44
|
ccxt/coincatch.py,sha256=DCo-LdjJceJipXOMUCJ2giNIBJMzlhwI5geeyr-4WU0,240962
|
45
45
|
ccxt/coincheck.py,sha256=V8gc6_tyhmKlom8uYc8FGdoNLQNGi_-WDUcWKS-sPAQ,35898
|
46
|
-
ccxt/coinex.py,sha256=
|
46
|
+
ccxt/coinex.py,sha256=ys994bqg8Ng8AFp_PnmsrSosc1B8fb0AwsChboKcCYE,263674
|
47
47
|
ccxt/coinlist.py,sha256=J0VyFGXpHDXvO2Y7cJMDwFG17a8GTw5jeifwy1YOTho,104196
|
48
48
|
ccxt/coinmate.py,sha256=72R0wPYvEr1xI3P2TSujjwvrR38L13fugqofUdidQN8,46123
|
49
49
|
ccxt/coinmetro.py,sha256=I_OBHQMNOMSEtfIb6NC6lPGLDYX5vZBivafZaBcZjCY,80573
|
@@ -67,17 +67,17 @@ ccxt/hollaex.py,sha256=SogXiRDxepLL-hPtgp-lcZURVEU-L6EW2jnrHoER83I,76193
|
|
67
67
|
ccxt/htx.py,sha256=Xa8N69mnix0cA93k--AHEFxxqhh45jNZHzTTCu-LJFg,432845
|
68
68
|
ccxt/huobi.py,sha256=4vaG7IRN7fyjaJ_ac6S-njlHOfSEN5de7aq0noznxYw,438
|
69
69
|
ccxt/huobijp.py,sha256=e3T66Ob89fHk9zXeXOH8dxtu1gL7NaztcczacfFDhAw,89788
|
70
|
-
ccxt/hyperliquid.py,sha256=
|
70
|
+
ccxt/hyperliquid.py,sha256=4b3MFxyz5q7BveyFDgIN7l9fUOAKPUN5y8lvCrPVIx0,129228
|
71
71
|
ccxt/idex.py,sha256=wHPL_QmG3uZvumqfcdK3d_nMOl3gGLFwv9YPl1Uo56k,73258
|
72
72
|
ccxt/independentreserve.py,sha256=Uv_hZM0vKDA08wCJTa0Dv3GDhsjfkrIKZFsS1iJEfes,37914
|
73
73
|
ccxt/indodax.py,sha256=XZ4_SS38bg21eKxpN6fOJCQxpQri9A_T6AxKnBGYqjM,55181
|
74
|
-
ccxt/kraken.py,sha256=
|
74
|
+
ccxt/kraken.py,sha256=B47Ex2baUarnVYH16OIcJHAK6mI0WHjs2bo0_F7JX9w,137133
|
75
75
|
ccxt/krakenfutures.py,sha256=7on0RG5Dv5TysFif6NjW8pbGWznm5-snaBFGYrY0C3s,120011
|
76
76
|
ccxt/kucoin.py,sha256=7VSuLN2BVp_4e-9oAWD1MqSD0Gw0lpCgmWQkeSAcdjw,229811
|
77
|
-
ccxt/kucoinfutures.py,sha256=
|
77
|
+
ccxt/kucoinfutures.py,sha256=Ch7VtMjHWoi4aY1i9wiArF1OpbKCFGpqDFWSnC7tLR8,142428
|
78
78
|
ccxt/kuna.py,sha256=PlxKm5KvVAsXnfQSakCQylxN61TAA9Hc97QA96qI6OQ,95851
|
79
79
|
ccxt/latoken.py,sha256=nnbKqJP1aXnokDqlK85FoLJn1YsKb_wLZUau5mu2paw,79652
|
80
|
-
ccxt/lbank.py,sha256=
|
80
|
+
ccxt/lbank.py,sha256=VTEg2QHA-BNLcnN3eDnGZquk2XszgBqDBcP7e2IDUcM,120580
|
81
81
|
ccxt/luno.py,sha256=9_F54GaXTcoPwvxpd-7IMi7s6aVX3lHc9hAJUlKsaIE,46305
|
82
82
|
ccxt/lykke.py,sha256=pV1U244HJxgbNyg4YbzzllihT3Opp62Xu-C6AbCTV6E,51517
|
83
83
|
ccxt/mercado.py,sha256=g2r-u6PAFoCtngem9wFcP45m7M-Ve2DhbuPvWZAyXDU,35757
|
@@ -86,13 +86,13 @@ ccxt/ndax.py,sha256=1afhBswLxEv7cQruXSDfuw0RCbO35-CS-wll7-5y628,110401
|
|
86
86
|
ccxt/novadax.py,sha256=OJ0frNRD8mQVTqJZp64w3-4pmX5fOp2VHoyeKOkMYsY,64395
|
87
87
|
ccxt/oceanex.py,sha256=yL9IXtxy06b_1X2p4zT7v7jdNHSyEaRV9KRAQk-PKIQ,41228
|
88
88
|
ccxt/okcoin.py,sha256=dJpA_W3IRkE0wcu83YIpplylwKPi9rhY1xABrKHUcdY,151208
|
89
|
-
ccxt/okx.py,sha256=
|
89
|
+
ccxt/okx.py,sha256=A3v6Bo-4H4F5L30p47LEnv-OBmmdKTnhgqm06uQiU7M,391479
|
90
90
|
ccxt/onetrading.py,sha256=ZHVXh-_m86q2SZnz3wgQfOdBtcLozWTy77wn1IDXNrE,88491
|
91
91
|
ccxt/oxfun.py,sha256=x18BhPvyEjSnMA-gZ2pNxDK_W7Wf9kzTeK_IQNE_03c,124889
|
92
92
|
ccxt/p2b.py,sha256=tnMiWHryM0MXQKBkscBLiPbrWdnzCZyW6OVxKkEcad8,54138
|
93
93
|
ccxt/paradex.py,sha256=oxEdo_Mrc5cUaza7X43IApIu62mf1xCbNTgkQAnPenI,85746
|
94
94
|
ccxt/paymium.py,sha256=4kZxtSd1T4rJNXfTOdlroXBbEDQcz1Gfm_arMmFg438,24506
|
95
|
-
ccxt/phemex.py,sha256=
|
95
|
+
ccxt/phemex.py,sha256=roWv5FoQWOkZHS8bz94kKORyhhOGxv41DC9Y-2ryZUA,226326
|
96
96
|
ccxt/poloniex.py,sha256=5tcS15C-5pDKkVAh8cOsOoEyYbx1JHugeZV8LZhvfsM,102624
|
97
97
|
ccxt/poloniexfutures.py,sha256=05bJcp9vFjOjjpHMA__xrcP84twrGv8k5c9Rl4pLvVw,79967
|
98
98
|
ccxt/probit.py,sha256=E1GtCgAaCEIU218diUX5dQPQb0TuUZt4ueb4Dyk1eGw,76265
|
@@ -150,7 +150,7 @@ ccxt/abstract/bybit.py,sha256=DszUkG6CBTh8WCeujod0k_eQsBIZB4VP8wXN1vfnbgo,47407
|
|
150
150
|
ccxt/abstract/cex.py,sha256=59oASCpeYdLPKnhD6Ih62I5FhjgwZDcU9BiHewUDoew,3600
|
151
151
|
ccxt/abstract/coinbase.py,sha256=GFXDh_Bf65Gsx_DmgOrRG2jpM3IdITE3Agqz_LZTJfo,15507
|
152
152
|
ccxt/abstract/coinbaseadvanced.py,sha256=GFXDh_Bf65Gsx_DmgOrRG2jpM3IdITE3Agqz_LZTJfo,15507
|
153
|
-
ccxt/abstract/coinbaseexchange.py,sha256=
|
153
|
+
ccxt/abstract/coinbaseexchange.py,sha256=cZPDCBe-sdOaeJ0mn9haTM6JwMuRq9NQQSdTpTkchM0,7290
|
154
154
|
ccxt/abstract/coinbaseinternational.py,sha256=ic3EjzSwsOAZpMQQk2yVO8iO8_ZfkGysaiglH9sUfMc,4861
|
155
155
|
ccxt/abstract/coincatch.py,sha256=mCUMZarGuKB1EfwWeXQkRclHiye9wUIXxjghcRGQu5A,14248
|
156
156
|
ccxt/abstract/coincheck.py,sha256=3IIVmryXmzxXqi6IleUmfDZIUMOn_L_4G9Iw8BuEEGo,3417
|
@@ -181,7 +181,7 @@ ccxt/abstract/hyperliquid.py,sha256=ZMYSShrl1iN_TSO4p2lL38qfo65zBWpyHw9kQvJ_mpw,
|
|
181
181
|
ccxt/abstract/idex.py,sha256=kFcWa8PauxofzN_k2DyQ0aZxQ70VPNAWMcEUZrl7XqE,2129
|
182
182
|
ccxt/abstract/independentreserve.py,sha256=Cue0hud5acRs2Q6oSvQ7Rx-YWS_fuACs6uV3aIE20ZM,4165
|
183
183
|
ccxt/abstract/indodax.py,sha256=E16v8W6Ac9kmV9hFEqf_kwV6VQmK74lc1LEUEkuDpYg,2488
|
184
|
-
ccxt/abstract/kraken.py,sha256=
|
184
|
+
ccxt/abstract/kraken.py,sha256=glI0xp23zwl3KVtmfRPS6yoMlD86IhihUPi6LjFzM6I,5989
|
185
185
|
ccxt/abstract/krakenfutures.py,sha256=pu81cKhQgBkQd8F9-Ly3b7xQD-qQ8WLi8EUMfmAUJcM,4080
|
186
186
|
ccxt/abstract/kucoin.py,sha256=kVrVEXiigc36arfbSS8lDUMnG7uFdKgUKHIhVb0Am_8,28626
|
187
187
|
ccxt/abstract/kucoinfutures.py,sha256=W6PBPwLtaFPMjWjTWmrmhnj348iBJywJxr-_a_YJY28,32531
|
@@ -220,13 +220,13 @@ ccxt/abstract/xt.py,sha256=JkWvsic3L2O968BCr9H5Wd5NIbRE9aTT2A-9WbAtl0c,27146
|
|
220
220
|
ccxt/abstract/yobit.py,sha256=8ycfCO8ORFly9hc0Aa47sZyX4_ZKPXS9h9yJzI-uQ7Q,1339
|
221
221
|
ccxt/abstract/zaif.py,sha256=m15WHdl3gYy0GOXNZ8NEH8eE7sVh8c0T_ITNuU8vXeU,3935
|
222
222
|
ccxt/abstract/zonda.py,sha256=X-hCW0SdX3YKZWixDyW-O2211M58Rno8kKJ6quY7rw4,7183
|
223
|
-
ccxt/async_support/__init__.py,sha256=
|
223
|
+
ccxt/async_support/__init__.py,sha256=pQ_3eZNaUmvckVz4q7s4Px-FyPVLuRS2yevX9wKo10E,16399
|
224
224
|
ccxt/async_support/ace.py,sha256=I6CCZND1P23-4-F9nbj1FztEPjnQH-z7ALqsST4IrS8,42574
|
225
225
|
ccxt/async_support/alpaca.py,sha256=wdyduKBco1ztezhYAqtqC3qmU1Ry0ttp5_JyzBx4OU0,69323
|
226
226
|
ccxt/async_support/ascendex.py,sha256=eFQv7WvMc_sQxlY5Kqz4GfVC_lKlvhVJ0785hB2j6Ac,152422
|
227
227
|
ccxt/async_support/bequant.py,sha256=bSsnySbxWEjgt-yH1HtyLfky1ypFpb_xKHf52Ru9h5I,1168
|
228
228
|
ccxt/async_support/bigone.py,sha256=z33jwmyO5b8yfpEbOqZ12QdSdp5DWENfjw85HTGILcI,91742
|
229
|
-
ccxt/async_support/binance.py,sha256=
|
229
|
+
ccxt/async_support/binance.py,sha256=prJcK-vqpgdlpi6SioOxLmTUbRbtrv2JmZrOP1GLWAI,671689
|
230
230
|
ccxt/async_support/binancecoinm.py,sha256=9ICnDf1wzSr_SN8HXdjIoheiNmP6isQ8yHT-8a4yQ3Y,1719
|
231
231
|
ccxt/async_support/binanceus.py,sha256=OnMcoIPXyNos7x3Lqerc0wmfPHsGYn7d6nF7tPEscu4,9196
|
232
232
|
ccxt/async_support/binanceusdm.py,sha256=dEN2QxzfmfrQELFE_B8E5sLywnpogUq3R73jENVQMu0,2649
|
@@ -257,15 +257,15 @@ ccxt/async_support/btcalpha.py,sha256=BaVeu2EBdOjnGkbyRulYJV5NLBZm9ohNZxfUJyYYnT
|
|
257
257
|
ccxt/async_support/btcbox.py,sha256=UVxRITystCBzLFMNrG_126-jnv3GTHgUBe39G9gy0Yw,27947
|
258
258
|
ccxt/async_support/btcmarkets.py,sha256=xXGtx1nCyuBxCgtTVfvyWNrcy9g3VSl9VzLpiAJZpFU,53001
|
259
259
|
ccxt/async_support/btcturk.py,sha256=epA0XdEIhM2BTiNehALcIhHeUp6THPzKUWCMz0UjeAQ,37173
|
260
|
-
ccxt/async_support/bybit.py,sha256=
|
261
|
-
ccxt/async_support/cex.py,sha256=
|
262
|
-
ccxt/async_support/coinbase.py,sha256=
|
260
|
+
ccxt/async_support/bybit.py,sha256=cQNs3mPLwecLJRJhFoo_KCvKrQ87EG5gTB9TunduoIk,429382
|
261
|
+
ccxt/async_support/cex.py,sha256=uOeHQwzMNG8uUNFzvhWysOH0fZzPvWqL7wTZq_6Ujm0,70063
|
262
|
+
ccxt/async_support/coinbase.py,sha256=fAEk4OQMPjNMcnxG7Oxa7tZ3JAVSVZGpz_Vg1oVQ-eY,223292
|
263
263
|
ccxt/async_support/coinbaseadvanced.py,sha256=Kupwnuxiu_qTjwCNV2asacoDUNFQvcaHNAznUJPhdQs,552
|
264
|
-
ccxt/async_support/coinbaseexchange.py,sha256=
|
264
|
+
ccxt/async_support/coinbaseexchange.py,sha256=HAvIpeemkEniNaHnJdPDbK74N39cTlU-9B19B9Q-ZpA,79624
|
265
265
|
ccxt/async_support/coinbaseinternational.py,sha256=XAQr85yqyH4xJg3YOvS5ohxnaNrSgjqFm_1c4TknYuw,98037
|
266
266
|
ccxt/async_support/coincatch.py,sha256=SCfTDw0oYlFQ9EzvM33RgnYa0dbnKj-v1WFJL9sEBaQ,242020
|
267
267
|
ccxt/async_support/coincheck.py,sha256=tMLtn82eRNcqqNIJT1cVmReuhOHeIYS2x9o04_KJWfE,36104
|
268
|
-
ccxt/async_support/coinex.py,sha256=
|
268
|
+
ccxt/async_support/coinex.py,sha256=FMYVNWtJhqa33yNd89RxT_J1f3xPBoyW8iOiH7rMw5I,264962
|
269
269
|
ccxt/async_support/coinlist.py,sha256=VmJO4vbhFA3MWydXRIOrKaHR4XZm6s6Q65WBauFmPik,104684
|
270
270
|
ccxt/async_support/coinmate.py,sha256=_NrwDlvFC6haeNN65Jbf_DoCSGekAGKqX1qONXygcl8,46389
|
271
271
|
ccxt/async_support/coinmetro.py,sha256=4z4_rfeRscFuqxiHCWUqVmxqm2JCbsJidRT1IixOI40,80893
|
@@ -289,17 +289,17 @@ ccxt/async_support/hollaex.py,sha256=7G_9X0hv22I_VJ-8lQ8mtCCK5Zvw_E-YOl8v-A41d-0
|
|
289
289
|
ccxt/async_support/htx.py,sha256=mNWINzfZOoOT5saXZhZ8R4irpE2uh283AG7JFON7cj8,435219
|
290
290
|
ccxt/async_support/huobi.py,sha256=fup0j6wQ1khAtfbb1H4CSyJAOzhxuoHMmrM6sgTuhr8,452
|
291
291
|
ccxt/async_support/huobijp.py,sha256=8AxLadMz_GuORYMhCcrxn7PzwtY7S5pTCwwLGZdwA2g,90288
|
292
|
-
ccxt/async_support/hyperliquid.py,sha256=
|
292
|
+
ccxt/async_support/hyperliquid.py,sha256=ekA7JjA9yq13wXsE48-fAqrJPcM_e8Jbx8IMOQbDKYU,129916
|
293
293
|
ccxt/async_support/idex.py,sha256=C2eFRXeacmeSFcteMwIGTrSTBQkty_skQjTcdnszW7s,73734
|
294
294
|
ccxt/async_support/independentreserve.py,sha256=lQDBlGtZAwjoSjEla5SPXHjaW5FE8aBZuOqPHuuaODQ,38212
|
295
295
|
ccxt/async_support/indodax.py,sha256=vh9a97WBANyeLOvuhUbqX8chQQuIMxzCDmlMBA3owe4,55489
|
296
|
-
ccxt/async_support/kraken.py,sha256=
|
296
|
+
ccxt/async_support/kraken.py,sha256=dOyylPWAcIPi5gVmiN4beqm45GGD--l6lkpyQ_CaUPk,137789
|
297
297
|
ccxt/async_support/krakenfutures.py,sha256=IrzUkfTz5-0bAou0EbT-FbHd9b1KhuI-rr214xJoJ-0,120499
|
298
298
|
ccxt/async_support/kucoin.py,sha256=lPRse1PgiS1Et7enacqmNaA0WlUAF7FtHXHUg7L3gu4,230972
|
299
|
-
ccxt/async_support/kucoinfutures.py,sha256=
|
299
|
+
ccxt/async_support/kucoinfutures.py,sha256=a_M34puD66tSbCiT2lo5rugWOGPGPY4zhSXxVQfoOxY,143216
|
300
300
|
ccxt/async_support/kuna.py,sha256=7o_EWLEJWaQ0dBk0T13OACfxcHAgRWzXrW3ku95H3xQ,96267
|
301
301
|
ccxt/async_support/latoken.py,sha256=ZS13BfGhq38HZAYGr0SKfEPQT1G3WuOfYR66a8R-kLk,80128
|
302
|
-
ccxt/async_support/lbank.py,sha256=
|
302
|
+
ccxt/async_support/lbank.py,sha256=ywVYLq1UzoO8JcqPOWs3pGOo52Jwrs8_xPHiaqsT7Yw,121328
|
303
303
|
ccxt/async_support/luno.py,sha256=27OPfQxs0MXkBy8phG9nm-hjNSvrQNRMf8_Y5QSyPyc,46643
|
304
304
|
ccxt/async_support/lykke.py,sha256=xiG8M2wtxSlMbgiv_2WXr1mEX9geiBZk_loyrA_zpco,51831
|
305
305
|
ccxt/async_support/mercado.py,sha256=zwxRYEtnzqMk6n56cAlfrV3NvCSND8Y-CW64QAhrg1w,35999
|
@@ -308,13 +308,13 @@ ccxt/async_support/ndax.py,sha256=8TfxK1AnmyXPaQTMDRs0eu2NBXtbohUqE2OVCbNS3Gk,11
|
|
308
308
|
ccxt/async_support/novadax.py,sha256=ezRfmynJXOyIcVpBcm8WsjPg4Z8xXOjKI5vvlRd5MZE,64763
|
309
309
|
ccxt/async_support/oceanex.py,sha256=INpTbkDnaXuNWO28xWlJbJIxzj1kgbctWthdUUKVLgM,41566
|
310
310
|
ccxt/async_support/okcoin.py,sha256=eydsVAly3MCzJF1vDbjZ5aoQp-YVOQKXIOT-ym1dDKM,151732
|
311
|
-
ccxt/async_support/okx.py,sha256=
|
311
|
+
ccxt/async_support/okx.py,sha256=708iKk-yo8MYAV-ra7gNK34Jei_NvSaBj9VJv_-Slzw,393138
|
312
312
|
ccxt/async_support/onetrading.py,sha256=yyuSWvb1_vftSSBbhwD9HwcE-J7bS3MT1BzWybVLrys,88943
|
313
313
|
ccxt/async_support/oxfun.py,sha256=8FwNPbbdSYQTUgyRtKWmkzxTEASyt9o-U2TTDd6he2c,125433
|
314
314
|
ccxt/async_support/p2b.py,sha256=oUaWStGWK0bMSLp2PPyXttWRDOf0zP-1IM-koUtdsFQ,54380
|
315
315
|
ccxt/async_support/paradex.py,sha256=MnhLjFOF3hq0_-M4ClWxM-7dEx-hQsfyRxJkLsp7QG4,86354
|
316
316
|
ccxt/async_support/paymium.py,sha256=6hMZkYM92EDkCUobmAZo3rjA2o6CA7eBXQl_y46KhgA,24694
|
317
|
-
ccxt/async_support/phemex.py,sha256=
|
317
|
+
ccxt/async_support/phemex.py,sha256=mWmeVbXg3-3XyylI5NvsEFpy7sNpe2lAEtGRg3dBWxI,227162
|
318
318
|
ccxt/async_support/poloniex.py,sha256=P8klfqQJatPN3ndg3VJMQt-WmRhqbmC2NKuR8bY8P6o,103172
|
319
319
|
ccxt/async_support/poloniexfutures.py,sha256=j3MANhg6O1CGplxENOLKmC_UXUCHK-01TlzOvbi9NCM,80365
|
320
320
|
ccxt/async_support/probit.py,sha256=h5NA_YoGMhTbt8HLgEkzEKdvkCKZNbugcYvQFuHU9rM,76657
|
@@ -333,7 +333,7 @@ ccxt/async_support/yobit.py,sha256=cDHapsfErdKrRWZMFJKvqulXZTv_3ZjEY126uP0V7NM,5
|
|
333
333
|
ccxt/async_support/zaif.py,sha256=DMK10ffQdvMW_UlnnIzNM8zoVxxt26Z8ErACGFrgM6E,29019
|
334
334
|
ccxt/async_support/zonda.py,sha256=5dPcmg_1rjeM7URfkThhlt24bdOFX6S8kemDDTov-Zg,83059
|
335
335
|
ccxt/async_support/base/__init__.py,sha256=aVYSsFi--b4InRs9zDN_wtCpj8odosAB726JdUHavrk,67
|
336
|
-
ccxt/async_support/base/exchange.py,sha256=
|
336
|
+
ccxt/async_support/base/exchange.py,sha256=4lAL-5eY9x3hv9SN9-bx8WSYQ0DacjExxCHrsnw-UqA,115371
|
337
337
|
ccxt/async_support/base/throttler.py,sha256=tvDVcdRUVYi8fZRlEcnqtgzcgB_KMUMRs5Pu8tuU-tU,1847
|
338
338
|
ccxt/async_support/base/ws/__init__.py,sha256=uockzpLuwntKGZbs5EOWFe-Zg-k6Cj7GhNJLc_RX0so,1791
|
339
339
|
ccxt/async_support/base/ws/aiohttp_client.py,sha256=8IVvhwKQagDguWaZQLo-GnzTzBpYbf_Bib8PAjyk9Eo,6283
|
@@ -347,10 +347,10 @@ ccxt/async_support/base/ws/order_book_side.py,sha256=GhnGUt78pJ-AYL_Dq9produGjmB
|
|
347
347
|
ccxt/base/__init__.py,sha256=eTx1OE3HJjspFUQjGm6LBhaQiMKJnXjkdP-JUXknyQ0,1320
|
348
348
|
ccxt/base/decimal_to_precision.py,sha256=fgWRBzRTtsf3r2INyS4f7WHlzgjB5YM1ekiwqD21aac,6634
|
349
349
|
ccxt/base/errors.py,sha256=Pad-6ugvGUwhoYuKUliX-N7FTrcnKCQGFjsaq2tMn0I,4610
|
350
|
-
ccxt/base/exchange.py,sha256=
|
350
|
+
ccxt/base/exchange.py,sha256=PRDLAm8DwbzYj2X0_G2fL34EO-9ACx_ugGBGJ91Z0S4,308152
|
351
351
|
ccxt/base/precise.py,sha256=koce64Yrp6vFbGijJtUt-QQ6XhJgeGTCksZ871FPp_A,8886
|
352
352
|
ccxt/base/types.py,sha256=2ygze4z72AGOkCRjNcwLqO-Y_Lkp9e2xJCH3LW7pYCo,10488
|
353
|
-
ccxt/pro/__init__.py,sha256=
|
353
|
+
ccxt/pro/__init__.py,sha256=FaEB8ZW_DGXPB__RFgCtMCxqevsz-iMpjHinVv5DbZQ,7925
|
354
354
|
ccxt/pro/alpaca.py,sha256=Imdm0wlioL9MMI7ytu0l-wrTIBzNGnHOf8h8Ux2XpJg,27611
|
355
355
|
ccxt/pro/ascendex.py,sha256=BJh0w31wjTIZJriDqWWC1NbEgiW7X4VboYC3g61c4w4,37500
|
356
356
|
ccxt/pro/bequant.py,sha256=33OEUWBi4D9-2w8CmkwN3aF1qS-AlLqX3pxrWwNbXPY,1552
|
@@ -408,7 +408,7 @@ ccxt/pro/luno.py,sha256=gSt6LJKVpR39PYm50AfCZgvXu05IdkxV6VtJKqEmfz0,12380
|
|
408
408
|
ccxt/pro/mexc.py,sha256=aRuJf0ruLBbu9zL2SpUD7dYD_lMb4GSHtdj_507BFIg,56419
|
409
409
|
ccxt/pro/ndax.py,sha256=f2JfMhHkQQcEUnYuLv6uwholUno8VNCQHzZ_fuvrJ7E,22963
|
410
410
|
ccxt/pro/okcoin.py,sha256=w0Z527prDqmRvacdc1QGa2f9VUy31Wtm_SB4KJAWEFo,31024
|
411
|
-
ccxt/pro/okx.py,sha256=
|
411
|
+
ccxt/pro/okx.py,sha256=NUbwCxyI_eO0w8p94Qr6t17AVGLJ1hY8cKRs7Ix_AAo,104593
|
412
412
|
ccxt/pro/onetrading.py,sha256=U1t8dxk1QIslcr6_bgbEWt0WMI43RahJbENhJLhfJVY,54821
|
413
413
|
ccxt/pro/oxfun.py,sha256=LQqOEAMjxd2-gIrK1Ng2Ww22J1nrVYY89s0zhvZH9yI,46647
|
414
414
|
ccxt/pro/p2b.py,sha256=Rhg-9SzoiVYKvZ0V-a3yxvAkm9KJQClN_SRKVfCdbsQ,20857
|
@@ -651,12 +651,12 @@ ccxt/static_dependencies/toolz/curried/operator.py,sha256=ML92mknkAwzBl2NCm-4wer
|
|
651
651
|
ccxt/static_dependencies/typing_inspect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
652
652
|
ccxt/static_dependencies/typing_inspect/typing_inspect.py,sha256=5gIWomLPfuDpgd3gX1GlnX0MuXM3VorR4j2W2qXORiQ,28269
|
653
653
|
ccxt/test/__init__.py,sha256=GKPbEcj0Rrz5HG-GUm-iY1IHhDYmlvcBXZAGk6-m2CI,141
|
654
|
-
ccxt/test/tests_async.py,sha256=
|
655
|
-
ccxt/test/tests_helpers.py,sha256=
|
654
|
+
ccxt/test/tests_async.py,sha256=rLvarVUZqLuCIgiPghCBDNxQ2mBvEG47m1ihYSKXI1E,86311
|
655
|
+
ccxt/test/tests_helpers.py,sha256=zK8j08es1EeQ8HzlKR4QK_vCEI7OPhze5MlDClXxKZc,9866
|
656
656
|
ccxt/test/tests_init.py,sha256=GodMIrJue4KBHHqD4vSPZxokPWpxbZIuEp19UdxlFAg,1166
|
657
|
-
ccxt/test/tests_sync.py,sha256=
|
658
|
-
ccxt-4.4.
|
659
|
-
ccxt-4.4.
|
660
|
-
ccxt-4.4.
|
661
|
-
ccxt-4.4.
|
662
|
-
ccxt-4.4.
|
657
|
+
ccxt/test/tests_sync.py,sha256=zzJOVr2wZaN28-2-HZdwGVpo08AQfQW2-bhnBGZGBWQ,85355
|
658
|
+
ccxt-4.4.33.dist-info/LICENSE.txt,sha256=EIb9221AhMHV7xF1_55STFdKTFsnJVJYkRpY2Lnvo5w,1068
|
659
|
+
ccxt-4.4.33.dist-info/METADATA,sha256=_Q72bDVnTZq1OQfdLwY1fzFGWfYvDEZlmeeSCXpQAVo,115051
|
660
|
+
ccxt-4.4.33.dist-info/WHEEL,sha256=z9j0xAa_JmUKMpmz72K0ZGALSM_n-wQVmGbleXx2VHg,110
|
661
|
+
ccxt-4.4.33.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
|
662
|
+
ccxt-4.4.33.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|