ccxt 4.3.5 → 4.3.7

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 (211) hide show
  1. package/README.md +3 -3
  2. package/dist/cjs/ccxt.js +1 -1
  3. package/dist/cjs/src/ace.js +5 -0
  4. package/dist/cjs/src/alpaca.js +6 -0
  5. package/dist/cjs/src/base/Exchange.js +37 -0
  6. package/dist/cjs/src/binance.js +4 -0
  7. package/dist/cjs/src/bingx.js +47 -0
  8. package/dist/cjs/src/bitbank.js +3 -0
  9. package/dist/cjs/src/bitget.js +74 -1
  10. package/dist/cjs/src/bithumb.js +4 -0
  11. package/dist/cjs/src/bitmex.js +26 -0
  12. package/dist/cjs/src/bitopro.js +5 -0
  13. package/dist/cjs/src/bitso.js +3 -0
  14. package/dist/cjs/src/bitstamp.js +3 -0
  15. package/dist/cjs/src/bitteam.js +4 -0
  16. package/dist/cjs/src/bitvavo.js +3 -0
  17. package/dist/cjs/src/bl3p.js +3 -0
  18. package/dist/cjs/src/btcalpha.js +3 -0
  19. package/dist/cjs/src/btcbox.js +3 -0
  20. package/dist/cjs/src/btcmarkets.js +3 -0
  21. package/dist/cjs/src/btcturk.js +3 -0
  22. package/dist/cjs/src/bybit.js +209 -12
  23. package/dist/cjs/src/cex.js +6 -0
  24. package/dist/cjs/src/coinbase.js +100 -21
  25. package/dist/cjs/src/coinbaseinternational.js +2 -0
  26. package/dist/cjs/src/coinbasepro.js +6 -0
  27. package/dist/cjs/src/coincheck.js +3 -0
  28. package/dist/cjs/src/coinex.js +180 -75
  29. package/dist/cjs/src/coinlist.js +4 -0
  30. package/dist/cjs/src/coinmate.js +3 -0
  31. package/dist/cjs/src/coinone.js +3 -0
  32. package/dist/cjs/src/coinsph.js +4 -0
  33. package/dist/cjs/src/coinspot.js +3 -0
  34. package/dist/cjs/src/cryptocom.js +34 -0
  35. package/dist/cjs/src/exmo.js +5 -0
  36. package/dist/cjs/src/gate.js +124 -22
  37. package/dist/cjs/src/hitbtc.js +4 -3
  38. package/dist/cjs/src/htx.js +30 -0
  39. package/dist/cjs/src/hyperliquid.js +40 -0
  40. package/dist/cjs/src/idex.js +3 -0
  41. package/dist/cjs/src/independentreserve.js +3 -0
  42. package/dist/cjs/src/indodax.js +3 -0
  43. package/dist/cjs/src/kraken.js +30 -0
  44. package/dist/cjs/src/krakenfutures.js +28 -0
  45. package/dist/cjs/src/kucoin.js +2 -0
  46. package/dist/cjs/src/kucoinfutures.js +4 -2
  47. package/dist/cjs/src/latoken.js +6 -0
  48. package/dist/cjs/src/luno.js +3 -0
  49. package/dist/cjs/src/lykke.js +5 -0
  50. package/dist/cjs/src/mercado.js +3 -0
  51. package/dist/cjs/src/mexc.js +111 -0
  52. package/dist/cjs/src/ndax.js +4 -0
  53. package/dist/cjs/src/novadax.js +4 -0
  54. package/dist/cjs/src/okx.js +196 -0
  55. package/dist/cjs/src/onetrading.js +3 -0
  56. package/dist/cjs/src/p2b.js +3 -0
  57. package/dist/cjs/src/pro/bitget.js +1 -1
  58. package/dist/cjs/src/pro/bybit.js +1 -1
  59. package/dist/cjs/src/pro/coinbase.js +30 -29
  60. package/dist/cjs/src/probit.js +3 -0
  61. package/dist/cjs/src/timex.js +3 -0
  62. package/dist/cjs/src/tradeogre.js +3 -0
  63. package/dist/cjs/src/wavesexchange.js +3 -0
  64. package/dist/cjs/src/wazirx.js +3 -0
  65. package/dist/cjs/src/whitebit.js +42 -0
  66. package/dist/cjs/src/woo.js +31 -0
  67. package/dist/cjs/src/yobit.js +3 -0
  68. package/js/ccxt.d.ts +1 -1
  69. package/js/ccxt.js +1 -1
  70. package/js/src/abstract/binance.d.ts +1 -0
  71. package/js/src/abstract/binancecoinm.d.ts +1 -0
  72. package/js/src/abstract/binanceus.d.ts +1 -0
  73. package/js/src/abstract/binanceusdm.d.ts +1 -0
  74. package/js/src/abstract/bingx.d.ts +1 -0
  75. package/js/src/abstract/coinbase.d.ts +5 -0
  76. package/js/src/abstract/woo.d.ts +1 -0
  77. package/js/src/ace.js +5 -0
  78. package/js/src/alpaca.js +6 -0
  79. package/js/src/ascendex.d.ts +2 -2
  80. package/js/src/base/Exchange.d.ts +5 -0
  81. package/js/src/base/Exchange.js +37 -0
  82. package/js/src/bigone.d.ts +1 -1
  83. package/js/src/binance.d.ts +3 -3
  84. package/js/src/binance.js +4 -0
  85. package/js/src/bingx.d.ts +2 -1
  86. package/js/src/bingx.js +47 -0
  87. package/js/src/bitbank.d.ts +1 -1
  88. package/js/src/bitbank.js +3 -0
  89. package/js/src/bitfinex.d.ts +1 -1
  90. package/js/src/bitfinex2.d.ts +1 -1
  91. package/js/src/bitflyer.d.ts +1 -1
  92. package/js/src/bitget.d.ts +4 -3
  93. package/js/src/bitget.js +74 -1
  94. package/js/src/bithumb.d.ts +1 -1
  95. package/js/src/bithumb.js +4 -0
  96. package/js/src/bitmart.d.ts +1 -1
  97. package/js/src/bitmex.d.ts +2 -1
  98. package/js/src/bitmex.js +26 -0
  99. package/js/src/bitopro.d.ts +1 -1
  100. package/js/src/bitopro.js +5 -0
  101. package/js/src/bitrue.d.ts +1 -1
  102. package/js/src/bitso.d.ts +1 -1
  103. package/js/src/bitso.js +3 -0
  104. package/js/src/bitstamp.d.ts +1 -1
  105. package/js/src/bitstamp.js +3 -0
  106. package/js/src/bitteam.js +4 -0
  107. package/js/src/bitvavo.d.ts +1 -1
  108. package/js/src/bitvavo.js +3 -0
  109. package/js/src/bl3p.js +3 -0
  110. package/js/src/blockchaincom.d.ts +1 -1
  111. package/js/src/btcalpha.js +3 -0
  112. package/js/src/btcbox.js +3 -0
  113. package/js/src/btcmarkets.d.ts +1 -1
  114. package/js/src/btcmarkets.js +3 -0
  115. package/js/src/btcturk.js +3 -0
  116. package/js/src/bybit.d.ts +8 -6
  117. package/js/src/bybit.js +209 -12
  118. package/js/src/cex.js +6 -0
  119. package/js/src/coinbase.d.ts +1 -1
  120. package/js/src/coinbase.js +100 -21
  121. package/js/src/coinbaseinternational.d.ts +1 -1
  122. package/js/src/coinbaseinternational.js +2 -0
  123. package/js/src/coinbasepro.d.ts +1 -1
  124. package/js/src/coinbasepro.js +6 -0
  125. package/js/src/coincheck.js +3 -0
  126. package/js/src/coinex.d.ts +8 -7
  127. package/js/src/coinex.js +180 -75
  128. package/js/src/coinlist.d.ts +1 -1
  129. package/js/src/coinlist.js +4 -0
  130. package/js/src/coinmate.d.ts +1 -1
  131. package/js/src/coinmate.js +3 -0
  132. package/js/src/coinone.js +3 -0
  133. package/js/src/coinsph.d.ts +1 -1
  134. package/js/src/coinsph.js +4 -0
  135. package/js/src/coinspot.js +3 -0
  136. package/js/src/cryptocom.d.ts +3 -2
  137. package/js/src/cryptocom.js +34 -0
  138. package/js/src/delta.d.ts +2 -2
  139. package/js/src/deribit.d.ts +1 -1
  140. package/js/src/digifinex.d.ts +3 -3
  141. package/js/src/exmo.d.ts +3 -3
  142. package/js/src/exmo.js +5 -0
  143. package/js/src/gate.d.ts +8 -7
  144. package/js/src/gate.js +124 -22
  145. package/js/src/gemini.d.ts +1 -1
  146. package/js/src/hitbtc.d.ts +3 -3
  147. package/js/src/hitbtc.js +4 -3
  148. package/js/src/hollaex.d.ts +1 -1
  149. package/js/src/htx.d.ts +2 -1
  150. package/js/src/htx.js +30 -0
  151. package/js/src/huobijp.d.ts +1 -1
  152. package/js/src/hyperliquid.d.ts +3 -2
  153. package/js/src/hyperliquid.js +40 -0
  154. package/js/src/idex.d.ts +1 -1
  155. package/js/src/idex.js +3 -0
  156. package/js/src/independentreserve.js +3 -0
  157. package/js/src/indodax.d.ts +1 -1
  158. package/js/src/indodax.js +3 -0
  159. package/js/src/kraken.d.ts +2 -1
  160. package/js/src/kraken.js +30 -0
  161. package/js/src/krakenfutures.d.ts +1 -0
  162. package/js/src/krakenfutures.js +28 -0
  163. package/js/src/kucoin.d.ts +1 -1
  164. package/js/src/kucoin.js +2 -0
  165. package/js/src/kucoinfutures.d.ts +1 -1
  166. package/js/src/kucoinfutures.js +4 -2
  167. package/js/src/kuna.d.ts +1 -1
  168. package/js/src/latoken.js +6 -0
  169. package/js/src/lbank.d.ts +1 -1
  170. package/js/src/luno.js +3 -0
  171. package/js/src/lykke.d.ts +1 -1
  172. package/js/src/lykke.js +5 -0
  173. package/js/src/mercado.d.ts +1 -1
  174. package/js/src/mercado.js +3 -0
  175. package/js/src/mexc.d.ts +4 -3
  176. package/js/src/mexc.js +111 -0
  177. package/js/src/ndax.d.ts +1 -1
  178. package/js/src/ndax.js +4 -0
  179. package/js/src/novadax.d.ts +1 -1
  180. package/js/src/novadax.js +4 -0
  181. package/js/src/okcoin.d.ts +1 -1
  182. package/js/src/okx.d.ts +11 -8
  183. package/js/src/okx.js +196 -0
  184. package/js/src/onetrading.d.ts +1 -1
  185. package/js/src/onetrading.js +3 -0
  186. package/js/src/p2b.js +3 -0
  187. package/js/src/phemex.d.ts +1 -1
  188. package/js/src/poloniex.d.ts +1 -1
  189. package/js/src/pro/bitget.d.ts +1 -1
  190. package/js/src/pro/bitget.js +1 -1
  191. package/js/src/pro/bybit.js +1 -1
  192. package/js/src/pro/coinbase.d.ts +2 -2
  193. package/js/src/pro/coinbase.js +30 -29
  194. package/js/src/probit.d.ts +1 -1
  195. package/js/src/probit.js +3 -0
  196. package/js/src/timex.js +3 -0
  197. package/js/src/tokocrypto.d.ts +1 -1
  198. package/js/src/tradeogre.js +3 -0
  199. package/js/src/upbit.d.ts +1 -1
  200. package/js/src/wavesexchange.d.ts +1 -1
  201. package/js/src/wavesexchange.js +3 -0
  202. package/js/src/wazirx.js +3 -0
  203. package/js/src/whitebit.d.ts +2 -1
  204. package/js/src/whitebit.js +42 -0
  205. package/js/src/woo.d.ts +3 -2
  206. package/js/src/woo.js +31 -0
  207. package/js/src/yobit.d.ts +1 -1
  208. package/js/src/yobit.js +3 -0
  209. package/js/src/zaif.d.ts +1 -1
  210. package/js/src/zonda.d.ts +1 -1
  211. package/package.json +1 -1
