ccxt 4.4.71__py2.py3-none-any.whl → 4.4.73__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.
Files changed (99) hide show
  1. ccxt/__init__.py +1 -3
  2. ccxt/abstract/bingx.py +1 -1
  3. ccxt/ace.py +36 -1
  4. ccxt/alpaca.py +46 -0
  5. ccxt/ascendex.py +2 -2
  6. ccxt/async_support/__init__.py +1 -3
  7. ccxt/async_support/ace.py +36 -1
  8. ccxt/async_support/alpaca.py +46 -0
  9. ccxt/async_support/ascendex.py +2 -2
  10. ccxt/async_support/base/exchange.py +1 -1
  11. ccxt/async_support/binance.py +19 -15
  12. ccxt/async_support/bingx.py +2 -2
  13. ccxt/async_support/bit2c.py +11 -0
  14. ccxt/async_support/bitfinex.py +1 -1
  15. ccxt/async_support/bitfinex1.py +1 -1
  16. ccxt/async_support/bitget.py +6 -5
  17. ccxt/async_support/bitrue.py +1 -1
  18. ccxt/async_support/bl3p.py +2 -2
  19. ccxt/async_support/bybit.py +32 -25
  20. ccxt/async_support/cex.py +1 -0
  21. ccxt/async_support/coinbase.py +3 -2
  22. ccxt/async_support/coinbaseexchange.py +3 -2
  23. ccxt/async_support/coinbaseinternational.py +3 -2
  24. ccxt/async_support/coinex.py +1 -1
  25. ccxt/async_support/defx.py +1 -1
  26. ccxt/async_support/deribit.py +2 -1
  27. ccxt/async_support/derive.py +13 -7
  28. ccxt/async_support/gate.py +3 -0
  29. ccxt/async_support/gemini.py +2 -1
  30. ccxt/async_support/hitbtc.py +1 -1
  31. ccxt/async_support/hyperliquid.py +38 -0
  32. ccxt/async_support/kraken.py +1 -1
  33. ccxt/async_support/krakenfutures.py +4 -0
  34. ccxt/async_support/kucoin.py +1 -1
  35. ccxt/async_support/kuna.py +1 -1
  36. ccxt/async_support/mexc.py +1 -1
  37. ccxt/async_support/ndax.py +1 -1
  38. ccxt/async_support/okcoin.py +4 -0
  39. ccxt/async_support/okx.py +21 -30
  40. ccxt/async_support/paradex.py +65 -7
  41. ccxt/async_support/paymium.py +1 -1
  42. ccxt/async_support/poloniex.py +2 -1
  43. ccxt/async_support/upbit.py +1 -1
  44. ccxt/async_support/whitebit.py +98 -2
  45. ccxt/async_support/woo.py +3 -1
  46. ccxt/async_support/woofipro.py +1 -1
  47. ccxt/async_support/yobit.py +2 -1
  48. ccxt/base/errors.py +6 -0
  49. ccxt/base/exchange.py +13 -12
  50. ccxt/binance.py +19 -15
  51. ccxt/bingx.py +2 -2
  52. ccxt/bit2c.py +11 -0
  53. ccxt/bitfinex.py +1 -1
  54. ccxt/bitfinex1.py +1 -1
  55. ccxt/bitget.py +6 -5
  56. ccxt/bitrue.py +1 -1
  57. ccxt/bl3p.py +2 -2
  58. ccxt/bybit.py +32 -25
  59. ccxt/cex.py +1 -0
  60. ccxt/coinbase.py +3 -2
  61. ccxt/coinbaseexchange.py +3 -2
  62. ccxt/coinbaseinternational.py +3 -2
  63. ccxt/coinex.py +1 -1
  64. ccxt/defx.py +1 -1
  65. ccxt/deribit.py +2 -1
  66. ccxt/derive.py +13 -7
  67. ccxt/gate.py +3 -0
  68. ccxt/gemini.py +2 -1
  69. ccxt/hitbtc.py +1 -1
  70. ccxt/hyperliquid.py +38 -0
  71. ccxt/kraken.py +1 -1
  72. ccxt/krakenfutures.py +4 -0
  73. ccxt/kucoin.py +1 -1
  74. ccxt/kuna.py +1 -1
  75. ccxt/mexc.py +1 -1
  76. ccxt/ndax.py +1 -1
  77. ccxt/okcoin.py +4 -0
  78. ccxt/okx.py +21 -30
  79. ccxt/paradex.py +65 -7
  80. ccxt/paymium.py +1 -1
  81. ccxt/poloniex.py +2 -1
  82. ccxt/pro/__init__.py +1 -3
  83. ccxt/pro/bingx.py +1 -1
  84. ccxt/pro/bitmart.py +15 -7
  85. ccxt/pro/derive.py +2 -2
  86. ccxt/pro/krakenfutures.py +1 -1
  87. ccxt/test/tests_async.py +6 -3
  88. ccxt/test/tests_sync.py +6 -3
  89. ccxt/upbit.py +1 -1
  90. ccxt/whitebit.py +98 -2
  91. ccxt/woo.py +3 -1
  92. ccxt/woofipro.py +1 -1
  93. ccxt/yobit.py +2 -1
  94. {ccxt-4.4.71.dist-info → ccxt-4.4.73.dist-info}/METADATA +5 -5
  95. {ccxt-4.4.71.dist-info → ccxt-4.4.73.dist-info}/RECORD +98 -99
  96. ccxt/abstract/bitfinex1.py +0 -69
  97. {ccxt-4.4.71.dist-info → ccxt-4.4.73.dist-info}/LICENSE.txt +0 -0
  98. {ccxt-4.4.71.dist-info → ccxt-4.4.73.dist-info}/WHEEL +0 -0
  99. {ccxt-4.4.71.dist-info → ccxt-4.4.73.dist-info}/top_level.txt +0 -0
