ccxt 4.3.30__py2.py3-none-any.whl → 4.3.32__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 +208 -175
- 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 +48 -36
- 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 +208 -175
- 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 +20 -20
- ccxt/pro/coinbase.py +32 -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/test/test_async.py +1 -1
- ccxt/test/test_sync.py +1 -1
- 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.32.dist-info}/METADATA +4 -4
- {ccxt-4.3.30.dist-info → ccxt-4.3.32.dist-info}/RECORD +260 -260
- {ccxt-4.3.30.dist-info → ccxt-4.3.32.dist-info}/WHEEL +0 -0
- {ccxt-4.3.30.dist-info → ccxt-4.3.32.dist-info}/top_level.txt +0 -0
ccxt/async_support/latoken.py
CHANGED
@@ -446,7 +446,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
446
446
|
# },
|
447
447
|
# ]
|
448
448
|
#
|
449
|
-
result = {}
|
449
|
+
result: dict = {}
|
450
450
|
for i in range(0, len(response)):
|
451
451
|
currency = response[i]
|
452
452
|
id = self.safe_string(currency, 'id')
|
@@ -519,7 +519,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
519
519
|
# }
|
520
520
|
# ]
|
521
521
|
#
|
522
|
-
result = {
|
522
|
+
result: dict = {
|
523
523
|
'info': response,
|
524
524
|
'timestamp': None,
|
525
525
|
'datetime': None,
|
@@ -560,7 +560,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
560
560
|
"""
|
561
561
|
await self.load_markets()
|
562
562
|
market = self.market(symbol)
|
563
|
-
request = {
|
563
|
+
request: dict = {
|
564
564
|
'currency': market['baseId'],
|
565
565
|
'quote': market['quoteId'],
|
566
566
|
}
|
@@ -642,7 +642,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
642
642
|
"""
|
643
643
|
await self.load_markets()
|
644
644
|
market = self.market(symbol)
|
645
|
-
request = {
|
645
|
+
request: dict = {
|
646
646
|
'base': market['baseId'],
|
647
647
|
'quote': market['quoteId'],
|
648
648
|
}
|
@@ -703,7 +703,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
703
703
|
#
|
704
704
|
return self.parse_tickers(response, symbols)
|
705
705
|
|
706
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
706
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
707
707
|
#
|
708
708
|
# fetchTrades(public)
|
709
709
|
#
|
@@ -796,7 +796,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
796
796
|
"""
|
797
797
|
await self.load_markets()
|
798
798
|
market = self.market(symbol)
|
799
|
-
request = {
|
799
|
+
request: dict = {
|
800
800
|
'currency': market['baseId'],
|
801
801
|
'quote': market['quoteId'],
|
802
802
|
# 'from': str(since), # milliseconds
|
@@ -837,7 +837,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
837
837
|
async def fetch_public_trading_fee(self, symbol: str, params={}):
|
838
838
|
await self.load_markets()
|
839
839
|
market = self.market(symbol)
|
840
|
-
request = {
|
840
|
+
request: dict = {
|
841
841
|
'currency': market['baseId'],
|
842
842
|
'quote': market['quoteId'],
|
843
843
|
}
|
@@ -862,7 +862,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
862
862
|
async def fetch_private_trading_fee(self, symbol: str, params={}):
|
863
863
|
await self.load_markets()
|
864
864
|
market = self.market(symbol)
|
865
|
-
request = {
|
865
|
+
request: dict = {
|
866
866
|
'currency': market['baseId'],
|
867
867
|
'quote': market['quoteId'],
|
868
868
|
}
|
@@ -896,7 +896,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
896
896
|
:returns Trade[]: a list of `trade structures <https://docs.ccxt.com/#/?id=trade-structure>`
|
897
897
|
"""
|
898
898
|
await self.load_markets()
|
899
|
-
request = {
|
899
|
+
request: dict = {
|
900
900
|
# 'currency': market['baseId'],
|
901
901
|
# 'quote': market['quoteId'],
|
902
902
|
# 'from': self.milliseconds(),
|
@@ -933,8 +933,8 @@ class latoken(Exchange, ImplicitAPI):
|
|
933
933
|
#
|
934
934
|
return self.parse_trades(response, market, since, limit)
|
935
935
|
|
936
|
-
def parse_order_status(self, status):
|
937
|
-
statuses = {
|
936
|
+
def parse_order_status(self, status: Str):
|
937
|
+
statuses: dict = {
|
938
938
|
'ORDER_STATUS_PLACED': 'open',
|
939
939
|
'ORDER_STATUS_CLOSED': 'closed',
|
940
940
|
'ORDER_STATUS_CANCELLED': 'canceled',
|
@@ -942,21 +942,21 @@ class latoken(Exchange, ImplicitAPI):
|
|
942
942
|
return self.safe_string(statuses, status, status)
|
943
943
|
|
944
944
|
def parse_order_type(self, status):
|
945
|
-
statuses = {
|
945
|
+
statuses: dict = {
|
946
946
|
'ORDER_TYPE_MARKET': 'market',
|
947
947
|
'ORDER_TYPE_LIMIT': 'limit',
|
948
948
|
}
|
949
949
|
return self.safe_string(statuses, status, status)
|
950
950
|
|
951
|
-
def parse_time_in_force(self, timeInForce):
|
952
|
-
timeInForces = {
|
951
|
+
def parse_time_in_force(self, timeInForce: Str):
|
952
|
+
timeInForces: dict = {
|
953
953
|
'ORDER_CONDITION_GOOD_TILL_CANCELLED': 'GTC',
|
954
954
|
'ORDER_CONDITION_IMMEDIATE_OR_CANCEL': 'IOC',
|
955
955
|
'ORDER_CONDITION_FILL_OR_KILL': 'FOK',
|
956
956
|
}
|
957
957
|
return self.safe_string(timeInForces, timeInForce, timeInForce)
|
958
958
|
|
959
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
959
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
960
960
|
#
|
961
961
|
# createOrder
|
962
962
|
#
|
@@ -1077,7 +1077,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1077
1077
|
params = self.omit(params, 'stop')
|
1078
1078
|
# privateGetAuthOrderActive doesn't work even though its listed at https://api.latoken.com/doc/v2/#tag/Order/operation/getMyActiveOrders
|
1079
1079
|
market = self.market(symbol)
|
1080
|
-
request = {
|
1080
|
+
request: dict = {
|
1081
1081
|
'currency': market['baseId'],
|
1082
1082
|
'quote': market['quoteId'],
|
1083
1083
|
}
|
@@ -1124,7 +1124,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1124
1124
|
:returns Order[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
1125
1125
|
"""
|
1126
1126
|
await self.load_markets()
|
1127
|
-
request = {
|
1127
|
+
request: dict = {
|
1128
1128
|
# 'currency': market['baseId'],
|
1129
1129
|
# 'quote': market['quoteId'],
|
1130
1130
|
# 'from': self.milliseconds(),
|
@@ -1184,7 +1184,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1184
1184
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1185
1185
|
"""
|
1186
1186
|
await self.load_markets()
|
1187
|
-
request = {
|
1187
|
+
request: dict = {
|
1188
1188
|
'id': id,
|
1189
1189
|
}
|
1190
1190
|
isTrigger = self.safe_value_2(params, 'trigger', 'stop')
|
@@ -1237,7 +1237,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1237
1237
|
await self.load_markets()
|
1238
1238
|
market = self.market(symbol)
|
1239
1239
|
uppercaseType = type.upper()
|
1240
|
-
request = {
|
1240
|
+
request: dict = {
|
1241
1241
|
'baseCurrency': market['baseId'],
|
1242
1242
|
'quoteCurrency': market['quoteId'],
|
1243
1243
|
'side': side.upper(), # "BUY", "BID", "SELL", "ASK"
|
@@ -1285,7 +1285,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1285
1285
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1286
1286
|
"""
|
1287
1287
|
await self.load_markets()
|
1288
|
-
request = {
|
1288
|
+
request: dict = {
|
1289
1289
|
'id': id,
|
1290
1290
|
}
|
1291
1291
|
isTrigger = self.safe_value_2(params, 'trigger', 'stop')
|
@@ -1317,7 +1317,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1317
1317
|
:returns dict[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
1318
1318
|
"""
|
1319
1319
|
await self.load_markets()
|
1320
|
-
request = {
|
1320
|
+
request: dict = {
|
1321
1321
|
# 'currency': market['baseId'],
|
1322
1322
|
# 'quote': market['quoteId'],
|
1323
1323
|
}
|
@@ -1358,7 +1358,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1358
1358
|
:returns dict: a list of `transaction structure <https://docs.ccxt.com/#/?id=transaction-structure>`
|
1359
1359
|
"""
|
1360
1360
|
await self.load_markets()
|
1361
|
-
request = {
|
1361
|
+
request: dict = {
|
1362
1362
|
# 'page': '1',
|
1363
1363
|
# 'size': 100,
|
1364
1364
|
}
|
@@ -1395,7 +1395,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1395
1395
|
content = self.safe_list(response, 'content', [])
|
1396
1396
|
return self.parse_transactions(content, currency, since, limit)
|
1397
1397
|
|
1398
|
-
def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
|
1398
|
+
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
1399
1399
|
#
|
1400
1400
|
# {
|
1401
1401
|
# "id":"fbf7d0d1-2629-4ad8-9def-7a1dba423362",
|
@@ -1458,7 +1458,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1458
1458
|
}
|
1459
1459
|
|
1460
1460
|
def parse_transaction_status(self, status):
|
1461
|
-
statuses = {
|
1461
|
+
statuses: dict = {
|
1462
1462
|
'TRANSACTION_STATUS_CONFIRMED': 'ok',
|
1463
1463
|
'TRANSACTION_STATUS_EXECUTED': 'ok',
|
1464
1464
|
'TRANSACTION_STATUS_CANCELLED': 'canceled',
|
@@ -1466,7 +1466,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1466
1466
|
return self.safe_string(statuses, status, status)
|
1467
1467
|
|
1468
1468
|
def parse_transaction_type(self, type):
|
1469
|
-
types = {
|
1469
|
+
types: dict = {
|
1470
1470
|
'TRANSACTION_TYPE_DEPOSIT': 'deposit',
|
1471
1471
|
'TRANSACTION_TYPE_WITHDRAWAL': 'withdrawal',
|
1472
1472
|
}
|
@@ -1534,7 +1534,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1534
1534
|
"""
|
1535
1535
|
await self.load_markets()
|
1536
1536
|
currency = self.currency(code)
|
1537
|
-
request = {
|
1537
|
+
request: dict = {
|
1538
1538
|
'currency': currency['id'],
|
1539
1539
|
'recipient': toAccount,
|
1540
1540
|
'value': self.currency_to_precision(code, amount),
|
@@ -1609,7 +1609,7 @@ class latoken(Exchange, ImplicitAPI):
|
|
1609
1609
|
}
|
1610
1610
|
|
1611
1611
|
def parse_transfer_status(self, status: Str) -> Str:
|
1612
|
-
statuses = {
|
1612
|
+
statuses: dict = {
|
1613
1613
|
'TRANSFER_STATUS_COMPLETED': 'ok',
|
1614
1614
|
'TRANSFER_STATUS_PENDING': 'pending',
|
1615
1615
|
'TRANSFER_STATUS_REJECTED': 'failed',
|
ccxt/async_support/lbank.py
CHANGED
@@ -440,7 +440,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
440
440
|
return result
|
441
441
|
|
442
442
|
async def fetch_swap_markets(self, params={}):
|
443
|
-
request = {
|
443
|
+
request: dict = {
|
444
444
|
'productGroup': 'SwapU',
|
445
445
|
}
|
446
446
|
response = await self.contractPublicGetCfdOpenApiV1PubInstrument(self.extend(request, params))
|
@@ -608,7 +608,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
608
608
|
if market['swap']:
|
609
609
|
responseForSwap = await self.fetch_tickers([market['symbol']], params)
|
610
610
|
return self.safe_value(responseForSwap, market['symbol'])
|
611
|
-
request = {
|
611
|
+
request: dict = {
|
612
612
|
'symbol': market['id'],
|
613
613
|
}
|
614
614
|
response = await self.spotPublicGetTicker24hr(self.extend(request, params))
|
@@ -653,7 +653,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
653
653
|
symbolsLength = len(symbols)
|
654
654
|
if symbolsLength > 0:
|
655
655
|
market = self.market(symbols[0])
|
656
|
-
request = {}
|
656
|
+
request: dict = {}
|
657
657
|
type = None
|
658
658
|
type, params = self.handle_market_type_and_params('fetchTickers', market, params)
|
659
659
|
response = None
|
@@ -725,7 +725,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
725
725
|
market = self.market(symbol)
|
726
726
|
if limit is None:
|
727
727
|
limit = 60
|
728
|
-
request = {
|
728
|
+
request: dict = {
|
729
729
|
'symbol': market['id'],
|
730
730
|
}
|
731
731
|
type = None
|
@@ -791,7 +791,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
791
791
|
return self.parse_order_book(orderbook, market['symbol'], timestamp, 'bids', 'asks', 'price', 'volume')
|
792
792
|
return self.parse_order_book(orderbook, market['symbol'], timestamp)
|
793
793
|
|
794
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
794
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
795
795
|
#
|
796
796
|
# fetchTrades(old) spotPublicGetTrades
|
797
797
|
#
|
@@ -897,7 +897,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
897
897
|
"""
|
898
898
|
await self.load_markets()
|
899
899
|
market = self.market(symbol)
|
900
|
-
request = {
|
900
|
+
request: dict = {
|
901
901
|
'symbol': market['id'],
|
902
902
|
}
|
903
903
|
if since is not None:
|
@@ -975,7 +975,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
975
975
|
if since is None:
|
976
976
|
duration = self.parse_timeframe(timeframe)
|
977
977
|
since = self.milliseconds() - duration * 1000 * limit
|
978
|
-
request = {
|
978
|
+
request: dict = {
|
979
979
|
'symbol': market['id'],
|
980
980
|
'type': self.safe_string(self.timeframes, timeframe, timeframe),
|
981
981
|
'time': self.parse_to_int(since / 1000),
|
@@ -1085,7 +1085,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1085
1085
|
# ]
|
1086
1086
|
#
|
1087
1087
|
timestamp = self.safe_integer(response, 'ts')
|
1088
|
-
result = {
|
1088
|
+
result: dict = {
|
1089
1089
|
'info': response,
|
1090
1090
|
'timestamp': timestamp,
|
1091
1091
|
'datetime': self.iso8601(timestamp),
|
@@ -1183,7 +1183,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1183
1183
|
#
|
1184
1184
|
return self.parse_balance(response)
|
1185
1185
|
|
1186
|
-
def parse_trading_fee(self, fee, market: Market = None) -> TradingFeeInterface:
|
1186
|
+
def parse_trading_fee(self, fee: dict, market: Market = None) -> TradingFeeInterface:
|
1187
1187
|
#
|
1188
1188
|
# {
|
1189
1189
|
# "symbol":"skt_usdt",
|
@@ -1222,10 +1222,10 @@ class lbank(Exchange, ImplicitAPI):
|
|
1222
1222
|
:returns dict: a dictionary of `fee structures <https://docs.ccxt.com/#/?id=fee-structure>` indexed by market symbols
|
1223
1223
|
"""
|
1224
1224
|
await self.load_markets()
|
1225
|
-
request = {}
|
1225
|
+
request: dict = {}
|
1226
1226
|
response = await self.spotPrivatePostSupplementCustomerTradeFee(self.extend(request, params))
|
1227
1227
|
fees = self.safe_value(response, 'data', [])
|
1228
|
-
result = {}
|
1228
|
+
result: dict = {}
|
1229
1229
|
for i in range(0, len(fees)):
|
1230
1230
|
fee = self.parse_trading_fee(fees[i])
|
1231
1231
|
symbol = fee['symbol']
|
@@ -1268,7 +1268,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1268
1268
|
postOnly = self.safe_bool(params, 'postOnly', False)
|
1269
1269
|
timeInForce = self.safe_string_upper(params, 'timeInForce')
|
1270
1270
|
params = self.omit(params, ['custom_id', 'clientOrderId', 'timeInForce', 'postOnly'])
|
1271
|
-
request = {
|
1271
|
+
request: dict = {
|
1272
1272
|
'symbol': market['id'],
|
1273
1273
|
}
|
1274
1274
|
ioc = (timeInForce == 'IOC')
|
@@ -1339,8 +1339,8 @@ class lbank(Exchange, ImplicitAPI):
|
|
1339
1339
|
'info': result,
|
1340
1340
|
}, market)
|
1341
1341
|
|
1342
|
-
def parse_order_status(self, status):
|
1343
|
-
statuses = {
|
1342
|
+
def parse_order_status(self, status: Str):
|
1343
|
+
statuses: dict = {
|
1344
1344
|
'-1': 'canceled', # canceled
|
1345
1345
|
'0': 'open', # not traded
|
1346
1346
|
'1': 'open', # partial deal
|
@@ -1350,7 +1350,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1350
1350
|
}
|
1351
1351
|
return self.safe_string(statuses, status, status)
|
1352
1352
|
|
1353
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
1353
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
1354
1354
|
#
|
1355
1355
|
# fetchOrderSupplement(private)
|
1356
1356
|
#
|
@@ -1493,7 +1493,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1493
1493
|
raise ArgumentsRequired(self.id + ' fetchOrder() requires a symbol argument')
|
1494
1494
|
await self.load_markets()
|
1495
1495
|
market = self.market(symbol)
|
1496
|
-
request = {
|
1496
|
+
request: dict = {
|
1497
1497
|
'symbol': market['id'],
|
1498
1498
|
'orderId': id,
|
1499
1499
|
}
|
@@ -1528,7 +1528,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1528
1528
|
raise ArgumentsRequired(self.id + ' fetchOrder() requires a symbol argument')
|
1529
1529
|
await self.load_markets()
|
1530
1530
|
market = self.market(symbol)
|
1531
|
-
request = {
|
1531
|
+
request: dict = {
|
1532
1532
|
'symbol': market['id'],
|
1533
1533
|
'order_id': id,
|
1534
1534
|
}
|
@@ -1582,7 +1582,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1582
1582
|
market = self.market(symbol)
|
1583
1583
|
since = self.safe_value(params, 'start_date', since)
|
1584
1584
|
params = self.omit(params, 'start_date')
|
1585
|
-
request = {
|
1585
|
+
request: dict = {
|
1586
1586
|
'symbol': market['id'],
|
1587
1587
|
# 'start_date' Start time yyyy-mm-dd, the maximum is today, the default is yesterday
|
1588
1588
|
# 'end_date' Finish time yyyy-mm-dd, the maximum is today, the default is today
|
@@ -1638,7 +1638,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1638
1638
|
market = self.market(symbol)
|
1639
1639
|
if limit is None:
|
1640
1640
|
limit = 100
|
1641
|
-
request = {
|
1641
|
+
request: dict = {
|
1642
1642
|
'symbol': market['id'],
|
1643
1643
|
'current_page': 1,
|
1644
1644
|
'page_length': limit,
|
@@ -1692,7 +1692,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1692
1692
|
market = self.market(symbol)
|
1693
1693
|
if limit is None:
|
1694
1694
|
limit = 100
|
1695
|
-
request = {
|
1695
|
+
request: dict = {
|
1696
1696
|
'symbol': market['id'],
|
1697
1697
|
'current_page': 1,
|
1698
1698
|
'page_length': limit,
|
@@ -1744,7 +1744,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1744
1744
|
clientOrderId = self.safe_string_2(params, 'origClientOrderId', 'clientOrderId')
|
1745
1745
|
params = self.omit(params, ['origClientOrderId', 'clientOrderId'])
|
1746
1746
|
market = self.market(symbol)
|
1747
|
-
request = {
|
1747
|
+
request: dict = {
|
1748
1748
|
'symbol': market['id'],
|
1749
1749
|
'orderId': id,
|
1750
1750
|
}
|
@@ -1779,7 +1779,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1779
1779
|
raise ArgumentsRequired(self.id + ' cancelAllOrders() requires a symbol argument')
|
1780
1780
|
await self.load_markets()
|
1781
1781
|
market = self.market(symbol)
|
1782
|
-
request = {
|
1782
|
+
request: dict = {
|
1783
1783
|
'symbol': market['id'],
|
1784
1784
|
}
|
1785
1785
|
response = await self.spotPrivatePostSupplementCancelOrderBySymbol(self.extend(request, params))
|
@@ -1835,7 +1835,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1835
1835
|
async def fetch_deposit_address_default(self, code: str, params={}):
|
1836
1836
|
await self.load_markets()
|
1837
1837
|
currency = self.currency(code)
|
1838
|
-
request = {
|
1838
|
+
request: dict = {
|
1839
1839
|
'assetCode': currency['id'],
|
1840
1840
|
}
|
1841
1841
|
network = self.get_network_code_for_currency(code, params)
|
@@ -1874,7 +1874,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1874
1874
|
# returns the address for whatever the default network is...
|
1875
1875
|
await self.load_markets()
|
1876
1876
|
currency = self.currency(code)
|
1877
|
-
request = {
|
1877
|
+
request: dict = {
|
1878
1878
|
'coin': currency['id'],
|
1879
1879
|
}
|
1880
1880
|
networks = self.safe_value(self.options, 'networks')
|
@@ -1928,7 +1928,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1928
1928
|
# The relevant coin network fee can be found by calling fetchDepositWithdrawFees(), note: if no network param is supplied then the default network will be used, self can also be found in fetchDepositWithdrawFees().
|
1929
1929
|
self.check_required_argument('withdraw', fee, 'fee')
|
1930
1930
|
currency = self.currency(code)
|
1931
|
-
request = {
|
1931
|
+
request: dict = {
|
1932
1932
|
'address': address,
|
1933
1933
|
'coin': currency['id'],
|
1934
1934
|
'amount': amount,
|
@@ -1967,7 +1967,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1967
1967
|
}
|
1968
1968
|
|
1969
1969
|
def parse_transaction_status(self, status, type):
|
1970
|
-
statuses = {
|
1970
|
+
statuses: dict = {
|
1971
1971
|
'deposit': {
|
1972
1972
|
'1': 'pending',
|
1973
1973
|
'2': 'ok',
|
@@ -1984,7 +1984,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1984
1984
|
}
|
1985
1985
|
return self.safe_string(self.safe_value(statuses, type, {}), status, status)
|
1986
1986
|
|
1987
|
-
def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
|
1987
|
+
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
1988
1988
|
#
|
1989
1989
|
# fetchDeposits(private)
|
1990
1990
|
#
|
@@ -2077,7 +2077,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2077
2077
|
:returns dict[]: a list of `transaction structures <https://docs.ccxt.com/#/?id=transaction-structure>`
|
2078
2078
|
"""
|
2079
2079
|
await self.load_markets()
|
2080
|
-
request = {
|
2080
|
+
request: dict = {
|
2081
2081
|
# 'status': Recharge status: ("1","Applying"),("2","Recharge successful"),("3","Recharge failed"),("4","Already Cancel"),("5", "Transfer")
|
2082
2082
|
# 'endTime': end time, timestamp in milliseconds, default now
|
2083
2083
|
}
|
@@ -2126,7 +2126,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2126
2126
|
:returns dict[]: a list of `transaction structures <https://docs.ccxt.com/#/?id=transaction-structure>`
|
2127
2127
|
"""
|
2128
2128
|
await self.load_markets()
|
2129
|
-
request = {
|
2129
|
+
request: dict = {
|
2130
2130
|
# 'status': Recharge status: ("1","Applying"),("2","Recharge successful"),("3","Recharge failed"),("4","Already Cancel"),("5", "Transfer")
|
2131
2131
|
# 'endTime': end time, timestamp in milliseconds, default now
|
2132
2132
|
# 'withdrawOrderId': Custom withdrawal id
|
@@ -2168,7 +2168,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2168
2168
|
withdraws = self.safe_list(data, 'withdraws', [])
|
2169
2169
|
return self.parse_transactions(withdraws, currency, since, limit)
|
2170
2170
|
|
2171
|
-
async def fetch_transaction_fees(self, codes:
|
2171
|
+
async def fetch_transaction_fees(self, codes: Strings = None, params={}):
|
2172
2172
|
"""
|
2173
2173
|
* @deprecated
|
2174
2174
|
please use fetchDepositWithdrawFees instead
|
@@ -2229,7 +2229,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2229
2229
|
# }
|
2230
2230
|
#
|
2231
2231
|
result = self.safe_value(response, 'data', [])
|
2232
|
-
withdrawFees = {}
|
2232
|
+
withdrawFees: dict = {}
|
2233
2233
|
for i in range(0, len(result)):
|
2234
2234
|
entry = result[i]
|
2235
2235
|
currencyId = self.safe_string(entry, 'coin')
|
@@ -2255,7 +2255,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2255
2255
|
await self.load_markets()
|
2256
2256
|
code = self.safe_string_2(params, 'coin', 'assetCode')
|
2257
2257
|
params = self.omit(params, ['coin', 'assetCode'])
|
2258
|
-
request = {}
|
2258
|
+
request: dict = {}
|
2259
2259
|
if code is not None:
|
2260
2260
|
currency = self.currency(code)
|
2261
2261
|
request['assetCode'] = currency['id']
|
@@ -2282,7 +2282,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2282
2282
|
# }
|
2283
2283
|
#
|
2284
2284
|
result = self.safe_value(response, 'data', [])
|
2285
|
-
withdrawFees = {}
|
2285
|
+
withdrawFees: dict = {}
|
2286
2286
|
for i in range(0, len(result)):
|
2287
2287
|
item = result[i]
|
2288
2288
|
canWithdraw = self.safe_value(item, 'canWithDraw')
|
@@ -2370,7 +2370,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2370
2370
|
# extremely incomplete response
|
2371
2371
|
# vast majority fees None
|
2372
2372
|
await self.load_markets()
|
2373
|
-
request = {}
|
2373
|
+
request: dict = {}
|
2374
2374
|
response = await self.spotPublicGetWithdrawConfigs(self.extend(request, params))
|
2375
2375
|
#
|
2376
2376
|
# {
|
@@ -2413,7 +2413,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2413
2413
|
# ...
|
2414
2414
|
# ]
|
2415
2415
|
#
|
2416
|
-
result = {}
|
2416
|
+
result: dict = {}
|
2417
2417
|
for i in range(0, len(response)):
|
2418
2418
|
fee = response[i]
|
2419
2419
|
canWithdraw = self.safe_value(fee, 'canWithDraw')
|
ccxt/async_support/luno.py
CHANGED
@@ -298,7 +298,7 @@ class luno(Exchange, ImplicitAPI):
|
|
298
298
|
|
299
299
|
def parse_balance(self, response) -> Balances:
|
300
300
|
wallets = self.safe_value(response, 'balance', [])
|
301
|
-
result = {
|
301
|
+
result: dict = {
|
302
302
|
'info': response,
|
303
303
|
'timestamp': None,
|
304
304
|
'datetime': None,
|
@@ -355,7 +355,7 @@ class luno(Exchange, ImplicitAPI):
|
|
355
355
|
"""
|
356
356
|
await self.load_markets()
|
357
357
|
market = self.market(symbol)
|
358
|
-
request = {
|
358
|
+
request: dict = {
|
359
359
|
'pair': market['id'],
|
360
360
|
}
|
361
361
|
response = None
|
@@ -366,14 +366,14 @@ class luno(Exchange, ImplicitAPI):
|
|
366
366
|
timestamp = self.safe_integer(response, 'timestamp')
|
367
367
|
return self.parse_order_book(response, market['symbol'], timestamp, 'bids', 'asks', 'price', 'volume')
|
368
368
|
|
369
|
-
def parse_order_status(self, status):
|
370
|
-
statuses = {
|
369
|
+
def parse_order_status(self, status: Str):
|
370
|
+
statuses: dict = {
|
371
371
|
# todo add other statuses
|
372
372
|
'PENDING': 'open',
|
373
373
|
}
|
374
374
|
return self.safe_string(statuses, status, status)
|
375
375
|
|
376
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
376
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
377
377
|
#
|
378
378
|
# {
|
379
379
|
# "base": "string",
|
@@ -454,7 +454,7 @@ class luno(Exchange, ImplicitAPI):
|
|
454
454
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
455
455
|
"""
|
456
456
|
await self.load_markets()
|
457
|
-
request = {
|
457
|
+
request: dict = {
|
458
458
|
'id': id,
|
459
459
|
}
|
460
460
|
response = await self.privateGetOrdersId(self.extend(request, params))
|
@@ -462,7 +462,7 @@ class luno(Exchange, ImplicitAPI):
|
|
462
462
|
|
463
463
|
async def fetch_orders_by_state(self, state=None, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
464
464
|
await self.load_markets()
|
465
|
-
request = {}
|
465
|
+
request: dict = {}
|
466
466
|
market = None
|
467
467
|
if state is not None:
|
468
468
|
request['state'] = state
|
@@ -559,7 +559,7 @@ class luno(Exchange, ImplicitAPI):
|
|
559
559
|
response = await self.publicGetTickers(params)
|
560
560
|
tickers = self.index_by(response['tickers'], 'pair')
|
561
561
|
ids = list(tickers.keys())
|
562
|
-
result = {}
|
562
|
+
result: dict = {}
|
563
563
|
for i in range(0, len(ids)):
|
564
564
|
id = ids[i]
|
565
565
|
market = self.safe_market(id)
|
@@ -578,7 +578,7 @@ class luno(Exchange, ImplicitAPI):
|
|
578
578
|
"""
|
579
579
|
await self.load_markets()
|
580
580
|
market = self.market(symbol)
|
581
|
-
request = {
|
581
|
+
request: dict = {
|
582
582
|
'pair': market['id'],
|
583
583
|
}
|
584
584
|
response = await self.publicGetTicker(self.extend(request, params))
|
@@ -593,7 +593,7 @@ class luno(Exchange, ImplicitAPI):
|
|
593
593
|
# }
|
594
594
|
return self.parse_ticker(response, market)
|
595
595
|
|
596
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
596
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
597
597
|
#
|
598
598
|
# fetchTrades(public)
|
599
599
|
#
|
@@ -689,7 +689,7 @@ class luno(Exchange, ImplicitAPI):
|
|
689
689
|
"""
|
690
690
|
await self.load_markets()
|
691
691
|
market = self.market(symbol)
|
692
|
-
request = {
|
692
|
+
request: dict = {
|
693
693
|
'pair': market['id'],
|
694
694
|
}
|
695
695
|
if since is not None:
|
@@ -724,7 +724,7 @@ class luno(Exchange, ImplicitAPI):
|
|
724
724
|
"""
|
725
725
|
await self.load_markets()
|
726
726
|
market = self.market(symbol)
|
727
|
-
request = {
|
727
|
+
request: dict = {
|
728
728
|
'duration': self.safe_value(self.timeframes, timeframe, timeframe),
|
729
729
|
'pair': market['id'],
|
730
730
|
}
|
@@ -785,7 +785,7 @@ class luno(Exchange, ImplicitAPI):
|
|
785
785
|
raise ArgumentsRequired(self.id + ' fetchMyTrades() requires a symbol argument')
|
786
786
|
await self.load_markets()
|
787
787
|
market = self.market(symbol)
|
788
|
-
request = {
|
788
|
+
request: dict = {
|
789
789
|
'pair': market['id'],
|
790
790
|
}
|
791
791
|
if since is not None:
|
@@ -827,7 +827,7 @@ class luno(Exchange, ImplicitAPI):
|
|
827
827
|
"""
|
828
828
|
await self.load_markets()
|
829
829
|
market = self.market(symbol)
|
830
|
-
request = {
|
830
|
+
request: dict = {
|
831
831
|
'pair': market['id'],
|
832
832
|
}
|
833
833
|
response = await self.privateGetFeeInfo(self.extend(request, params))
|
@@ -862,7 +862,7 @@ class luno(Exchange, ImplicitAPI):
|
|
862
862
|
"""
|
863
863
|
await self.load_markets()
|
864
864
|
market = self.market(symbol)
|
865
|
-
request = {
|
865
|
+
request: dict = {
|
866
866
|
'pair': market['id'],
|
867
867
|
}
|
868
868
|
response = None
|
@@ -894,7 +894,7 @@ class luno(Exchange, ImplicitAPI):
|
|
894
894
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
895
895
|
"""
|
896
896
|
await self.load_markets()
|
897
|
-
request = {
|
897
|
+
request: dict = {
|
898
898
|
'order_id': id,
|
899
899
|
}
|
900
900
|
return await self.privatePostStoporder(self.extend(request, params))
|
@@ -906,7 +906,7 @@ class luno(Exchange, ImplicitAPI):
|
|
906
906
|
if limit is None:
|
907
907
|
limit = 1
|
908
908
|
since = None
|
909
|
-
request = {
|
909
|
+
request: dict = {
|
910
910
|
'min_row': entry,
|
911
911
|
'max_row': self.sum(entry, limit),
|
912
912
|
}
|
@@ -949,7 +949,7 @@ class luno(Exchange, ImplicitAPI):
|
|
949
949
|
max_row = min_row + limit
|
950
950
|
if max_row - min_row > 1000:
|
951
951
|
raise ExchangeError(self.id + " fetchLedger() requires the params 'max_row' - 'min_row' <= 1000")
|
952
|
-
request = {
|
952
|
+
request: dict = {
|
953
953
|
'id': id,
|
954
954
|
'min_row': min_row,
|
955
955
|
'max_row': max_row,
|
@@ -960,7 +960,7 @@ class luno(Exchange, ImplicitAPI):
|
|
960
960
|
|
961
961
|
def parse_ledger_comment(self, comment):
|
962
962
|
words = comment.split(' ')
|
963
|
-
types = {
|
963
|
+
types: dict = {
|
964
964
|
'Withdrawal': 'fee',
|
965
965
|
'Trading': 'fee',
|
966
966
|
'Payment': 'transaction',
|