ccxt 4.3.30__py2.py3-none-any.whl → 4.3.31__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/binance.py +2 -0
- ccxt/abstract/binancecoinm.py +2 -0
- ccxt/abstract/binanceus.py +2 -0
- ccxt/abstract/binanceusdm.py +2 -0
- ccxt/ace.py +14 -14
- ccxt/alpaca.py +16 -16
- ccxt/ascendex.py +46 -46
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/ace.py +14 -14
- ccxt/async_support/alpaca.py +16 -16
- ccxt/async_support/ascendex.py +46 -46
- ccxt/async_support/base/exchange.py +23 -23
- ccxt/async_support/bigone.py +32 -32
- ccxt/async_support/binance.py +105 -96
- ccxt/async_support/bingx.py +21 -21
- ccxt/async_support/bit2c.py +13 -13
- ccxt/async_support/bitbank.py +19 -19
- ccxt/async_support/bitbns.py +17 -17
- ccxt/async_support/bitfinex.py +24 -24
- ccxt/async_support/bitfinex2.py +142 -109
- ccxt/async_support/bitflyer.py +23 -23
- ccxt/async_support/bitget.py +76 -76
- ccxt/async_support/bithumb.py +20 -20
- ccxt/async_support/bitmart.py +55 -55
- ccxt/async_support/bitmex.py +41 -41
- ccxt/async_support/bitopro.py +30 -30
- ccxt/async_support/bitrue.py +37 -37
- ccxt/async_support/bitso.py +30 -30
- ccxt/async_support/bitstamp.py +31 -31
- ccxt/async_support/bitteam.py +26 -26
- ccxt/async_support/bitvavo.py +27 -27
- ccxt/async_support/bl3p.py +8 -8
- ccxt/async_support/blockchaincom.py +24 -24
- ccxt/async_support/blofin.py +37 -37
- ccxt/async_support/btcalpha.py +19 -19
- ccxt/async_support/btcbox.py +11 -11
- ccxt/async_support/btcmarkets.py +22 -22
- ccxt/async_support/btcturk.py +13 -13
- ccxt/async_support/bybit.py +96 -96
- ccxt/async_support/cex.py +21 -21
- ccxt/async_support/coinbase.py +53 -53
- ccxt/async_support/coinbaseexchange.py +29 -29
- ccxt/async_support/coinbaseinternational.py +32 -32
- ccxt/async_support/coincheck.py +14 -14
- ccxt/async_support/coinex.py +168 -139
- ccxt/async_support/coinlist.py +35 -35
- ccxt/async_support/coinmate.py +22 -22
- ccxt/async_support/coinmetro.py +22 -22
- ccxt/async_support/coinone.py +18 -18
- ccxt/async_support/coinsph.py +32 -32
- ccxt/async_support/coinspot.py +8 -8
- ccxt/async_support/cryptocom.py +43 -43
- ccxt/async_support/currencycom.py +33 -33
- ccxt/async_support/delta.py +35 -35
- ccxt/async_support/deribit.py +54 -54
- ccxt/async_support/digifinex.py +56 -56
- ccxt/async_support/exmo.py +34 -34
- ccxt/async_support/gate.py +60 -60
- ccxt/async_support/gemini.py +24 -24
- ccxt/async_support/hitbtc.py +51 -51
- ccxt/async_support/hollaex.py +29 -29
- ccxt/async_support/htx.py +73 -73
- ccxt/async_support/huobijp.py +30 -30
- ccxt/async_support/hyperliquid.py +58 -58
- ccxt/async_support/idex.py +33 -33
- ccxt/async_support/independentreserve.py +12 -12
- ccxt/async_support/indodax.py +21 -21
- ccxt/async_support/kraken.py +46 -51
- ccxt/async_support/krakenfutures.py +29 -29
- ccxt/async_support/kucoin.py +51 -51
- ccxt/async_support/kucoinfutures.py +33 -33
- ccxt/async_support/kuna.py +27 -27
- ccxt/async_support/latoken.py +27 -27
- ccxt/async_support/lbank.py +35 -35
- ccxt/async_support/luno.py +19 -19
- ccxt/async_support/lykke.py +20 -20
- ccxt/async_support/mercado.py +17 -17
- ccxt/async_support/mexc.py +64 -64
- ccxt/async_support/ndax.py +38 -38
- ccxt/async_support/novadax.py +26 -26
- ccxt/async_support/oceanex.py +21 -21
- ccxt/async_support/okcoin.py +35 -35
- ccxt/async_support/okx.py +85 -85
- ccxt/async_support/onetrading.py +32 -32
- ccxt/async_support/p2b.py +14 -14
- ccxt/async_support/paymium.py +12 -12
- ccxt/async_support/phemex.py +50 -50
- ccxt/async_support/poloniex.py +35 -35
- ccxt/async_support/poloniexfutures.py +25 -21
- ccxt/async_support/probit.py +30 -30
- ccxt/async_support/timex.py +22 -22
- ccxt/async_support/tokocrypto.py +26 -26
- ccxt/async_support/tradeogre.py +12 -12
- ccxt/async_support/upbit.py +28 -28
- ccxt/async_support/wavesexchange.py +33 -33
- ccxt/async_support/wazirx.py +21 -21
- ccxt/async_support/whitebit.py +37 -37
- ccxt/async_support/woo.py +51 -51
- ccxt/async_support/woofipro.py +46 -46
- ccxt/async_support/yobit.py +20 -20
- ccxt/async_support/zaif.py +12 -12
- ccxt/async_support/zonda.py +22 -22
- ccxt/base/exchange.py +35 -35
- ccxt/base/types.py +13 -0
- ccxt/bigone.py +32 -32
- ccxt/binance.py +105 -96
- ccxt/bingx.py +21 -21
- ccxt/bit2c.py +13 -13
- ccxt/bitbank.py +19 -19
- ccxt/bitbns.py +17 -17
- ccxt/bitfinex.py +24 -24
- ccxt/bitfinex2.py +142 -109
- ccxt/bitflyer.py +23 -23
- ccxt/bitget.py +76 -76
- ccxt/bithumb.py +20 -20
- ccxt/bitmart.py +55 -55
- ccxt/bitmex.py +41 -41
- ccxt/bitopro.py +30 -30
- ccxt/bitrue.py +37 -37
- ccxt/bitso.py +30 -30
- ccxt/bitstamp.py +31 -31
- ccxt/bitteam.py +26 -26
- ccxt/bitvavo.py +27 -27
- ccxt/bl3p.py +8 -8
- ccxt/blockchaincom.py +24 -24
- ccxt/blofin.py +37 -37
- ccxt/btcalpha.py +19 -19
- ccxt/btcbox.py +11 -11
- ccxt/btcmarkets.py +22 -22
- ccxt/btcturk.py +13 -13
- ccxt/bybit.py +96 -96
- ccxt/cex.py +21 -21
- ccxt/coinbase.py +53 -53
- ccxt/coinbaseexchange.py +29 -29
- ccxt/coinbaseinternational.py +32 -32
- ccxt/coincheck.py +14 -14
- ccxt/coinex.py +168 -139
- ccxt/coinlist.py +35 -35
- ccxt/coinmate.py +22 -22
- ccxt/coinmetro.py +22 -22
- ccxt/coinone.py +18 -18
- ccxt/coinsph.py +32 -32
- ccxt/coinspot.py +8 -8
- ccxt/cryptocom.py +43 -43
- ccxt/currencycom.py +33 -33
- ccxt/delta.py +35 -35
- ccxt/deribit.py +54 -54
- ccxt/digifinex.py +56 -56
- ccxt/exmo.py +34 -34
- ccxt/gate.py +60 -60
- ccxt/gemini.py +24 -24
- ccxt/hitbtc.py +51 -51
- ccxt/hollaex.py +29 -29
- ccxt/htx.py +73 -73
- ccxt/huobijp.py +30 -30
- ccxt/hyperliquid.py +58 -58
- ccxt/idex.py +33 -33
- ccxt/independentreserve.py +12 -12
- ccxt/indodax.py +21 -21
- ccxt/kraken.py +46 -51
- ccxt/krakenfutures.py +29 -29
- ccxt/kucoin.py +51 -51
- ccxt/kucoinfutures.py +33 -33
- ccxt/kuna.py +27 -27
- ccxt/latoken.py +27 -27
- ccxt/lbank.py +35 -35
- ccxt/luno.py +19 -19
- ccxt/lykke.py +20 -20
- ccxt/mercado.py +17 -17
- ccxt/mexc.py +64 -64
- ccxt/ndax.py +38 -38
- ccxt/novadax.py +26 -26
- ccxt/oceanex.py +21 -21
- ccxt/okcoin.py +35 -35
- ccxt/okx.py +85 -85
- ccxt/onetrading.py +32 -32
- ccxt/p2b.py +14 -14
- ccxt/paymium.py +12 -12
- ccxt/phemex.py +50 -50
- ccxt/poloniex.py +35 -35
- ccxt/poloniexfutures.py +25 -21
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/alpaca.py +8 -8
- ccxt/pro/ascendex.py +4 -4
- ccxt/pro/binance.py +56 -56
- ccxt/pro/bingx.py +5 -5
- ccxt/pro/bitfinex.py +6 -6
- ccxt/pro/bitfinex2.py +10 -10
- ccxt/pro/bitget.py +17 -17
- ccxt/pro/bithumb.py +6 -6
- ccxt/pro/bitmart.py +8 -8
- ccxt/pro/bitmex.py +16 -16
- ccxt/pro/bitopro.py +4 -4
- ccxt/pro/bitrue.py +8 -8
- ccxt/pro/bitstamp.py +5 -5
- ccxt/pro/bitvavo.py +14 -14
- ccxt/pro/blockchaincom.py +7 -7
- ccxt/pro/bybit.py +12 -12
- ccxt/pro/cex.py +19 -19
- ccxt/pro/coinbase.py +2 -2
- ccxt/pro/coinbaseexchange.py +10 -10
- ccxt/pro/coinbaseinternational.py +4 -4
- ccxt/pro/coincheck.py +2 -2
- ccxt/pro/coinex.py +15 -15
- ccxt/pro/coinone.py +4 -4
- ccxt/pro/cryptocom.py +11 -11
- ccxt/pro/currencycom.py +4 -4
- ccxt/pro/deribit.py +9 -9
- ccxt/pro/exmo.py +9 -9
- ccxt/pro/gate.py +12 -12
- ccxt/pro/gemini.py +11 -11
- ccxt/pro/hitbtc.py +13 -13
- ccxt/pro/hollaex.py +6 -6
- ccxt/pro/htx.py +15 -15
- ccxt/pro/huobijp.py +16 -16
- ccxt/pro/hyperliquid.py +9 -9
- ccxt/pro/idex.py +12 -12
- ccxt/pro/independentreserve.py +2 -2
- ccxt/pro/kraken.py +14 -14
- ccxt/pro/krakenfutures.py +12 -12
- ccxt/pro/kucoin.py +12 -12
- ccxt/pro/kucoinfutures.py +16 -16
- ccxt/pro/lbank.py +12 -12
- ccxt/pro/luno.py +4 -4
- ccxt/pro/mexc.py +14 -14
- ccxt/pro/ndax.py +12 -12
- ccxt/pro/okcoin.py +6 -6
- ccxt/pro/okx.py +30 -30
- ccxt/pro/onetrading.py +13 -13
- ccxt/pro/p2b.py +2 -2
- ccxt/pro/phemex.py +9 -9
- ccxt/pro/poloniex.py +9 -9
- ccxt/pro/poloniexfutures.py +10 -10
- ccxt/pro/probit.py +8 -8
- ccxt/pro/upbit.py +1 -1
- ccxt/pro/wazirx.py +10 -10
- ccxt/pro/whitebit.py +8 -8
- ccxt/pro/woo.py +14 -14
- ccxt/pro/woofipro.py +14 -14
- ccxt/probit.py +30 -30
- ccxt/test/base/test_shared_methods.py +1 -0
- ccxt/timex.py +22 -22
- ccxt/tokocrypto.py +26 -26
- ccxt/tradeogre.py +12 -12
- ccxt/upbit.py +28 -28
- ccxt/wavesexchange.py +33 -33
- ccxt/wazirx.py +21 -21
- ccxt/whitebit.py +37 -37
- ccxt/woo.py +51 -51
- ccxt/woofipro.py +46 -46
- ccxt/yobit.py +20 -20
- ccxt/zaif.py +12 -12
- ccxt/zonda.py +22 -22
- {ccxt-4.3.30.dist-info → ccxt-4.3.31.dist-info}/METADATA +4 -4
- {ccxt-4.3.30.dist-info → ccxt-4.3.31.dist-info}/RECORD +258 -258
- {ccxt-4.3.30.dist-info → ccxt-4.3.31.dist-info}/WHEEL +0 -0
- {ccxt-4.3.30.dist-info → ccxt-4.3.31.dist-info}/top_level.txt +0 -0
ccxt/bithumb.py
CHANGED
@@ -218,7 +218,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
218
218
|
quote = quotes[i]
|
219
219
|
quoteId = quote
|
220
220
|
extension = self.safe_value(quoteCurrencies, quote, {})
|
221
|
-
request = {
|
221
|
+
request: dict = {
|
222
222
|
'quoteId': quoteId,
|
223
223
|
}
|
224
224
|
response = self.publicGetTickerALLQuoteId(self.extend(request, params))
|
@@ -285,7 +285,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
285
285
|
return result
|
286
286
|
|
287
287
|
def parse_balance(self, response) -> Balances:
|
288
|
-
result = {'info': response}
|
288
|
+
result: dict = {'info': response}
|
289
289
|
balances = self.safe_value(response, 'data')
|
290
290
|
codes = list(self.currencies.keys())
|
291
291
|
for i in range(0, len(codes)):
|
@@ -307,7 +307,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
307
307
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
308
308
|
"""
|
309
309
|
self.load_markets()
|
310
|
-
request = {
|
310
|
+
request: dict = {
|
311
311
|
'currency': 'ALL',
|
312
312
|
}
|
313
313
|
response = self.privatePostInfoBalance(self.extend(request, params))
|
@@ -324,7 +324,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
324
324
|
"""
|
325
325
|
self.load_markets()
|
326
326
|
market = self.market(symbol)
|
327
|
-
request = {
|
327
|
+
request: dict = {
|
328
328
|
'baseId': market['baseId'],
|
329
329
|
'quoteId': market['quoteId'],
|
330
330
|
}
|
@@ -412,13 +412,13 @@ class bithumb(Exchange, ImplicitAPI):
|
|
412
412
|
:returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
|
413
413
|
"""
|
414
414
|
self.load_markets()
|
415
|
-
result = {}
|
415
|
+
result: dict = {}
|
416
416
|
quoteCurrencies = self.safe_value(self.options, 'quoteCurrencies', {})
|
417
417
|
quotes = list(quoteCurrencies.keys())
|
418
418
|
for i in range(0, len(quotes)):
|
419
419
|
quote = quotes[i]
|
420
420
|
quoteId = quote
|
421
|
-
request = {
|
421
|
+
request: dict = {
|
422
422
|
'quoteId': quoteId,
|
423
423
|
}
|
424
424
|
response = self.publicGetTickerALLQuoteId(self.extend(request, params))
|
@@ -467,7 +467,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
467
467
|
"""
|
468
468
|
self.load_markets()
|
469
469
|
market = self.market(symbol)
|
470
|
-
request = {
|
470
|
+
request: dict = {
|
471
471
|
'baseId': market['baseId'],
|
472
472
|
'quoteId': market['quoteId'],
|
473
473
|
}
|
@@ -527,7 +527,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
527
527
|
"""
|
528
528
|
self.load_markets()
|
529
529
|
market = self.market(symbol)
|
530
|
-
request = {
|
530
|
+
request: dict = {
|
531
531
|
'baseId': market['baseId'],
|
532
532
|
'quoteId': market['quoteId'],
|
533
533
|
'interval': self.safe_string(self.timeframes, timeframe, timeframe),
|
@@ -559,7 +559,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
559
559
|
data = self.safe_list(response, 'data', [])
|
560
560
|
return self.parse_ohlcvs(data, market, timeframe, since, limit)
|
561
561
|
|
562
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
562
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
563
563
|
#
|
564
564
|
# fetchTrades(public)
|
565
565
|
#
|
@@ -643,7 +643,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
643
643
|
"""
|
644
644
|
self.load_markets()
|
645
645
|
market = self.market(symbol)
|
646
|
-
request = {
|
646
|
+
request: dict = {
|
647
647
|
'baseId': market['baseId'],
|
648
648
|
'quoteId': market['quoteId'],
|
649
649
|
}
|
@@ -683,7 +683,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
683
683
|
"""
|
684
684
|
self.load_markets()
|
685
685
|
market = self.market(symbol)
|
686
|
-
request = {
|
686
|
+
request: dict = {
|
687
687
|
'order_currency': market['id'],
|
688
688
|
'payment_currency': market['quote'],
|
689
689
|
'units': amount,
|
@@ -718,7 +718,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
718
718
|
raise ArgumentsRequired(self.id + ' fetchOrder() requires a symbol argument')
|
719
719
|
self.load_markets()
|
720
720
|
market = self.market(symbol)
|
721
|
-
request = {
|
721
|
+
request: dict = {
|
722
722
|
'order_id': id,
|
723
723
|
'count': 1,
|
724
724
|
'order_currency': market['base'],
|
@@ -755,15 +755,15 @@ class bithumb(Exchange, ImplicitAPI):
|
|
755
755
|
data = self.safe_dict(response, 'data')
|
756
756
|
return self.parse_order(self.extend(data, {'order_id': id}), market)
|
757
757
|
|
758
|
-
def parse_order_status(self, status):
|
759
|
-
statuses = {
|
758
|
+
def parse_order_status(self, status: Str):
|
759
|
+
statuses: dict = {
|
760
760
|
'Pending': 'open',
|
761
761
|
'Completed': 'closed',
|
762
762
|
'Cancel': 'canceled',
|
763
763
|
}
|
764
764
|
return self.safe_string(statuses, status, status)
|
765
765
|
|
766
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
766
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
767
767
|
#
|
768
768
|
#
|
769
769
|
# fetchOrder
|
@@ -872,7 +872,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
872
872
|
market = self.market(symbol)
|
873
873
|
if limit is None:
|
874
874
|
limit = 100
|
875
|
-
request = {
|
875
|
+
request: dict = {
|
876
876
|
'count': limit,
|
877
877
|
'order_currency': market['base'],
|
878
878
|
'payment_currency': market['quote'],
|
@@ -918,7 +918,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
918
918
|
side = 'bid' if (params['side'] == 'buy') else 'ask'
|
919
919
|
params = self.omit(params, ['side', 'currency'])
|
920
920
|
# https://github.com/ccxt/ccxt/issues/6771
|
921
|
-
request = {
|
921
|
+
request: dict = {
|
922
922
|
'order_id': id,
|
923
923
|
'type': side,
|
924
924
|
'order_currency': market['base'],
|
@@ -927,7 +927,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
927
927
|
return self.privatePostTradeCancel(self.extend(request, params))
|
928
928
|
|
929
929
|
def cancel_unified_order(self, order, params={}):
|
930
|
-
request = {
|
930
|
+
request: dict = {
|
931
931
|
'side': order['side'],
|
932
932
|
}
|
933
933
|
return self.cancel_order(order['id'], order['symbol'], self.extend(request, params))
|
@@ -947,7 +947,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
947
947
|
self.check_address(address)
|
948
948
|
self.load_markets()
|
949
949
|
currency = self.currency(code)
|
950
|
-
request = {
|
950
|
+
request: dict = {
|
951
951
|
'units': amount,
|
952
952
|
'address': address,
|
953
953
|
'currency': currency['id'],
|
@@ -964,7 +964,7 @@ class bithumb(Exchange, ImplicitAPI):
|
|
964
964
|
#
|
965
965
|
return self.parse_transaction(response, currency)
|
966
966
|
|
967
|
-
def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
|
967
|
+
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
968
968
|
#
|
969
969
|
# withdraw
|
970
970
|
#
|
ccxt/bitmart.py
CHANGED
@@ -1011,7 +1011,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1011
1011
|
#
|
1012
1012
|
data = self.safe_value(response, 'data', {})
|
1013
1013
|
currencies = self.safe_value(data, 'currencies', [])
|
1014
|
-
result = {}
|
1014
|
+
result: dict = {}
|
1015
1015
|
for i in range(0, len(currencies)):
|
1016
1016
|
currency = currencies[i]
|
1017
1017
|
id = self.safe_string(currency, 'id')
|
@@ -1047,7 +1047,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1047
1047
|
"""
|
1048
1048
|
self.load_markets()
|
1049
1049
|
currency = self.currency(code)
|
1050
|
-
request = {
|
1050
|
+
request: dict = {
|
1051
1051
|
'currency': currency['id'],
|
1052
1052
|
}
|
1053
1053
|
response = self.privateGetAccountV1WithdrawCharge(self.extend(request, params))
|
@@ -1065,7 +1065,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1065
1065
|
# }
|
1066
1066
|
#
|
1067
1067
|
data = response['data']
|
1068
|
-
withdrawFees = {}
|
1068
|
+
withdrawFees: dict = {}
|
1069
1069
|
withdrawFees[code] = self.safe_number(data, 'withdraw_fee')
|
1070
1070
|
return {
|
1071
1071
|
'info': response,
|
@@ -1104,7 +1104,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1104
1104
|
"""
|
1105
1105
|
self.load_markets()
|
1106
1106
|
currency = self.currency(code)
|
1107
|
-
request = {
|
1107
|
+
request: dict = {
|
1108
1108
|
'currency': currency['id'],
|
1109
1109
|
}
|
1110
1110
|
response = self.privateGetAccountV1WithdrawCharge(self.extend(request, params))
|
@@ -1234,7 +1234,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1234
1234
|
"""
|
1235
1235
|
self.load_markets()
|
1236
1236
|
market = self.market(symbol)
|
1237
|
-
request = {}
|
1237
|
+
request: dict = {}
|
1238
1238
|
response = None
|
1239
1239
|
if market['swap']:
|
1240
1240
|
request['contract_symbol'] = market['id']
|
@@ -1333,7 +1333,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1333
1333
|
raise NotSupported(self.id + ' fetchTickers() does not support ' + type + ' markets, only spot and swap markets are accepted')
|
1334
1334
|
data = self.safe_value(response, 'data', {})
|
1335
1335
|
tickers = self.safe_value(data, 'tickers', [])
|
1336
|
-
result = {}
|
1336
|
+
result: dict = {}
|
1337
1337
|
for i in range(0, len(tickers)):
|
1338
1338
|
ticker = self.parse_ticker(tickers[i])
|
1339
1339
|
symbol = ticker['symbol']
|
@@ -1352,7 +1352,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1352
1352
|
"""
|
1353
1353
|
self.load_markets()
|
1354
1354
|
market = self.market(symbol)
|
1355
|
-
request = {
|
1355
|
+
request: dict = {
|
1356
1356
|
'symbol': market['id'],
|
1357
1357
|
}
|
1358
1358
|
response = None
|
@@ -1413,7 +1413,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1413
1413
|
timestamp = self.safe_integer_2(data, 'ts', 'timestamp')
|
1414
1414
|
return self.parse_order_book(data, market['symbol'], timestamp)
|
1415
1415
|
|
1416
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
1416
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
1417
1417
|
#
|
1418
1418
|
# public fetchTrades spot( amount = count * price )
|
1419
1419
|
#
|
@@ -1527,7 +1527,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1527
1527
|
market = self.market(symbol)
|
1528
1528
|
if not market['spot']:
|
1529
1529
|
raise NotSupported(self.id + ' fetchTrades() does not support ' + market['type'] + ' orders, only spot orders are accepted')
|
1530
|
-
request = {
|
1530
|
+
request: dict = {
|
1531
1531
|
'symbol': market['id'],
|
1532
1532
|
}
|
1533
1533
|
response = self.publicGetSpotV1SymbolsTrades(self.extend(request, params))
|
@@ -1639,7 +1639,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1639
1639
|
market = self.market(symbol)
|
1640
1640
|
duration = self.parse_timeframe(timeframe)
|
1641
1641
|
parsedTimeframe = self.safe_integer(self.timeframes, timeframe)
|
1642
|
-
request = {
|
1642
|
+
request: dict = {
|
1643
1643
|
'symbol': market['id'],
|
1644
1644
|
}
|
1645
1645
|
if parsedTimeframe is not None:
|
@@ -1724,7 +1724,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1724
1724
|
"""
|
1725
1725
|
self.load_markets()
|
1726
1726
|
market = None
|
1727
|
-
request = {}
|
1727
|
+
request: dict = {}
|
1728
1728
|
if symbol is not None:
|
1729
1729
|
market = self.market(symbol)
|
1730
1730
|
request['symbol'] = market['id']
|
@@ -1824,7 +1824,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1824
1824
|
:returns dict[]: a list of `trade structures <https://docs.ccxt.com/#/?id=trade-structure>`
|
1825
1825
|
"""
|
1826
1826
|
self.load_markets()
|
1827
|
-
request = {
|
1827
|
+
request: dict = {
|
1828
1828
|
'orderId': id,
|
1829
1829
|
}
|
1830
1830
|
response = self.privatePostSpotV4QueryOrderTrades(self.extend(request, params))
|
@@ -1850,7 +1850,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
1850
1850
|
quote = self.safe_value(entry, 'quote', {})
|
1851
1851
|
baseCode = self.safe_currency_code(self.safe_string(base, 'currency'))
|
1852
1852
|
quoteCode = self.safe_currency_code(self.safe_string(quote, 'currency'))
|
1853
|
-
subResult = {}
|
1853
|
+
subResult: dict = {}
|
1854
1854
|
subResult[baseCode] = self.parse_balance_helper(base)
|
1855
1855
|
subResult[quoteCode] = self.parse_balance_helper(quote)
|
1856
1856
|
result[symbol] = self.safe_balance(subResult)
|
@@ -2002,7 +2002,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2002
2002
|
#
|
2003
2003
|
return self.custom_parse_balance(response, marketType)
|
2004
2004
|
|
2005
|
-
def parse_trading_fee(self, fee, market: Market = None) -> TradingFeeInterface:
|
2005
|
+
def parse_trading_fee(self, fee: dict, market: Market = None) -> TradingFeeInterface:
|
2006
2006
|
#
|
2007
2007
|
# {
|
2008
2008
|
# "symbol": "ETH_USDT",
|
@@ -2032,7 +2032,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2032
2032
|
market = self.market(symbol)
|
2033
2033
|
if not market['spot']:
|
2034
2034
|
raise NotSupported(self.id + ' fetchTradingFee() does not support ' + market['type'] + ' orders, only spot orders are accepted')
|
2035
|
-
request = {
|
2035
|
+
request: dict = {
|
2036
2036
|
'symbol': market['id'],
|
2037
2037
|
}
|
2038
2038
|
response = self.privateGetSpotV1TradeFee(self.extend(request, params))
|
@@ -2051,7 +2051,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2051
2051
|
data = self.safe_value(response, 'data')
|
2052
2052
|
return self.parse_trading_fee(data)
|
2053
2053
|
|
2054
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
2054
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
2055
2055
|
#
|
2056
2056
|
# createOrder
|
2057
2057
|
#
|
@@ -2177,7 +2177,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2177
2177
|
}, market)
|
2178
2178
|
|
2179
2179
|
def parse_order_side(self, side):
|
2180
|
-
sides = {
|
2180
|
+
sides: dict = {
|
2181
2181
|
'1': 'buy',
|
2182
2182
|
'2': 'buy',
|
2183
2183
|
'3': 'sell',
|
@@ -2186,7 +2186,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2186
2186
|
return self.safe_string(sides, side, side)
|
2187
2187
|
|
2188
2188
|
def parse_order_status_by_type(self, type, status):
|
2189
|
-
statusesByType = {
|
2189
|
+
statusesByType: dict = {
|
2190
2190
|
'spot': {
|
2191
2191
|
'1': 'rejected', # Order failure
|
2192
2192
|
'2': 'open', # Placing order
|
@@ -2325,7 +2325,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2325
2325
|
orderRequest = self.create_spot_order_request(marketId, type, side, amount, price, orderParams)
|
2326
2326
|
orderRequest = self.omit(orderRequest, ['symbol']) # not needed because it goes in the outter object
|
2327
2327
|
ordersRequests.append(orderRequest)
|
2328
|
-
request = {
|
2328
|
+
request: dict = {
|
2329
2329
|
'symbol': market['id'],
|
2330
2330
|
'orderParams': ordersRequests,
|
2331
2331
|
}
|
@@ -2381,7 +2381,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2381
2381
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
2382
2382
|
"""
|
2383
2383
|
market = self.market(symbol)
|
2384
|
-
request = {
|
2384
|
+
request: dict = {
|
2385
2385
|
'symbol': market['id'],
|
2386
2386
|
'type': type,
|
2387
2387
|
'size': int(self.amount_to_precision(symbol, amount)),
|
@@ -2466,7 +2466,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2466
2466
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
2467
2467
|
"""
|
2468
2468
|
market = self.market(symbol)
|
2469
|
-
request = {
|
2469
|
+
request: dict = {
|
2470
2470
|
'symbol': market['id'],
|
2471
2471
|
'side': side,
|
2472
2472
|
'type': type,
|
@@ -2529,7 +2529,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2529
2529
|
raise ArgumentsRequired(self.id + ' cancelOrder() requires a symbol argument')
|
2530
2530
|
self.load_markets()
|
2531
2531
|
market = self.market(symbol)
|
2532
|
-
request = {
|
2532
|
+
request: dict = {
|
2533
2533
|
'symbol': market['id'],
|
2534
2534
|
}
|
2535
2535
|
clientOrderId = self.safe_string_2(params, 'clientOrderId', 'client_order_id')
|
@@ -2575,7 +2575,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2575
2575
|
return response
|
2576
2576
|
data = self.safe_value(response, 'data')
|
2577
2577
|
if data is True:
|
2578
|
-
return self.
|
2578
|
+
return self.safe_order({'id': id}, market)
|
2579
2579
|
succeeded = self.safe_value(data, 'succeed')
|
2580
2580
|
if succeeded is not None:
|
2581
2581
|
id = self.safe_string(succeeded, 0)
|
@@ -2585,8 +2585,8 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2585
2585
|
result = self.safe_value(data, 'result')
|
2586
2586
|
if not result:
|
2587
2587
|
raise InvalidOrder(self.id + ' cancelOrder() ' + symbol + ' order id ' + id + ' is filled or canceled')
|
2588
|
-
order = self.
|
2589
|
-
return
|
2588
|
+
order = self.safe_order({'id': id, 'symbol': market['symbol'], 'info': {}}, market)
|
2589
|
+
return order
|
2590
2590
|
|
2591
2591
|
def cancel_orders(self, ids: List[str], symbol: Str = None, params={}):
|
2592
2592
|
"""
|
@@ -2606,7 +2606,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2606
2606
|
raise NotSupported(self.id + ' cancelOrders() does not support ' + market['type'] + ' orders, only spot orders are accepted')
|
2607
2607
|
clientOrderIds = self.safe_list(params, 'clientOrderIds')
|
2608
2608
|
params = self.omit(params, ['clientOrderIds'])
|
2609
|
-
request = {
|
2609
|
+
request: dict = {
|
2610
2610
|
'symbol': market['id'],
|
2611
2611
|
}
|
2612
2612
|
if clientOrderIds is not None:
|
@@ -2653,7 +2653,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2653
2653
|
:returns dict[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
2654
2654
|
"""
|
2655
2655
|
self.load_markets()
|
2656
|
-
request = {}
|
2656
|
+
request: dict = {}
|
2657
2657
|
market = None
|
2658
2658
|
if symbol is not None:
|
2659
2659
|
market = self.market(symbol)
|
@@ -2694,7 +2694,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2694
2694
|
market = self.market(symbol)
|
2695
2695
|
if not market['spot']:
|
2696
2696
|
raise NotSupported(self.id + ' fetchOrdersByStatus() does not support ' + market['type'] + ' orders, only spot orders are accepted')
|
2697
|
-
request = {
|
2697
|
+
request: dict = {
|
2698
2698
|
'symbol': market['id'],
|
2699
2699
|
'offset': 1, # max offset * limit < 500
|
2700
2700
|
'N': 100, # max limit is 100
|
@@ -2761,7 +2761,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2761
2761
|
"""
|
2762
2762
|
self.load_markets()
|
2763
2763
|
market = None
|
2764
|
-
request = {}
|
2764
|
+
request: dict = {}
|
2765
2765
|
if symbol is not None:
|
2766
2766
|
market = self.market(symbol)
|
2767
2767
|
request['symbol'] = market['id']
|
@@ -2870,7 +2870,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2870
2870
|
"""
|
2871
2871
|
self.load_markets()
|
2872
2872
|
market = None
|
2873
|
-
request = {}
|
2873
|
+
request: dict = {}
|
2874
2874
|
if symbol is not None:
|
2875
2875
|
market = self.market(symbol)
|
2876
2876
|
request['symbol'] = market['id']
|
@@ -2925,7 +2925,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
2925
2925
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
2926
2926
|
"""
|
2927
2927
|
self.load_markets()
|
2928
|
-
request = {}
|
2928
|
+
request: dict = {}
|
2929
2929
|
type = None
|
2930
2930
|
market = None
|
2931
2931
|
response = None
|
@@ -3016,7 +3016,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3016
3016
|
"""
|
3017
3017
|
self.load_markets()
|
3018
3018
|
currency = self.currency(code)
|
3019
|
-
request = {
|
3019
|
+
request: dict = {
|
3020
3020
|
'currency': currency['id'],
|
3021
3021
|
}
|
3022
3022
|
if code == 'USDT':
|
@@ -3094,7 +3094,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3094
3094
|
self.check_address(address)
|
3095
3095
|
self.load_markets()
|
3096
3096
|
currency = self.currency(code)
|
3097
|
-
request = {
|
3097
|
+
request: dict = {
|
3098
3098
|
'currency': currency['id'],
|
3099
3099
|
'amount': amount,
|
3100
3100
|
'destination': 'To Digital Address', # To Digital Address, To Binance, To OKEX
|
@@ -3134,7 +3134,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3134
3134
|
self.load_markets()
|
3135
3135
|
if limit is None:
|
3136
3136
|
limit = 50 # max 50
|
3137
|
-
request = {
|
3137
|
+
request: dict = {
|
3138
3138
|
'operation_type': type, # deposit or withdraw
|
3139
3139
|
'offset': 1,
|
3140
3140
|
'N': limit,
|
@@ -3191,7 +3191,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3191
3191
|
:returns dict: a `transaction structure <https://docs.ccxt.com/#/?id=transaction-structure>`
|
3192
3192
|
"""
|
3193
3193
|
self.load_markets()
|
3194
|
-
request = {
|
3194
|
+
request: dict = {
|
3195
3195
|
'id': id,
|
3196
3196
|
}
|
3197
3197
|
response = self.privateGetAccountV1DepositWithdrawDetail(self.extend(request, params))
|
@@ -3241,7 +3241,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3241
3241
|
:returns dict: a `transaction structure <https://docs.ccxt.com/#/?id=transaction-structure>`
|
3242
3242
|
"""
|
3243
3243
|
self.load_markets()
|
3244
|
-
request = {
|
3244
|
+
request: dict = {
|
3245
3245
|
'id': id,
|
3246
3246
|
}
|
3247
3247
|
response = self.privateGetAccountV1DepositWithdrawDetail(self.extend(request, params))
|
@@ -3283,7 +3283,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3283
3283
|
return self.fetch_transactions_by_type('withdraw', code, since, limit, params)
|
3284
3284
|
|
3285
3285
|
def parse_transaction_status(self, status):
|
3286
|
-
statuses = {
|
3286
|
+
statuses: dict = {
|
3287
3287
|
'0': 'pending', # Create
|
3288
3288
|
'1': 'pending', # Submitted, waiting for withdrawal
|
3289
3289
|
'2': 'pending', # Processing
|
@@ -3293,7 +3293,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3293
3293
|
}
|
3294
3294
|
return self.safe_string(statuses, status, status)
|
3295
3295
|
|
3296
|
-
def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
|
3296
|
+
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
3297
3297
|
#
|
3298
3298
|
# withdraw
|
3299
3299
|
#
|
@@ -3378,7 +3378,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3378
3378
|
self.load_markets()
|
3379
3379
|
market = self.market(symbol)
|
3380
3380
|
currency = self.currency(code)
|
3381
|
-
request = {
|
3381
|
+
request: dict = {
|
3382
3382
|
'symbol': market['id'],
|
3383
3383
|
'currency': currency['id'],
|
3384
3384
|
'amount': self.currency_to_precision(code, amount),
|
@@ -3414,7 +3414,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3414
3414
|
self.load_markets()
|
3415
3415
|
market = self.market(symbol)
|
3416
3416
|
currency = self.currency(code)
|
3417
|
-
request = {
|
3417
|
+
request: dict = {
|
3418
3418
|
'symbol': market['id'],
|
3419
3419
|
'currency': currency['id'],
|
3420
3420
|
'amount': self.currency_to_precision(code, amount),
|
@@ -3471,7 +3471,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3471
3471
|
"""
|
3472
3472
|
self.load_markets()
|
3473
3473
|
market = self.market(symbol)
|
3474
|
-
request = {
|
3474
|
+
request: dict = {
|
3475
3475
|
'symbol': market['id'],
|
3476
3476
|
}
|
3477
3477
|
response = self.privateGetSpotV1MarginIsolatedPairs(self.extend(request, params))
|
@@ -3614,7 +3614,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3614
3614
|
self.load_markets()
|
3615
3615
|
currency = self.currency(code)
|
3616
3616
|
amountToPrecision = self.currency_to_precision(code, amount)
|
3617
|
-
request = {
|
3617
|
+
request: dict = {
|
3618
3618
|
'amount': amountToPrecision,
|
3619
3619
|
'currency': currency['id'],
|
3620
3620
|
}
|
@@ -3669,7 +3669,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3669
3669
|
})
|
3670
3670
|
|
3671
3671
|
def parse_transfer_status(self, status: Str) -> Str:
|
3672
|
-
statuses = {
|
3672
|
+
statuses: dict = {
|
3673
3673
|
'1000': 'ok',
|
3674
3674
|
'OK': 'ok',
|
3675
3675
|
'FINISHED': 'ok',
|
@@ -3677,14 +3677,14 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3677
3677
|
return self.safe_string(statuses, status, status)
|
3678
3678
|
|
3679
3679
|
def parse_transfer_to_account(self, type):
|
3680
|
-
types = {
|
3680
|
+
types: dict = {
|
3681
3681
|
'contract_to_spot': 'spot',
|
3682
3682
|
'spot_to_contract': 'swap',
|
3683
3683
|
}
|
3684
3684
|
return self.safe_string(types, type, type)
|
3685
3685
|
|
3686
3686
|
def parse_transfer_from_account(self, type):
|
3687
|
-
types = {
|
3687
|
+
types: dict = {
|
3688
3688
|
'contract_to_spot': 'swap',
|
3689
3689
|
'spot_to_contract': 'spot',
|
3690
3690
|
}
|
@@ -3744,7 +3744,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3744
3744
|
self.load_markets()
|
3745
3745
|
if limit is None:
|
3746
3746
|
limit = 10
|
3747
|
-
request = {
|
3747
|
+
request: dict = {
|
3748
3748
|
'page': self.safe_integer(params, 'page', 1), # default is 1, max is 1000
|
3749
3749
|
'limit': limit, # default is 10, max is 100
|
3750
3750
|
}
|
@@ -3800,7 +3800,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3800
3800
|
raise ArgumentsRequired(self.id + ' fetchBorrowInterest() requires a symbol argument')
|
3801
3801
|
self.load_markets()
|
3802
3802
|
market = self.market(symbol)
|
3803
|
-
request = {
|
3803
|
+
request: dict = {
|
3804
3804
|
'symbol': market['id'],
|
3805
3805
|
}
|
3806
3806
|
if limit is not None:
|
@@ -3834,7 +3834,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3834
3834
|
interest = self.parse_borrow_interests(rows, market)
|
3835
3835
|
return self.filter_by_currency_since_limit(interest, code, since, limit)
|
3836
3836
|
|
3837
|
-
def parse_borrow_interest(self, info, market: Market = None):
|
3837
|
+
def parse_borrow_interest(self, info: dict, market: Market = None):
|
3838
3838
|
#
|
3839
3839
|
# {
|
3840
3840
|
# "borrow_id": "1657664327844Lk5eJJugXmdHHZoe",
|
@@ -3874,7 +3874,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3874
3874
|
market = self.market(symbol)
|
3875
3875
|
if not market['contract']:
|
3876
3876
|
raise BadRequest(self.id + ' fetchOpenInterest() supports contract markets only')
|
3877
|
-
request = {
|
3877
|
+
request: dict = {
|
3878
3878
|
'symbol': market['id'],
|
3879
3879
|
}
|
3880
3880
|
response = self.publicGetContractPublicOpenInterest(self.extend(request, params))
|
@@ -3933,7 +3933,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3933
3933
|
market = self.market(symbol)
|
3934
3934
|
if not market['swap']:
|
3935
3935
|
raise BadSymbol(self.id + ' setLeverage() supports swap contracts only')
|
3936
|
-
request = {
|
3936
|
+
request: dict = {
|
3937
3937
|
'symbol': market['id'],
|
3938
3938
|
'leverage': str(leverage),
|
3939
3939
|
'open_type': marginMode,
|
@@ -3952,7 +3952,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
3952
3952
|
market = self.market(symbol)
|
3953
3953
|
if not market['swap']:
|
3954
3954
|
raise BadSymbol(self.id + ' fetchFundingRate() supports swap contracts only')
|
3955
|
-
request = {
|
3955
|
+
request: dict = {
|
3956
3956
|
'symbol': market['id'],
|
3957
3957
|
}
|
3958
3958
|
response = self.publicGetContractPublicFundingRate(self.extend(request, params))
|
@@ -4013,7 +4013,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
4013
4013
|
"""
|
4014
4014
|
self.load_markets()
|
4015
4015
|
market = self.market(symbol)
|
4016
|
-
request = {
|
4016
|
+
request: dict = {
|
4017
4017
|
'symbol': market['id'],
|
4018
4018
|
}
|
4019
4019
|
response = self.privateGetContractPrivatePosition(self.extend(request, params))
|
@@ -4065,7 +4065,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
4065
4065
|
symbolsLength = len(symbols)
|
4066
4066
|
first = self.safe_string(symbols, 0)
|
4067
4067
|
market = self.market(first)
|
4068
|
-
request = {}
|
4068
|
+
request: dict = {}
|
4069
4069
|
if symbolsLength == 1:
|
4070
4070
|
# only supports symbols or sending one symbol
|
4071
4071
|
request['symbol'] = market['id']
|
@@ -4106,7 +4106,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
4106
4106
|
symbols = self.market_symbols(symbols)
|
4107
4107
|
return self.filter_by_array_positions(result, 'symbol', symbols, False)
|
4108
4108
|
|
4109
|
-
def parse_position(self, position, market: Market = None):
|
4109
|
+
def parse_position(self, position: dict, market: Market = None):
|
4110
4110
|
#
|
4111
4111
|
# {
|
4112
4112
|
# "symbol": "BTCUSDT",
|
@@ -4187,7 +4187,7 @@ class bitmart(Exchange, ImplicitAPI):
|
|
4187
4187
|
market = self.market(symbol)
|
4188
4188
|
if not market['swap']:
|
4189
4189
|
raise NotSupported(self.id + ' fetchMyLiquidations() supports swap markets only')
|
4190
|
-
request = {
|
4190
|
+
request: dict = {
|
4191
4191
|
'symbol': market['id'],
|
4192
4192
|
}
|
4193
4193
|
if since is not None:
|