ccxt/__init__.py CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
  # ----------------------------------------------------------------------------
24
24
 
25
- __version__ = '4.4.71'
25
+ __version__ = '4.4.73'
26
26
 
27
27
  # ----------------------------------------------------------------------------
28
28
 
@@ -98,7 +98,6 @@ from ccxt.bitbank import bitbank # noqa: F4
98
98
  from ccxt.bitbns import bitbns # noqa: F401
99
99
  from ccxt.bitcoincom import bitcoincom # noqa: F401
100
100
  from ccxt.bitfinex import bitfinex # noqa: F401
101
- from ccxt.bitfinex1 import bitfinex1 # noqa: F401
102
101
  from ccxt.bitflyer import bitflyer # noqa: F401
103
102
  from ccxt.bitget import bitget # noqa: F401
104
103
  from ccxt.bithumb import bithumb # noqa: F401
@@ -210,7 +209,6 @@ exchanges = [
210
209
  'bitbns',
211
210
  'bitcoincom',
212
211
  'bitfinex',
213
- 'bitfinex1',
214
212
  'bitflyer',
215
213
  'bitget',
216
214
  'bithumb',
ccxt/abstract/bingx.py CHANGED
@@ -16,7 +16,6 @@ class ImplicitAPI:
16
16
  spot_v1_private_get_trade_mytrades = spotV1PrivateGetTradeMyTrades = Entry('trade/myTrades', ['spot', 'v1', 'private'], 'GET', {'cost': 2})
17
17
  spot_v1_private_get_user_commissionrate = spotV1PrivateGetUserCommissionRate = Entry('user/commissionRate', ['spot', 'v1', 'private'], 'GET', {'cost': 5})
18
18
  spot_v1_private_get_account_balance = spotV1PrivateGetAccountBalance = Entry('account/balance', ['spot', 'v1', 'private'], 'GET', {'cost': 2})
19
- spot_v1_private_get_account_allaccountbalance = spotV1PrivateGetAccountAllAccountBalance = Entry('account/allAccountBalance', ['spot', 'v1', 'private'], 'GET', {'cost': 2})
20
19
  spot_v1_private_post_trade_order = spotV1PrivatePostTradeOrder = Entry('trade/order', ['spot', 'v1', 'private'], 'POST', {'cost': 2})
21
20
  spot_v1_private_post_trade_cancel = spotV1PrivatePostTradeCancel = Entry('trade/cancel', ['spot', 'v1', 'private'], 'POST', {'cost': 2})
22
21
  spot_v1_private_post_trade_batchorders = spotV1PrivatePostTradeBatchOrders = Entry('trade/batchOrders', ['spot', 'v1', 'private'], 'POST', {'cost': 5})
@@ -141,6 +140,7 @@ class ImplicitAPI:
141
140
  account_v1_private_get_uid = accountV1PrivateGetUid = Entry('uid', ['account', 'v1', 'private'], 'GET', {'cost': 1})
142
141
  account_v1_private_get_apikey_query = accountV1PrivateGetApiKeyQuery = Entry('apiKey/query', ['account', 'v1', 'private'], 'GET', {'cost': 2})
143
142
  account_v1_private_get_account_apipermissions = accountV1PrivateGetAccountApiPermissions = Entry('account/apiPermissions', ['account', 'v1', 'private'], 'GET', {'cost': 5})
143
+ account_v1_private_get_allaccountbalance = accountV1PrivateGetAllAccountBalance = Entry('allAccountBalance', ['account', 'v1', 'private'], 'GET', {'cost': 2})
144
144
  account_v1_private_post_innertransfer_authorizesubaccount = accountV1PrivatePostInnerTransferAuthorizeSubAccount = Entry('innerTransfer/authorizeSubAccount', ['account', 'v1', 'private'], 'POST', {'cost': 1})
145
145
  account_transfer_v1_private_get_subaccount_asset_transferhistory = accountTransferV1PrivateGetSubAccountAssetTransferHistory = Entry('subAccount/asset/transferHistory', ['account', 'transfer', 'v1', 'private'], 'GET', {'cost': 1})
146
146
  account_transfer_v1_private_post_subaccount_transferasset_supportcoins = accountTransferV1PrivatePostSubAccountTransferAssetSupportCoins = Entry('subAccount/transferAsset/supportCoins', ['account', 'transfer', 'v1', 'private'], 'POST', {'cost': 1})
ccxt/ace.py CHANGED
@@ -33,16 +33,27 @@ class ace(Exchange, ImplicitAPI):
33
33
  'swap': False,
34
34
  'future': False,
35
35
  'option': False,
36
+ 'addMargin': False,
37
+ 'borrowCrossMargin': False,
38
+ 'borrowIsolatedMargin': False,
39
+ 'borrowMargin': False,
36
40
  'cancelAllOrders': False,
37
41
  'cancelOrder': True,
38
42
  'cancelOrders': False,
39
43
  'closeAllPositions': False,
40
44
  'closePosition': False,
41
45
  'createOrder': True,
46
+ 'createOrderWithTakeProfitAndStopLoss': False,
47
+ 'createOrderWithTakeProfitAndStopLossWs': False,
48
+ 'createReduceOnlyOrder': False,
42
49
  'editOrder': False,
43
50
  'fetchBalance': True,
51
+ 'fetchBorrowInterest': False,
52
+ 'fetchBorrowRate': False,
44
53
  'fetchBorrowRateHistories': False,
45
54
  'fetchBorrowRateHistory': False,
55
+ 'fetchBorrowRates': False,
56
+ 'fetchBorrowRatesPerSymbol': False,
46
57
  'fetchClosedOrders': False,
47
58
  'fetchCrossBorrowRate': False,
48
59
  'fetchCrossBorrowRates': False,
@@ -50,18 +61,36 @@ class ace(Exchange, ImplicitAPI):
50
61
  'fetchDepositAddress': False,
51
62
  'fetchDeposits': False,
52
63
  'fetchFundingHistory': False,
64
+ 'fetchFundingInterval': False,
65
+ 'fetchFundingIntervals': False,
53
66
  'fetchFundingRate': False,
54
67
  'fetchFundingRateHistory': False,
55
68
  'fetchFundingRates': False,
69
+ 'fetchGreeks': False,
56
70
  'fetchIndexOHLCV': False,
57
71
  'fetchIsolatedBorrowRate': False,
58
72
  'fetchIsolatedBorrowRates': False,
73
+ 'fetchIsolatedPositions': False,
74
+ 'fetchLeverage': False,
75
+ 'fetchLeverages': False,
76
+ 'fetchLeverageTiers': False,
77
+ 'fetchLiquidations': False,
78
+ 'fetchLongShortRatio': False,
79
+ 'fetchLongShortRatioHistory': False,
80
+ 'fetchMarginAdjustmentHistory': False,
59
81
  'fetchMarginMode': False,
82
+ 'fetchMarginModes': False,
83
+ 'fetchMarketLeverageTiers': False,
60
84
  'fetchMarkets': True,
61
85
  'fetchMarkOHLCV': False,
86
+ 'fetchMarkPrices': False,
87
+ 'fetchMyLiquidations': False,
88
+ 'fetchMySettlementHistory': False,
62
89
  'fetchMyTrades': True,
63
90
  'fetchOHLCV': True,
91
+ 'fetchOpenInterest': False,
64
92
  'fetchOpenInterestHistory': False,
93
+ 'fetchOpenInterests': False,
65
94
  'fetchOpenOrders': True,
66
95
  'fetchOrder': True,
67
96
  'fetchOrderBook': True,
@@ -75,6 +104,7 @@ class ace(Exchange, ImplicitAPI):
75
104
  'fetchPositionsHistory': False,
76
105
  'fetchPositionsRisk': False,
77
106
  'fetchPremiumIndexOHLCV': False,
107
+ 'fetchSettlementHistory': False,
78
108
  'fetchTicker': True,
79
109
  'fetchTickers': True,
80
110
  'fetchTime': False,
@@ -87,8 +117,13 @@ class ace(Exchange, ImplicitAPI):
87
117
  'fetchTransfers': False,
88
118
  'fetchWithdrawal': False,
89
119
  'fetchWithdrawals': False,
120
+ 'reduceMargin': False,
121
+ 'repayCrossMargin': False,
122
+ 'repayIsolatedMargin': False,
90
123
  'setLeverage': False,
124
+ 'setMargin': False,
91
125
  'setMarginMode': False,
126
+ 'setPositionMode': False,
92
127
  'transfer': False,
93
128
  'withdraw': False,
94
129
  'ws': False,
@@ -473,7 +508,7 @@ class ace(Exchange, ImplicitAPI):
473
508
  # ],
474
509
  # [
475
510
  # "0.001",
476
- # "20948.12"
511
+ # "20948.13"
477
512
  # ]
478
513
  # ]
479
514
  # },
ccxt/alpaca.py CHANGED
@@ -56,6 +56,10 @@ class alpaca(Exchange, ImplicitAPI):
56
56
  'swap': False,
57
57
  'future': False,
58
58
  'option': False,
59
+ 'addMargin': False,
60
+ 'borrowCrossMargin': False,
61
+ 'borrowIsolatedMargin': False,
62
+ 'borrowMargin': False,
59
63
  'cancelAllOrders': True,
60
64
  'cancelOrder': True,
61
65
  'closeAllPositions': False,
@@ -64,26 +68,61 @@ class alpaca(Exchange, ImplicitAPI):
64
68
  'createMarketBuyOrderWithCost': True,
65
69
  'createMarketOrderWithCost': True,
66
70
  'createOrder': True,
71
+ 'createOrderWithTakeProfitAndStopLoss': False,
72
+ 'createOrderWithTakeProfitAndStopLossWs': False,
73
+ 'createReduceOnlyOrder': False,
67
74
  'createStopOrder': True,
68
75
  'createTriggerOrder': True,
69
76
  'editOrder': True,
70
77
  'fetchBalance': True,
71
78
  'fetchBidsAsks': False,
79
+ 'fetchBorrowInterest': False,
80
+ 'fetchBorrowRate': False,
81
+ 'fetchBorrowRateHistories': False,
82
+ 'fetchBorrowRateHistory': False,
83
+ 'fetchBorrowRates': False,
84
+ 'fetchBorrowRatesPerSymbol': False,
72
85
  'fetchClosedOrders': True,
86
+ 'fetchCrossBorrowRate': False,
87
+ 'fetchCrossBorrowRates': False,
73
88
  'fetchCurrencies': False,
74
89
  'fetchDepositAddress': True,
75
90
  'fetchDepositAddressesByNetwork': False,
76
91
  'fetchDeposits': True,
77
92
  'fetchDepositsWithdrawals': True,
78
93
  'fetchFundingHistory': False,
94
+ 'fetchFundingInterval': False,
95
+ 'fetchFundingIntervals': False,
79
96
  'fetchFundingRate': False,
80
97
  'fetchFundingRateHistory': False,
81
98
  'fetchFundingRates': False,
99
+ 'fetchGreeks': False,
100
+ 'fetchIndexOHLCV': False,
101
+ 'fetchIsolatedBorrowRate': False,
102
+ 'fetchIsolatedBorrowRates': False,
103
+ 'fetchIsolatedPositions': False,
82
104
  'fetchL1OrderBook': True,
83
105
  'fetchL2OrderBook': False,
106
+ 'fetchLeverage': False,
107
+ 'fetchLeverages': False,
108
+ 'fetchLeverageTiers': False,
109
+ 'fetchLiquidations': False,
110
+ 'fetchLongShortRatio': False,
111
+ 'fetchLongShortRatioHistory': False,
112
+ 'fetchMarginAdjustmentHistory': False,
113
+ 'fetchMarginMode': False,
114
+ 'fetchMarginModes': False,
115
+ 'fetchMarketLeverageTiers': False,
84
116
  'fetchMarkets': True,
117
+ 'fetchMarkOHLCV': False,
118
+ 'fetchMarkPrices': False,
119
+ 'fetchMyLiquidations': False,
120
+ 'fetchMySettlementHistory': False,
85
121
  'fetchMyTrades': True,
86
122
  'fetchOHLCV': True,
123
+ 'fetchOpenInterest': False,
124
+ 'fetchOpenInterestHistory': False,
125
+ 'fetchOpenInterests': False,
87
126
  'fetchOpenOrder': False,
88
127
  'fetchOpenOrders': True,
89
128
  'fetchOrder': True,
@@ -96,6 +135,8 @@ class alpaca(Exchange, ImplicitAPI):
96
135
  'fetchPositionsForSymbol': False,
97
136
  'fetchPositionsHistory': False,
98
137
  'fetchPositionsRisk': False,
138
+ 'fetchPremiumIndexOHLCV': False,
139
+ 'fetchSettlementHistory': False,
99
140
  'fetchStatus': False,
100
141
  'fetchTicker': True,
101
142
  'fetchTickers': True,
@@ -107,9 +148,14 @@ class alpaca(Exchange, ImplicitAPI):
107
148
  'fetchTransactions': False,
108
149
  'fetchTransfers': False,
109
150
  'fetchWithdrawals': True,
151
+ 'reduceMargin': False,
152
+ 'repayCrossMargin': False,
153
+ 'repayIsolatedMargin': False,
110
154
  'sandbox': True,
111
155
  'setLeverage': False,
156
+ 'setMargin': False,
112
157
  'setMarginMode': False,
158
+ 'setPositionMode': False,
113
159
  'transfer': False,
114
160
  'withdraw': True,
115
161
  },
