ccxt 4.4.32 → 4.4.34

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 (118) hide show
  1. package/README.md +8 -7
  2. package/dist/ccxt.browser.min.js +6 -6
  3. package/dist/cjs/ccxt.js +4 -1
  4. package/dist/cjs/src/abstract/ellipx.js +9 -0
  5. package/dist/cjs/src/alpaca.js +2 -0
  6. package/dist/cjs/src/base/Exchange.js +116 -1
  7. package/dist/cjs/src/binance.js +164 -6
  8. package/dist/cjs/src/bingx.js +156 -9
  9. package/dist/cjs/src/bitbank.js +5 -0
  10. package/dist/cjs/src/bitbns.js +2 -0
  11. package/dist/cjs/src/bitfinex2.js +2 -1
  12. package/dist/cjs/src/bitget.js +177 -44
  13. package/dist/cjs/src/bitmex.js +2 -0
  14. package/dist/cjs/src/bitopro.js +3 -0
  15. package/dist/cjs/src/bitrue.js +1 -0
  16. package/dist/cjs/src/btcmarkets.js +2 -0
  17. package/dist/cjs/src/bybit.js +148 -13
  18. package/dist/cjs/src/cex.js +16 -6
  19. package/dist/cjs/src/coinbase.js +5 -24
  20. package/dist/cjs/src/coinbaseexchange.js +2 -1
  21. package/dist/cjs/src/coinex.js +2 -0
  22. package/dist/cjs/src/coinone.js +7 -7
  23. package/dist/cjs/src/coinsph.js +7 -7
  24. package/dist/cjs/src/coinspot.js +39 -39
  25. package/dist/cjs/src/cryptocom.js +36 -34
  26. package/dist/cjs/src/ellipx.js +1871 -0
  27. package/dist/cjs/src/gate.js +2 -1
  28. package/dist/cjs/src/hyperliquid.js +16 -2
  29. package/dist/cjs/src/kraken.js +1 -0
  30. package/dist/cjs/src/krakenfutures.js +3 -1
  31. package/dist/cjs/src/kucoinfutures.js +1 -1
  32. package/dist/cjs/src/lbank.js +1 -0
  33. package/dist/cjs/src/okcoin.js +2 -0
  34. package/dist/cjs/src/okx.js +104 -9
  35. package/dist/cjs/src/onetrading.js +14 -1
  36. package/dist/cjs/src/paradex.js +2 -0
  37. package/dist/cjs/src/phemex.js +35 -7
  38. package/dist/cjs/src/poloniex.js +3 -1
  39. package/dist/cjs/src/poloniexfutures.js +3 -1
  40. package/dist/cjs/src/pro/idex.js +5 -0
  41. package/dist/cjs/src/pro/okx.js +11 -1
  42. package/dist/cjs/src/pro/probit.js +4 -2
  43. package/dist/cjs/src/pro/woo.js +15 -15
  44. package/dist/cjs/src/vertex.js +2 -0
  45. package/dist/cjs/src/woo.js +69 -69
  46. package/examples/js/cli.js +1 -1
  47. package/js/ccxt.d.ts +5 -2
  48. package/js/ccxt.js +4 -2
  49. package/js/src/abstract/bingx.d.ts +16 -0
  50. package/js/src/abstract/bitbank.d.ts +5 -0
  51. package/js/src/abstract/bitfinex2.d.ts +1 -0
  52. package/js/src/abstract/coinbaseexchange.d.ts +1 -0
  53. package/js/src/abstract/ellipx.d.ts +28 -0
  54. package/js/src/abstract/ellipx.js +11 -0
  55. package/js/src/abstract/kraken.d.ts +1 -0
  56. package/js/src/alpaca.js +2 -0
  57. package/js/src/base/Exchange.d.ts +11 -0
  58. package/js/src/base/Exchange.js +116 -1
  59. package/js/src/binance.js +164 -6
  60. package/js/src/bingx.d.ts +3 -1
  61. package/js/src/bingx.js +156 -9
  62. package/js/src/bitbank.js +5 -0
  63. package/js/src/bitbns.js +2 -0
  64. package/js/src/bitfinex2.js +2 -1
  65. package/js/src/bitget.d.ts +4 -4
  66. package/js/src/bitget.js +177 -44
  67. package/js/src/bitmex.js +2 -0
  68. package/js/src/bitopro.d.ts +1 -0
  69. package/js/src/bitopro.js +3 -0
  70. package/js/src/bitrue.js +1 -0
  71. package/js/src/btcmarkets.d.ts +1 -0
  72. package/js/src/btcmarkets.js +2 -0
  73. package/js/src/bybit.d.ts +3 -2
  74. package/js/src/bybit.js +149 -14
  75. package/js/src/cex.d.ts +1 -0
  76. package/js/src/cex.js +17 -7
  77. package/js/src/coinbase.d.ts +2 -1
  78. package/js/src/coinbase.js +5 -24
  79. package/js/src/coinbaseexchange.js +2 -1
  80. package/js/src/coinex.js +2 -0
  81. package/js/src/coinone.js +7 -7
  82. package/js/src/coinsph.js +7 -7
  83. package/js/src/coinspot.js +39 -39
  84. package/js/src/cryptocom.d.ts +1 -1
  85. package/js/src/cryptocom.js +36 -34
  86. package/js/src/ellipx.d.ts +236 -0
  87. package/js/src/ellipx.js +1874 -0
  88. package/js/src/gate.d.ts +2 -2
  89. package/js/src/gate.js +2 -1
  90. package/js/src/hyperliquid.d.ts +2 -1
  91. package/js/src/hyperliquid.js +16 -2
  92. package/js/src/kraken.js +1 -0
  93. package/js/src/krakenfutures.js +3 -1
  94. package/js/src/kucoinfutures.d.ts +1 -1
  95. package/js/src/kucoinfutures.js +1 -1
  96. package/js/src/lbank.js +1 -0
  97. package/js/src/okcoin.js +2 -0
  98. package/js/src/okx.d.ts +1 -1
  99. package/js/src/okx.js +104 -9
  100. package/js/src/onetrading.d.ts +5 -0
  101. package/js/src/onetrading.js +15 -2
  102. package/js/src/paradex.js +2 -0
  103. package/js/src/phemex.d.ts +4 -0
  104. package/js/src/phemex.js +35 -7
  105. package/js/src/poloniex.d.ts +1 -1
  106. package/js/src/poloniex.js +3 -1
  107. package/js/src/poloniexfutures.d.ts +1 -1
  108. package/js/src/poloniexfutures.js +3 -1
  109. package/js/src/pro/idex.d.ts +5 -0
  110. package/js/src/pro/idex.js +5 -0
  111. package/js/src/pro/okx.js +11 -1
  112. package/js/src/pro/probit.js +4 -2
  113. package/js/src/pro/woo.d.ts +11 -11
  114. package/js/src/pro/woo.js +15 -15
  115. package/js/src/vertex.js +2 -0
  116. package/js/src/woo.d.ts +60 -60
  117. package/js/src/woo.js +69 -69
  118. package/package.json +3 -3
