ccxt 4.4.94 → 4.4.96

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 (125) hide show
  1. package/README.md +7 -7
  2. package/dist/ccxt.browser.min.js +7 -7
  3. package/dist/cjs/ccxt.js +4 -1
  4. package/dist/cjs/src/abstract/foxbit.js +9 -0
  5. package/dist/cjs/src/apex.js +2 -2
  6. package/dist/cjs/src/ascendex.js +3 -3
  7. package/dist/cjs/src/base/Exchange.js +8 -4
  8. package/dist/cjs/src/base/ws/Future.js +2 -2
  9. package/dist/cjs/src/bingx.js +148 -94
  10. package/dist/cjs/src/bitget.js +32 -144
  11. package/dist/cjs/src/bitmart.js +2 -2
  12. package/dist/cjs/src/bitrue.js +15 -8
  13. package/dist/cjs/src/bitstamp.js +1 -0
  14. package/dist/cjs/src/blofin.js +7 -1
  15. package/dist/cjs/src/bybit.js +17 -6
  16. package/dist/cjs/src/coinbase.js +36 -0
  17. package/dist/cjs/src/coinbaseexchange.js +4 -2
  18. package/dist/cjs/src/coinmate.js +34 -0
  19. package/dist/cjs/src/coinone.js +34 -0
  20. package/dist/cjs/src/coinsph.js +29 -0
  21. package/dist/cjs/src/coinspot.js +36 -1
  22. package/dist/cjs/src/cryptocom.js +2 -1
  23. package/dist/cjs/src/cryptomus.js +41 -1
  24. package/dist/cjs/src/defx.js +1 -1
  25. package/dist/cjs/src/derive.js +1 -1
  26. package/dist/cjs/src/ellipx.js +40 -0
  27. package/dist/cjs/src/foxbit.js +2016 -0
  28. package/dist/cjs/src/gate.js +1 -1
  29. package/dist/cjs/src/hyperliquid.js +3 -2
  30. package/dist/cjs/src/kucoin.js +1 -1
  31. package/dist/cjs/src/kucoinfutures.js +3 -2
  32. package/dist/cjs/src/mexc.js +28 -13
  33. package/dist/cjs/src/modetrade.js +3 -3
  34. package/dist/cjs/src/okcoin.js +1 -1
  35. package/dist/cjs/src/okx.js +12 -3
  36. package/dist/cjs/src/onetrading.js +1 -1
  37. package/dist/cjs/src/oxfun.js +2 -1
  38. package/dist/cjs/src/paradex.js +2 -2
  39. package/dist/cjs/src/pro/hyperliquid.js +6 -6
  40. package/dist/cjs/src/pro/kraken.js +18 -18
  41. package/dist/cjs/src/pro/mexc.js +10 -10
  42. package/dist/cjs/src/vertex.js +3 -2
  43. package/dist/cjs/src/woo.js +1281 -894
  44. package/dist/cjs/src/woofipro.js +2 -2
  45. package/js/ccxt.d.ts +5 -2
  46. package/js/ccxt.js +4 -2
  47. package/js/src/abstract/bingx.d.ts +3 -0
  48. package/js/src/abstract/foxbit.d.ts +29 -0
  49. package/js/src/abstract/foxbit.js +11 -0
  50. package/js/src/abstract/woo.d.ts +58 -3
  51. package/js/src/apex.d.ts +2 -2
  52. package/js/src/apex.js +2 -2
  53. package/js/src/ascendex.d.ts +1 -1
  54. package/js/src/ascendex.js +3 -3
  55. package/js/src/base/Exchange.d.ts +7 -6
  56. package/js/src/base/Exchange.js +8 -4
  57. package/js/src/base/ws/Future.js +2 -2
  58. package/js/src/bingx.d.ts +6 -6
  59. package/js/src/bingx.js +148 -94
  60. package/js/src/bitget.js +32 -144
  61. package/js/src/bitmart.d.ts +2 -2
  62. package/js/src/bitmart.js +2 -2
  63. package/js/src/bitrue.js +15 -8
  64. package/js/src/bitstamp.js +2 -1
  65. package/js/src/bittrade.d.ts +1 -1
  66. package/js/src/blofin.d.ts +2 -1
  67. package/js/src/blofin.js +7 -1
  68. package/js/src/bybit.d.ts +1 -1
  69. package/js/src/bybit.js +17 -6
  70. package/js/src/coinbase.js +36 -0
  71. package/js/src/coinbaseexchange.d.ts +2 -2
  72. package/js/src/coinbaseexchange.js +4 -2
  73. package/js/src/coinbaseinternational.d.ts +2 -2
  74. package/js/src/coinmate.js +34 -0
  75. package/js/src/coinone.js +34 -0
  76. package/js/src/coinsph.js +29 -0
  77. package/js/src/coinspot.d.ts +1 -1
  78. package/js/src/coinspot.js +36 -1
  79. package/js/src/cryptocom.d.ts +1 -1
  80. package/js/src/cryptocom.js +2 -1
  81. package/js/src/cryptomus.d.ts +1 -1
  82. package/js/src/cryptomus.js +41 -1
  83. package/js/src/defx.d.ts +2 -2
  84. package/js/src/defx.js +1 -1
  85. package/js/src/derive.d.ts +2 -2
  86. package/js/src/derive.js +1 -1
  87. package/js/src/digifinex.d.ts +1 -1
  88. package/js/src/ellipx.js +40 -0
  89. package/js/src/foxbit.d.ts +352 -0
  90. package/js/src/foxbit.js +2016 -0
  91. package/js/src/gate.js +1 -1
  92. package/js/src/htx.d.ts +2 -2
  93. package/js/src/hyperliquid.d.ts +2 -2
  94. package/js/src/hyperliquid.js +3 -2
  95. package/js/src/krakenfutures.d.ts +1 -1
  96. package/js/src/kucoin.d.ts +1 -1
  97. package/js/src/kucoin.js +1 -1
  98. package/js/src/kucoinfutures.d.ts +3 -3
  99. package/js/src/kucoinfutures.js +3 -2
  100. package/js/src/mexc.d.ts +1 -1
  101. package/js/src/mexc.js +28 -13
  102. package/js/src/modetrade.d.ts +2 -4
  103. package/js/src/modetrade.js +3 -3
  104. package/js/src/ndax.d.ts +1 -1
  105. package/js/src/okcoin.d.ts +1 -1
  106. package/js/src/okcoin.js +1 -1
  107. package/js/src/okx.d.ts +1 -1
  108. package/js/src/okx.js +12 -3
  109. package/js/src/onetrading.d.ts +1 -1
  110. package/js/src/onetrading.js +1 -1
  111. package/js/src/oxfun.d.ts +1 -1
  112. package/js/src/oxfun.js +2 -1
  113. package/js/src/paradex.d.ts +1 -1
  114. package/js/src/paradex.js +2 -2
  115. package/js/src/pro/hyperliquid.js +6 -6
  116. package/js/src/pro/kraken.js +18 -18
  117. package/js/src/pro/mexc.js +10 -10
  118. package/js/src/timex.d.ts +1 -1
  119. package/js/src/vertex.d.ts +2 -2
  120. package/js/src/vertex.js +3 -2
  121. package/js/src/woo.d.ts +80 -50
  122. package/js/src/woo.js +1281 -894
  123. package/js/src/woofipro.d.ts +2 -4
  124. package/js/src/woofipro.js +2 -2
  125. package/package.json +7 -7