ccxt/ascendex.py CHANGED
@@ -556,7 +556,7 @@ class ascendex(Exchange, ImplicitAPI):
556
556
  ids = list(dataById.keys())
557
557
  result: dict = {}
558
558
  for i in range(0, len(ids)):
559
- id = ids[i]
559
+ id = self.safe_string(ids, i)
560
560
  currency = dataById[id]
561
561
  code = self.safe_currency_code(id)
562
562
  scale = self.safe_string_2(currency, 'precisionScale', 'nativeScale')
@@ -1959,7 +1959,7 @@ class ascendex(Exchange, ImplicitAPI):
1959
1959
  # "code": 0,
1960
1960
  # "data": [
1961
1961
  # {
1962
- # "avgPx": "0", # Average filled price of the order
1962
+ # "avgPx": "0", # Average filled price of the order
1963
1963
  # "cumFee": "0", # cumulative fee paid for self order
1964
1964
  # "cumFilledQty": "0", # cumulative filled quantity
1965
1965
  # "errorCode": "", # error code; could be empty
@@ -4,7 +4,7 @@
4
4
 
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.4.71'
7
+ __version__ = '4.4.73'
8
8
 
9
9
  # -----------------------------------------------------------------------------
10
10
 
@@ -78,7 +78,6 @@ from ccxt.async_support.bitbank import bitbank
78
78
  from ccxt.async_support.bitbns import bitbns # noqa: F401