@@ -43,6 +43,7 @@ class bingx extends bingx$1 {
43
43
  'createOrders': true,
44
44
  'createOrderWithTakeProfitAndStopLoss': true,
45
45
  'createStopLossOrder': true,
46
+ 'createStopOrder': true,
46
47
  'createTakeProfitOrder': true,
47
48
  'createTrailingAmountOrder': true,
48
49
  'createTrailingPercentOrder': true,
@@ -196,6 +197,8 @@ class bingx extends bingx$1 {
196
197
  'get': {
197
198
  'ticker/price': 1,
198
199
  'market/historicalTrades': 1,
200
+ 'market/markPriceKlines': 1,
201
+ 'trade/multiAssetsRules': 1,
199
202
  },
200
203
  },
201
204
  'private': {
@@ -204,12 +207,24 @@ class bingx extends bingx$1 {
204
207
  'market/markPriceKlines': 1,
205
208
  'trade/batchCancelReplace': 5,
206
209
  'trade/fullOrder': 2,
210
+ 'maintMarginRatio': 2,
211
+ 'trade/positionHistory': 2,
207
212
  'positionMargin/history': 2,
213
+ 'twap/openOrders': 5,
214
+ 'twap/historyOrders': 5,
215
+ 'twap/orderDetail': 5,
216
+ 'trade/assetMode': 5,
217
+ 'user/marginAssets': 5,
208
218
  },
209
219
  'post': {
210
220
  'trade/cancelReplace': 2,
211
221
  'positionSide/dual': 5,
222
+ 'trade/batchCancelReplace': 5,
212
223
  'trade/closePosition': 2,
224
+ 'trade/getVst': 5,
225
+ 'twap/order': 5,
226
+ 'twap/cancelOrder': 5,
227
+ 'trade/assetMode': 5,
213
228
  },
214
229
  },
215
230
  },