@@ -29,6 +29,7 @@ class whitebit extends whitebit$1 {
29
29
  'future': false,
30
30
  'option': false,
31
31
  'cancelAllOrders': true,
32
+ 'cancelAllOrdersAfter': true,
32
33
  'cancelOrder': true,
33
34
  'cancelOrders': false,
34
35
  'createOrder': true,
@@ -1409,6 +1410,47 @@ class whitebit extends whitebit$1 {
1409
1410
  //
1410
1411
  return response;
1411
1412
  }
1413
+ async cancelAllOrdersAfter(timeout, params = {}) {
1414
+ /**
1415
+ * @method
1416
+ * @name whitebit#cancelAllOrdersAfter
1417
+ * @description dead man's switch, cancel all orders after the given timeout
1418
+ * @see https://docs.whitebit.com/private/http-trade-v4/#sync-kill-switch-timer
1419
+ * @param {number} timeout time in milliseconds, 0 represents cancel the timer
1420
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
1421
+ * @param {string} [params.types] Order types value. Example: "spot", "margin", "futures" or null
1422
+ * @param {string} [params.symbol] symbol unified symbol of the market the order was made in
1423
+ * @returns {object} the api result
1424
+ */
1425
+ await this.loadMarkets();
1426
+ const symbol = this.safeString(params, 'symbol');
1427
+ if (symbol === undefined) {
1428
+ throw new errors.ArgumentsRequired(this.id + ' cancelAllOrdersAfter() requires a symbol argument in params');
1429
+ }
1430
+ const market = this.market(symbol);
1431
+ params = this.omit(params, 'symbol');
1432
+ const isBiggerThanZero = (timeout > 0);
1433
+ const request = {
1434
+ 'market': market['id'],
1435
+ // 'timeout': (timeout > 0) ? this.numberToString (timeout / 1000) : null,
1436
+ };
1437
+ if (isBiggerThanZero) {
1438
+ request['timeout'] = this.numberToString(timeout / 1000);
1439
+ }
1440
+ else {
1441
+ request['timeout'] = 'null';
1442
+ }
1443
+ const response = await this.v4PrivatePostOrderKillSwitch(this.extend(request, params));
1444
+ //
1445
+ // {
1446
+ // "market": "BTC_USDT", // currency market,
1447
+ // "startTime": 1662478154, // now timestamp,
1448
+ // "cancellationTime": 1662478154, // now + timer_value,
1449
+ // "types": ["spot", "margin"]
1450
+ // }
1451
+ //
1452
+ return response;
1453
+ }
1412
1454
  parseBalance(response) {
1413
1455
  const balanceKeys = Object.keys(response);
1414
1456
  const result = {};
@@ -32,6 +32,7 @@ class woo extends woo$1 {
32
32
  'option': false,
33
33
  'addMargin': false,
34
34
  'cancelAllOrders': true,
35
+ 'cancelAllOrdersAfter': true,
35
36
  'cancelOrder': true,
36
37
  'cancelWithdraw': false,
37
38
  'closeAllPositions': false,
@@ -87,8 +88,10 @@ class woo extends woo$1 {
87
88
  'fetchOrders': true,
88
89
  'fetchOrderTrades': true,
89
90
  'fetchPosition': true,
91
+ 'fetchPositionHistory': false,
90
92
  'fetchPositionMode': false,
91
93
  'fetchPositions': true,
94
+ 'fetchPositionsHistory': false,
92
95
  'fetchPremiumIndexOHLCV': false,
93
96
  'fetchStatus': true,
94
97
  'fetchTicker': false,
@@ -199,6 +202,7 @@ class woo extends woo$1 {
199
202
  },
200
203
  'post': {
201
204
  'order': 5,
205
+ 'order/cancel_all_after': 1,
202
206
  'asset/main_sub_transfer': 30,
203
207
  'asset/ltv': 30,
204
208
  'asset/withdraw': 30,
@@ -1289,6 +1293,33 @@ class woo extends woo$1 {
1289
1293
  //
1290
1294
  return response;
1291
1295
  }
1296
+ async cancelAllOrdersAfter(timeout, params = {}) {
1297
+ /**
1298
+ * @method
1299
+ * @name woo#cancelAllOrdersAfter
1300
+ * @description dead man's switch, cancel all orders after the given timeout
1301
+ * @see https://docs.woo.org/#cancel-all-after
1302
+ * @param {number} timeout time in milliseconds, 0 represents cancel the timer
1303
+ * @param {boolean} activated countdown
1304
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
1305
+ * @returns {object} the api result
1306
+ */
1307
+ await this.loadMarkets();
1308
+ const request = {
1309
+ 'trigger_after': (timeout > 0) ? timeout : 0,
1310
+ };
1311
+ const response = await this.v1PrivatePostOrderCancelAllAfter(this.extend(request, params));
1312
+ //
1313
+ // {
1314
+ // "success": true,
1315
+ // "data": {
1316
+ // "expected_trigger_time": 1711534302938
1317
+ // },
1318
+ // "timestamp": 1711534302943
1319
+ // }
1320
+ //
1321
+ return response;
1322
+ }
1292
1323
  async fetchOrder(id, symbol = undefined, params = {}) {
1293
1324
  /**
1294
1325
  * @method
@@ -65,8 +65,11 @@ class yobit extends yobit$1 {
65
65
  'fetchOrderBook': true,
66
66
  'fetchOrderBooks': true,
67
67
  'fetchPosition': false,
68
+ 'fetchPositionHistory': false,
68
69
  'fetchPositionMode': false,
69
70
  'fetchPositions': false,
71
+ 'fetchPositionsForSymbol': false,
72
+ 'fetchPositionsHistory': false,
70
73
  'fetchPositionsRisk': false,
71
74
  'fetchPremiumIndexOHLCV': false,
72
75
  'fetchTicker': true,
package/js/ccxt.d.ts CHANGED
@@ -4,7 +4,7 @@ import * as functions from './src/base/functions.js';
4
4
  import * as errors from './src/base/errors.js';
5
5
  import type { Market, Trade, Fee, Ticker, OrderBook, Order, Transaction, Tickers, Currency, Balance, DepositAddress, WithdrawalResponse, DepositAddressResponse, OHLCV, Balances, PartialBalances, Dictionary, MinMax, Position, FundingRateHistory, Liquidation, FundingHistory, MarginMode, Greeks, Leverage, Leverages, Option, OptionChain, Conversion } from './src/base/types.js';
6
6
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout } from './src/base/errors.js';
7
- declare const version = "4.3.4";
7
+ declare const version = "4.3.6";
8
8
  import ace from './src/ace.js';
9
9
  import alpaca from './src/alpaca.js';
10
10
  import ascendex from './src/ascendex.js';
package/js/ccxt.js CHANGED
@@ -38,7 +38,7 @@ import * as errors from './src/base/errors.js';
38
38
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, ProxyError, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout } from './src/base/errors.js';
39
39
  //-----------------------------------------------------------------------------
40
40
  // this is updated by vss.js when building
41
- const version = '4.3.5';
41
+ const version = '4.3.7';
42
42
  Exchange.ccxtVersion = version;
43
43
  //-----------------------------------------------------------------------------
44
44
  import ace from './src/ace.js';
@@ -86,6 +86,7 @@ interface Exchange {
86
86
  sapiGetCapitalDepositSubAddress(params?: {}): Promise<implicitReturnType>;
87
87
  sapiGetCapitalDepositSubHisrec(params?: {}): Promise<implicitReturnType>;
88
88
  sapiGetCapitalWithdrawHistory(params?: {}): Promise<implicitReturnType>;
89
+ sapiGetCapitalWithdrawAddressList(params?: {}): Promise<implicitReturnType>;
89
90
  sapiGetCapitalContractConvertibleCoins(params?: {}): Promise<implicitReturnType>;
90
91
  sapiGetConvertTradeFlow(params?: {}): Promise<implicitReturnType>;
91
92
  sapiGetConvertExchangeInfo(params?: {}): Promise<implicitReturnType>;
@@ -86,6 +86,7 @@ interface binance {
86
86
  sapiGetCapitalDepositSubAddress(params?: {}): Promise<implicitReturnType>;
87
87
  sapiGetCapitalDepositSubHisrec(params?: {}): Promise<implicitReturnType>;
88
88
  sapiGetCapitalWithdrawHistory(params?: {}): Promise<implicitReturnType>;
89
+ sapiGetCapitalWithdrawAddressList(params?: {}): Promise<implicitReturnType>;
89
90
  sapiGetCapitalContractConvertibleCoins(params?: {}): Promise<implicitReturnType>;
90
91
  sapiGetConvertTradeFlow(params?: {}): Promise<implicitReturnType>;
91
92
  sapiGetConvertExchangeInfo(params?: {}): Promise<implicitReturnType>;
@@ -86,6 +86,7 @@ interface binance {
86
86
  sapiGetCapitalDepositSubAddress(params?: {}): Promise<implicitReturnType>;
87
87
  sapiGetCapitalDepositSubHisrec(params?: {}): Promise<implicitReturnType>;
88
88
  sapiGetCapitalWithdrawHistory(params?: {}): Promise<implicitReturnType>;
89
+ sapiGetCapitalWithdrawAddressList(params?: {}): Promise<implicitReturnType>;
89
90
  sapiGetCapitalContractConvertibleCoins(params?: {}): Promise<implicitReturnType>;
90
91
  sapiGetConvertTradeFlow(params?: {}): Promise<implicitReturnType>;
91
92
  sapiGetConvertExchangeInfo(params?: {}): Promise<implicitReturnType>;
@@ -86,6 +86,7 @@ interface binance {
86
86
  sapiGetCapitalDepositSubAddress(params?: {}): Promise<implicitReturnType>;
87
87
  sapiGetCapitalDepositSubHisrec(params?: {}): Promise<implicitReturnType>;
88
88
  sapiGetCapitalWithdrawHistory(params?: {}): Promise<implicitReturnType>;
89
+ sapiGetCapitalWithdrawAddressList(params?: {}): Promise<implicitReturnType>;
89
90
  sapiGetCapitalContractConvertibleCoins(params?: {}): Promise<implicitReturnType>;
90
91
  sapiGetConvertTradeFlow(params?: {}): Promise<implicitReturnType>;
91
92
  sapiGetConvertExchangeInfo(params?: {}): Promise<implicitReturnType>;
@@ -61,6 +61,7 @@ interface Exchange {
61
61
  swapV2PrivatePostTradeOrder(params?: {}): Promise<implicitReturnType>;
62
62
  swapV2PrivatePostTradeBatchOrders(params?: {}): Promise<implicitReturnType>;
63
63
  swapV2PrivatePostTradeCloseAllPositions(params?: {}): Promise<implicitReturnType>;
64
+ swapV2PrivatePostTradeCancelAllAfter(params?: {}): Promise<implicitReturnType>;
64
65
  swapV2PrivatePostTradeMarginType(params?: {}): Promise<implicitReturnType>;
65
66
  swapV2PrivatePostTradeLeverage(params?: {}): Promise<implicitReturnType>;
66
67
  swapV2PrivatePostTradePositionMargin(params?: {}): Promise<implicitReturnType>;
@@ -47,6 +47,11 @@ interface Exchange {
47
47
  v2PrivateDeleteAccountsId(params?: {}): Promise<implicitReturnType>;
48
48
  v2PrivateDeleteAccountsAccountIdTransactionsTransactionId(params?: {}): Promise<implicitReturnType>;
49
49
  v3PublicGetBrokerageTime(params?: {}): Promise<implicitReturnType>;
50
+ v3PublicGetBrokerageMarketProductBook(params?: {}): Promise<implicitReturnType>;
51
+ v3PublicGetBrokerageMarketProducts(params?: {}): Promise<implicitReturnType>;
52
+ v3PublicGetBrokerageMarketProductsProductId(params?: {}): Promise<implicitReturnType>;
53
+ v3PublicGetBrokerageMarketProductsProductIdCandles(params?: {}): Promise<implicitReturnType>;
54
+ v3PublicGetBrokerageMarketProductsProductIdTicker(params?: {}): Promise<implicitReturnType>;
50
55
  v3PrivateGetBrokerageAccounts(params?: {}): Promise<implicitReturnType>;
51
56
  v3PrivateGetBrokerageAccountsAccountUuid(params?: {}): Promise<implicitReturnType>;
52
57
  v3PrivateGetBrokerageOrdersHistoricalBatch(params?: {}): Promise<implicitReturnType>;
@@ -42,6 +42,7 @@ interface Exchange {
42
42
  v1PrivateGetPositionSymbol(params?: {}): Promise<implicitReturnType>;
43
43
  v1PrivateGetClientTransactionHistory(params?: {}): Promise<implicitReturnType>;
44
44
  v1PrivatePostOrder(params?: {}): Promise<implicitReturnType>;
45
+ v1PrivatePostOrderCancelAllAfter(params?: {}): Promise<implicitReturnType>;
45
46
  v1PrivatePostAssetMainSubTransfer(params?: {}): Promise<implicitReturnType>;
46
47
  v1PrivatePostAssetLtv(params?: {}): Promise<implicitReturnType>;
47
48
  v1PrivatePostAssetWithdraw(params?: {}): Promise<implicitReturnType>;
package/js/src/ace.js CHANGED
@@ -65,8 +65,13 @@ export default class ace extends Exchange {
65
65
  'fetchOrderBook': true,
66
66
  'fetchOrders': false,
67
67
  'fetchOrderTrades': true,
68
+ 'fetchPosition': false,
69
+ 'fetchPositionHistory': false,
68
70
  'fetchPositionMode': false,
69
71
  'fetchPositions': false,
72
+ 'fetchPositionsForSymbol': false,
73
+ 'fetchPositionsHistory': false,
74
+ 'fetchPositionsRisk': false,
70
75
  'fetchPremiumIndexOHLCV': false,
71
76
  'fetchTicker': true,
72
77
  'fetchTickers': true,
package/js/src/alpaca.js CHANGED
@@ -74,7 +74,13 @@ export default class alpaca extends Exchange {
74
74
  'fetchOrder': true,
75
75
  'fetchOrderBook': true,
76
76
  'fetchOrders': true,
77
+ 'fetchPosition': false,
78
+ 'fetchPositionHistory': false,
79
+ 'fetchPositionMode': false,
77
80
  'fetchPositions': false,
81
+ 'fetchPositionsForSymbol': false,
82
+ 'fetchPositionsHistory': false,
83
+ 'fetchPositionsRisk': false,
78
84
  'fetchStatus': false,
79
85
  'fetchTicker': false,
80
86
  'fetchTickers': false,
@@ -72,8 +72,8 @@ export default class ascendex extends Exchange {
72
72
  fetchFundingRates(symbols?: Strings, params?: {}): Promise<any>;
73
73
  modifyMarginHelper(symbol: string, amount: any, type: any, params?: {}): Promise<MarginModification>;
74
74
  parseMarginModification(data: any, market?: Market): MarginModification;
75
- reduceMargin(symbol: string, amount: any, params?: {}): Promise<MarginModification>;
76
- addMargin(symbol: string, amount: any, params?: {}): Promise<MarginModification>;
75
+ reduceMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
76
+ addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
77
77
  setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
78
78
  setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<any>;
79
79
  fetchLeverageTiers(symbols?: Strings, params?: {}): Promise<{}>;
@@ -432,6 +432,8 @@ export default class Exchange {
432
432
  fetchOrderWs: any;
433
433
  fetchPermissions: any;
434
434
  fetchPosition: any;
435
+ fetchPositionHistory: any;
436
+ fetchPositionsHistory: any;
435
437
  fetchPositionWs: any;
436
438
  fetchPositionMode: any;
437
439
  fetchPositions: any;
@@ -931,6 +933,7 @@ export default class Exchange {
931
933
  cancelOrderWs(id: string, symbol?: Str, params?: {}): Promise<{}>;
932
934
  cancelOrdersWs(ids: string[], symbol?: Str, params?: {}): Promise<{}>;
933
935
  cancelAllOrders(symbol?: Str, params?: {}): Promise<{}>;
936
+ cancelAllOrdersAfter(timeout: Int, params?: {}): Promise<{}>;
934
937
  cancelOrdersForSymbols(orders: CancellationRequest[], params?: {}): Promise<{}>;
935
938
  cancelAllOrdersWs(symbol?: Str, params?: {}): Promise<{}>;
936
939
  cancelUnifiedOrder(order: any, params?: {}): Promise<{}>;
@@ -1074,6 +1077,8 @@ export default class Exchange {
1074
1077
  convertExpireDate(date: string): string;
1075
1078
  convertExpireDateToMarketIdDate(date: string): string;
1076
1079
  convertMarketIdExpireDate(date: string): string;
1080
+ fetchPositionHistory(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Position>;
1081
+ fetchPositionsHistory(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<Position[]>;
1077
1082
  parseMarginModification(data: any, market?: Market): MarginModification;
1078
1083
  parseMarginModifications(response: object[], symbols?: string[], symbolKey?: Str, marketType?: MarketType): MarginModification[];
1079
1084
  }
@@ -490,6 +490,8 @@ export default class Exchange {
490
490
  'fetchOrderWs': undefined,
491
491
  'fetchPermissions': undefined,
492
492
  'fetchPosition': undefined,
493
+ 'fetchPositionHistory': undefined,
494
+ 'fetchPositionsHistory': undefined,
493
495
  'fetchPositionWs': undefined,
494
496
  'fetchPositionMode': undefined,
495
497
  'fetchPositions': undefined,
@@ -4698,6 +4700,9 @@ export default class Exchange {
4698
4700
  async cancelAllOrders(symbol = undefined, params = {}) {
4699
4701
  throw new NotSupported(this.id + ' cancelAllOrders() is not supported yet');
4700
4702
  }
4703
+ async cancelAllOrdersAfter(timeout, params = {}) {
4704
+ throw new NotSupported(this.id + ' cancelAllOrdersAfter() is not supported yet');
4705
+ }
4701
4706
  async cancelOrdersForSymbols(orders, params = {}) {
4702
4707
  throw new NotSupported(this.id + ' cancelOrdersForSymbols() is not supported yet');
4703
4708
  }
@@ -6191,6 +6196,38 @@ export default class Exchange {
6191
6196
  const reconstructedDate = day + month + year;
6192
6197
  return reconstructedDate;
6193
6198
  }
6199
+ async fetchPositionHistory(symbol, since = undefined, limit = undefined, params = {}) {
6200
+ /**
6201
+ * @method
6202
+ * @name exchange#fetchPositionHistory
6203
+ * @description fetches the history of margin added or reduced from contract isolated positions
6204
+ * @param {string} [symbol] unified market symbol
6205
+ * @param {int} [since] timestamp in ms of the position
6206
+ * @param {int} [limit] the maximum amount of candles to fetch, default=1000
6207
+ * @param {object} params extra parameters specific to the exchange api endpoint
6208
+ * @returns {object[]} a list of [position structures]{@link https://docs.ccxt.com/#/?id=position-structure}
6209
+ */
6210
+ if (this.has['fetchPositionsHistory']) {
6211
+ const positions = await this.fetchPositionsHistory([symbol], since, limit, params);
6212
+ return this.safeDict(positions, 0);
6213
+ }
6214
+ else {
6215
+ throw new NotSupported(this.id + ' fetchPositionHistory () is not supported yet');
6216
+ }
6217
+ }
6218
+ async fetchPositionsHistory(symbols = undefined, since = undefined, limit = undefined, params = {}) {
6219
+ /**
6220
+ * @method
6221
+ * @name exchange#fetchPositionsHistory
6222
+ * @description fetches the history of margin added or reduced from contract isolated positions
6223
+ * @param {string} [symbol] unified market symbol
6224
+ * @param {int} [since] timestamp in ms of the position
6225
+ * @param {int} [limit] the maximum amount of candles to fetch, default=1000
6226
+ * @param {object} params extra parameters specific to the exchange api endpoint
6227
+ * @returns {object[]} a list of [position structures]{@link https://docs.ccxt.com/#/?id=position-structure}
6228
+ */
6229
+ throw new NotSupported(this.id + ' fetchPositionsHistory () is not supported yet');
6230
+ }
6194
6231
  parseMarginModification(data, market = undefined) {
6195
6232
  throw new NotSupported(this.id + ' parseMarginModification() is not supported yet');
6196
6233
  }
@@ -64,6 +64,6 @@ export default class bigone extends Exchange {
64
64
  status: string;
65
65
  };
66
66
  parseTransferStatus(status: any): string;
67
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
67
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
68
68
  handleErrors(httpCode: any, reason: any, url: any, method: any, headers: any, body: any, response: any, requestHeaders: any, requestBody: any): any;
69
69
  }
@@ -135,7 +135,7 @@ export default class binance extends Exchange {
135
135
  }>;
136
136
  fetchDepositWithdrawFees(codes?: Strings, params?: {}): Promise<any>;
137
137
  parseDepositWithdrawFee(fee: any, currency?: Currency): any;
138
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
138
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
139
139
  parseTradingFee(fee: any, market?: Market): TradingFeeInterface;
140
140
  fetchTradingFee(symbol: string, params?: {}): Promise<TradingFeeInterface>;
141
141
  fetchTradingFees(params?: {}): Promise<TradingFees>;
@@ -301,8 +301,8 @@ export default class binance extends Exchange {
301
301
  request(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any, config?: {}): Promise<any>;
302
302
  modifyMarginHelper(symbol: string, amount: any, addOrReduce: any, params?: {}): Promise<any>;
303
303
  parseMarginModification(data: any, market?: Market): MarginModification;
304
- reduceMargin(symbol: string, amount: any, params?: {}): Promise<MarginModification>;
305
- addMargin(symbol: string, amount: any, params?: {}): Promise<MarginModification>;
304
+ reduceMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
305
+ addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
306
306
  fetchCrossBorrowRate(code: string, params?: {}): Promise<{
307
307
  currency: string;
308
308
  rate: number;
package/js/src/binance.js CHANGED
@@ -128,8 +128,10 @@ export default class binance extends Exchange {
128
128
  'fetchOrders': true,
129
129
  'fetchOrderTrades': true,
130
130
  'fetchPosition': true,
131
+ 'fetchPositionHistory': false,
131
132
  'fetchPositionMode': true,
132
133
  'fetchPositions': true,
134
+ 'fetchPositionsHistory': false,
133
135
  'fetchPositionsRisk': true,
134
136
  'fetchPremiumIndexOHLCV': false,
135
137
  'fetchSettlementHistory': true,
@@ -324,6 +326,7 @@ export default class binance extends Exchange {
324
326
  'capital/deposit/subAddress': 0.1,
325
327
  'capital/deposit/subHisrec': 0.1,
326
328
  'capital/withdraw/history': 1800,
329
+ 'capital/withdraw/address/list': 10,
327
330
  'capital/contract/convertible-coins': 4.0002,
328
331
  'convert/tradeFlow': 20.001,
329
332
  'convert/exchangeInfo': 50,
@@ -4110,6 +4113,7 @@ export default class binance extends Exchange {
4110
4113
  * @param {string[]} [symbols] unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
4111
4114
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4112
4115
  * @param {string} [params.subType] "linear" or "inverse"
4116
+ * @param {string} [params.type] 'spot', 'option', use params["subType"] for swap and future markets
4113
4117
  * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
4114
4118
  */
4115
4119
  await this.loadMarkets();
package/js/src/bingx.d.ts CHANGED
@@ -79,6 +79,7 @@ export default class bingx extends Exchange {
79
79
  cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
80
80
  cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
81
81
  cancelOrders(ids: string[], symbol?: Str, params?: {}): Promise<any>;
82
+ cancelAllOrdersAfter(timeout: Int, params?: {}): Promise<any>;
82
83
  fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
83
84
  fetchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
84
85
  fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
@@ -131,7 +132,7 @@ export default class bingx extends Exchange {
131
132
  networks: {};
132
133
  };
133
134
  fetchDepositWithdrawFees(codes?: Strings, params?: {}): Promise<any>;
134
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
135
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
135
136
  parseParams(params: any): {};
136
137
  fetchMyLiquidations(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Liquidation[]>;
137
138
  parseLiquidation(liquidation: any, market?: Market): import("./base/types.js").Liquidation;
package/js/src/bingx.js CHANGED
@@ -35,6 +35,7 @@ export default class bingx extends Exchange {
35
35
  'option': false,
36
36
  'addMargin': true,
37
37
  'cancelAllOrders': true,
38
+ 'cancelAllOrdersAfter': true,
38
39
  'cancelOrder': true,
39
40
  'cancelOrders': true,
40
41
  'closeAllPositions': true,
@@ -74,8 +75,10 @@ export default class bingx extends Exchange {
74
75
  'fetchOrder': true,
75
76
  'fetchOrderBook': true,
76
77
  'fetchOrders': true,
78
+ 'fetchPositionHistory': false,
77
79
  'fetchPositionMode': true,
78
80
  'fetchPositions': true,
81
+ 'fetchPositionsHistory': false,
79
82
  'fetchTicker': true,
80
83
  'fetchTickers': true,
81
84
  'fetchTime': true,
@@ -231,6 +234,7 @@ export default class bingx extends Exchange {
231
234
  'trade/order': 3,
232
235
  'trade/batchOrders': 3,
233
236
  'trade/closeAllPositions': 3,
237
+ 'trade/cancelAllAfter': 3,
234
238
  'trade/marginType': 3,
235
239
  'trade/leverage': 3,
236
240
  'trade/positionMargin': 3,
@@ -2752,6 +2756,49 @@ export default class bingx extends Exchange {
2752
2756
  //
2753
2757
  return response;
2754
2758
  }
2759
+ async cancelAllOrdersAfter(timeout, params = {}) {
2760
+ /**
2761
+ * @method
2762
+ * @name bingx#cancelAllOrdersAfter
2763
+ * @description dead man's switch, cancel all orders after the given timeout
2764
+ * @see https://bingx-api.github.io/docs/#/en-us/spot/trade-api.html#Cancel%20all%20orders%20in%20countdown
2765
+ * @see https://bingx-api.github.io/docs/#/en-us/swapV2/trade-api.html#Cancel%20all%20orders%20in%20countdown
2766
+ * @param {number} timeout time in milliseconds, 0 represents cancel the timer
2767
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2768
+ * @param {string} [params.type] spot or swap market
2769
+ * @returns {object} the api result
2770
+ */
2771
+ await this.loadMarkets();
2772
+ const isActive = (timeout > 0);
2773
+ const request = {
2774
+ 'type': (isActive) ? 'ACTIVATE' : 'CLOSE',
2775
+ 'timeOut': (isActive) ? (this.parseToInt(timeout / 1000)) : 0,
2776
+ };
2777
+ let response = undefined;
2778
+ let type = undefined;
2779
+ [type, params] = this.handleMarketTypeAndParams('cancelAllOrdersAfter', undefined, params);
2780
+ if (type === 'spot') {
2781
+ response = await this.spotV1PrivatePostTradeCancelAllAfter(this.extend(request, params));
2782
+ }
2783
+ else if (type === 'swap') {
2784
+ response = await this.swapV2PrivatePostTradeCancelAllAfter(this.extend(request, params));
2785
+ }
2786
+ else {
2787
+ throw new NotSupported(this.id + ' cancelAllOrdersAfter() is not supported for ' + type + ' markets');
2788
+ }
2789
+ //
2790
+ // {
2791
+ // code: '0',
2792
+ // msg: '',
2793
+ // data: {
2794
+ // triggerTime: '1712645434',
2795
+ // status: 'ACTIVATED',
2796
+ // note: 'All your perpetual pending orders will be closed automatically at 2024-04-09 06:50:34 UTC(+0),before that you can cancel the timer, or extend triggerTime time by this request'
2797
+ // }
2798
+ // }
2799
+ //
2800
+ return response;
2801
+ }
2755
2802
  async fetchOrder(id, symbol = undefined, params = {}) {
2756
2803
  /**
2757
2804
  * @method
@@ -32,7 +32,7 @@ export default class bitbank extends Exchange {
32
32
  network: any;
33
33
  info: any;
34
34
  }>;
35
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
35
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
36
36
  parseTransaction(transaction: any, currency?: Currency): Transaction;
37
37
  nonce(): number;
38
38
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
package/js/src/bitbank.js CHANGED
@@ -59,8 +59,11 @@ export default class bitbank extends Exchange {
59
59
  'fetchOrder': true,
60
60
  'fetchOrderBook': true,
61
61
  'fetchPosition': false,
62
+ 'fetchPositionHistory': false,
62
63
  'fetchPositionMode': false,
63
64
  'fetchPositions': false,
65
+ 'fetchPositionsForSymbol': false,
66
+ 'fetchPositionsHistory': false,
64
67
  'fetchPositionsRisk': false,
65
68
  'fetchPremiumIndexOHLCV': false,
66
69
  'fetchTicker': true,
@@ -74,7 +74,7 @@ export default class bitfinex extends Exchange {
74
74
  fetchDepositsWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
75
75
  parseTransaction(transaction: any, currency?: Currency): Transaction;
76
76
  parseTransactionStatus(status: any): string;
77
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
77
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
78
78
  fetchPositions(symbols?: Strings, params?: {}): Promise<any>;
79
79
  nonce(): number;
80
80
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
@@ -78,7 +78,7 @@ export default class bitfinex2 extends Exchange {
78
78
  parseTransaction(transaction: any, currency?: Currency): Transaction;
79
79
  fetchTradingFees(params?: {}): Promise<TradingFees>;
80
80
  fetchDepositsWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
81
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<any>;
81
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<any>;
82
82
  fetchPositions(symbols?: Strings, params?: {}): Promise<import("./base/types.js").Position[]>;
83
83
  parsePosition(position: any, market?: Market): import("./base/types.js").Position;
84
84
  nonce(): number;
@@ -27,7 +27,7 @@ export default class bitflyer extends Exchange {
27
27
  fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
28
28
  fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
29
29
  fetchPositions(symbols?: Strings, params?: {}): Promise<any>;
30
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
30
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
31
31
  fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
32
32
  fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
33
33
  parseDepositStatus(status: any): string;
@@ -17,7 +17,7 @@ export default class bitget extends Exchange {
17
17
  fetchMarketLeverageTiers(symbol: string, params?: {}): Promise<any[]>;
18
18
  parseMarketLeverageTiers(info: any, market?: Market): any[];
19
19
  fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
20
- withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
20
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
21
21
  fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
22
22
  parseTransaction(transaction: any, currency?: Currency): Transaction;
23
23
  parseTransactionStatus(status: any): string;
@@ -145,8 +145,8 @@ export default class bitget extends Exchange {
145
145
  parseFundingHistories(contracts: any, market?: any, since?: Int, limit?: Int): FundingHistory[];
146
146
  modifyMarginHelper(symbol: string, amount: any, type: any, params?: {}): Promise<MarginModification>;
147
147
  parseMarginModification(data: any, market?: Market): MarginModification;
148
- reduceMargin(symbol: string, amount: any, params?: {}): Promise<MarginModification>;
149
- addMargin(symbol: string, amount: any, params?: {}): Promise<MarginModification>;
148
+ reduceMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
149
+ addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
150
150
  fetchLeverage(symbol: string, params?: {}): Promise<Leverage>;
151
151
  parseLeverage(leverage: any, market?: any): Leverage;
152
152
  setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
@@ -282,6 +282,7 @@ export default class bitget extends Exchange {
282
282
  closeAllPositions(params?: {}): Promise<Position[]>;
283
283
  fetchMarginMode(symbol: string, params?: {}): Promise<MarginMode>;
284
284
  parseMarginMode(marginMode: any, market?: any): MarginMode;
285
+ fetchPositionsHistory(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<Position[]>;
285
286
  fetchConvertQuote(fromCode: string, toCode: string, amount?: Num, params?: {}): Promise<Conversion>;
286
287
  createConvertTrade(id: string, fromCode: string, toCode: string, amount?: Num, params?: {}): Promise<Conversion>;
287
288
  fetchConvertTradeHistory(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Conversion[]>;