ccxt 4.5.44 → 4.5.46

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 (111) hide show
  1. package/README.md +9 -12
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +1 -12
  4. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  5. package/dist/cjs/src/base/Exchange.js +39 -3
  6. package/dist/cjs/src/base/functions/encode.js +2 -2
  7. package/dist/cjs/src/base/functions/generic.js +8 -2
  8. package/dist/cjs/src/binance.js +11 -2
  9. package/dist/cjs/src/bitget.js +3 -1
  10. package/dist/cjs/src/bitmart.js +144 -21
  11. package/dist/cjs/src/bitrue.js +1 -1
  12. package/dist/cjs/src/bitteam.js +1 -1
  13. package/dist/cjs/src/btcbox.js +1 -1
  14. package/dist/cjs/src/bybit.js +58 -56
  15. package/dist/cjs/src/bydfi.js +102 -100
  16. package/dist/cjs/src/cex.js +1 -0
  17. package/dist/cjs/src/gate.js +264 -170
  18. package/dist/cjs/src/grvt.js +3 -2
  19. package/dist/cjs/src/hyperliquid.js +16 -5
  20. package/dist/cjs/src/kraken.js +4 -2
  21. package/dist/cjs/src/krakenfutures.js +1 -5
  22. package/dist/cjs/src/kucoin.js +4733 -972
  23. package/dist/cjs/src/kucoinfutures.js +14 -3434
  24. package/dist/cjs/src/lbank.js +1 -1
  25. package/dist/cjs/src/okx.js +75 -57
  26. package/dist/cjs/src/paradex.js +2 -6
  27. package/dist/cjs/src/poloniex.js +1 -1
  28. package/dist/cjs/src/pro/bydfi.js +19 -19
  29. package/dist/cjs/src/pro/gate.js +114 -53
  30. package/dist/cjs/src/pro/grvt.js +5 -3
  31. package/dist/cjs/src/pro/htx.js +4 -4
  32. package/dist/cjs/src/pro/kucoin.js +819 -178
  33. package/dist/cjs/src/pro/kucoinfutures.js +95 -1261
  34. package/dist/cjs/src/pro/mexc.js +10 -5
  35. package/dist/cjs/src/pro/okx.js +85 -40
  36. package/index.d.cts +2 -0
  37. package/js/ccxt.d.ts +2 -14
  38. package/js/ccxt.js +2 -10
  39. package/js/src/abstract/bitmart.d.ts +7 -0
  40. package/js/src/abstract/bydfi.d.ts +29 -29
  41. package/js/src/abstract/kraken.d.ts +1 -0
  42. package/js/src/abstract/kucoin.d.ts +46 -2
  43. package/js/src/abstract/kucoinfutures.d.ts +27 -11
  44. package/js/src/base/Exchange.d.ts +13 -1
  45. package/js/src/base/Exchange.js +39 -3
  46. package/js/src/base/functions/encode.js +2 -2
  47. package/js/src/base/functions/generic.js +9 -3
  48. package/js/src/binance.js +11 -2
  49. package/js/src/bitget.js +3 -1
  50. package/js/src/bitmart.d.ts +18 -4
  51. package/js/src/bitmart.js +144 -21
  52. package/js/src/bitrue.js +1 -1
  53. package/js/src/bitteam.js +1 -1
  54. package/js/src/btcbox.js +1 -1
  55. package/js/src/bybit.d.ts +1 -0
  56. package/js/src/bybit.js +58 -56
  57. package/js/src/bydfi.d.ts +31 -31
  58. package/js/src/bydfi.js +102 -100
  59. package/js/src/cex.js +2 -1
  60. package/js/src/gate.d.ts +125 -119
  61. package/js/src/gate.js +264 -170
  62. package/js/src/grvt.js +3 -2
  63. package/js/src/hyperliquid.d.ts +3 -1
  64. package/js/src/hyperliquid.js +16 -5
  65. package/js/src/kraken.js +4 -2
  66. package/js/src/krakenfutures.js +1 -5
  67. package/js/src/kucoin.d.ts +696 -100
  68. package/js/src/kucoin.js +4734 -973
  69. package/js/src/kucoinfutures.d.ts +4 -522
  70. package/js/src/kucoinfutures.js +14 -3434
  71. package/js/src/lbank.js +1 -1
  72. package/js/src/okx.d.ts +1 -0
  73. package/js/src/okx.js +75 -57
  74. package/js/src/paradex.d.ts +0 -1
  75. package/js/src/paradex.js +2 -6
  76. package/js/src/poloniex.js +1 -1
  77. package/js/src/pro/bydfi.d.ts +18 -18
  78. package/js/src/pro/bydfi.js +19 -19
  79. package/js/src/pro/gate.d.ts +30 -1
  80. package/js/src/pro/gate.js +114 -53
  81. package/js/src/pro/grvt.js +5 -3
  82. package/js/src/pro/htx.js +4 -4
  83. package/js/src/pro/kucoin.d.ts +70 -30
  84. package/js/src/pro/kucoin.js +821 -180
  85. package/js/src/pro/kucoinfutures.d.ts +17 -195
  86. package/js/src/pro/kucoinfutures.js +96 -1262
  87. package/js/src/pro/mexc.js +10 -5
  88. package/js/src/pro/okx.d.ts +1 -0
  89. package/js/src/pro/okx.js +85 -40
  90. package/package.json +2 -2
  91. package/dist/cjs/src/abstract/alp.js +0 -11
  92. package/dist/cjs/src/abstract/defx.js +0 -11
  93. package/dist/cjs/src/abstract/timex.js +0 -11
  94. package/dist/cjs/src/alp.js +0 -1059
  95. package/dist/cjs/src/defx.js +0 -2142
  96. package/dist/cjs/src/pro/defx.js +0 -866
  97. package/dist/cjs/src/timex.js +0 -1793
  98. package/js/src/abstract/alp.d.ts +0 -21
  99. package/js/src/abstract/alp.js +0 -5
  100. package/js/src/abstract/defx.d.ts +0 -72
  101. package/js/src/abstract/defx.js +0 -5
  102. package/js/src/abstract/timex.d.ts +0 -65
  103. package/js/src/abstract/timex.js +0 -5
  104. package/js/src/alp.d.ts +0 -209
  105. package/js/src/alp.js +0 -1052
  106. package/js/src/defx.d.ts +0 -348
  107. package/js/src/defx.js +0 -2135
  108. package/js/src/pro/defx.d.ts +0 -236
  109. package/js/src/pro/defx.js +0 -859
  110. package/js/src/timex.d.ts +0 -247
  111. package/js/src/timex.js +0 -1786