79
79
  from ccxt.async_support.bitcoincom import bitcoincom # noqa: F401
80
80
  from ccxt.async_support.bitfinex import bitfinex # noqa: F401
81
- from ccxt.async_support.bitfinex1 import bitfinex1 # noqa: F401
82
81
  from ccxt.async_support.bitflyer import bitflyer # noqa: F401
83
82
  from ccxt.async_support.bitget import bitget # noqa: F401
84
83
  from ccxt.async_support.bithumb import bithumb # noqa: F401
@@ -190,7 +189,6 @@ exchanges = [
190
189
  'bitbns',
191
190
  'bitcoincom',
192
191
  'bitfinex',
193
- 'bitfinex1',
194
192
  'bitflyer',
195
193
  'bitget',
196
194
  'bithumb',
ccxt/async_support/ace.py CHANGED
@@ -33,16 +33,27 @@ class ace(Exchange, ImplicitAPI):
33
33
  'swap': False,
34
34
  'future': False,
35
35
  'option': False,
36
+ 'addMargin': False,
37
+ 'borrowCrossMargin': False,
38
+ 'borrowIsolatedMargin': False,
39
+ 'borrowMargin': False,
36
40
  'cancelAllOrders': False,
37
41
  'cancelOrder': True,
38
42
  'cancelOrders': False,
39
43
  'closeAllPositions': False,
40
44
  'closePosition': False,
41
45
  'createOrder': True,
46
+ 'createOrderWithTakeProfitAndStopLoss': False,
47
+ 'createOrderWithTakeProfitAndStopLossWs': False,
48
+ 'createReduceOnlyOrder': False,
42
49
  'editOrder': False,
43
50
  'fetchBalance': True,
51
+ 'fetchBorrowInterest': False,
52
+ 'fetchBorrowRate': False,
44
53
  'fetchBorrowRateHistories': False,
45
54
  'fetchBorrowRateHistory': False,
55
+ 'fetchBorrowRates': False,
56
+ 'fetchBorrowRatesPerSymbol': False,
46
57
  'fetchClosedOrders': False,
47
58
  'fetchCrossBorrowRate': False,
48
59
  'fetchCrossBorrowRates': False,
@@ -50,18 +61,36 @@ class ace(Exchange, ImplicitAPI):
50
61
  'fetchDepositAddress': False,
51
62
  'fetchDeposits': False,
52
63
  'fetchFundingHistory': False,
64
+ 'fetchFundingInterval': False,
65
+ 'fetchFundingIntervals': False,
53
66
  'fetchFundingRate': False,
54
67
  'fetchFundingRateHistory': False,
55
68
  'fetchFundingRates': False,
69
+ 'fetchGreeks': False,
56
70
  'fetchIndexOHLCV': False,
57
71
  'fetchIsolatedBorrowRate': False,
58
72
  'fetchIsolatedBorrowRates': False,
73
+ 'fetchIsolatedPositions': False,
74
+ 'fetchLeverage': False,
75
+ 'fetchLeverages': False,
76
+ 'fetchLeverageTiers': False,
77
+ 'fetchLiquidations': False,
78
+ 'fetchLongShortRatio': False,
79
+ 'fetchLongShortRatioHistory': False,
80
+ 'fetchMarginAdjustmentHistory': False,
59
81
  'fetchMarginMode': False,
82
+ 'fetchMarginModes': False,
83
+ 'fetchMarketLeverageTiers': False,
60
84
  'fetchMarkets': True,
61
85
  'fetchMarkOHLCV': False,
86
+ 'fetchMarkPrices': False,
87
+ 'fetchMyLiquidations': False,
88
+ 'fetchMySettlementHistory': False,
62
89
  'fetchMyTrades': True,
63
90
  'fetchOHLCV': True,
91
+ 'fetchOpenInterest': False,
64
92
  'fetchOpenInterestHistory': False,
93
+ 'fetchOpenInterests': False,
65
94
  'fetchOpenOrders': True,
66
95
  'fetchOrder': True,
67
96
  'fetchOrderBook': True,
@@ -75,6 +104,7 @@ class ace(Exchange, ImplicitAPI):
75
104
  'fetchPositionsHistory': False,
76
105
  'fetchPositionsRisk': False,
77
106
  'fetchPremiumIndexOHLCV': False,
107
+ 'fetchSettlementHistory': False,
78
108
  'fetchTicker': True,
79
109
  'fetchTickers': True,
80
110
  'fetchTime': False,
@@ -87,8 +117,13 @@ class ace(Exchange, ImplicitAPI):
87
117
  'fetchTransfers': False,
88
118
  'fetchWithdrawal': False,
89
119
  'fetchWithdrawals': False,
120
+ 'reduceMargin': False,
121
+ 'repayCrossMargin': False,
122
+ 'repayIsolatedMargin': False,
90
123
  'setLeverage': False,
124
+ 'setMargin': False,
91
125
  'setMarginMode': False,
126
+ 'setPositionMode': False,
92
127
  'transfer': False,
93
128
  'withdraw': False,
94
129
  'ws': False,
@@ -473,7 +508,7 @@ class ace(Exchange, ImplicitAPI):
473
508
  # ],
474
509
  # [
475
510
  # "0.001",
476
- # "20948.12"
511
+ # "20948.13"
477
512
  # ]
478
513
  # ]
479
514
  # },
@@ -56,6 +56,10 @@ class alpaca(Exchange, ImplicitAPI):
56
56
  'swap': False,
57
57
  'future': False,
58
58
  'option': False,
59
+ 'addMargin': False,
60
+ 'borrowCrossMargin': False,
61
+ 'borrowIsolatedMargin': False,
62
+ 'borrowMargin': False,
59
63
  'cancelAllOrders': True,
60
64
  'cancelOrder': True,
61
65
  'closeAllPositions': False,
@@ -64,26 +68,61 @@ class alpaca(Exchange, ImplicitAPI):
64
68
  'createMarketBuyOrderWithCost': True,
65
69
  'createMarketOrderWithCost': True,
66
70
  'createOrder': True,
71
+ 'createOrderWithTakeProfitAndStopLoss': False,
72
+ 'createOrderWithTakeProfitAndStopLossWs': False,
73
+ 'createReduceOnlyOrder': False,
67
74
  'createStopOrder': True,
68
75
  'createTriggerOrder': True,
69
76
  'editOrder': True,
70
77
  'fetchBalance': True,
71
78
  'fetchBidsAsks': False,
79
+ 'fetchBorrowInterest': False,
80
+ 'fetchBorrowRate': False,
81
+ 'fetchBorrowRateHistories': False,
82
+ 'fetchBorrowRateHistory': False,
83
+ 'fetchBorrowRates': False,
84
+ 'fetchBorrowRatesPerSymbol': False,
72
85
  'fetchClosedOrders': True,
86
+ 'fetchCrossBorrowRate': False,
87
+ 'fetchCrossBorrowRates': False,
73
88
  'fetchCurrencies': False,
74
89
  'fetchDepositAddress': True,
75
90
  'fetchDepositAddressesByNetwork': False,
76
91
  'fetchDeposits': True,
77
92
  'fetchDepositsWithdrawals': True,
78
93
  'fetchFundingHistory': False,
94
+ 'fetchFundingInterval': False,
95
+ 'fetchFundingIntervals': False,
79
96
  'fetchFundingRate': False,
80
97
  'fetchFundingRateHistory': False,
81
98
  'fetchFundingRates': False,
99
+ 'fetchGreeks': False,
100
+ 'fetchIndexOHLCV': False,
101
+ 'fetchIsolatedBorrowRate': False,
102
+ 'fetchIsolatedBorrowRates': False,
103
+ 'fetchIsolatedPositions': False,
82
104
  'fetchL1OrderBook': True,
83
105
  'fetchL2OrderBook': False,
106
+ 'fetchLeverage': False,
107
+ 'fetchLeverages': False,
108
+ 'fetchLeverageTiers': False,
109
+ 'fetchLiquidations': False,
110
+ 'fetchLongShortRatio': False,
111
+ 'fetchLongShortRatioHistory': False,
112
+ 'fetchMarginAdjustmentHistory': False,
113
+ 'fetchMarginMode': False,
114
+ 'fetchMarginModes': False,
115
+ 'fetchMarketLeverageTiers': False,
84
116
  'fetchMarkets': True,
117
+ 'fetchMarkOHLCV': False,
118
+ 'fetchMarkPrices': False,
119
+ 'fetchMyLiquidations': False,
120
+ 'fetchMySettlementHistory': False,
85
121
  'fetchMyTrades': True,
86
122
  'fetchOHLCV': True,
123
+ 'fetchOpenInterest': False,
124
+ 'fetchOpenInterestHistory': False,
125
+ 'fetchOpenInterests': False,
87
126
  'fetchOpenOrder': False,
88
127
  'fetchOpenOrders': True,
89
128
  'fetchOrder': True,
@@ -96,6 +135,8 @@ class alpaca(Exchange, ImplicitAPI):
96
135
  'fetchPositionsForSymbol': False,
97
136
  'fetchPositionsHistory': False,
98
137
  'fetchPositionsRisk': False,
138
+ 'fetchPremiumIndexOHLCV': False,
139
+ 'fetchSettlementHistory': False,
99
140
  'fetchStatus': False,
100
141
  'fetchTicker': True,
101
142
  'fetchTickers': True,
@@ -107,9 +148,14 @@ class alpaca(Exchange, ImplicitAPI):
107
148
  'fetchTransactions': False,
108
149
  'fetchTransfers': False,
109
150
  'fetchWithdrawals': True,
151
+ 'reduceMargin': False,
152
+ 'repayCrossMargin': False,
153
+ 'repayIsolatedMargin': False,
110
154
  'sandbox': True,
111
155
  'setLeverage': False,
156
+ 'setMargin': False,
112
157
  'setMarginMode': False,
158
+ 'setPositionMode': False,
113
159
  'transfer': False,
114
160
  'withdraw': True,
115
161
  },
