ccxt 4.4.32__py2.py3-none-any.whl → 4.4.34__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/bingx.py +16 -0
- ccxt/abstract/bitbank.py +5 -0
- ccxt/abstract/bitfinex2.py +1 -0
- ccxt/abstract/coinbaseexchange.py +1 -0
- ccxt/abstract/ellipx.py +25 -0
- ccxt/abstract/kraken.py +1 -0
- ccxt/alpaca.py +2 -0
- ccxt/async_support/__init__.py +3 -1
- ccxt/async_support/alpaca.py +2 -0
- ccxt/async_support/base/exchange.py +1 -1
- ccxt/async_support/binance.py +164 -7
- ccxt/async_support/bingx.py +155 -8
- ccxt/async_support/bitbank.py +5 -0
- ccxt/async_support/bitbns.py +2 -0
- ccxt/async_support/bitfinex2.py +1 -0
- ccxt/async_support/bitget.py +174 -40
- ccxt/async_support/bitmex.py +2 -0
- ccxt/async_support/bitopro.py +3 -0
- ccxt/async_support/bitrue.py +1 -0
- ccxt/async_support/btcmarkets.py +2 -0
- ccxt/async_support/bybit.py +143 -12
- ccxt/async_support/cex.py +16 -5
- ccxt/async_support/coinbase.py +5 -24
- ccxt/async_support/coinbaseexchange.py +2 -1
- ccxt/async_support/coinex.py +2 -0
- ccxt/async_support/coinone.py +7 -7
- ccxt/async_support/coinsph.py +7 -7
- ccxt/async_support/coinspot.py +39 -39
- ccxt/async_support/cryptocom.py +36 -34
- ccxt/async_support/ellipx.py +1828 -0
- ccxt/async_support/gate.py +1 -0
- ccxt/async_support/hyperliquid.py +13 -2
- ccxt/async_support/kraken.py +1 -0
- ccxt/async_support/krakenfutures.py +3 -1
- ccxt/async_support/kucoinfutures.py +1 -1
- ccxt/async_support/lbank.py +1 -0
- ccxt/async_support/okcoin.py +2 -0
- ccxt/async_support/okx.py +103 -8
- ccxt/async_support/onetrading.py +20 -1
- ccxt/async_support/paradex.py +2 -0
- ccxt/async_support/phemex.py +33 -6
- ccxt/async_support/poloniex.py +3 -1
- ccxt/async_support/poloniexfutures.py +3 -1
- ccxt/async_support/vertex.py +2 -0
- ccxt/async_support/woo.py +69 -69
- ccxt/base/exchange.py +100 -2
- ccxt/binance.py +164 -7
- ccxt/bingx.py +155 -8
- ccxt/bitbank.py +5 -0
- ccxt/bitbns.py +2 -0
- ccxt/bitfinex2.py +1 -0
- ccxt/bitget.py +174 -40
- ccxt/bitmex.py +2 -0
- ccxt/bitopro.py +3 -0
- ccxt/bitrue.py +1 -0
- ccxt/btcmarkets.py +2 -0
- ccxt/bybit.py +143 -12
- ccxt/cex.py +16 -5
- ccxt/coinbase.py +5 -24
- ccxt/coinbaseexchange.py +2 -1
- ccxt/coinex.py +2 -0
- ccxt/coinone.py +7 -7
- ccxt/coinsph.py +7 -7
- ccxt/coinspot.py +39 -39
- ccxt/cryptocom.py +36 -34
- ccxt/ellipx.py +1828 -0
- ccxt/gate.py +1 -0
- ccxt/hyperliquid.py +13 -2
- ccxt/kraken.py +1 -0
- ccxt/krakenfutures.py +3 -1
- ccxt/kucoinfutures.py +1 -1
- ccxt/lbank.py +1 -0
- ccxt/okcoin.py +2 -0
- ccxt/okx.py +103 -8
- ccxt/onetrading.py +20 -1
- ccxt/paradex.py +2 -0
- ccxt/phemex.py +33 -6
- ccxt/poloniex.py +3 -1
- ccxt/poloniexfutures.py +3 -1
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/idex.py +15 -0
- ccxt/pro/okx.py +8 -0
- ccxt/pro/probit.py +4 -2
- ccxt/pro/woo.py +15 -15
- ccxt/test/tests_async.py +3 -1
- ccxt/test/tests_helpers.py +1 -3
- ccxt/test/tests_sync.py +3 -1
- ccxt/vertex.py +2 -0
- ccxt/woo.py +69 -69
- {ccxt-4.4.32.dist-info → ccxt-4.4.34.dist-info}/METADATA +9 -8
- {ccxt-4.4.32.dist-info → ccxt-4.4.34.dist-info}/RECORD +95 -92
- {ccxt-4.4.32.dist-info → ccxt-4.4.34.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.32.dist-info → ccxt-4.4.34.dist-info}/WHEEL +0 -0
- {ccxt-4.4.32.dist-info → ccxt-4.4.34.dist-info}/top_level.txt +0 -0
ccxt/async_support/bingx.py
CHANGED
@@ -59,6 +59,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
59
59
|
'createOrders': True,
|
60
60
|
'createOrderWithTakeProfitAndStopLoss': True,
|
61
61
|
'createStopLossOrder': True,
|
62
|
+
'createStopOrder': True,
|
62
63
|
'createTakeProfitOrder': True,
|
63
64
|
'createTrailingAmountOrder': True,
|
64
65
|
'createTrailingPercentOrder': True,
|
@@ -212,6 +213,8 @@ class bingx(Exchange, ImplicitAPI):
|
|
212
213
|
'get': {
|
213
214
|
'ticker/price': 1,
|
214
215
|
'market/historicalTrades': 1,
|
216
|
+
'market/markPriceKlines': 1,
|
217
|
+
'trade/multiAssetsRules': 1,
|
215
218
|
},
|
216
219
|
},
|
217
220
|
'private': {
|
@@ -220,12 +223,24 @@ class bingx(Exchange, ImplicitAPI):
|
|
220
223
|
'market/markPriceKlines': 1,
|
221
224
|
'trade/batchCancelReplace': 5,
|
222
225
|
'trade/fullOrder': 2,
|
226
|
+
'maintMarginRatio': 2,
|
227
|
+
'trade/positionHistory': 2,
|
223
228
|
'positionMargin/history': 2,
|
229
|
+
'twap/openOrders': 5,
|
230
|
+
'twap/historyOrders': 5,
|
231
|
+
'twap/orderDetail': 5,
|
232
|
+
'trade/assetMode': 5,
|
233
|
+
'user/marginAssets': 5,
|
224
234
|
},
|
225
235
|
'post': {
|
226
236
|
'trade/cancelReplace': 2,
|
227
237
|
'positionSide/dual': 5,
|
238
|
+
'trade/batchCancelReplace': 5,
|
228
239
|
'trade/closePosition': 2,
|
240
|
+
'trade/getVst': 5,
|
241
|
+
'twap/order': 5,
|
242
|
+
'twap/cancelOrder': 5,
|
243
|
+
'trade/assetMode': 5,
|
229
244
|
},
|
230
245
|
},
|
231
246
|
},
|
@@ -258,6 +273,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
258
273
|
'trade/forceOrders': 1,
|
259
274
|
'trade/allOrders': 2,
|
260
275
|
'trade/allFillOrders': 2,
|
276
|
+
'trade/fillHistory': 2,
|
261
277
|
'user/income/export': 2,
|
262
278
|
'user/commissionRate': 2,
|
263
279
|
'quote/bookTicker': 1,
|
@@ -315,12 +331,13 @@ class bingx(Exchange, ImplicitAPI):
|
|
315
331
|
'post': {
|
316
332
|
'trade/order': 2,
|
317
333
|
'trade/leverage': 2,
|
334
|
+
'trade/allOpenOrders': 2,
|
318
335
|
'trade/closeAllPositions': 2,
|
319
336
|
'trade/marginType': 2,
|
320
337
|
'trade/positionMargin': 2,
|
321
338
|
},
|
322
339
|
'delete': {
|
323
|
-
'trade/allOpenOrders': 2,
|
340
|
+
'trade/allOpenOrders': 2, # post method in doc
|
324
341
|
'trade/cancelOrder': 2,
|
325
342
|
},
|
326
343
|
},
|
@@ -513,6 +530,136 @@ class bingx(Exchange, ImplicitAPI):
|
|
513
530
|
'MATIC': 'POLYGON',
|
514
531
|
},
|
515
532
|
},
|
533
|
+
'features': {
|
534
|
+
'defaultForLinear': {
|
535
|
+
'sandbox': True,
|
536
|
+
'createOrder': {
|
537
|
+
'marginMode': False,
|
538
|
+
'triggerPrice': True,
|
539
|
+
'triggerPriceType': {
|
540
|
+
'last': True,
|
541
|
+
'mark': True,
|
542
|
+
'index': True,
|
543
|
+
},
|
544
|
+
'triggerDirection': False,
|
545
|
+
'stopLossPrice': True,
|
546
|
+
'takeProfitPrice': True,
|
547
|
+
'attachedStopLossTakeProfit': {
|
548
|
+
'triggerPriceType': {
|
549
|
+
'last': True,
|
550
|
+
'mark': True,
|
551
|
+
'index': True,
|
552
|
+
},
|
553
|
+
'limitPrice': True,
|
554
|
+
},
|
555
|
+
'timeInForce': {
|
556
|
+
'GTC': True,
|
557
|
+
'IOC': True,
|
558
|
+
'FOK': True,
|
559
|
+
'PO': True,
|
560
|
+
'GTD': False,
|
561
|
+
},
|
562
|
+
'hedged': True,
|
563
|
+
'trailing': True,
|
564
|
+
},
|
565
|
+
'createOrders': {
|
566
|
+
'max': 5,
|
567
|
+
},
|
568
|
+
'fetchMyTrades': {
|
569
|
+
'marginMode': False,
|
570
|
+
'limit': 512, # 512 days for 'allFillOrders', 1000 days for 'fillOrders'
|
571
|
+
'daysBack': 30, # 30 for 'allFillOrders', 7 for 'fillHistory'
|
572
|
+
'untilDays': 30, # 30 for 'allFillOrders', 7 for 'fillHistory'
|
573
|
+
},
|
574
|
+
'fetchOrder': {
|
575
|
+
'marginMode': False,
|
576
|
+
'trigger': False,
|
577
|
+
'trailing': False,
|
578
|
+
},
|
579
|
+
'fetchOpenOrders': {
|
580
|
+
'marginMode': False,
|
581
|
+
'limit': None,
|
582
|
+
'trigger': False,
|
583
|
+
'trailing': False,
|
584
|
+
},
|
585
|
+
'fetchOrders': {
|
586
|
+
'marginMode': False,
|
587
|
+
'limit': 1000,
|
588
|
+
'daysBack': 20000, # since epoch
|
589
|
+
'untilDays': 7,
|
590
|
+
'trigger': False,
|
591
|
+
'trailing': False,
|
592
|
+
},
|
593
|
+
'fetchClosedOrders': {
|
594
|
+
'marginMode': False,
|
595
|
+
'limit': 1000,
|
596
|
+
'daysBackClosed': None,
|
597
|
+
'daysBackCanceled': None,
|
598
|
+
'untilDays': 7,
|
599
|
+
'trigger': False,
|
600
|
+
'trailing': False,
|
601
|
+
},
|
602
|
+
'fetchOHLCV': {
|
603
|
+
'limit': 1440,
|
604
|
+
},
|
605
|
+
},
|
606
|
+
'defaultForInverse': {
|
607
|
+
'extends': 'defaultForLinear',
|
608
|
+
'fetchMyTrades': {
|
609
|
+
'limit': 1000,
|
610
|
+
'daysBack': None,
|
611
|
+
'untilDays': None,
|
612
|
+
},
|
613
|
+
'fetchOHLCV': {
|
614
|
+
'limit': 1440,
|
615
|
+
},
|
616
|
+
'fetchOrders': None,
|
617
|
+
'fetchClosedOrders': {
|
618
|
+
'marginMode': False,
|
619
|
+
'limit': 1000,
|
620
|
+
'daysBackClosed': None,
|
621
|
+
'daysBackCanceled': None,
|
622
|
+
'untilDays': 7,
|
623
|
+
'trigger': False,
|
624
|
+
'trailing': False,
|
625
|
+
},
|
626
|
+
},
|
627
|
+
#
|
628
|
+
'spot': {
|
629
|
+
'extends': 'defaultForLinear',
|
630
|
+
'createOrder': {
|
631
|
+
'triggerPriceType': None,
|
632
|
+
'attachedStopLossTakeProfit': None,
|
633
|
+
'trailing': False,
|
634
|
+
},
|
635
|
+
'fetchMyTrades': {
|
636
|
+
'limit': 1000,
|
637
|
+
'daysBack': 1,
|
638
|
+
'untilDays': 1,
|
639
|
+
},
|
640
|
+
'fetchOrders': None,
|
641
|
+
'fetchClosedOrders': {
|
642
|
+
'limit': 100,
|
643
|
+
'untilDays': None,
|
644
|
+
},
|
645
|
+
},
|
646
|
+
'swap': {
|
647
|
+
'linear': {
|
648
|
+
'extends': 'defaultForLinear',
|
649
|
+
},
|
650
|
+
'inverse': {
|
651
|
+
'extends': 'defaultForInverse',
|
652
|
+
},
|
653
|
+
},
|
654
|
+
'future': {
|
655
|
+
'linear': {
|
656
|
+
'extends': 'defaultForLinear',
|
657
|
+
},
|
658
|
+
'inverse': {
|
659
|
+
'extends': 'defaultForInverse',
|
660
|
+
},
|
661
|
+
},
|
662
|
+
},
|
516
663
|
})
|
517
664
|
|
518
665
|
async def fetch_time(self, params={}):
|
@@ -3765,7 +3912,8 @@ class bingx(Exchange, ImplicitAPI):
|
|
3765
3912
|
"""
|
3766
3913
|
fetches information on multiple orders made by the user
|
3767
3914
|
|
3768
|
-
https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#
|
3915
|
+
https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#All%20Orders
|
3916
|
+
https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Query%20Order%20history(returns less fields than above)
|
3769
3917
|
|
3770
3918
|
:param str symbol: unified market symbol of the market orders were made in
|
3771
3919
|
:param int [since]: the earliest time in ms to fetch orders for
|
@@ -3789,11 +3937,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
3789
3937
|
request['limit'] = limit
|
3790
3938
|
if since is not None:
|
3791
3939
|
request['startTime'] = since
|
3792
|
-
|
3793
|
-
endTime = self.safe_integer(params, 'endTime', until) # exchange-specific in milliseconds
|
3794
|
-
params = self.omit(params, ['endTime', 'until'])
|
3795
|
-
if endTime is not None:
|
3796
|
-
request['endTime'] = endTime
|
3940
|
+
request, params = self.handle_until_option('endTime', request, params)
|
3797
3941
|
response = await self.swapV1PrivateGetTradeFullOrder(self.extend(request, params))
|
3798
3942
|
#
|
3799
3943
|
# {
|
@@ -4072,6 +4216,8 @@ class bingx(Exchange, ImplicitAPI):
|
|
4072
4216
|
if standard:
|
4073
4217
|
response = await self.contractV1PrivateGetAllOrders(self.extend(request, params))
|
4074
4218
|
elif type == 'spot':
|
4219
|
+
if limit is not None:
|
4220
|
+
request['limit'] = limit
|
4075
4221
|
response = await self.spotV1PrivateGetTradeHistoryOrders(self.extend(request, params))
|
4076
4222
|
#
|
4077
4223
|
# {
|
@@ -4862,6 +5008,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
4862
5008
|
|
4863
5009
|
https://bingx-api.github.io/docs/#/en-us/spot/trade-api.html#Query%20transaction%20details
|
4864
5010
|
https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Query%20historical%20transaction%20orders
|
5011
|
+
https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Query%20historical%20transaction%20details
|
4865
5012
|
https://bingx-api.github.io/docs/#/en-us/cswap/trade-api.html#Query%20Order%20Trade%20Detail
|
4866
5013
|
|
4867
5014
|
:param str [symbol]: unified market symbol
|
@@ -4921,7 +5068,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
4921
5068
|
startTimeReq = 'startTime' if market['spot'] else 'startTs'
|
4922
5069
|
request[startTimeReq] = since
|
4923
5070
|
elif market['swap']:
|
4924
|
-
request['startTs'] = now -
|
5071
|
+
request['startTs'] = now - 30 * 24 * 60 * 60 * 1000 # 30 days for swap
|
4925
5072
|
until = self.safe_integer(params, 'until')
|
4926
5073
|
params = self.omit(params, 'until')
|
4927
5074
|
if until is not None:
|
ccxt/async_support/bitbank.py
CHANGED
@@ -128,8 +128,11 @@ class bitbank(Exchange, ImplicitAPI):
|
|
128
128
|
'user/assets',
|
129
129
|
'user/spot/order',
|
130
130
|
'user/spot/active_orders',
|
131
|
+
'user/margin/positions',
|
131
132
|
'user/spot/trade_history',
|
132
133
|
'user/deposit_history',
|
134
|
+
'user/unconfirmed_deposits',
|
135
|
+
'user/deposit_originators',
|
133
136
|
'user/withdrawal_account',
|
134
137
|
'user/withdrawal_history',
|
135
138
|
'spot/status',
|
@@ -140,6 +143,8 @@ class bitbank(Exchange, ImplicitAPI):
|
|
140
143
|
'user/spot/cancel_order',
|
141
144
|
'user/spot/cancel_orders',
|
142
145
|
'user/spot/orders_info',
|
146
|
+
'user/confirm_deposits',
|
147
|
+
'user/confirm_deposits_all',
|
143
148
|
'user/request_withdrawal',
|
144
149
|
],
|
145
150
|
},
|
ccxt/async_support/bitbns.py
CHANGED
@@ -39,6 +39,8 @@ class bitbns(Exchange, ImplicitAPI):
|
|
39
39
|
'cancelAllOrders': False,
|
40
40
|
'cancelOrder': True,
|
41
41
|
'createOrder': True,
|
42
|
+
'createStopOrder': True,
|
43
|
+
'createTriggerOrder': True,
|
42
44
|
'fetchBalance': True,
|
43
45
|
'fetchDepositAddress': True,
|
44
46
|
'fetchDepositAddresses': False,
|
ccxt/async_support/bitfinex2.py
CHANGED