@@ -828,7 +828,7 @@ class bitteam extends bitteam$1["default"] {
828
828
  const response = await this.publicGetTradeApiCmcOrderbookPair(this.extend(request, params));
829
829
  //
830
830
  // {
831
- // "timestamp": 1701166703285,
831
+ // "timestamp": 1701166703284,
832
832
  // "bids": [
833
833
  // [
834
834
  // 2019.334988,
@@ -702,7 +702,7 @@ class btcbox extends btcbox$1["default"] {
702
702
  //
703
703
  // {
704
704
  // "id":11,
705
- // "datetime":"2014-10-21 10:47:20",
705
+ // "datetime":"2014-10-21 10:47:21",
706
706
  // "type":"sell",
707
707
  // "price":42000,
708
708
  // "amount_original":1.2,
@@ -1130,8 +1130,12 @@ class bybit extends bybit$1["default"] {
1130
1130
  'FUND': 'fund',
1131
1131
  },
1132
1132
  'networks': {
1133
+ 'BTC': 'BTC',
1134
+ 'ETH': 'ETH',
1133
1135
  'ERC20': 'ETH',
1136
+ 'TRX': 'TRX',
1134
1137
  'TRC20': 'TRX',
1138
+ 'BSC': 'BSC',
1135
1139
  'BEP20': 'BSC',
1136
1140
  'SOL': 'SOL',
1137
1141
  'ACA': 'ACA',
@@ -1180,6 +1184,7 @@ class bybit extends bybit$1["default"] {
1180
1184
  'OASIS': 'ROSE',
1181
1185
  'OMNI': 'OMNI',
1182
1186
  'ONE': 'ONE',
1187
+ 'OP': 'OP',
1183
1188
  'OPTIMISM': 'OP',
1184
1189
  'POKT': 'POKT',
1185
1190
  'QTUM': 'QTUM',
@@ -1210,8 +1215,7 @@ class bybit extends bybit$1["default"] {
1210
1215
  'ETH': 'ERC20',
1211
1216
  'TRX': 'TRC20',
1212
1217
  'BSC': 'BEP20',
1213
- 'OMNI': 'OMNI',
1214
- 'SPL': 'SOL',
1218
+ 'OP': 'OP',
1215
1219
  },
1216
1220
  'defaultNetwork': 'ERC20',
1217
1221
  'defaultNetworks': {
@@ -1707,68 +1711,66 @@ class bybit extends bybit$1["default"] {
1707
1711
  //
1708
1712
  const data = this.safeDict(response, 'result', {});
1709
1713
  const rows = this.safeList(data, 'rows', []);
1710
- const result = {};
1711
- for (let i = 0; i < rows.length; i++) {
1712
- const currency = rows[i];
1713
- const currencyId = this.safeString(currency, 'coin');
1714
- const code = this.safeCurrencyCode(currencyId);
1715
- const name = this.safeString(currency, 'name');
1716
- const chains = this.safeList(currency, 'chains', []);
1717
- const networks = {};
1718
- for (let j = 0; j < chains.length; j++) {
1719
- const chain = chains[j];
1720
- const networkId = this.safeString(chain, 'chain');
1721
- const networkCode = this.networkIdToCode(networkId);
1722
- networks[networkCode] = {
1723
- 'info': chain,
1724
- 'id': networkId,
1725
- 'network': networkCode,
1726
- 'active': undefined,
1727
- 'deposit': this.safeInteger(chain, 'chainDeposit') === 1,
1728
- 'withdraw': this.safeInteger(chain, 'chainWithdraw') === 1,
1729
- 'fee': this.safeNumber(chain, 'withdrawFee'),
1730
- 'precision': this.parseNumber(this.parsePrecision(this.safeString(chain, 'minAccuracy'))),
1731
- 'limits': {
1732
- 'withdraw': {
1733
- 'min': this.safeNumber(chain, 'withdrawMin'),
1734
- 'max': undefined,
1735
- },
1736
- 'deposit': {
1737
- 'min': this.safeNumber(chain, 'depositMin'),
1738
- 'max': undefined,
1739
- },
1740
- },
1741
- };
1742
- }
1743
- result[code] = this.safeCurrencyStructure({
1744
- 'info': currency,
1745
- 'code': code,
1746
- 'id': currencyId,
1747
- 'name': name,
1714
+ return this.parseCurrencies(rows);
1715
+ }
1716
+ parseCurrency(currency) {
1717
+ const currencyId = this.safeString(currency, 'coin');
1718
+ const code = this.safeCurrencyCode(currencyId);
1719
+ const name = this.safeString(currency, 'name');
1720
+ const chains = this.safeList(currency, 'chains', []);
1721
+ const networks = {};
1722
+ for (let j = 0; j < chains.length; j++) {
1723
+ const chain = chains[j];
1724
+ const networkId = this.safeString(chain, 'chain');
1725
+ const networkCode = this.networkIdToCode(networkId, code);
1726
+ networks[networkCode] = {
1727
+ 'info': chain,
1728
+ 'id': networkId,
1729
+ 'network': networkCode,
1748
1730
  'active': undefined,
1749
- 'deposit': undefined,
1750
- 'withdraw': undefined,
1751
- 'fee': undefined,
1752
- 'precision': undefined,
1731
+ 'deposit': this.safeInteger(chain, 'chainDeposit') === 1,
1732
+ 'withdraw': this.safeInteger(chain, 'chainWithdraw') === 1,
1733
+ 'fee': this.safeNumber(chain, 'withdrawFee'),
1734
+ 'precision': this.parseNumber(this.parsePrecision(this.safeString(chain, 'minAccuracy'))),
1753
1735
  'limits': {
1754
- 'amount': {
1755
- 'min': undefined,
1756
- 'max': undefined,
1757
- },
1758
1736
  'withdraw': {
1759
- 'min': undefined,
1737
+ 'min': this.safeNumber(chain, 'withdrawMin'),
1760
1738
  'max': undefined,
1761
1739
  },
1762
1740
  'deposit': {
1763
- 'min': undefined,
1741
+ 'min': this.safeNumber(chain, 'depositMin'),
1764
1742
  'max': undefined,
1765
1743
  },
1766
1744
  },
1767
- 'networks': networks,
1768
- 'type': 'crypto', // atm exchange api provides only cryptos
1769
- });
1745
+ };
1770
1746
  }
1771
- return result;
1747
+ return this.safeCurrencyStructure({
1748
+ 'info': currency,
1749
+ 'code': code,
1750
+ 'id': currencyId,
1751
+ 'name': name,
1752
+ 'active': undefined,
1753
+ 'deposit': undefined,
1754
+ 'withdraw': undefined,
1755
+ 'fee': undefined,
1756
+ 'precision': undefined,
1757
+ 'limits': {
1758
+ 'amount': {
1759
+ 'min': undefined,
1760
+ 'max': undefined,
1761
+ },
1762
+ 'withdraw': {
1763
+ 'min': undefined,
1764
+ 'max': undefined,
1765
+ },
1766
+ 'deposit': {
1767
+ 'min': undefined,
1768
+ 'max': undefined,
1769
+ },
1770
+ },
1771
+ 'networks': networks,
1772
+ 'type': 'crypto', // atm exchange api provides only cryptos
1773
+ });
1772
1774
  }
1773
1775
  /**
1774
1776
  * @method
@@ -6077,7 +6079,7 @@ class bybit extends bybit$1["default"] {
6077
6079
  'txid': this.safeString(transaction, 'txID'),
6078
6080
  'timestamp': timestamp,
6079
6081
  'datetime': this.iso8601(timestamp),
6080
- 'network': this.networkIdToCode(this.safeString(transaction, 'chain')),
6082
+ 'network': this.networkIdToCode(this.safeString(transaction, 'chain'), code),
6081
6083
  'address': undefined,
6082
6084
  'addressTo': toAddress,
6083
6085
  'addressFrom': undefined,
@@ -6414,7 +6416,7 @@ class bybit extends bybit$1["default"] {
6414
6416
  request['tag'] = tag;
6415
6417
  }
6416
6418
  const [networkCode, query] = this.handleNetworkCodeAndParams(params);
6417
- const networkId = this.networkCodeToId(networkCode);
6419
+ const networkId = this.networkCodeToId(networkCode, code);
6418
6420
  if (networkId !== undefined) {
6419
6421
  request['chain'] = networkId.toUpperCase();
6420
6422
  }