@@ -557,7 +557,7 @@ class ascendex(Exchange, ImplicitAPI):
557
557
  ids = list(dataById.keys())
558
558
  result: dict = {}
559
559
  for i in range(0, len(ids)):
560
- id = ids[i]
560
+ id = self.safe_string(ids, i)
561
561
  currency = dataById[id]
562
562
  code = self.safe_currency_code(id)
563
563
  scale = self.safe_string_2(currency, 'precisionScale', 'nativeScale')
@@ -1960,7 +1960,7 @@ class ascendex(Exchange, ImplicitAPI):
1960
1960
  # "code": 0,
1961
1961
  # "data": [
1962
1962
  # {
1963
- # "avgPx": "0", # Average filled price of the order
1963
+ # "avgPx": "0", # Average filled price of the order
1964
1964
  # "cumFee": "0", # cumulative fee paid for self order
1965
1965
  # "cumFilledQty": "0", # cumulative filled quantity
1966
1966
  # "errorCode": "", # error code; could be empty
@@ -2,7 +2,7 @@
2
2
 
3
3
  # -----------------------------------------------------------------------------
4
4
 
5
- __version__ = '4.4.71'
5
+ __version__ = '4.4.73'
6
6
 
7
7
  # -----------------------------------------------------------------------------
8
8
 
