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/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
|
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
|
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
|
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
|
def fetch_public_trading_fee(self, symbol: str, params={}):
|
838
838
|
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
|
def fetch_private_trading_fee(self, symbol: str, params={}):
|
863
863
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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
|
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/lbank.py
CHANGED
@@ -439,7 +439,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
439
439
|
return result
|
440
440
|
|
441
441
|
def fetch_swap_markets(self, params={}):
|
442
|
-
request = {
|
442
|
+
request: dict = {
|
443
443
|
'productGroup': 'SwapU',
|
444
444
|
}
|
445
445
|
response = self.contractPublicGetCfdOpenApiV1PubInstrument(self.extend(request, params))
|
@@ -607,7 +607,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
607
607
|
if market['swap']:
|
608
608
|
responseForSwap = self.fetch_tickers([market['symbol']], params)
|
609
609
|
return self.safe_value(responseForSwap, market['symbol'])
|
610
|
-
request = {
|
610
|
+
request: dict = {
|
611
611
|
'symbol': market['id'],
|
612
612
|
}
|
613
613
|
response = self.spotPublicGetTicker24hr(self.extend(request, params))
|
@@ -652,7 +652,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
652
652
|
symbolsLength = len(symbols)
|
653
653
|
if symbolsLength > 0:
|
654
654
|
market = self.market(symbols[0])
|
655
|
-
request = {}
|
655
|
+
request: dict = {}
|
656
656
|
type = None
|
657
657
|
type, params = self.handle_market_type_and_params('fetchTickers', market, params)
|
658
658
|
response = None
|
@@ -724,7 +724,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
724
724
|
market = self.market(symbol)
|
725
725
|
if limit is None:
|
726
726
|
limit = 60
|
727
|
-
request = {
|
727
|
+
request: dict = {
|
728
728
|
'symbol': market['id'],
|
729
729
|
}
|
730
730
|
type = None
|
@@ -790,7 +790,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
790
790
|
return self.parse_order_book(orderbook, market['symbol'], timestamp, 'bids', 'asks', 'price', 'volume')
|
791
791
|
return self.parse_order_book(orderbook, market['symbol'], timestamp)
|
792
792
|
|
793
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
793
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
794
794
|
#
|
795
795
|
# fetchTrades(old) spotPublicGetTrades
|
796
796
|
#
|
@@ -896,7 +896,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
896
896
|
"""
|
897
897
|
self.load_markets()
|
898
898
|
market = self.market(symbol)
|
899
|
-
request = {
|
899
|
+
request: dict = {
|
900
900
|
'symbol': market['id'],
|
901
901
|
}
|
902
902
|
if since is not None:
|
@@ -974,7 +974,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
974
974
|
if since is None:
|
975
975
|
duration = self.parse_timeframe(timeframe)
|
976
976
|
since = self.milliseconds() - duration * 1000 * limit
|
977
|
-
request = {
|
977
|
+
request: dict = {
|
978
978
|
'symbol': market['id'],
|
979
979
|
'type': self.safe_string(self.timeframes, timeframe, timeframe),
|
980
980
|
'time': self.parse_to_int(since / 1000),
|
@@ -1084,7 +1084,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1084
1084
|
# ]
|
1085
1085
|
#
|
1086
1086
|
timestamp = self.safe_integer(response, 'ts')
|
1087
|
-
result = {
|
1087
|
+
result: dict = {
|
1088
1088
|
'info': response,
|
1089
1089
|
'timestamp': timestamp,
|
1090
1090
|
'datetime': self.iso8601(timestamp),
|
@@ -1182,7 +1182,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1182
1182
|
#
|
1183
1183
|
return self.parse_balance(response)
|
1184
1184
|
|
1185
|
-
def parse_trading_fee(self, fee, market: Market = None) -> TradingFeeInterface:
|
1185
|
+
def parse_trading_fee(self, fee: dict, market: Market = None) -> TradingFeeInterface:
|
1186
1186
|
#
|
1187
1187
|
# {
|
1188
1188
|
# "symbol":"skt_usdt",
|
@@ -1221,10 +1221,10 @@ class lbank(Exchange, ImplicitAPI):
|
|
1221
1221
|
:returns dict: a dictionary of `fee structures <https://docs.ccxt.com/#/?id=fee-structure>` indexed by market symbols
|
1222
1222
|
"""
|
1223
1223
|
self.load_markets()
|
1224
|
-
request = {}
|
1224
|
+
request: dict = {}
|
1225
1225
|
response = self.spotPrivatePostSupplementCustomerTradeFee(self.extend(request, params))
|
1226
1226
|
fees = self.safe_value(response, 'data', [])
|
1227
|
-
result = {}
|
1227
|
+
result: dict = {}
|
1228
1228
|
for i in range(0, len(fees)):
|
1229
1229
|
fee = self.parse_trading_fee(fees[i])
|
1230
1230
|
symbol = fee['symbol']
|
@@ -1267,7 +1267,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1267
1267
|
postOnly = self.safe_bool(params, 'postOnly', False)
|
1268
1268
|
timeInForce = self.safe_string_upper(params, 'timeInForce')
|
1269
1269
|
params = self.omit(params, ['custom_id', 'clientOrderId', 'timeInForce', 'postOnly'])
|
1270
|
-
request = {
|
1270
|
+
request: dict = {
|
1271
1271
|
'symbol': market['id'],
|
1272
1272
|
}
|
1273
1273
|
ioc = (timeInForce == 'IOC')
|
@@ -1338,8 +1338,8 @@ class lbank(Exchange, ImplicitAPI):
|
|
1338
1338
|
'info': result,
|
1339
1339
|
}, market)
|
1340
1340
|
|
1341
|
-
def parse_order_status(self, status):
|
1342
|
-
statuses = {
|
1341
|
+
def parse_order_status(self, status: Str):
|
1342
|
+
statuses: dict = {
|
1343
1343
|
'-1': 'canceled', # canceled
|
1344
1344
|
'0': 'open', # not traded
|
1345
1345
|
'1': 'open', # partial deal
|
@@ -1349,7 +1349,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1349
1349
|
}
|
1350
1350
|
return self.safe_string(statuses, status, status)
|
1351
1351
|
|
1352
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
1352
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
1353
1353
|
#
|
1354
1354
|
# fetchOrderSupplement(private)
|
1355
1355
|
#
|
@@ -1492,7 +1492,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1492
1492
|
raise ArgumentsRequired(self.id + ' fetchOrder() requires a symbol argument')
|
1493
1493
|
self.load_markets()
|
1494
1494
|
market = self.market(symbol)
|
1495
|
-
request = {
|
1495
|
+
request: dict = {
|
1496
1496
|
'symbol': market['id'],
|
1497
1497
|
'orderId': id,
|
1498
1498
|
}
|
@@ -1527,7 +1527,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1527
1527
|
raise ArgumentsRequired(self.id + ' fetchOrder() requires a symbol argument')
|
1528
1528
|
self.load_markets()
|
1529
1529
|
market = self.market(symbol)
|
1530
|
-
request = {
|
1530
|
+
request: dict = {
|
1531
1531
|
'symbol': market['id'],
|
1532
1532
|
'order_id': id,
|
1533
1533
|
}
|
@@ -1581,7 +1581,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1581
1581
|
market = self.market(symbol)
|
1582
1582
|
since = self.safe_value(params, 'start_date', since)
|
1583
1583
|
params = self.omit(params, 'start_date')
|
1584
|
-
request = {
|
1584
|
+
request: dict = {
|
1585
1585
|
'symbol': market['id'],
|
1586
1586
|
# 'start_date' Start time yyyy-mm-dd, the maximum is today, the default is yesterday
|
1587
1587
|
# 'end_date' Finish time yyyy-mm-dd, the maximum is today, the default is today
|
@@ -1637,7 +1637,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1637
1637
|
market = self.market(symbol)
|
1638
1638
|
if limit is None:
|
1639
1639
|
limit = 100
|
1640
|
-
request = {
|
1640
|
+
request: dict = {
|
1641
1641
|
'symbol': market['id'],
|
1642
1642
|
'current_page': 1,
|
1643
1643
|
'page_length': limit,
|
@@ -1691,7 +1691,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1691
1691
|
market = self.market(symbol)
|
1692
1692
|
if limit is None:
|
1693
1693
|
limit = 100
|
1694
|
-
request = {
|
1694
|
+
request: dict = {
|
1695
1695
|
'symbol': market['id'],
|
1696
1696
|
'current_page': 1,
|
1697
1697
|
'page_length': limit,
|
@@ -1743,7 +1743,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1743
1743
|
clientOrderId = self.safe_string_2(params, 'origClientOrderId', 'clientOrderId')
|
1744
1744
|
params = self.omit(params, ['origClientOrderId', 'clientOrderId'])
|
1745
1745
|
market = self.market(symbol)
|
1746
|
-
request = {
|
1746
|
+
request: dict = {
|
1747
1747
|
'symbol': market['id'],
|
1748
1748
|
'orderId': id,
|
1749
1749
|
}
|
@@ -1778,7 +1778,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1778
1778
|
raise ArgumentsRequired(self.id + ' cancelAllOrders() requires a symbol argument')
|
1779
1779
|
self.load_markets()
|
1780
1780
|
market = self.market(symbol)
|
1781
|
-
request = {
|
1781
|
+
request: dict = {
|
1782
1782
|
'symbol': market['id'],
|
1783
1783
|
}
|
1784
1784
|
response = self.spotPrivatePostSupplementCancelOrderBySymbol(self.extend(request, params))
|
@@ -1834,7 +1834,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1834
1834
|
def fetch_deposit_address_default(self, code: str, params={}):
|
1835
1835
|
self.load_markets()
|
1836
1836
|
currency = self.currency(code)
|
1837
|
-
request = {
|
1837
|
+
request: dict = {
|
1838
1838
|
'assetCode': currency['id'],
|
1839
1839
|
}
|
1840
1840
|
network = self.get_network_code_for_currency(code, params)
|
@@ -1873,7 +1873,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1873
1873
|
# returns the address for whatever the default network is...
|
1874
1874
|
self.load_markets()
|
1875
1875
|
currency = self.currency(code)
|
1876
|
-
request = {
|
1876
|
+
request: dict = {
|
1877
1877
|
'coin': currency['id'],
|
1878
1878
|
}
|
1879
1879
|
networks = self.safe_value(self.options, 'networks')
|
@@ -1927,7 +1927,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1927
1927
|
# 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().
|
1928
1928
|
self.check_required_argument('withdraw', fee, 'fee')
|
1929
1929
|
currency = self.currency(code)
|
1930
|
-
request = {
|
1930
|
+
request: dict = {
|
1931
1931
|
'address': address,
|
1932
1932
|
'coin': currency['id'],
|
1933
1933
|
'amount': amount,
|
@@ -1966,7 +1966,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1966
1966
|
}
|
1967
1967
|
|
1968
1968
|
def parse_transaction_status(self, status, type):
|
1969
|
-
statuses = {
|
1969
|
+
statuses: dict = {
|
1970
1970
|
'deposit': {
|
1971
1971
|
'1': 'pending',
|
1972
1972
|
'2': 'ok',
|
@@ -1983,7 +1983,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
1983
1983
|
}
|
1984
1984
|
return self.safe_string(self.safe_value(statuses, type, {}), status, status)
|
1985
1985
|
|
1986
|
-
def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
|
1986
|
+
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
1987
1987
|
#
|
1988
1988
|
# fetchDeposits(private)
|
1989
1989
|
#
|
@@ -2076,7 +2076,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2076
2076
|
:returns dict[]: a list of `transaction structures <https://docs.ccxt.com/#/?id=transaction-structure>`
|
2077
2077
|
"""
|
2078
2078
|
self.load_markets()
|
2079
|
-
request = {
|
2079
|
+
request: dict = {
|
2080
2080
|
# 'status': Recharge status: ("1","Applying"),("2","Recharge successful"),("3","Recharge failed"),("4","Already Cancel"),("5", "Transfer")
|
2081
2081
|
# 'endTime': end time, timestamp in milliseconds, default now
|
2082
2082
|
}
|
@@ -2125,7 +2125,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2125
2125
|
:returns dict[]: a list of `transaction structures <https://docs.ccxt.com/#/?id=transaction-structure>`
|
2126
2126
|
"""
|
2127
2127
|
self.load_markets()
|
2128
|
-
request = {
|
2128
|
+
request: dict = {
|
2129
2129
|
# 'status': Recharge status: ("1","Applying"),("2","Recharge successful"),("3","Recharge failed"),("4","Already Cancel"),("5", "Transfer")
|
2130
2130
|
# 'endTime': end time, timestamp in milliseconds, default now
|
2131
2131
|
# 'withdrawOrderId': Custom withdrawal id
|
@@ -2167,7 +2167,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2167
2167
|
withdraws = self.safe_list(data, 'withdraws', [])
|
2168
2168
|
return self.parse_transactions(withdraws, currency, since, limit)
|
2169
2169
|
|
2170
|
-
def fetch_transaction_fees(self, codes:
|
2170
|
+
def fetch_transaction_fees(self, codes: Strings = None, params={}):
|
2171
2171
|
"""
|
2172
2172
|
* @deprecated
|
2173
2173
|
please use fetchDepositWithdrawFees instead
|
@@ -2228,7 +2228,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2228
2228
|
# }
|
2229
2229
|
#
|
2230
2230
|
result = self.safe_value(response, 'data', [])
|
2231
|
-
withdrawFees = {}
|
2231
|
+
withdrawFees: dict = {}
|
2232
2232
|
for i in range(0, len(result)):
|
2233
2233
|
entry = result[i]
|
2234
2234
|
currencyId = self.safe_string(entry, 'coin')
|
@@ -2254,7 +2254,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2254
2254
|
self.load_markets()
|
2255
2255
|
code = self.safe_string_2(params, 'coin', 'assetCode')
|
2256
2256
|
params = self.omit(params, ['coin', 'assetCode'])
|
2257
|
-
request = {}
|
2257
|
+
request: dict = {}
|
2258
2258
|
if code is not None:
|
2259
2259
|
currency = self.currency(code)
|
2260
2260
|
request['assetCode'] = currency['id']
|
@@ -2281,7 +2281,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2281
2281
|
# }
|
2282
2282
|
#
|
2283
2283
|
result = self.safe_value(response, 'data', [])
|
2284
|
-
withdrawFees = {}
|
2284
|
+
withdrawFees: dict = {}
|
2285
2285
|
for i in range(0, len(result)):
|
2286
2286
|
item = result[i]
|
2287
2287
|
canWithdraw = self.safe_value(item, 'canWithDraw')
|
@@ -2369,7 +2369,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2369
2369
|
# extremely incomplete response
|
2370
2370
|
# vast majority fees None
|
2371
2371
|
self.load_markets()
|
2372
|
-
request = {}
|
2372
|
+
request: dict = {}
|
2373
2373
|
response = self.spotPublicGetWithdrawConfigs(self.extend(request, params))
|
2374
2374
|
#
|
2375
2375
|
# {
|
@@ -2412,7 +2412,7 @@ class lbank(Exchange, ImplicitAPI):
|
|
2412
2412
|
# ...
|
2413
2413
|
# ]
|
2414
2414
|
#
|
2415
|
-
result = {}
|
2415
|
+
result: dict = {}
|
2416
2416
|
for i in range(0, len(response)):
|
2417
2417
|
fee = response[i]
|
2418
2418
|
canWithdraw = self.safe_value(fee, 'canWithDraw')
|
ccxt/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
|
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
|
self.load_markets()
|
457
|
-
request = {
|
457
|
+
request: dict = {
|
458
458
|
'id': id,
|
459
459
|
}
|
460
460
|
response = self.privateGetOrdersId(self.extend(request, params))
|
@@ -462,7 +462,7 @@ class luno(Exchange, ImplicitAPI):
|
|
462
462
|
|
463
463
|
def fetch_orders_by_state(self, state=None, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
464
464
|
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 = 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
|
self.load_markets()
|
580
580
|
market = self.market(symbol)
|
581
|
-
request = {
|
581
|
+
request: dict = {
|
582
582
|
'pair': market['id'],
|
583
583
|
}
|
584
584
|
response = 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
|
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
|
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
|
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
|
self.load_markets()
|
829
829
|
market = self.market(symbol)
|
830
|
-
request = {
|
830
|
+
request: dict = {
|
831
831
|
'pair': market['id'],
|
832
832
|
}
|
833
833
|
response = self.privateGetFeeInfo(self.extend(request, params))
|
@@ -862,7 +862,7 @@ class luno(Exchange, ImplicitAPI):
|
|
862
862
|
"""
|
863
863
|
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
|
self.load_markets()
|
897
|
-
request = {
|
897
|
+
request: dict = {
|
898
898
|
'order_id': id,
|
899
899
|
}
|
900
900
|
return 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',
|