@@ -288,7 +288,7 @@ export default class bitmart extends Exchange {
288
288
  * @param {boolean} [params.trailing] *swap only* whether the order is a stop order
289
289
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
290
290
  */
291
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
291
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
292
292
  /**
293
293
  * @method
294
294
  * @name bitmart#cancelOrders
@@ -312,7 +312,7 @@ export default class bitmart extends Exchange {
312
312
  * @param {string} [params.side] *spot only* 'buy' or 'sell'
313
313
  * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
314
314
  */
315
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
315
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
316
316
  fetchOrdersByStatus(status: any, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
317
317
  /**
318
318
  * @method
package/js/src/bitmart.js CHANGED
@@ -3233,7 +3233,7 @@ export default class bitmart extends Exchange {
3233
3233
  // }
3234
3234
  //
3235
3235
  if (market['swap']) {
3236
- return response;
3236
+ return this.safeOrder({ 'info': response });
3237
3237
  }
3238
3238
  const data = this.safeValue(response, 'data');
3239
3239
  if (data === true) {
@@ -3366,7 +3366,7 @@ export default class bitmart extends Exchange {
3366
3366
  // "trace": "7f9c94e10f9d4513bc08a7bfc2a5559a.70.16954131323145323"
3367
3367
  // }
3368
3368
  //
3369
- return response;
3369
+ return [this.safeOrder({ 'info': response })];
3370
3370
  }
3371
3371
  async fetchOrdersByStatus(status, symbol = undefined, since = undefined, limit = undefined, params = {}) {
3372
3372
  if (symbol === undefined) {
package/js/src/bitrue.js CHANGED
@@ -377,11 +377,9 @@ export default class bitrue extends Exchange {
377
377
  // exchange-specific options
378
378
  'options': {
379
379
  'createMarketBuyOrderRequiresPrice': true,
380
- 'fetchMarkets': [
381
- 'spot',
382
- 'linear',
383
- 'inverse',
384
- ],
380
+ 'fetchMarkets': {
381
+ 'types': ['spot', 'linear', 'inverse'],
382
+ },
385
383
  // 'fetchTradesMethod': 'publicGetAggTrades', // publicGetTrades, publicGetHistoricalTrades
386
384
  'fetchMyTradesMethod': 'v2PrivateGetMyTrades',
387
385
  'hasAlreadyAuthenticatedSuccessfully': false,
@@ -831,9 +829,18 @@ export default class bitrue extends Exchange {
831
829
  */
832
830
  async fetchMarkets(params = {}) {
833
831
  const promisesRaw = [];
834
- const fetchMarkets = this.safeValue(this.options, 'fetchMarkets', ['spot', 'linear', 'inverse']);
835
- for (let i = 0; i < fetchMarkets.length; i++) {
836
- const marketType = fetchMarkets[i];
832
+ let types = undefined;
833
+ const defaultTypes = ['spot', 'linear', 'inverse'];
834
+ const fetchMarketsOptions = this.safeDict(this.options, 'fetchMarkets');
835
+ if (fetchMarketsOptions !== undefined) {
836
+ types = this.safeList(fetchMarketsOptions, 'types', defaultTypes);
837
+ }
838
+ else {
839
+ // for backward-compatibility
840
+ types = this.safeList(this.options, 'fetchMarkets', defaultTypes);
841
+ }
842
+ for (let i = 0; i < types.length; i++) {
843
+ const marketType = types[i];
837
844
  if (marketType === 'spot') {
838
845
  promisesRaw.push(this.spotV1PublicGetExchangeInfo(params));
839
846
  }
@@ -6,7 +6,7 @@
6
6
 
7
7
  // ---------------------------------------------------------------------------
8
8
  import Exchange from './abstract/bitstamp.js';
9
- import { AuthenticationError, BadRequest, ExchangeError, NotSupported, PermissionDenied, InvalidNonce, OrderNotFound, InsufficientFunds, InvalidAddress, InvalidOrder, OnMaintenance, ExchangeNotAvailable } from './base/errors.js';
9
+ import { AccountSuspended, AuthenticationError, BadRequest, ExchangeError, NotSupported, PermissionDenied, InvalidNonce, OrderNotFound, InsufficientFunds, InvalidAddress, InvalidOrder, OnMaintenance, ExchangeNotAvailable } from './base/errors.js';
10
10
  import { Precise } from './base/Precise.js';
11
11
  import { TICK_SIZE } from './base/functions/number.js';
12
12
  import { sha256 } from './static_dependencies/noble-hashes/sha256.js';
@@ -521,6 +521,7 @@ export default class bitstamp extends Exchange {
521
521
  "Bitstamp.net is under scheduled maintenance. We'll be back soon.": OnMaintenance,
522
522
  'Order could not be placed.': ExchangeNotAvailable,
523
523
  'Invalid offset.': BadRequest,
524
+ 'Trading is currently unavailable for your account.': AccountSuspended, // {"status": "error", "reason": {"__all__": ["Trading is currently unavailable for your account."]}, "response_code": "403.004"}
524
525
  },
525
526
  'broad': {
526
527
  'Minimum order size is': InvalidOrder,
@@ -224,7 +224,7 @@ export default class bittrade extends Exchange {
224
224
  * @param {object} [params] extra parameters specific to the exchange API endpoint
225
225
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
226
226
  */
227
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
227
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
228
228
  /**
229
229
  * @method
230
230
  * @name bittrade#cancelOrders
@@ -99,6 +99,7 @@ export default class blofin extends Exchange {
99
99
  * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure} to fetch
100
100
  * @param {object} [params] extra parameters specific to the exchange API endpoint
101
101
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
102
+ * @param {int} [params.until] timestamp in ms of the latest funding rate to fetch
102
103
  * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
103
104
  */
104
105
  fetchFundingRateHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
@@ -403,7 +404,7 @@ export default class blofin extends Exchange {
403
404
  * @param {object} [params] extra parameters specific to the exchange API endpoint
404
405
  * @returns {object} response from the exchange
405
406
  */
406
- setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<MarginMode>;
407
+ setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<any>;
407
408
  /**
408
409
  * @method
409
410
  * @name blofin#fetchPositionMode
package/js/src/blofin.js CHANGED
@@ -906,6 +906,7 @@ export default class blofin extends Exchange {
906
906
  * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure} to fetch
907
907
  * @param {object} [params] extra parameters specific to the exchange API endpoint
908
908
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
909
+ * @param {int} [params.until] timestamp in ms of the latest funding rate to fetch
909
910
  * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
910
911
  */
911
912
  async fetchFundingRateHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -916,7 +917,7 @@ export default class blofin extends Exchange {
916
917
  let paginate = false;
917
918
  [paginate, params] = this.handleOptionAndParams(params, 'fetchFundingRateHistory', 'paginate');
918
919
  if (paginate) {
919
- return await this.fetchPaginatedCallDeterministic('fetchFundingRateHistory', symbol, since, limit, '8h', params);
920
+ return await this.fetchPaginatedCallDeterministic('fetchFundingRateHistory', symbol, since, limit, '8h', params, 100);
920
921
  }
921
922
  const market = this.market(symbol);
922
923
  const request = {
@@ -928,6 +929,11 @@ export default class blofin extends Exchange {
928
929
  if (limit !== undefined) {
929
930
  request['limit'] = limit;
930
931
  }
932
+ const until = this.safeInteger(params, 'until');
933
+ if (until !== undefined) {
934
+ request['after'] = until;
935
+ params = this.omit(params, 'until');
936
+ }
931
937
  const response = await this.publicGetMarketFundingRateHistory(this.extend(request, params));
932
938
  const rates = [];
933
939
  const data = this.safeList(response, 'data', []);
package/js/src/bybit.d.ts CHANGED
@@ -352,7 +352,7 @@ export default class bybit extends Exchange {
352
352
  * @param {string} [params.settleCoin] Settle coin. Supports linear, inverse & option
353
353
  * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
354
354
  */
355
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
355
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
356
356
  /**
357
357
  * @method
358
358
  * @name bybit#fetchOrderClassic
package/js/src/bybit.js CHANGED
@@ -1026,7 +1026,9 @@ export default class bybit extends Exchange {
1026
1026
  'options': {
1027
1027
  'usePrivateInstrumentsInfo': false,
1028
1028
  'enableDemoTrading': false,
1029
- 'fetchMarkets': ['spot', 'linear', 'inverse', 'option'],
1029
+ 'fetchMarkets': {
1030
+ 'types': ['spot', 'linear', 'inverse', 'option'],
1031
+ },
1030
1032
  'enableUnifiedMargin': undefined,
1031
1033
  'enableUnifiedAccount': undefined,
1032
1034
  'unifiedMarginStatus': undefined,
@@ -1713,9 +1715,18 @@ export default class bybit extends Exchange {
1713
1715
  await this.loadTimeDifference();
1714
1716
  }
1715
1717
  const promisesUnresolved = [];
1716
- const fetchMarkets = this.safeList(this.options, 'fetchMarkets', ['spot', 'linear', 'inverse']);
1717
- for (let i = 0; i < fetchMarkets.length; i++) {
1718
- const marketType = fetchMarkets[i];
1718
+ let types = undefined;
1719
+ const defaultTypes = ['spot', 'linear', 'inverse', 'option'];
1720
+ const fetchMarketsOptions = this.safeDict(this.options, 'fetchMarkets');
1721
+ if (fetchMarketsOptions !== undefined) {
1722
+ types = this.safeList(fetchMarketsOptions, 'types', defaultTypes);
1723
+ }
1724
+ else {
1725
+ // for backward-compatibility
1726
+ types = this.safeList(this.options, 'fetchMarkets', defaultTypes);
1727
+ }
1728
+ for (let i = 0; i < types.length; i++) {
1729
+ const marketType = types[i];
1719
1730
  if (marketType === 'spot') {
1720
1731
  promisesUnresolved.push(this.fetchSpotMarkets(params));
1721
1732
  }
@@ -4831,7 +4842,7 @@ export default class bybit extends Exchange {
4831
4842
  const result = this.safeDict(response, 'result', {});
4832
4843
  const orders = this.safeList(result, 'list');
4833
4844
  if (!Array.isArray(orders)) {
4834
- return response;
4845
+ return [this.safeOrder({ 'info': response })];
4835
4846
  }
4836
4847
  return this.parseOrders(orders, market);
4837
4848
  }
@@ -8516,7 +8527,7 @@ export default class bybit extends Exchange {
8516
8527
  'timestamp': timestamp,
8517
8528
  'datetime': this.iso8601(timestamp),
8518
8529
  'id': this.safeString(income, 'execId'),
8519
- 'amount': this.safeNumber(income, 'execQty'),
8530
+ 'amount': this.safeNumber(income, 'execFee'),
8520
8531
  'rate': this.safeNumber(income, 'feeRate'),
8521
8532
  };
8522
8533
  }
@@ -43,6 +43,9 @@ export default class coinbase extends Exchange {
43
43
  'future': false,
44
44
  'option': false,
45
45
  'addMargin': false,
46
+ 'borrowCrossMargin': false,
47
+ 'borrowIsolatedMargin': false,
48
+ 'borrowMargin': false,
46
49
  'cancelOrder': true,
47
50
  'cancelOrders': true,
48
51
  'closeAllPositions': false,
@@ -57,6 +60,8 @@ export default class coinbase extends Exchange {
57
60
  'createMarketSellOrder': true,
58
61
  'createMarketSellOrderWithCost': false,
59
62
  'createOrder': true,
63
+ 'createOrderWithTakeProfitAndStopLoss': false,
64
+ 'createOrderWithTakeProfitAndStopLossWs': false,
60
65
  'createPostOnlyOrder': true,
61
66
  'createReduceOnlyOrder': false,
62
67
  'createStopLimitOrder': true,
@@ -67,8 +72,12 @@ export default class coinbase extends Exchange {
67
72
  'fetchAccounts': true,
68
73
  'fetchBalance': true,
69
74
  'fetchBidsAsks': true,
75
+ 'fetchBorrowInterest': false,
76
+ 'fetchBorrowRate': false,
70
77
  'fetchBorrowRateHistories': false,
71
78
  'fetchBorrowRateHistory': false,
79
+ 'fetchBorrowRates': false,
80
+ 'fetchBorrowRatesPerSymbol': false,
72
81
  'fetchCanceledOrders': true,
73
82
  'fetchClosedOrders': true,
74
83
  'fetchConvertQuote': true,
@@ -86,42 +95,69 @@ export default class coinbase extends Exchange {
86
95
  'fetchDeposits': true,
87
96
  'fetchDepositsWithdrawals': true,
88
97
  'fetchFundingHistory': false,
98
+ 'fetchFundingInterval': false,
99
+ 'fetchFundingIntervals': false,
89
100
  'fetchFundingRate': false,
90
101
  'fetchFundingRateHistory': false,
91
102
  'fetchFundingRates': false,
103
+ 'fetchGreeks': false,
92
104
  'fetchIndexOHLCV': false,
93
105
  'fetchIsolatedBorrowRate': false,
94
106
  'fetchIsolatedBorrowRates': false,
107
+ 'fetchIsolatedPositions': false,
95
108
  'fetchL2OrderBook': false,
96
109
  'fetchLedger': true,
97
110
  'fetchLeverage': false,
111
+ 'fetchLeverages': false,
98
112
  'fetchLeverageTiers': false,
113
+ 'fetchLiquidations': false,
114
+ 'fetchLongShortRatio': false,
115
+ 'fetchLongShortRatioHistory': false,
116
+ 'fetchMarginAdjustmentHistory': false,
99
117
  'fetchMarginMode': false,
118
+ 'fetchMarginModes': false,
119
+ 'fetchMarketLeverageTiers': false,
100
120
  'fetchMarkets': true,
101
121
  'fetchMarkOHLCV': false,
122
+ 'fetchMarkPrices': false,
102
123
  'fetchMyBuys': true,
124
+ 'fetchMyLiquidations': false,
103
125
  'fetchMySells': true,
126
+ 'fetchMySettlementHistory': false,
104
127
  'fetchMyTrades': true,
105
128
  'fetchOHLCV': true,
129
+ 'fetchOpenInterest': false,
106
130
  'fetchOpenInterestHistory': false,
131
+ 'fetchOpenInterests': false,
107
132
  'fetchOpenOrders': true,
133
+ 'fetchOption': false,
134
+ 'fetchOptionChain': false,
108
135
  'fetchOrder': true,
109
136
  'fetchOrderBook': true,
110
137
  'fetchOrders': true,
111
138
  'fetchPosition': true,
139
+ 'fetchPositionHistory': false,
112
140
  'fetchPositionMode': false,
113
141
  'fetchPositions': true,
142
+ 'fetchPositionsForSymbol': false,
143
+ 'fetchPositionsHistory': false,
114
144
  'fetchPositionsRisk': false,
115
145
  'fetchPremiumIndexOHLCV': false,
146
+ 'fetchSettlementHistory': false,
116
147
  'fetchTicker': true,
117
148
  'fetchTickers': true,
118
149
  'fetchTime': true,
119
150
  'fetchTrades': true,
120
151
  'fetchTradingFee': 'emulated',
121
152
  'fetchTradingFees': true,
153
+ 'fetchVolatilityHistory': false,
122
154
  'fetchWithdrawals': true,
123
155
  'reduceMargin': false,
156
+ 'repayCrossMargin': false,
157
+ 'repayIsolatedMargin': false,
158
+ 'repayMargin': false,
124
159
  'setLeverage': false,
160
+ 'setMargin': false,
125
161
  'setMarginMode': false,
126
162
  'setPositionMode': false,
127
163
  'withdraw': true,
@@ -230,7 +230,7 @@ export default class coinbaseexchange extends Exchange {
230
230
  * @param {object} [params] extra parameters specific to the exchange API endpoint
231
231
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
232
232
  */
233
- cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
233
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
234
234
  /**
235
235
  * @method
236
236
  * @name coinbaseexchange#cancelAllOrders
@@ -240,7 +240,7 @@ export default class coinbaseexchange extends Exchange {
240
240
  * @param {object} [params] extra parameters specific to the exchange API endpoint
241
241
  * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
242
242
  */
243
- cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
243
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
244
244
  fetchPaymentMethods(params?: {}): Promise<any>;
245
245
  /**
246
246
  * @method
@@ -1588,7 +1588,8 @@ export default class coinbaseexchange extends Exchange {
1588
1588
  market = this.market(symbol);
1589
1589
  request['product_id'] = market['symbol']; // the request will be more performant if you include it
1590
1590
  }
1591
- return await this[method](this.extend(request, params));
1591
+ const response = await this[method](this.extend(request, params));
1592
+ return this.safeOrder({ 'info': response });
1592
1593
  }
1593
1594
  /**
1594
1595
  * @method
@@ -1607,7 +1608,8 @@ export default class coinbaseexchange extends Exchange {
1607
1608
  market = this.market(symbol);
1608
1609
  request['product_id'] = market['symbol']; // the request will be more performant if you include it
1609
1610
  }
1610
- return await this.privateDeleteOrders(this.extend(request, params));
1611
+ const response = await this.privateDeleteOrders(this.extend(request, params));
1612
+ return [this.safeOrder({ 'info': response })];
1611
1613
  }
1612
1614
  async fetchPaymentMethods(params = {}) {
1613
1615
  return await this.privateGetPaymentMethods(params);
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/coinbaseinternational.js';
2
- import type { Int, OrderSide, OrderType, Order, Trade, Ticker, Str, Transaction, Balances, Tickers, Strings, Market, Currency, TransferEntry, Position, FundingRateHistory, Currencies, Dict, int, OHLCV, DepositAddress } from './base/types.js';
2
+ import type { Int, OrderSide, OrderType, Order, Trade, Ticker, Str, Transaction, Balances, Tickers, Strings, Market, Currency, TransferEntry, Position, FundingRateHistory, Currencies, Dict, int, OHLCV, DepositAddress, MarginModification } from './base/types.js';
3
3
  /**
4
4
  * @class coinbaseinternational
5
5
  * @augments Exchange
@@ -155,7 +155,7 @@ export default class coinbaseinternational extends Exchange {
155
155
  * @param {object} [params] parameters specific to the exchange API endpoint
156
156
  * @returns {object} A [margin structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#add-margin-structure}
157
157
  */
158
- setMargin(symbol: string, amount: number, params?: {}): Promise<any>;
158
+ setMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
159
159
  /**
160
160
  * @method
161
161
  * @name exchange#fetchDepositsWithdrawals
@@ -30,32 +30,60 @@ export default class coinmate extends Exchange {
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,
36
39
  'createOrder': true,
40
+ 'createOrderWithTakeProfitAndStopLoss': false,
41
+ 'createOrderWithTakeProfitAndStopLossWs': false,
42
+ 'createPostOnlyOrder': false,
37
43
  'createReduceOnlyOrder': false,
38
44
  'fetchBalance': true,
45
+ 'fetchBorrowInterest': false,
46
+ 'fetchBorrowRate': false,
39
47
  'fetchBorrowRateHistories': false,
40
48
  'fetchBorrowRateHistory': false,
49
+ 'fetchBorrowRates': false,
50
+ 'fetchBorrowRatesPerSymbol': false,
41
51
  'fetchCrossBorrowRate': false,
42
52
  'fetchCrossBorrowRates': false,
43
53
  'fetchDepositsWithdrawals': true,
44
54
  'fetchFundingHistory': false,
55
+ 'fetchFundingInterval': false,
56
+ 'fetchFundingIntervals': false,
45
57
  'fetchFundingRate': false,
46
58
  'fetchFundingRateHistory': false,
47
59
  'fetchFundingRates': false,
60
+ 'fetchGreeks': false,
48
61
  'fetchIndexOHLCV': false,
49
62
  'fetchIsolatedBorrowRate': false,
50
63
  'fetchIsolatedBorrowRates': false,
64
+ 'fetchIsolatedPositions': false,
51
65
  'fetchLeverage': false,
66
+ 'fetchLeverages': false,
52
67
  'fetchLeverageTiers': false,
68
+ 'fetchLiquidations': false,
69
+ 'fetchLongShortRatio': false,
70
+ 'fetchLongShortRatioHistory': false,
71
+ 'fetchMarginAdjustmentHistory': false,
53
72
  'fetchMarginMode': false,
73
+ 'fetchMarginModes': false,
74
+ 'fetchMarketLeverageTiers': false,
54
75
  'fetchMarkets': true,
55
76
  'fetchMarkOHLCV': false,
77
+ 'fetchMarkPrices': false,
78
+ 'fetchMyLiquidations': false,
79
+ 'fetchMySettlementHistory': false,
56
80
  'fetchMyTrades': true,
81
+ 'fetchOpenInterest': false,
57
82
  'fetchOpenInterestHistory': false,
83
+ 'fetchOpenInterests': false,
58
84
  'fetchOpenOrders': true,
85
+ 'fetchOption': false,
86
+ 'fetchOptionChain': false,
59
87
  'fetchOrder': true,
60
88
  'fetchOrderBook': true,
61
89
  'fetchOrders': true,
@@ -67,14 +95,20 @@ export default class coinmate extends Exchange {
67
95
  'fetchPositionsHistory': false,
68
96
  'fetchPositionsRisk': false,
69
97
  'fetchPremiumIndexOHLCV': false,
98
+ 'fetchSettlementHistory': false,
70
99
  'fetchTicker': true,
71
100
  'fetchTickers': true,
72
101
  'fetchTrades': true,
73
102
  'fetchTradingFee': true,
74
103
  'fetchTradingFees': false,
75
104
  'fetchTransactions': 'emulated',
105
+ 'fetchVolatilityHistory': false,
76
106
  'reduceMargin': false,
107
+ 'repayCrossMargin': false,
108
+ 'repayIsolatedMargin': false,
109
+ 'repayMargin': false,
77
110
  'setLeverage': false,
111
+ 'setMargin': false,
78
112
  'setMarginMode': false,
79
113
  'setPositionMode': false,
80
114
  'transfer': false,
package/js/src/coinone.js CHANGED
@@ -32,18 +32,28 @@ export default class coinone extends Exchange {
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,
38
41
  'createMarketOrder': false,
39
42
  'createOrder': true,
43
+ 'createOrderWithTakeProfitAndStopLoss': false,
44
+ 'createOrderWithTakeProfitAndStopLossWs': false,
45
+ 'createPostOnlyOrder': false,
40
46
  'createReduceOnlyOrder': false,
41
47
  'createStopLimitOrder': false,
42
48
  'createStopMarketOrder': false,
43
49
  'createStopOrder': false,
44
50
  'fetchBalance': true,
51
+ 'fetchBorrowInterest': false,
52
+ 'fetchBorrowRate': false,
45
53
  'fetchBorrowRateHistories': false,
46
54
  'fetchBorrowRateHistory': false,
55
+ 'fetchBorrowRates': false,
56
+ 'fetchBorrowRatesPerSymbol': false,
47
57
  'fetchClosedOrders': false,
48
58
  'fetchCrossBorrowRate': false,
49
59
  'fetchCrossBorrowRates': false,
@@ -52,20 +62,38 @@ export default class coinone extends Exchange {
52
62
  'fetchDepositAddresses': true,
53
63
  'fetchDepositAddressesByNetwork': false,
54
64
  'fetchFundingHistory': false,
65
+ 'fetchFundingInterval': false,
66
+ 'fetchFundingIntervals': false,
55
67
  'fetchFundingRate': false,
56
68
  'fetchFundingRateHistory': false,
57
69
  'fetchFundingRates': false,
70
+ 'fetchGreeks': false,
58
71
  'fetchIndexOHLCV': false,
59
72
  'fetchIsolatedBorrowRate': false,
60
73
  'fetchIsolatedBorrowRates': false,
74
+ 'fetchIsolatedPositions': false,
61
75
  'fetchLeverage': false,
76
+ 'fetchLeverages': false,
62
77
  'fetchLeverageTiers': false,
78
+ 'fetchLiquidations': false,
79
+ 'fetchLongShortRatio': false,
80
+ 'fetchLongShortRatioHistory': false,
81
+ 'fetchMarginAdjustmentHistory': false,
63
82
  'fetchMarginMode': false,
83
+ 'fetchMarginModes': false,
84
+ 'fetchMarketLeverageTiers': false,
64
85
  'fetchMarkets': true,
65
86
  'fetchMarkOHLCV': false,
87
+ 'fetchMarkPrices': false,
88
+ 'fetchMyLiquidations': false,
89
+ 'fetchMySettlementHistory': false,
66
90
  'fetchMyTrades': true,
91
+ 'fetchOpenInterest': false,
67
92
  'fetchOpenInterestHistory': false,
93
+ 'fetchOpenInterests': false,
68
94
  'fetchOpenOrders': true,
95
+ 'fetchOption': false,
96
+ 'fetchOptionChain': false,
69
97
  'fetchOrder': true,
70
98
  'fetchOrderBook': true,
71
99
  'fetchPosition': false,
@@ -76,11 +104,17 @@ export default class coinone extends Exchange {
76
104
  'fetchPositionsHistory': false,
77
105
  'fetchPositionsRisk': false,
78
106
  'fetchPremiumIndexOHLCV': false,
107
+ 'fetchSettlementHistory': false,
79
108
  'fetchTicker': true,
80
109
  'fetchTickers': true,
81
110
  'fetchTrades': true,
111
+ 'fetchVolatilityHistory': false,
82
112
  'reduceMargin': false,
113
+ 'repayCrossMargin': false,
114
+ 'repayIsolatedMargin': false,
115
+ 'repayMargin': false,
83
116
  'setLeverage': false,
117
+ 'setMargin': false,
84
118
  'setMarginMode': false,
85
119
  'setPositionMode': false,
86
120
  'ws': true,
package/js/src/coinsph.js CHANGED
@@ -31,6 +31,9 @@ export default class coinsph extends Exchange {
31
31
  'future': false,
32
32
  'option': false,
33
33
  'addMargin': false,
34
+ 'borrowCrossMargin': false,
35
+ 'borrowIsolatedMargin': false,
36
+ 'borrowMargin': false,
34
37
  'cancelAllOrders': true,
35
38
  'cancelOrder': true,
36
39
  'cancelOrders': false,
@@ -41,6 +44,8 @@ export default class coinsph extends Exchange {
41
44
  'createMarketOrderWithCost': false,
42
45
  'createMarketSellOrderWithCost': false,
43
46
  'createOrder': true,
47
+ 'createOrderWithTakeProfitAndStopLoss': false,
48
+ 'createOrderWithTakeProfitAndStopLossWs': false,
44
49
  'createPostOnlyOrder': false,
45
50
  'createReduceOnlyOrder': false,
46
51
  'createStopLimitOrder': true,
@@ -52,8 +57,11 @@ export default class coinsph extends Exchange {
52
57
  'fetchBalance': true,
53
58
  'fetchBidsAsks': false,
54
59
  'fetchBorrowInterest': false,
60
+ 'fetchBorrowRate': false,
55
61
  'fetchBorrowRateHistories': false,
56
62
  'fetchBorrowRateHistory': false,
63
+ 'fetchBorrowRates': false,
64
+ 'fetchBorrowRatesPerSymbol': false,
57
65
  'fetchCanceledOrders': false,
58
66
  'fetchClosedOrder': false,
59
67
  'fetchClosedOrders': true,
@@ -68,24 +76,42 @@ export default class coinsph extends Exchange {
68
76
  'fetchDepositWithdrawFee': false,
69
77
  'fetchDepositWithdrawFees': false,
70
78
  'fetchFundingHistory': false,
79
+ 'fetchFundingInterval': false,
80
+ 'fetchFundingIntervals': false,
71
81
  'fetchFundingRate': false,
72
82
  'fetchFundingRateHistory': false,
73
83
  'fetchFundingRates': false,
84
+ 'fetchGreeks': false,
74
85
  'fetchIndexOHLCV': false,
75
86
  'fetchIsolatedBorrowRate': false,
76
87
  'fetchIsolatedBorrowRates': false,
88
+ 'fetchIsolatedPositions': false,
77
89
  'fetchL3OrderBook': false,
78
90
  'fetchLedger': false,
79
91
  'fetchLeverage': false,
92
+ 'fetchLeverages': false,
80
93
  'fetchLeverageTiers': false,
94
+ 'fetchLiquidations': false,
95
+ 'fetchLongShortRatio': false,
96
+ 'fetchLongShortRatioHistory': false,
97
+ 'fetchMarginAdjustmentHistory': false,
98
+ 'fetchMarginMode': false,
99
+ 'fetchMarginModes': false,
81
100
  'fetchMarketLeverageTiers': false,
82
101
  'fetchMarkets': true,
83
102
  'fetchMarkOHLCV': false,
103
+ 'fetchMarkPrices': false,
104
+ 'fetchMyLiquidations': false,
105
+ 'fetchMySettlementHistory': false,
84
106
  'fetchMyTrades': true,
85
107
  'fetchOHLCV': true,
108
+ 'fetchOpenInterest': false,
86
109
  'fetchOpenInterestHistory': false,
110
+ 'fetchOpenInterests': false,
87
111
  'fetchOpenOrder': undefined,
88
112
  'fetchOpenOrders': true,
113
+ 'fetchOption': false,
114
+ 'fetchOptionChain': false,
89
115
  'fetchOrder': true,
90
116
  'fetchOrderBook': true,
91
117
  'fetchOrderBooks': false,
@@ -99,6 +125,7 @@ export default class coinsph extends Exchange {
99
125
  'fetchPositionsHistory': false,
100
126
  'fetchPositionsRisk': false,
101
127
  'fetchPremiumIndexOHLCV': false,
128
+ 'fetchSettlementHistory': false,
102
129
  'fetchStatus': true,
103
130
  'fetchTicker': true,
104
131
  'fetchTickers': true,
@@ -111,12 +138,14 @@ export default class coinsph extends Exchange {
111
138
  'fetchTransactionFees': false,
112
139
  'fetchTransactions': false,
113
140
  'fetchTransfers': false,
141
+ 'fetchVolatilityHistory': false,
114
142
  'fetchWithdrawal': undefined,
115
143
  'fetchWithdrawals': true,
116
144
  'fetchWithdrawalWhitelist': false,
117
145
  'reduceMargin': false,
118
146
  'repayCrossMargin': false,
119
147
  'repayIsolatedMargin': false,
148
+ 'repayMargin': false,
120
149
  'setLeverage': false,
121
150
  'setMargin': false,
122
151
  'setMarginMode': false,
@@ -86,7 +86,7 @@ export default class coinspot extends Exchange {
86
86
  * @param {object} [params] extra parameters specific to the exchange API endpoint
87
87
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
88
88
  */
89
- createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: {}): Promise<any>;
89
+ createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: {}): Promise<import("./base/types.js").Order>;
90
90
  /**
91
91
  * @method
92
92
  * @name coinspot#cancelOrder