@@ -1318,12 +1318,13 @@ class binance(Exchange, ImplicitAPI):
1318
1318
  },
1319
1319
  'quoteOrderQty': True, # whether market orders support amounts in quote currency
1320
1320
  'broker': {
1321
- 'spot': 'x-R4BD3S82',
1322
- 'margin': 'x-R4BD3S82',
1323
- 'future': 'x-xcKtGhcu',
1321
+ 'spot': 'x-TKT5PX2F',
1322
+ 'margin': 'x-TKT5PX2F',
1323
+ 'future': 'x-cvBPrNm9',
1324
1324
  'delivery': 'x-xcKtGhcu',
1325
- 'swap': 'x-xcKtGhcu',
1325
+ 'swap': 'x-cvBPrNm9',
1326
1326
  'option': 'x-xcKtGhcu',
1327
+ 'inverse': 'x-xcKtGhcu',
1327
1328
  },
1328
1329
  'accountsByType': {
1329
1330
  'main': 'MAIN',
@@ -4086,7 +4087,7 @@ class binance(Exchange, ImplicitAPI):
4086
4087
  # "symbol": "BTCUSDT",
4087
4088
  # "markPrice": "11793.63104562", # mark price
4088
4089
  # "indexPrice": "11781.80495970", # index price
4089
- # "estimatedSettlePrice": "11781.16138815", # Estimated Settle Price, only useful in the last hour before the settlement starts.
4090
+ # "estimatedSettlePrice": "11781.16138815", # Estimated Settle Price, only useful in the last hour before the settlement starts
4090
4091
  # "lastFundingRate": "0.00038246", # This is the lastest estimated funding rate
4091
4092
  # "nextFundingTime": 1597392000000,
4092
4093
  # "interestRate": "0.00010000",
@@ -5162,7 +5163,7 @@ class binance(Exchange, ImplicitAPI):
5162
5163
  # "symbol": "BTCUSDT",
5163
5164
  # "orderId": 16383176297,
5164
5165
  # "orderListId": -1,
5165
- # "clientOrderId": "x-R4BD3S8222ecb58eb9074fb1be018c",
5166
+ # "clientOrderId": "x-TKT5PX2F22ecb58eb9074fb1be018c",
5166
5167
  # "transactTime": 1670891847932,
5167
5168
  # "price": "13500.00000000",
5168
5169
  # "origQty": "0.00085000",
@@ -5518,7 +5519,7 @@ class binance(Exchange, ImplicitAPI):
5518
5519
  # "symbol": "BTCUSDT",
5519
5520
  # "orderId": 16383176297,
5520
5521
  # "orderListId": -1,
5521
- # "clientOrderId": "x-R4BD3S8222ecb58eb9074fb1be018c",
5522
+ # "clientOrderId": "x-TKT5PX2F22ecb58eb9074fb1be018c",
5522
5523
  # "transactTime": 1670891847932,
5523
5524
  # "price": "13500.00000000",
5524
5525
  # "origQty": "0.00085000",
@@ -5581,7 +5582,7 @@ class binance(Exchange, ImplicitAPI):
5581
5582
  # "symbol": "BTCUSDT",
5582
5583
  # "orderId": 5403233939,
5583
5584
  # "orderListId": -1,
5584
- # "clientOrderId": "x-R4BD3S825e669e75b6c14f69a2c43e",
5585
+ # "clientOrderId": "x-TKT5PX2F5e669e75b6c14f69a2c43e",
5585
5586
  # "transactTime": 1617151923742,
5586
5587
  # "price": "0.00000000",
5587
5588
  # "origQty": "0.00050000",
@@ -5756,7 +5757,7 @@ class binance(Exchange, ImplicitAPI):
5756
5757
  # createOrder, cancelAllOrders, cancelOrder: portfolio margin spot margin
5757
5758
  #
5758
5759
  # {
5759
- # "clientOrderId": "x-R4BD3S82e9ef29d8346440f0b28b86",
5760
+ # "clientOrderId": "x-TKT5PX2Fe9ef29d8346440f0b28b86",
5760
5761
  # "cummulativeQuoteQty": "0.00000000",
5761
5762
  # "executedQty": "0.00000000",
5762
5763
  # "fills": [],
@@ -5777,7 +5778,7 @@ class binance(Exchange, ImplicitAPI):
5777
5778
  # {
5778
5779
  # "symbol": "BTCUSDT",
5779
5780
  # "orderId": 24700763749,
5780
- # "clientOrderId": "x-R4BD3S826f724c2a4af6425f98c7b6",
5781
+ # "clientOrderId": "x-TKT5PX2F6f724c2a4af6425f98c7b6",
5781
5782
  # "price": "35000.00000000",
5782
5783
  # "origQty": "0.00100000",
5783
5784
  # "executedQty": "0.00000000",
@@ -6316,8 +6317,11 @@ class binance(Exchange, ImplicitAPI):
6316
6317
  clientOrderIdRequest = 'newClientStrategyId' if isPortfolioMarginConditional else 'newClientOrderId'
6317
6318
  if clientOrderId is None:
6318
6319
  broker = self.safe_dict(self.options, 'broker', {})
6319
- defaultId = 'x-xcKtGhcu' if (market['contract']) else 'x-R4BD3S82'
6320
- brokerId = self.safe_string(broker, marketType, defaultId)
6320
+ defaultId = 'x-xcKtGhcu' if (market['contract']) else 'x-TKT5PX2F'
6321
+ idMarketType = 'spot'
6322
+ if market['contract']:
6323
+ idMarketType = 'swap' if (market['swap'] and market['linear']) else 'inverse'
6324
+ brokerId = self.safe_string(broker, idMarketType, defaultId)
6321
6325
  request[clientOrderIdRequest] = brokerId + self.uuid22()
6322
6326
  else:
6323
6327
  request[clientOrderIdRequest] = clientOrderId
@@ -6836,7 +6840,7 @@ class binance(Exchange, ImplicitAPI):
6836
6840
  # {
6837
6841
  # "symbol": "BTCUSDT",
6838
6842
  # "orderId": 24684460474,
6839
- # "clientOrderId": "x-R4BD3S82e9ef29d8346440f0b28b86",
6843
+ # "clientOrderId": "x-TKT5PX2Fe9ef29d8346440f0b28b86",
6840
6844
  # "price": "35000.00000000",
6841
6845
  # "origQty": "0.00100000",
6842
6846
  # "executedQty": "0.00000000",
@@ -7449,7 +7453,7 @@ class binance(Exchange, ImplicitAPI):
7449
7453
  # [
7450
7454
  # {
7451
7455
  # "symbol": "ADAUSDT",
7452
- # "origClientOrderId": "x-R4BD3S82662cde7a90114475b86e21",
7456
+ # "origClientOrderId": "x-TKT5PX2F662cde7a90114475b86e21",
7453
7457
  # "orderId": 3935107,
7454
7458
  # "orderListId": -1,
7455
7459
  # "clientOrderId": "bqM2w1oTlugfRAjnTIFBE8",
@@ -11324,7 +11328,7 @@ class binance(Exchange, ImplicitAPI):
11324
11328
  if newClientOrderId is None:
11325
11329
  isSpotOrMargin = (api.find('sapi') > -1 or api == 'private')
11326
11330
  marketType = 'spot' if isSpotOrMargin else 'future'
11327
- defaultId = 'x-xcKtGhcu' if (not isSpotOrMargin) else 'x-R4BD3S82'
11331
+ defaultId = 'x-xcKtGhcu' if (not isSpotOrMargin) else 'x-TKT5PX2F'
11328
11332
  broker = self.safe_dict(self.options, 'broker', {})
11329
11333
  brokerId = self.safe_string(broker, marketType, defaultId)
11330
11334
  params['newClientOrderId'] = brokerId + self.uuid22()
@@ -176,7 +176,6 @@ class bingx(Exchange, ImplicitAPI):
176
176
  'trade/myTrades': 2,
177
177
  'user/commissionRate': 5,
178
178
  'account/balance': 2,
179
- 'account/allAccountBalance': 2,
180
179
  },
181
180
  'post': {
182
181
  'trade/order': 2,
@@ -403,6 +402,7 @@ class bingx(Exchange, ImplicitAPI):
403
402
  'uid': 1,
404
403
  'apiKey/query': 2,
405
404
  'account/apiPermissions': 5,
405
+ 'allAccountBalance': 2,
406
406
  },
407
407
  'post': {
408
408
  'innerTransfer/authorizeSubAccount': 1,
@@ -832,7 +832,7 @@ class bingx(Exchange, ImplicitAPI):
832
832
  # {
833
833
  # "symbol": "GEAR-USDT",
834
834
  # "minQty": 735, # deprecated
835
- # "maxQty": 2941177, # deprecated
835
+ # "maxQty": 2941177, # deprecated.
836
836
  # "minNotional": 5,
837
837
  # "maxNotional": 20000,
838
838
  # "status": 1,