ccxt 4.4.95__py2.py3-none-any.whl → 4.4.97__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 +3 -1
- ccxt/abstract/binance.py +3 -0
- ccxt/abstract/binancecoinm.py +3 -0
- ccxt/abstract/binanceus.py +3 -0
- ccxt/abstract/binanceusdm.py +3 -0
- ccxt/abstract/foxbit.py +26 -0
- ccxt/abstract/hyperliquid.py +1 -1
- ccxt/abstract/phemex.py +1 -0
- ccxt/apex.py +3 -3
- ccxt/ascendex.py +2 -2
- ccxt/async_support/__init__.py +3 -1
- ccxt/async_support/apex.py +3 -3
- ccxt/async_support/ascendex.py +2 -2
- ccxt/async_support/base/exchange.py +10 -5
- ccxt/async_support/base/ws/future.py +5 -3
- ccxt/async_support/binance.py +90 -34
- ccxt/async_support/binancecoinm.py +5 -1
- ccxt/async_support/binanceus.py +3 -1
- ccxt/async_support/binanceusdm.py +3 -1
- ccxt/async_support/bingx.py +1 -1
- ccxt/async_support/bitget.py +30 -143
- ccxt/async_support/bitmart.py +2 -2
- ccxt/async_support/bitrue.py +13 -8
- ccxt/async_support/bybit.py +14 -5
- ccxt/async_support/coinbaseexchange.py +4 -2
- ccxt/async_support/coinbaseinternational.py +2 -2
- ccxt/async_support/coinspot.py +36 -1
- ccxt/async_support/cryptocom.py +78 -3
- ccxt/async_support/cryptomus.py +41 -1
- ccxt/async_support/defx.py +1 -1
- ccxt/async_support/derive.py +1 -1
- ccxt/async_support/ellipx.py +40 -0
- ccxt/async_support/exmo.py +1 -1
- ccxt/async_support/foxbit.py +1935 -0
- ccxt/async_support/gate.py +1 -2
- ccxt/async_support/hashkey.py +39 -0
- ccxt/async_support/hyperliquid.py +42 -27
- ccxt/async_support/independentreserve.py +35 -0
- ccxt/async_support/indodax.py +34 -0
- ccxt/async_support/kucoin.py +3 -2
- ccxt/async_support/kucoinfutures.py +3 -2
- ccxt/async_support/latoken.py +42 -0
- ccxt/async_support/luno.py +36 -0
- ccxt/async_support/mercado.py +34 -0
- ccxt/async_support/mexc.py +31 -32
- ccxt/async_support/modetrade.py +3 -3
- ccxt/async_support/okcoin.py +1 -1
- ccxt/async_support/okx.py +10 -3
- ccxt/async_support/onetrading.py +1 -1
- ccxt/async_support/oxfun.py +2 -1
- ccxt/async_support/paradex.py +2 -2
- ccxt/async_support/phemex.py +36 -31
- ccxt/async_support/vertex.py +3 -2
- ccxt/async_support/woo.py +6 -2
- ccxt/async_support/woofipro.py +2 -2
- ccxt/base/decimal_to_precision.py +16 -10
- ccxt/base/errors.py +6 -0
- ccxt/base/exchange.py +60 -17
- ccxt/binance.py +90 -34
- ccxt/binancecoinm.py +5 -1
- ccxt/binanceus.py +3 -1
- ccxt/binanceusdm.py +3 -1
- ccxt/bingx.py +1 -1
- ccxt/bitget.py +30 -143
- ccxt/bitmart.py +2 -2
- ccxt/bitrue.py +13 -8
- ccxt/bybit.py +14 -5
- ccxt/coinbaseexchange.py +4 -2
- ccxt/coinbaseinternational.py +2 -2
- ccxt/coinspot.py +36 -1
- ccxt/cryptocom.py +78 -3
- ccxt/cryptomus.py +41 -1
- ccxt/defx.py +1 -1
- ccxt/derive.py +1 -1
- ccxt/ellipx.py +40 -0
- ccxt/exmo.py +1 -1
- ccxt/foxbit.py +1935 -0
- ccxt/gate.py +1 -2
- ccxt/hashkey.py +39 -0
- ccxt/hyperliquid.py +42 -27
- ccxt/independentreserve.py +35 -0
- ccxt/indodax.py +34 -0
- ccxt/kucoin.py +3 -2
- ccxt/kucoinfutures.py +3 -2
- ccxt/latoken.py +42 -0
- ccxt/luno.py +36 -0
- ccxt/mercado.py +34 -0
- ccxt/mexc.py +31 -32
- ccxt/modetrade.py +3 -3
- ccxt/okcoin.py +1 -1
- ccxt/okx.py +10 -3
- ccxt/onetrading.py +1 -1
- ccxt/oxfun.py +2 -1
- ccxt/paradex.py +2 -2
- ccxt/phemex.py +36 -31
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/binancecoinm.py +3 -1
- ccxt/pro/binanceus.py +3 -1
- ccxt/pro/binanceusdm.py +3 -1
- ccxt/pro/bybit.py +33 -1
- ccxt/test/tests_async.py +15 -0
- ccxt/test/tests_sync.py +15 -0
- ccxt/vertex.py +3 -2
- ccxt/woo.py +6 -2
- ccxt/woofipro.py +2 -2
- {ccxt-4.4.95.dist-info → ccxt-4.4.97.dist-info}/METADATA +19 -19
- {ccxt-4.4.95.dist-info → ccxt-4.4.97.dist-info}/RECORD +110 -107
- {ccxt-4.4.95.dist-info → ccxt-4.4.97.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.95.dist-info → ccxt-4.4.97.dist-info}/WHEEL +0 -0
- {ccxt-4.4.95.dist-info → ccxt-4.4.97.dist-info}/top_level.txt +0 -0
ccxt/gate.py
CHANGED
@@ -686,7 +686,6 @@ class gate(Exchange, ImplicitAPI):
|
|
686
686
|
'SOL': 'SOL',
|
687
687
|
'POLYGON': 'POL',
|
688
688
|
'MATIC': 'POL',
|
689
|
-
'OP': 'OPETH',
|
690
689
|
'OPTIMISM': 'OPETH',
|
691
690
|
'ADA': 'ADA', # CARDANO
|
692
691
|
'AVAXC': 'AVAX_C',
|
@@ -3788,7 +3787,7 @@ class gate(Exchange, ImplicitAPI):
|
|
3788
3787
|
start = self.parse_to_int(since / 1000)
|
3789
3788
|
request['from'] = start
|
3790
3789
|
request['to'] = self.sum(start, 30 * 24 * 60 * 60)
|
3791
|
-
request, params = self.handle_until_option('to', request, params)
|
3790
|
+
request, params = self.handle_until_option('to', request, params, 0.001)
|
3792
3791
|
response = self.privateWalletGetWithdrawals(self.extend(request, params))
|
3793
3792
|
return self.parse_transactions(response, currency)
|
3794
3793
|
|
ccxt/hashkey.py
CHANGED
@@ -55,11 +55,15 @@ class hashkey(Exchange, ImplicitAPI):
|
|
55
55
|
'future': False,
|
56
56
|
'option': False,
|
57
57
|
'addMargin': False,
|
58
|
+
'borrowCrossMargin': False,
|
59
|
+
'borrowIsolatedMargin': False,
|
60
|
+
'borrowMargin': False,
|
58
61
|
'cancelAllOrders': True,
|
59
62
|
'cancelAllOrdersAfter': False,
|
60
63
|
'cancelOrder': True,
|
61
64
|
'cancelOrders': True,
|
62
65
|
'cancelWithdraw': False,
|
66
|
+
'closeAllPositions': False,
|
63
67
|
'closePosition': False,
|
64
68
|
'createConvertTrade': False,
|
65
69
|
'createDepositAddress': False,
|
@@ -79,7 +83,14 @@ class hashkey(Exchange, ImplicitAPI):
|
|
79
83
|
'createTrailingPercentOrder': False,
|
80
84
|
'createTriggerOrder': True,
|
81
85
|
'fetchAccounts': True,
|
86
|
+
'fetchAllGreeks': False,
|
82
87
|
'fetchBalance': True,
|
88
|
+
'fetchBorrowInterest': False,
|
89
|
+
'fetchBorrowRate': False,
|
90
|
+
'fetchBorrowRateHistories': False,
|
91
|
+
'fetchBorrowRateHistory': False,
|
92
|
+
'fetchBorrowRates': False,
|
93
|
+
'fetchBorrowRatesPerSymbol': False,
|
83
94
|
'fetchCanceledAndClosedOrders': True,
|
84
95
|
'fetchCanceledOrders': True,
|
85
96
|
'fetchClosedOrder': True,
|
@@ -88,6 +99,8 @@ class hashkey(Exchange, ImplicitAPI):
|
|
88
99
|
'fetchConvertQuote': False,
|
89
100
|
'fetchConvertTrade': False,
|
90
101
|
'fetchConvertTradeHistory': False,
|
102
|
+
'fetchCrossBorrowRate': False,
|
103
|
+
'fetchCrossBorrowRates': False,
|
91
104
|
'fetchCurrencies': True,
|
92
105
|
'fetchDepositAddress': True,
|
93
106
|
'fetchDepositAddresses': False,
|
@@ -95,23 +108,42 @@ class hashkey(Exchange, ImplicitAPI):
|
|
95
108
|
'fetchDeposits': True,
|
96
109
|
'fetchDepositsWithdrawals': False,
|
97
110
|
'fetchFundingHistory': False,
|
111
|
+
'fetchFundingInterval': False,
|
112
|
+
'fetchFundingIntervals': False,
|
98
113
|
'fetchFundingRate': True,
|
99
114
|
'fetchFundingRateHistory': True,
|
100
115
|
'fetchFundingRates': True,
|
116
|
+
'fetchGreeks': False,
|
101
117
|
'fetchIndexOHLCV': False,
|
118
|
+
'fetchIsolatedBorrowRate': False,
|
119
|
+
'fetchIsolatedBorrowRates': False,
|
120
|
+
'fetchIsolatedPositions': False,
|
102
121
|
'fetchLedger': True,
|
103
122
|
'fetchLeverage': True,
|
123
|
+
'fetchLeverages': False,
|
104
124
|
'fetchLeverageTiers': True,
|
125
|
+
'fetchLiquidations': False,
|
126
|
+
'fetchLongShortRatio': False,
|
127
|
+
'fetchLongShortRatioHistory': False,
|
105
128
|
'fetchMarginAdjustmentHistory': False,
|
106
129
|
'fetchMarginMode': False,
|
130
|
+
'fetchMarginModes': False,
|
107
131
|
'fetchMarketLeverageTiers': 'emulated',
|
108
132
|
'fetchMarkets': True,
|
109
133
|
'fetchMarkOHLCV': False,
|
134
|
+
'fetchMarkPrice': False,
|
135
|
+
'fetchMarkPrices': False,
|
136
|
+
'fetchMyLiquidations': False,
|
137
|
+
'fetchMySettlementHistory': False,
|
110
138
|
'fetchMyTrades': True,
|
111
139
|
'fetchOHLCV': True,
|
140
|
+
'fetchOpenInterest': False,
|
112
141
|
'fetchOpenInterestHistory': False,
|
142
|
+
'fetchOpenInterests': False,
|
113
143
|
'fetchOpenOrder': False,
|
114
144
|
'fetchOpenOrders': True,
|
145
|
+
'fetchOption': False,
|
146
|
+
'fetchOptionChain': False,
|
115
147
|
'fetchOrder': True,
|
116
148
|
'fetchOrderBook': True,
|
117
149
|
'fetchOrders': False,
|
@@ -122,7 +154,9 @@ class hashkey(Exchange, ImplicitAPI):
|
|
122
154
|
'fetchPositions': True,
|
123
155
|
'fetchPositionsForSymbol': True,
|
124
156
|
'fetchPositionsHistory': False,
|
157
|
+
'fetchPositionsRisk': False,
|
125
158
|
'fetchPremiumIndexOHLCV': False,
|
159
|
+
'fetchSettlementHistory': False,
|
126
160
|
'fetchStatus': True,
|
127
161
|
'fetchTicker': True,
|
128
162
|
'fetchTickers': True,
|
@@ -132,11 +166,16 @@ class hashkey(Exchange, ImplicitAPI):
|
|
132
166
|
'fetchTradingFees': True, # for spot markets only
|
133
167
|
'fetchTransactions': False,
|
134
168
|
'fetchTransfers': False,
|
169
|
+
'fetchUnderlyingAssets': False,
|
170
|
+
'fetchVolatilityHistory': False,
|
135
171
|
'fetchWithdrawals': True,
|
136
172
|
'reduceMargin': False,
|
173
|
+
'repayCrossMargin': False,
|
174
|
+
'repayIsolatedMargin': False,
|
137
175
|
'sandbox': False,
|
138
176
|
'setLeverage': True,
|
139
177
|
'setMargin': False,
|
178
|
+
'setMarginMode': False,
|
140
179
|
'setPositionMode': False,
|
141
180
|
'transfer': True,
|
142
181
|
'withdraw': True,
|
ccxt/hyperliquid.py
CHANGED
@@ -173,7 +173,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
173
173
|
'orderStatus': 2,
|
174
174
|
'spotClearinghouseState': 2,
|
175
175
|
'exchangeStatus': 2,
|
176
|
-
'candleSnapshot':
|
176
|
+
'candleSnapshot': 4,
|
177
177
|
},
|
178
178
|
},
|
179
179
|
},
|
@@ -1810,7 +1810,7 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
1810
1810
|
# }
|
1811
1811
|
# }
|
1812
1812
|
#
|
1813
|
-
return response
|
1813
|
+
return [self.safe_order({'info': response})]
|
1814
1814
|
|
1815
1815
|
def cancel_all_orders_after(self, timeout: Int, params={}):
|
1816
1816
|
"""
|
@@ -2964,10 +2964,9 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2964
2964
|
if not self.in_array(toAccount, ['spot', 'swap', 'perp']):
|
2965
2965
|
raise NotSupported(self.id + ' transfer() only support spot <> swap transfer')
|
2966
2966
|
strAmount = self.number_to_string(amount)
|
2967
|
-
vaultAddress =
|
2968
|
-
vaultAddress, params = self.handle_option_and_params(params, 'transfer', 'vaultAddress')
|
2969
|
-
vaultAddress = self.format_vault_address(vaultAddress)
|
2967
|
+
vaultAddress = self.safe_string_2(params, 'vaultAddress', 'subAccountAddress')
|
2970
2968
|
if vaultAddress is not None:
|
2969
|
+
vaultAddress = self.format_vault_address(vaultAddress)
|
2971
2970
|
strAmount = strAmount + ' subaccount:' + vaultAddress
|
2972
2971
|
toPerp = (toAccount == 'perp') or (toAccount == 'swap')
|
2973
2972
|
transferPayload: dict = {
|
@@ -2994,10 +2993,6 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
2994
2993
|
transferResponse = self.privatePostExchange(transferRequest)
|
2995
2994
|
return transferResponse
|
2996
2995
|
# transfer between main account and subaccount
|
2997
|
-
if code is not None:
|
2998
|
-
code = code.upper()
|
2999
|
-
if code != 'USDC':
|
3000
|
-
raise NotSupported(self.id + ' transfer() only support USDC')
|
3001
2996
|
isDeposit = False
|
3002
2997
|
subAccountAddress = None
|
3003
2998
|
if fromAccount == 'main':
|
@@ -3008,24 +3003,44 @@ class hyperliquid(Exchange, ImplicitAPI):
|
|
3008
3003
|
else:
|
3009
3004
|
raise NotSupported(self.id + ' transfer() only support main <> subaccount transfer')
|
3010
3005
|
self.check_address(subAccountAddress)
|
3011
|
-
|
3012
|
-
|
3013
|
-
|
3014
|
-
|
3015
|
-
|
3016
|
-
|
3017
|
-
|
3018
|
-
|
3019
|
-
|
3020
|
-
|
3021
|
-
|
3022
|
-
|
3023
|
-
|
3024
|
-
|
3025
|
-
|
3026
|
-
|
3027
|
-
|
3028
|
-
|
3006
|
+
if code is None or code.upper() == 'USDC':
|
3007
|
+
# Transfer USDC with subAccountTransfer
|
3008
|
+
usd = self.parse_to_int(Precise.string_mul(self.number_to_string(amount), '1000000'))
|
3009
|
+
action = {
|
3010
|
+
'type': 'subAccountTransfer',
|
3011
|
+
'subAccountUser': subAccountAddress,
|
3012
|
+
'isDeposit': isDeposit,
|
3013
|
+
'usd': usd,
|
3014
|
+
}
|
3015
|
+
sig = self.sign_l1_action(action, nonce)
|
3016
|
+
request: dict = {
|
3017
|
+
'action': action,
|
3018
|
+
'nonce': nonce,
|
3019
|
+
'signature': sig,
|
3020
|
+
}
|
3021
|
+
response = self.privatePostExchange(request)
|
3022
|
+
#
|
3023
|
+
# {'response': {'type': 'default'}, 'status': 'ok'}
|
3024
|
+
#
|
3025
|
+
return self.parse_transfer(response)
|
3026
|
+
else:
|
3027
|
+
# Transfer non-USDC with subAccountSpotTransfer
|
3028
|
+
symbol = self.symbol(code)
|
3029
|
+
action = {
|
3030
|
+
'type': 'subAccountSpotTransfer',
|
3031
|
+
'subAccountUser': subAccountAddress,
|
3032
|
+
'isDeposit': isDeposit,
|
3033
|
+
'token': symbol,
|
3034
|
+
'amount': self.number_to_string(amount),
|
3035
|
+
}
|
3036
|
+
sig = self.sign_l1_action(action, nonce)
|
3037
|
+
request: dict = {
|
3038
|
+
'action': action,
|
3039
|
+
'nonce': nonce,
|
3040
|
+
'signature': sig,
|
3041
|
+
}
|
3042
|
+
response = self.privatePostExchange(request)
|
3043
|
+
return self.parse_transfer(response)
|
3029
3044
|
|
3030
3045
|
def parse_transfer(self, transfer: dict, currency: Currency = None) -> TransferEntry:
|
3031
3046
|
#
|
ccxt/independentreserve.py
CHANGED
@@ -30,6 +30,9 @@ class independentreserve(Exchange, ImplicitAPI):
|
|
30
30
|
'future': False,
|
31
31
|
'option': False,
|
32
32
|
'addMargin': False,
|
33
|
+
'borrowCrossMargin': False,
|
34
|
+
'borrowIsolatedMargin': False,
|
35
|
+
'borrowMargin': False,
|
33
36
|
'cancelOrder': True,
|
34
37
|
'closeAllPositions': False,
|
35
38
|
'closePosition': False,
|
@@ -38,9 +41,14 @@ class independentreserve(Exchange, ImplicitAPI):
|
|
38
41
|
'createStopLimitOrder': False,
|
39
42
|
'createStopMarketOrder': False,
|
40
43
|
'createStopOrder': False,
|
44
|
+
'fetchAllGreeks': False,
|
41
45
|
'fetchBalance': True,
|
46
|
+
'fetchBorrowInterest': False,
|
47
|
+
'fetchBorrowRate': False,
|
42
48
|
'fetchBorrowRateHistories': False,
|
43
49
|
'fetchBorrowRateHistory': False,
|
50
|
+
'fetchBorrowRates': False,
|
51
|
+
'fetchBorrowRatesPerSymbol': False,
|
44
52
|
'fetchClosedOrders': True,
|
45
53
|
'fetchCrossBorrowRate': False,
|
46
54
|
'fetchCrossBorrowRates': False,
|
@@ -48,36 +56,63 @@ class independentreserve(Exchange, ImplicitAPI):
|
|
48
56
|
'fetchDepositAddresses': False,
|
49
57
|
'fetchDepositAddressesByNetwork': False,
|
50
58
|
'fetchFundingHistory': False,
|
59
|
+
'fetchFundingInterval': False,
|
60
|
+
'fetchFundingIntervals': False,
|
51
61
|
'fetchFundingRate': False,
|
52
62
|
'fetchFundingRateHistory': False,
|
53
63
|
'fetchFundingRates': False,
|
64
|
+
'fetchGreeks': False,
|
54
65
|
'fetchIndexOHLCV': False,
|
55
66
|
'fetchIsolatedBorrowRate': False,
|
56
67
|
'fetchIsolatedBorrowRates': False,
|
68
|
+
'fetchIsolatedPositions': False,
|
57
69
|
'fetchLeverage': False,
|
70
|
+
'fetchLeverages': False,
|
58
71
|
'fetchLeverageTiers': False,
|
72
|
+
'fetchLiquidations': False,
|
73
|
+
'fetchLongShortRatio': False,
|
74
|
+
'fetchLongShortRatioHistory': False,
|
75
|
+
'fetchMarginAdjustmentHistory': False,
|
59
76
|
'fetchMarginMode': False,
|
77
|
+
'fetchMarginModes': False,
|
78
|
+
'fetchMarketLeverageTiers': False,
|
60
79
|
'fetchMarkets': True,
|
61
80
|
'fetchMarkOHLCV': False,
|
81
|
+
'fetchMarkPrice': False,
|
82
|
+
'fetchMarkPrices': False,
|
83
|
+
'fetchMyLiquidations': False,
|
84
|
+
'fetchMySettlementHistory': False,
|
62
85
|
'fetchMyTrades': True,
|
86
|
+
'fetchOpenInterest': False,
|
63
87
|
'fetchOpenInterestHistory': False,
|
88
|
+
'fetchOpenInterests': False,
|
64
89
|
'fetchOpenOrders': True,
|
90
|
+
'fetchOption': False,
|
91
|
+
'fetchOptionChain': False,
|
65
92
|
'fetchOrder': True,
|
66
93
|
'fetchOrderBook': True,
|
67
94
|
'fetchPosition': False,
|
95
|
+
'fetchPositionForSymbolWs': False,
|
68
96
|
'fetchPositionHistory': False,
|
69
97
|
'fetchPositionMode': False,
|
70
98
|
'fetchPositions': False,
|
71
99
|
'fetchPositionsForSymbol': False,
|
100
|
+
'fetchPositionsForSymbolWs': False,
|
72
101
|
'fetchPositionsHistory': False,
|
73
102
|
'fetchPositionsRisk': False,
|
74
103
|
'fetchPremiumIndexOHLCV': False,
|
104
|
+
'fetchSettlementHistory': False,
|
75
105
|
'fetchTicker': True,
|
76
106
|
'fetchTrades': True,
|
77
107
|
'fetchTradingFee': False,
|
78
108
|
'fetchTradingFees': True,
|
109
|
+
'fetchUnderlyingAssets': False,
|
110
|
+
'fetchVolatilityHistory': False,
|
79
111
|
'reduceMargin': False,
|
112
|
+
'repayCrossMargin': False,
|
113
|
+
'repayIsolatedMargin': False,
|
80
114
|
'setLeverage': False,
|
115
|
+
'setMargin': False,
|
81
116
|
'setMarginMode': False,
|
82
117
|
'setPositionMode': False,
|
83
118
|
'withdraw': True,
|
ccxt/indodax.py
CHANGED
@@ -38,6 +38,9 @@ class indodax(Exchange, ImplicitAPI):
|
|
38
38
|
'future': False,
|
39
39
|
'option': False,
|
40
40
|
'addMargin': False,
|
41
|
+
'borrowCrossMargin': False,
|
42
|
+
'borrowIsolatedMargin': False,
|
43
|
+
'borrowMargin': False,
|
41
44
|
'cancelAllOrders': False,
|
42
45
|
'cancelOrder': True,
|
43
46
|
'cancelOrders': False,
|
@@ -49,9 +52,14 @@ class indodax(Exchange, ImplicitAPI):
|
|
49
52
|
'createStopLimitOrder': False,
|
50
53
|
'createStopMarketOrder': False,
|
51
54
|
'createStopOrder': False,
|
55
|
+
'fetchAllGreeks': False,
|
52
56
|
'fetchBalance': True,
|
57
|
+
'fetchBorrowInterest': False,
|
58
|
+
'fetchBorrowRate': False,
|
53
59
|
'fetchBorrowRateHistories': False,
|
54
60
|
'fetchBorrowRateHistory': False,
|
61
|
+
'fetchBorrowRates': False,
|
62
|
+
'fetchBorrowRatesPerSymbol': False,
|
55
63
|
'fetchClosedOrders': True,
|
56
64
|
'fetchCrossBorrowRate': False,
|
57
65
|
'fetchCrossBorrowRates': False,
|
@@ -62,30 +70,52 @@ class indodax(Exchange, ImplicitAPI):
|
|
62
70
|
'fetchDeposits': False,
|
63
71
|
'fetchDepositsWithdrawals': True,
|
64
72
|
'fetchFundingHistory': False,
|
73
|
+
'fetchFundingInterval': False,
|
74
|
+
'fetchFundingIntervals': False,
|
65
75
|
'fetchFundingRate': False,
|
66
76
|
'fetchFundingRateHistory': False,
|
67
77
|
'fetchFundingRates': False,
|
78
|
+
'fetchGreeks': False,
|
68
79
|
'fetchIndexOHLCV': False,
|
69
80
|
'fetchIsolatedBorrowRate': False,
|
70
81
|
'fetchIsolatedBorrowRates': False,
|
82
|
+
'fetchIsolatedPositions': False,
|
71
83
|
'fetchLeverage': False,
|
84
|
+
'fetchLeverages': False,
|
72
85
|
'fetchLeverageTiers': False,
|
86
|
+
'fetchLiquidations': False,
|
87
|
+
'fetchLongShortRatio': False,
|
88
|
+
'fetchLongShortRatioHistory': False,
|
89
|
+
'fetchMarginAdjustmentHistory': False,
|
73
90
|
'fetchMarginMode': False,
|
91
|
+
'fetchMarginModes': False,
|
92
|
+
'fetchMarketLeverageTiers': False,
|
74
93
|
'fetchMarkets': True,
|
75
94
|
'fetchMarkOHLCV': False,
|
95
|
+
'fetchMarkPrice': False,
|
96
|
+
'fetchMarkPrices': False,
|
97
|
+
'fetchMyLiquidations': False,
|
98
|
+
'fetchMySettlementHistory': False,
|
99
|
+
'fetchOpenInterest': False,
|
76
100
|
'fetchOpenInterestHistory': False,
|
101
|
+
'fetchOpenInterests': False,
|
77
102
|
'fetchOpenOrders': True,
|
103
|
+
'fetchOption': False,
|
104
|
+
'fetchOptionChain': False,
|
78
105
|
'fetchOrder': True,
|
79
106
|
'fetchOrderBook': True,
|
80
107
|
'fetchOrders': False,
|
81
108
|
'fetchPosition': False,
|
109
|
+
'fetchPositionForSymbolWs': False,
|
82
110
|
'fetchPositionHistory': False,
|
83
111
|
'fetchPositionMode': False,
|
84
112
|
'fetchPositions': False,
|
85
113
|
'fetchPositionsForSymbol': False,
|
114
|
+
'fetchPositionsForSymbolWs': False,
|
86
115
|
'fetchPositionsHistory': False,
|
87
116
|
'fetchPositionsRisk': False,
|
88
117
|
'fetchPremiumIndexOHLCV': False,
|
118
|
+
'fetchSettlementHistory': False,
|
89
119
|
'fetchTicker': True,
|
90
120
|
'fetchTime': True,
|
91
121
|
'fetchTrades': True,
|
@@ -96,9 +126,13 @@ class indodax(Exchange, ImplicitAPI):
|
|
96
126
|
'fetchTransactions': 'emulated',
|
97
127
|
'fetchTransfer': False,
|
98
128
|
'fetchTransfers': False,
|
129
|
+
'fetchUnderlyingAssets': False,
|
130
|
+
'fetchVolatilityHistory': False,
|
99
131
|
'fetchWithdrawal': False,
|
100
132
|
'fetchWithdrawals': False,
|
101
133
|
'reduceMargin': False,
|
134
|
+
'repayCrossMargin': False,
|
135
|
+
'repayIsolatedMargin': False,
|
102
136
|
'setLeverage': False,
|
103
137
|
'setMargin': False,
|
104
138
|
'setMarginMode': False,
|
ccxt/kucoin.py
CHANGED
@@ -811,7 +811,7 @@ class kucoin(Exchange, ImplicitAPI):
|
|
811
811
|
'TLOS': 'tlos', # tlosevm is different
|
812
812
|
'CFX': 'cfx',
|
813
813
|
'ACA': 'aca',
|
814
|
-
'
|
814
|
+
'OPTIMISM': 'optimism',
|
815
815
|
'ONT': 'ont',
|
816
816
|
'GLMR': 'glmr',
|
817
817
|
'CSPR': 'cspr',
|
@@ -931,6 +931,7 @@ class kucoin(Exchange, ImplicitAPI):
|
|
931
931
|
'CS': 'cs',
|
932
932
|
'ORAI': 'orai',
|
933
933
|
'BASE': 'base',
|
934
|
+
'TARA': 'tara',
|
934
935
|
# below will be uncommented after consensus
|
935
936
|
# 'BITCOINDIAMON': 'bcd',
|
936
937
|
# 'BITCOINGOLD': 'btg',
|
@@ -2646,7 +2647,7 @@ class kucoin(Exchange, ImplicitAPI):
|
|
2646
2647
|
response = self.privateDeleteHfOrders(self.extend(request, query))
|
2647
2648
|
else:
|
2648
2649
|
response = self.privateDeleteOrders(self.extend(request, query))
|
2649
|
-
return response
|
2650
|
+
return [self.safe_order({'info': response})]
|
2650
2651
|
|
2651
2652
|
def fetch_orders_by_status(self, status, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
2652
2653
|
"""
|
ccxt/kucoinfutures.py
CHANGED
@@ -1719,7 +1719,7 @@ class kucoinfutures(kucoin, ImplicitAPI):
|
|
1719
1719
|
# },
|
1720
1720
|
# }
|
1721
1721
|
#
|
1722
|
-
return self.
|
1722
|
+
return self.safe_order({'info': response})
|
1723
1723
|
|
1724
1724
|
def cancel_orders(self, ids, symbol: Str = None, params={}):
|
1725
1725
|
"""
|
@@ -1811,7 +1811,8 @@ class kucoinfutures(kucoin, ImplicitAPI):
|
|
1811
1811
|
# },
|
1812
1812
|
# }
|
1813
1813
|
#
|
1814
|
-
|
1814
|
+
data = self.safe_dict(response, 'data')
|
1815
|
+
return [self.safe_order({'info': data})]
|
1815
1816
|
|
1816
1817
|
def add_margin(self, symbol: str, amount: float, params={}) -> MarginModification:
|
1817
1818
|
"""
|
ccxt/latoken.py
CHANGED
@@ -40,6 +40,10 @@ class latoken(Exchange, ImplicitAPI):
|
|
40
40
|
'swap': False,
|
41
41
|
'future': False,
|
42
42
|
'option': False,
|
43
|
+
'addMargin': False,
|
44
|
+
'borrowCrossMargin': False,
|
45
|
+
'borrowIsolatedMargin': False,
|
46
|
+
'borrowMargin': False,
|
43
47
|
'cancelAllOrders': True,
|
44
48
|
'cancelOrder': True,
|
45
49
|
'closeAllPositions': False,
|
@@ -49,9 +53,14 @@ class latoken(Exchange, ImplicitAPI):
|
|
49
53
|
'createStopLimitOrder': True,
|
50
54
|
'createStopMarketOrder': False,
|
51
55
|
'createStopOrder': True,
|
56
|
+
'fetchAllGreeks': False,
|
52
57
|
'fetchBalance': True,
|
58
|
+
'fetchBorrowInterest': False,
|
59
|
+
'fetchBorrowRate': False,
|
53
60
|
'fetchBorrowRateHistories': False,
|
54
61
|
'fetchBorrowRateHistory': False,
|
62
|
+
'fetchBorrowRates': False,
|
63
|
+
'fetchBorrowRatesPerSymbol': False,
|
55
64
|
'fetchCrossBorrowRate': False,
|
56
65
|
'fetchCrossBorrowRates': False,
|
57
66
|
'fetchCurrencies': True,
|
@@ -66,12 +75,34 @@ class latoken(Exchange, ImplicitAPI):
|
|
66
75
|
'fetchFundingRate': False,
|
67
76
|
'fetchFundingRateHistory': False,
|
68
77
|
'fetchFundingRates': False,
|
78
|
+
'fetchGreeks': False,
|
79
|
+
'fetchIndexOHLCV': False,
|
69
80
|
'fetchIsolatedBorrowRate': False,
|
70
81
|
'fetchIsolatedBorrowRates': False,
|
82
|
+
'fetchIsolatedPositions': False,
|
83
|
+
'fetchLeverage': False,
|
84
|
+
'fetchLeverages': False,
|
85
|
+
'fetchLeverageTiers': False,
|
86
|
+
'fetchLiquidations': False,
|
87
|
+
'fetchLongShortRatio': False,
|
88
|
+
'fetchLongShortRatioHistory': False,
|
89
|
+
'fetchMarginAdjustmentHistory': False,
|
71
90
|
'fetchMarginMode': False,
|
91
|
+
'fetchMarginModes': False,
|
92
|
+
'fetchMarketLeverageTiers': False,
|
72
93
|
'fetchMarkets': True,
|
94
|
+
'fetchMarkOHLCV': False,
|
95
|
+
'fetchMarkPrice': False,
|
96
|
+
'fetchMarkPrices': False,
|
97
|
+
'fetchMyLiquidations': False,
|
98
|
+
'fetchMySettlementHistory': False,
|
73
99
|
'fetchMyTrades': True,
|
100
|
+
'fetchOpenInterest': False,
|
101
|
+
'fetchOpenInterestHistory': False,
|
102
|
+
'fetchOpenInterests': False,
|
74
103
|
'fetchOpenOrders': True,
|
104
|
+
'fetchOption': False,
|
105
|
+
'fetchOptionChain': False,
|
75
106
|
'fetchOrder': True,
|
76
107
|
'fetchOrderBook': True,
|
77
108
|
'fetchOrders': True,
|
@@ -82,6 +113,8 @@ class latoken(Exchange, ImplicitAPI):
|
|
82
113
|
'fetchPositionsForSymbol': False,
|
83
114
|
'fetchPositionsHistory': False,
|
84
115
|
'fetchPositionsRisk': False,
|
116
|
+
'fetchPremiumIndexOHLCV': False,
|
117
|
+
'fetchSettlementHistory': False,
|
85
118
|
'fetchTicker': True,
|
86
119
|
'fetchTickers': True,
|
87
120
|
'fetchTime': True,
|
@@ -91,6 +124,15 @@ class latoken(Exchange, ImplicitAPI):
|
|
91
124
|
'fetchTransactions': 'emulated',
|
92
125
|
'fetchTransfer': False,
|
93
126
|
'fetchTransfers': True,
|
127
|
+
'fetchUnderlyingAssets': False,
|
128
|
+
'fetchVolatilityHistory': False,
|
129
|
+
'reduceMargin': False,
|
130
|
+
'repayCrossMargin': False,
|
131
|
+
'repayIsolatedMargin': False,
|
132
|
+
'setLeverage': False,
|
133
|
+
'setMargin': False,
|
134
|
+
'setMarginMode': False,
|
135
|
+
'setPositionMode': False,
|
94
136
|
'transfer': True,
|
95
137
|
},
|
96
138
|
'urls': {
|
ccxt/luno.py
CHANGED
@@ -32,6 +32,9 @@ class luno(Exchange, ImplicitAPI):
|
|
32
32
|
'future': False,
|
33
33
|
'option': False,
|
34
34
|
'addMargin': False,
|
35
|
+
'borrowCrossMargin': False,
|
36
|
+
'borrowIsolatedMargin': False,
|
37
|
+
'borrowMargin': False,
|
35
38
|
'cancelOrder': True,
|
36
39
|
'closeAllPositions': False,
|
37
40
|
'closePosition': False,
|
@@ -39,48 +42,81 @@ class luno(Exchange, ImplicitAPI):
|
|
39
42
|
'createOrder': True,
|
40
43
|
'createReduceOnlyOrder': False,
|
41
44
|
'fetchAccounts': True,
|
45
|
+
'fetchAllGreeks': False,
|
42
46
|
'fetchBalance': True,
|
47
|
+
'fetchBorrowInterest': False,
|
48
|
+
'fetchBorrowRate': False,
|
49
|
+
'fetchBorrowRateHistories': False,
|
43
50
|
'fetchBorrowRateHistory': False,
|
51
|
+
'fetchBorrowRates': False,
|
52
|
+
'fetchBorrowRatesPerSymbol': False,
|
44
53
|
'fetchClosedOrders': True,
|
45
54
|
'fetchCrossBorrowRate': False,
|
46
55
|
'fetchCrossBorrowRates': False,
|
47
56
|
'fetchCurrencies': True,
|
48
57
|
'fetchDepositAddress': True,
|
49
58
|
'fetchFundingHistory': False,
|
59
|
+
'fetchFundingInterval': False,
|
60
|
+
'fetchFundingIntervals': False,
|
50
61
|
'fetchFundingRate': False,
|
51
62
|
'fetchFundingRateHistory': False,
|
52
63
|
'fetchFundingRates': False,
|
64
|
+
'fetchGreeks': False,
|
53
65
|
'fetchIndexOHLCV': False,
|
54
66
|
'fetchIsolatedBorrowRate': False,
|
55
67
|
'fetchIsolatedBorrowRates': False,
|
68
|
+
'fetchIsolatedPositions': False,
|
56
69
|
'fetchLedger': True,
|
57
70
|
'fetchLeverage': False,
|
71
|
+
'fetchLeverages': False,
|
58
72
|
'fetchLeverageTiers': False,
|
73
|
+
'fetchLiquidations': False,
|
74
|
+
'fetchLongShortRatio': False,
|
75
|
+
'fetchLongShortRatioHistory': False,
|
76
|
+
'fetchMarginAdjustmentHistory': False,
|
59
77
|
'fetchMarginMode': False,
|
78
|
+
'fetchMarginModes': False,
|
79
|
+
'fetchMarketLeverageTiers': False,
|
60
80
|
'fetchMarkets': True,
|
61
81
|
'fetchMarkOHLCV': False,
|
82
|
+
'fetchMarkPrice': False,
|
83
|
+
'fetchMarkPrices': False,
|
84
|
+
'fetchMyLiquidations': False,
|
85
|
+
'fetchMySettlementHistory': False,
|
62
86
|
'fetchMyTrades': True,
|
63
87
|
'fetchOHLCV': True,
|
88
|
+
'fetchOpenInterest': False,
|
64
89
|
'fetchOpenInterestHistory': False,
|
90
|
+
'fetchOpenInterests': False,
|
65
91
|
'fetchOpenOrders': True,
|
92
|
+
'fetchOption': False,
|
93
|
+
'fetchOptionChain': False,
|
66
94
|
'fetchOrder': True,
|
67
95
|
'fetchOrderBook': True,
|
68
96
|
'fetchOrders': True,
|
69
97
|
'fetchPosition': False,
|
98
|
+
'fetchPositionForSymbolWs': False,
|
70
99
|
'fetchPositionHistory': False,
|
71
100
|
'fetchPositionMode': False,
|
72
101
|
'fetchPositions': False,
|
73
102
|
'fetchPositionsForSymbol': False,
|
103
|
+
'fetchPositionsForSymbolWs': False,
|
74
104
|
'fetchPositionsHistory': False,
|
75
105
|
'fetchPositionsRisk': False,
|
76
106
|
'fetchPremiumIndexOHLCV': False,
|
107
|
+
'fetchSettlementHistory': False,
|
77
108
|
'fetchTicker': True,
|
78
109
|
'fetchTickers': True,
|
79
110
|
'fetchTrades': True,
|
80
111
|
'fetchTradingFee': True,
|
81
112
|
'fetchTradingFees': False,
|
113
|
+
'fetchUnderlyingAssets': False,
|
114
|
+
'fetchVolatilityHistory': False,
|
82
115
|
'reduceMargin': False,
|
116
|
+
'repayCrossMargin': False,
|
117
|
+
'repayIsolatedMargin': False,
|
83
118
|
'setLeverage': False,
|
119
|
+
'setMargin': False,
|
84
120
|
'setMarginMode': False,
|
85
121
|
'setPositionMode': False,
|
86
122
|
},
|