@@ -242,6 +257,7 @@ class bingx extends bingx$1 {
242
257
  'trade/forceOrders': 1,
243
258
  'trade/allOrders': 2,
244
259
  'trade/allFillOrders': 2,
260
+ 'trade/fillHistory': 2,
245
261
  'user/income/export': 2,
246
262
  'user/commissionRate': 2,
247
263
  'quote/bookTicker': 1,
@@ -299,6 +315,7 @@ class bingx extends bingx$1 {
299
315
  'post': {
300
316
  'trade/order': 2,
301
317
  'trade/leverage': 2,
318
+ 'trade/allOpenOrders': 2,
302
319
  'trade/closeAllPositions': 2,
303
320
  'trade/marginType': 2,
304
321
  'trade/positionMargin': 2,
@@ -497,6 +514,136 @@ class bingx extends bingx$1 {
497
514
  'MATIC': 'POLYGON',
498
515
  },
499
516
  },
517
+ 'features': {
518
+ 'defaultForLinear': {
519
+ 'sandbox': true,
520
+ 'createOrder': {
521
+ 'marginMode': false,
522
+ 'triggerPrice': true,
523
+ 'triggerPriceType': {
524
+ 'last': true,
525
+ 'mark': true,
526
+ 'index': true,
527
+ },
528
+ 'triggerDirection': false,
529
+ 'stopLossPrice': true,
530
+ 'takeProfitPrice': true,
531
+ 'attachedStopLossTakeProfit': {
532
+ 'triggerPriceType': {
533
+ 'last': true,
534
+ 'mark': true,
535
+ 'index': true,
536
+ },
537
+ 'limitPrice': true,
538
+ },
539
+ 'timeInForce': {
540
+ 'GTC': true,
541
+ 'IOC': true,
542
+ 'FOK': true,
543
+ 'PO': true,
544
+ 'GTD': false,
545
+ },
546
+ 'hedged': true,
547
+ 'trailing': true,
548
+ },
549
+ 'createOrders': {
550
+ 'max': 5,
551
+ },
552
+ 'fetchMyTrades': {
553
+ 'marginMode': false,
554
+ 'limit': 512,
555
+ 'daysBack': 30,
556
+ 'untilDays': 30, // 30 for 'allFillOrders', 7 for 'fillHistory'
557
+ },
558
+ 'fetchOrder': {
559
+ 'marginMode': false,
560
+ 'trigger': false,
561
+ 'trailing': false,
562
+ },
563
+ 'fetchOpenOrders': {
564
+ 'marginMode': false,
565
+ 'limit': undefined,
566
+ 'trigger': false,
567
+ 'trailing': false,
568
+ },
569
+ 'fetchOrders': {
570
+ 'marginMode': false,
571
+ 'limit': 1000,
572
+ 'daysBack': 20000,
573
+ 'untilDays': 7,
574
+ 'trigger': false,
575
+ 'trailing': false,
576
+ },
577
+ 'fetchClosedOrders': {
578
+ 'marginMode': false,
579
+ 'limit': 1000,
580
+ 'daysBackClosed': undefined,
581
+ 'daysBackCanceled': undefined,
582
+ 'untilDays': 7,
583
+ 'trigger': false,
584
+ 'trailing': false,
585
+ },
586
+ 'fetchOHLCV': {
587
+ 'limit': 1440,
588
+ },
589
+ },
590
+ 'defaultForInverse': {
591
+ 'extends': 'defaultForLinear',
592
+ 'fetchMyTrades': {
593
+ 'limit': 1000,
594
+ 'daysBack': undefined,
595
+ 'untilDays': undefined,
596
+ },
597
+ 'fetchOHLCV': {
598
+ 'limit': 1440,
599
+ },
600
+ 'fetchOrders': undefined,
601
+ 'fetchClosedOrders': {
602
+ 'marginMode': false,
603
+ 'limit': 1000,
604
+ 'daysBackClosed': undefined,
605
+ 'daysBackCanceled': undefined,
606
+ 'untilDays': 7,
607
+ 'trigger': false,
608
+ 'trailing': false,
609
+ },
610
+ },
611
+ //
612
+ 'spot': {
613
+ 'extends': 'defaultForLinear',
614
+ 'createOrder': {
615
+ 'triggerPriceType': undefined,
616
+ 'attachedStopLossTakeProfit': undefined,
617
+ 'trailing': false,
618
+ },
619
+ 'fetchMyTrades': {
620
+ 'limit': 1000,
621
+ 'daysBack': 1,
622
+ 'untilDays': 1,
623
+ },
624
+ 'fetchOrders': undefined,
625
+ 'fetchClosedOrders': {
626
+ 'limit': 100,
627
+ 'untilDays': undefined,
628
+ },
629
+ },
630
+ 'swap': {
631
+ 'linear': {
632
+ 'extends': 'defaultForLinear',
633
+ },
634
+ 'inverse': {
635
+ 'extends': 'defaultForInverse',
636
+ },
637
+ },
638
+ 'future': {
639
+ 'linear': {
640
+ 'extends': 'defaultForLinear',
641
+ },
642
+ 'inverse': {
643
+ 'extends': 'defaultForInverse',
644
+ },
645
+ },
646
+ },
500
647
  });
501
648
  }
502
649
  /**
@@ -3954,7 +4101,8 @@ class bingx extends bingx$1 {
3954
4101
  * @method
3955
4102
  * @name bingx#fetchOrders
3956
4103
  * @description fetches information on multiple orders made by the user
3957
- * @see https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#User's%20All%20Orders
4104
+ * @see https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#All%20Orders
4105
+ * @see https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Query%20Order%20history (returns less fields than above)
3958
4106
  * @param {string} symbol unified market symbol of the market orders were made in
3959
4107
  * @param {int} [since] the earliest time in ms to fetch orders for
3960
4108
  * @param {int} [limit] the maximum number of order structures to retrieve
@@ -3965,7 +4113,7 @@ class bingx extends bingx$1 {
3965
4113
  */
3966
4114
  async fetchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
3967
4115
  await this.loadMarkets();
3968
- const request = {};
4116
+ let request = {};
3969
4117
  let market = undefined;
3970
4118
  if (symbol !== undefined) {
3971
4119
  market = this.market(symbol);
@@ -3982,12 +4130,7 @@ class bingx extends bingx$1 {
3982
4130
  if (since !== undefined) {
3983
4131
  request['startTime'] = since;
3984
4132
  }
3985
- const until = this.safeInteger(params, 'until'); // unified in milliseconds
3986
- const endTime = this.safeInteger(params, 'endTime', until); // exchange-specific in milliseconds
3987
- params = this.omit(params, ['endTime', 'until']);
3988
- if (endTime !== undefined) {
3989
- request['endTime'] = endTime;
3990
- }
4133
+ [request, params] = this.handleUntilOption('endTime', request, params);
3991
4134
  const response = await this.swapV1PrivateGetTradeFullOrder(this.extend(request, params));
3992
4135
  //
3993
4136
  // {
@@ -4273,6 +4416,9 @@ class bingx extends bingx$1 {
4273
4416
  response = await this.contractV1PrivateGetAllOrders(this.extend(request, params));
4274
4417
  }
4275
4418
  else if (type === 'spot') {
4419
+ if (limit !== undefined) {
4420
+ request['limit'] = limit;
4421
+ }
4276
4422
  response = await this.spotV1PrivateGetTradeHistoryOrders(this.extend(request, params));
4277
4423
  //
4278
4424
  // {
@@ -5095,6 +5241,7 @@ class bingx extends bingx$1 {
5095
5241
  * @description fetch all trades made by the user
5096
5242
  * @see https://bingx-api.github.io/docs/#/en-us/spot/trade-api.html#Query%20transaction%20details
5097
5243
  * @see https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Query%20historical%20transaction%20orders
5244
+ * @see https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Query%20historical%20transaction%20details
5098
5245
  * @see https://bingx-api.github.io/docs/#/en-us/cswap/trade-api.html#Query%20Order%20Trade%20Detail
5099
5246
  * @param {string} [symbol] unified market symbol
5100
5247
  * @param {int} [since] the earliest time in ms to fetch trades for
@@ -5158,7 +5305,7 @@ class bingx extends bingx$1 {
5158
5305
  request[startTimeReq] = since;
5159
5306
  }
5160
5307
  else if (market['swap']) {
5161
- request['startTs'] = now - 7776000000; // 90 days
5308
+ request['startTs'] = now - 30 * 24 * 60 * 60 * 1000; // 30 days for swap
5162
5309
  }
5163
5310
  const until = this.safeInteger(params, 'until');
5164
5311
  params = this.omit(params, 'until');
@@ -120,8 +120,11 @@ class bitbank extends bitbank$1 {
120
120
  'user/assets',
121
121
  'user/spot/order',
122
122
  'user/spot/active_orders',
123
+ 'user/margin/positions',
123
124
  'user/spot/trade_history',
124
125
  'user/deposit_history',
126
+ 'user/unconfirmed_deposits',
127
+ 'user/deposit_originators',
125
128
  'user/withdrawal_account',
126
129
  'user/withdrawal_history',
127
130
  'spot/status',
@@ -132,6 +135,8 @@ class bitbank extends bitbank$1 {
132
135
  'user/spot/cancel_order',
133
136
  'user/spot/cancel_orders',
134
137
  'user/spot/orders_info',
138
+ 'user/confirm_deposits',
139
+ 'user/confirm_deposits_all',
135
140
  'user/request_withdrawal',
136
141
  ],
137
142
  },
@@ -32,6 +32,8 @@ class bitbns extends bitbns$1 {
32
32
  'cancelAllOrders': false,
33
33
  'cancelOrder': true,
34
34
  'createOrder': true,
35
+ 'createStopOrder': true,
36
+ 'createTriggerOrder': true,
35
37
  'fetchBalance': true,
36
38
  'fetchDepositAddress': true,
37
39
  'fetchDepositAddresses': false,
@@ -204,7 +204,8 @@ class bitfinex2 extends bitfinex2$1 {
204
204
  'rankings/{key}:{timeframe}:{symbol}/hist': 2.7,
205
205
  'pulse/hist': 2.7,
206
206
  'pulse/profile/{nickname}': 2.7,
207
- 'funding/stats/{symbol}/hist': 10, // ratelimit not in docs
207
+ 'funding/stats/{symbol}/hist': 10,
208
+ 'ext/vasps': 1,
208
209
  },
209
210
  'post': {
210
211
  'calc/trade/avg': 2.7,