ccxt 4.4.15 → 4.4.16

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 (207) hide show
  1. package/README.md +3 -3
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +1 -1
  4. package/dist/cjs/src/ascendex.js +2 -2
  5. package/dist/cjs/src/base/Exchange.js +1 -1
  6. package/dist/cjs/src/bigone.js +4 -2
  7. package/dist/cjs/src/binance.js +62 -5
  8. package/dist/cjs/src/bingx.js +3 -2
  9. package/dist/cjs/src/bit2c.js +3 -1
  10. package/dist/cjs/src/bitbank.js +4 -2
  11. package/dist/cjs/src/bitbns.js +4 -2
  12. package/dist/cjs/src/bitfinex.js +2 -0
  13. package/dist/cjs/src/bitfinex2.js +2 -0
  14. package/dist/cjs/src/bitget.js +3 -2
  15. package/dist/cjs/src/bitmart.js +2 -1
  16. package/dist/cjs/src/bitmex.js +2 -2
  17. package/dist/cjs/src/bitso.js +3 -2
  18. package/dist/cjs/src/bitstamp.js +4 -2
  19. package/dist/cjs/src/bitvavo.js +4 -2
  20. package/dist/cjs/src/blockchaincom.js +9 -7
  21. package/dist/cjs/src/blofin.js +23 -0
  22. package/dist/cjs/src/bybit.js +2 -2
  23. package/dist/cjs/src/cex.js +3 -2
  24. package/dist/cjs/src/coinbase.js +1 -1
  25. package/dist/cjs/src/coinex.js +2 -2
  26. package/dist/cjs/src/coinone.js +4 -1
  27. package/dist/cjs/src/coinsph.js +2 -2
  28. package/dist/cjs/src/cryptocom.js +2 -1
  29. package/dist/cjs/src/currencycom.js +2 -2
  30. package/dist/cjs/src/delta.js +4 -2
  31. package/dist/cjs/src/deribit.js +4 -2
  32. package/dist/cjs/src/digifinex.js +3 -1
  33. package/dist/cjs/src/exmo.js +4 -2
  34. package/dist/cjs/src/gate.js +3 -2
  35. package/dist/cjs/src/gemini.js +1 -0
  36. package/dist/cjs/src/hashkey.js +4 -2
  37. package/dist/cjs/src/hitbtc.js +4 -3
  38. package/dist/cjs/src/hollaex.js +3 -2
  39. package/dist/cjs/src/htx.js +12 -2
  40. package/dist/cjs/src/hyperliquid.js +8 -7
  41. package/dist/cjs/src/idex.js +1 -1
  42. package/dist/cjs/src/independentreserve.js +1 -1
  43. package/dist/cjs/src/indodax.js +1 -1
  44. package/dist/cjs/src/kraken.js +4 -2
  45. package/dist/cjs/src/kucoin.js +2 -1
  46. package/dist/cjs/src/kucoinfutures.js +3 -1
  47. package/dist/cjs/src/kuna.js +2 -0
  48. package/dist/cjs/src/lbank.js +11 -9
  49. package/dist/cjs/src/lykke.js +4 -2
  50. package/dist/cjs/src/mexc.js +2 -2
  51. package/dist/cjs/src/ndax.js +30 -2
  52. package/dist/cjs/src/oceanex.js +1 -1
  53. package/dist/cjs/src/okcoin.js +6 -4
  54. package/dist/cjs/src/okx.js +13 -2
  55. package/dist/cjs/src/onetrading.js +3 -2
  56. package/dist/cjs/src/oxfun.js +3 -3
  57. package/dist/cjs/src/paymium.js +2 -1
  58. package/dist/cjs/src/phemex.js +6 -4
  59. package/dist/cjs/src/poloniex.js +4 -2
  60. package/dist/cjs/src/probit.js +3 -2
  61. package/dist/cjs/src/timex.js +1 -1
  62. package/dist/cjs/src/tokocrypto.js +3 -3
  63. package/dist/cjs/src/upbit.js +3 -2
  64. package/dist/cjs/src/wavesexchange.js +7 -7
  65. package/dist/cjs/src/wazirx.js +22 -2
  66. package/dist/cjs/src/whitebit.js +4 -2
  67. package/dist/cjs/src/woo.js +4 -2
  68. package/dist/cjs/src/xt.js +4 -2
  69. package/dist/cjs/src/yobit.js +30 -21
  70. package/dist/cjs/src/zonda.js +27 -2
  71. package/js/ccxt.d.ts +1 -1
  72. package/js/ccxt.js +1 -1
  73. package/js/src/ascendex.d.ts +3 -9
  74. package/js/src/ascendex.js +2 -2
  75. package/js/src/base/Exchange.d.ts +7 -7
  76. package/js/src/base/Exchange.js +1 -1
  77. package/js/src/base/types.d.ts +4 -3
  78. package/js/src/bigone.d.ts +2 -8
  79. package/js/src/bigone.js +4 -2
  80. package/js/src/binance.d.ts +4 -8
  81. package/js/src/binance.js +62 -5
  82. package/js/src/bingx.d.ts +4 -10
  83. package/js/src/bingx.js +3 -2
  84. package/js/src/bit2c.d.ts +3 -15
  85. package/js/src/bit2c.js +3 -1
  86. package/js/src/bitbank.d.ts +2 -8
  87. package/js/src/bitbank.js +4 -2
  88. package/js/src/bitbns.d.ts +2 -8
  89. package/js/src/bitbns.js +4 -2
  90. package/js/src/bitfinex.d.ts +3 -15
  91. package/js/src/bitfinex.js +2 -0
  92. package/js/src/bitfinex2.d.ts +3 -15
  93. package/js/src/bitfinex2.js +2 -0
  94. package/js/src/bitget.d.ts +3 -15
  95. package/js/src/bitget.js +3 -2
  96. package/js/src/bitmart.d.ts +3 -15
  97. package/js/src/bitmart.js +2 -1
  98. package/js/src/bitmex.d.ts +2 -8
  99. package/js/src/bitmex.js +2 -2
  100. package/js/src/bitso.d.ts +2 -8
  101. package/js/src/bitso.js +3 -2
  102. package/js/src/bitstamp.d.ts +2 -8
  103. package/js/src/bitstamp.js +4 -2
  104. package/js/src/bitvavo.d.ts +2 -8
  105. package/js/src/bitvavo.js +4 -2
  106. package/js/src/blockchaincom.d.ts +2 -2
  107. package/js/src/blockchaincom.js +9 -7
  108. package/js/src/blofin.d.ts +1 -0
  109. package/js/src/blofin.js +23 -0
  110. package/js/src/bybit.d.ts +4 -16
  111. package/js/src/bybit.js +2 -2
  112. package/js/src/cex.d.ts +2 -8
  113. package/js/src/cex.js +3 -2
  114. package/js/src/coinbase.d.ts +3 -9
  115. package/js/src/coinbase.js +1 -1
  116. package/js/src/coinex.d.ts +4 -22
  117. package/js/src/coinex.js +2 -2
  118. package/js/src/coinone.d.ts +2 -2
  119. package/js/src/coinone.js +4 -1
  120. package/js/src/coinsph.d.ts +3 -15
  121. package/js/src/coinsph.js +2 -2
  122. package/js/src/cryptocom.d.ts +3 -3
  123. package/js/src/cryptocom.js +2 -1
  124. package/js/src/currencycom.d.ts +3 -15
  125. package/js/src/currencycom.js +2 -2
  126. package/js/src/delta.d.ts +3 -15
  127. package/js/src/delta.js +4 -2
  128. package/js/src/deribit.d.ts +2 -8
  129. package/js/src/deribit.js +4 -2
  130. package/js/src/digifinex.d.ts +3 -9
  131. package/js/src/digifinex.js +3 -1
  132. package/js/src/exmo.d.ts +2 -8
  133. package/js/src/exmo.js +4 -2
  134. package/js/src/gate.d.ts +2 -9
  135. package/js/src/gate.js +3 -2
  136. package/js/src/gemini.d.ts +3 -3
  137. package/js/src/gemini.js +1 -0
  138. package/js/src/hashkey.d.ts +3 -15
  139. package/js/src/hashkey.js +4 -2
  140. package/js/src/hitbtc.d.ts +2 -9
  141. package/js/src/hitbtc.js +4 -3
  142. package/js/src/hollaex.d.ts +3 -9
  143. package/js/src/hollaex.js +3 -2
  144. package/js/src/htx.d.ts +3 -3
  145. package/js/src/htx.js +12 -2
  146. package/js/src/hyperliquid.js +8 -7
  147. package/js/src/idex.d.ts +3 -15
  148. package/js/src/idex.js +1 -1
  149. package/js/src/independentreserve.d.ts +3 -15
  150. package/js/src/independentreserve.js +1 -1
  151. package/js/src/indodax.d.ts +2 -2
  152. package/js/src/indodax.js +1 -1
  153. package/js/src/kraken.d.ts +4 -22
  154. package/js/src/kraken.js +4 -2
  155. package/js/src/kucoin.d.ts +5 -23
  156. package/js/src/kucoin.js +2 -1
  157. package/js/src/kucoinfutures.d.ts +2 -8
  158. package/js/src/kucoinfutures.js +3 -1
  159. package/js/src/kuna.d.ts +4 -22
  160. package/js/src/kuna.js +2 -0
  161. package/js/src/lbank.d.ts +4 -16
  162. package/js/src/lbank.js +11 -9
  163. package/js/src/lykke.d.ts +2 -8
  164. package/js/src/lykke.js +4 -2
  165. package/js/src/mexc.d.ts +5 -17
  166. package/js/src/mexc.js +2 -2
  167. package/js/src/ndax.d.ts +4 -22
  168. package/js/src/ndax.js +30 -2
  169. package/js/src/oceanex.d.ts +3 -9
  170. package/js/src/oceanex.js +1 -1
  171. package/js/src/okcoin.d.ts +4 -10
  172. package/js/src/okcoin.js +6 -4
  173. package/js/src/okx.d.ts +4 -10
  174. package/js/src/okx.js +13 -2
  175. package/js/src/onetrading.d.ts +4 -22
  176. package/js/src/onetrading.js +3 -2
  177. package/js/src/oxfun.d.ts +3 -15
  178. package/js/src/oxfun.js +3 -3
  179. package/js/src/paymium.d.ts +5 -23
  180. package/js/src/paymium.js +2 -1
  181. package/js/src/phemex.d.ts +2 -8
  182. package/js/src/phemex.js +6 -4
  183. package/js/src/poloniex.d.ts +2 -8
  184. package/js/src/poloniex.js +4 -2
  185. package/js/src/probit.d.ts +4 -16
  186. package/js/src/probit.js +3 -2
  187. package/js/src/timex.d.ts +3 -15
  188. package/js/src/timex.js +1 -1
  189. package/js/src/tokocrypto.d.ts +2 -8
  190. package/js/src/tokocrypto.js +3 -3
  191. package/js/src/upbit.d.ts +5 -23
  192. package/js/src/upbit.js +3 -2
  193. package/js/src/wavesexchange.d.ts +2 -9
  194. package/js/src/wavesexchange.js +7 -7
  195. package/js/src/wazirx.d.ts +2 -8
  196. package/js/src/wazirx.js +22 -2
  197. package/js/src/whitebit.d.ts +2 -8
  198. package/js/src/whitebit.js +4 -2
  199. package/js/src/woo.d.ts +2 -8
  200. package/js/src/woo.js +4 -2
  201. package/js/src/xt.d.ts +3 -15
  202. package/js/src/xt.js +4 -2
  203. package/js/src/yobit.d.ts +2 -26
  204. package/js/src/yobit.js +30 -21
  205. package/js/src/zonda.d.ts +4 -16
  206. package/js/src/zonda.js +27 -2
  207. package/package.json +1 -1
@@ -52,6 +52,8 @@ class deribit extends deribit$1 {
52
52
  'fetchCurrencies': true,
53
53
  'fetchDeposit': false,
54
54
  'fetchDepositAddress': true,
55
+ 'fetchDepositAddresses': false,
56
+ 'fetchDepositAddressesByNetwork': false,
55
57
  'fetchDeposits': true,
56
58
  'fetchDepositWithdrawFees': true,
57
59
  'fetchFundingRate': true,
@@ -1078,11 +1080,11 @@ class deribit extends deribit$1 {
1078
1080
  const address = this.safeString(result, 'address');
1079
1081
  this.checkAddress(address);
1080
1082
  return {
1083
+ 'info': response,
1081
1084
  'currency': code,
1085
+ 'network': undefined,
1082
1086
  'address': address,
1083
1087
  'tag': undefined,
1084
- 'network': undefined,
1085
- 'info': response,
1086
1088
  };
1087
1089
  }
1088
1090
  parseTicker(ticker, market = undefined) {
@@ -48,6 +48,8 @@ class digifinex extends digifinex$1 {
48
48
  'fetchCrossBorrowRates': true,
49
49
  'fetchCurrencies': true,
50
50
  'fetchDepositAddress': true,
51
+ 'fetchDepositAddresses': false,
52
+ 'fetchDepositAddressesByNetwork': false,
51
53
  'fetchDeposits': true,
52
54
  'fetchDepositWithdrawFee': 'emulated',
53
55
  'fetchDepositWithdrawFees': true,
@@ -2741,9 +2743,9 @@ class digifinex extends digifinex$1 {
2741
2743
  return {
2742
2744
  'info': depositAddress,
2743
2745
  'currency': code,
2746
+ 'network': undefined,
2744
2747
  'address': address,
2745
2748
  'tag': tag,
2746
- 'network': undefined,
2747
2749
  };
2748
2750
  }
2749
2751
  async fetchDepositAddress(code, params = {}) {
@@ -42,6 +42,8 @@ class exmo extends exmo$1 {
42
42
  'fetchCurrencies': true,
43
43
  'fetchDeposit': true,
44
44
  'fetchDepositAddress': true,
45
+ 'fetchDepositAddresses': false,
46
+ 'fetchDepositAddressesByNetwork': false,
45
47
  'fetchDeposits': true,
46
48
  'fetchDepositsWithdrawals': true,
47
49
  'fetchDepositWithdrawFee': 'emulated',
@@ -2129,11 +2131,11 @@ class exmo extends exmo$1 {
2129
2131
  }
2130
2132
  this.checkAddress(address);
2131
2133
  return {
2134
+ 'info': response,
2132
2135
  'currency': code,
2136
+ 'network': undefined,
2133
2137
  'address': address,
2134
2138
  'tag': tag,
2135
- 'network': undefined,
2136
- 'info': response,
2137
2139
  };
2138
2140
  }
2139
2141
  getMarketFromTrades(trades) {
@@ -106,6 +106,8 @@ class gate extends gate$1 {
106
106
  'fetchCrossBorrowRates': false,
107
107
  'fetchCurrencies': true,
108
108
  'fetchDepositAddress': true,
109
+ 'fetchDepositAddresses': false,
110
+ 'fetchDepositAddressesByNetwork': false,
109
111
  'fetchDeposits': true,
110
112
  'fetchDepositWithdrawFee': 'emulated',
111
113
  'fetchDepositWithdrawFees': true,
@@ -1998,11 +2000,10 @@ class gate extends gate$1 {
1998
2000
  this.checkAddress(address);
1999
2001
  return {
2000
2002
  'info': response,
2001
- 'code': code,
2002
2003
  'currency': code,
2004
+ 'network': network,
2003
2005
  'address': address,
2004
2006
  'tag': tag,
2005
- 'network': network,
2006
2007
  };
2007
2008
  }
2008
2009
  async fetchTradingFee(symbol, params = {}) {
@@ -47,6 +47,7 @@ class gemini extends gemini$1 {
47
47
  'fetchCrossBorrowRates': false,
48
48
  'fetchCurrencies': true,
49
49
  'fetchDepositAddress': true,
50
+ 'fetchDepositAddresses': false,
50
51
  'fetchDepositAddressesByNetwork': true,
51
52
  'fetchDepositsWithdrawals': true,
52
53
  'fetchFundingHistory': false,
@@ -65,6 +65,8 @@ class hashkey extends hashkey$1 {
65
65
  'fetchConvertTradeHistory': false,
66
66
  'fetchCurrencies': true,
67
67
  'fetchDepositAddress': true,
68
+ 'fetchDepositAddresses': false,
69
+ 'fetchDepositAddressesByNetwork': false,
68
70
  'fetchDeposits': true,
69
71
  'fetchDepositsWithdrawals': false,
70
72
  'fetchFundingHistory': false,
@@ -1815,11 +1817,11 @@ class hashkey extends hashkey$1 {
1815
1817
  tag = undefined;
1816
1818
  }
1817
1819
  return {
1820
+ 'info': depositAddress,
1818
1821
  'currency': currency['code'],
1822
+ 'network': undefined,
1819
1823
  'address': address,
1820
1824
  'tag': tag,
1821
- 'network': undefined,
1822
- 'info': depositAddress,
1823
1825
  };
1824
1826
  }
1825
1827
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -49,6 +49,8 @@ class hitbtc extends hitbtc$1 {
49
49
  'fetchCrossBorrowRates': false,
50
50
  'fetchCurrencies': true,
51
51
  'fetchDepositAddress': true,
52
+ 'fetchDepositAddresses': false,
53
+ 'fetchDepositAddressesByNetwork': false,
52
54
  'fetchDeposits': true,
53
55
  'fetchDepositsWithdrawals': true,
54
56
  'fetchDepositWithdrawFee': 'emulated',
@@ -987,11 +989,10 @@ class hitbtc extends hitbtc$1 {
987
989
  const parsedCode = this.safeCurrencyCode(currencyId);
988
990
  return {
989
991
  'info': response,
990
- 'address': address,
991
- 'tag': tag,
992
- 'code': parsedCode,
993
992
  'currency': parsedCode,
994
993
  'network': undefined,
994
+ 'address': address,
995
+ 'tag': tag,
995
996
  };
996
997
  }
997
998
  parseBalance(response) {
@@ -51,6 +51,7 @@ class hollaex extends hollaex$1 {
51
51
  'fetchCurrencies': true,
52
52
  'fetchDepositAddress': 'emulated',
53
53
  'fetchDepositAddresses': true,
54
+ 'fetchDepositAddressesByNetwork': false,
54
55
  'fetchDeposits': true,
55
56
  'fetchFundingHistory': false,
56
57
  'fetchFundingRate': false,
@@ -1346,11 +1347,11 @@ class hollaex extends hollaex$1 {
1346
1347
  currency = this.safeCurrency(currencyId, currency);
1347
1348
  const network = this.safeString(depositAddress, 'network');
1348
1349
  return {
1350
+ 'info': depositAddress,
1349
1351
  'currency': currency['code'],
1352
+ 'network': network,
1350
1353
  'address': address,
1351
1354
  'tag': tag,
1352
- 'network': network,
1353
- 'info': depositAddress,
1354
1355
  };
1355
1356
  }
1356
1357
  async fetchDepositAddresses(codes = undefined, params = {}) {
@@ -6359,8 +6359,8 @@ class htx extends htx$1 {
6359
6359
  /**
6360
6360
  * @method
6361
6361
  * @name htx#fetchDepositAddress
6362
- * @see https://www.htx.com/en-us/opend/newApiPages/?id=7ec50029-7773-11ed-9966-0242ac110003
6363
6362
  * @description fetch the deposit address for a currency associated with this account
6363
+ * @see https://www.htx.com/en-us/opend/newApiPages/?id=7ec50029-7773-11ed-9966-0242ac110003
6364
6364
  * @param {string} code unified currency code
6365
6365
  * @param {object} [params] extra parameters specific to the exchange API endpoint
6366
6366
  * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
@@ -7139,6 +7139,8 @@ class htx extends htx$1 {
7139
7139
  * @method
7140
7140
  * @name htx#fetchBorrowInterest
7141
7141
  * @description fetch the interest owed by the user for borrowing currency for margin trading
7142
+ * @see https://huobiapi.github.io/docs/spot/v1/en/#search-past-margin-orders-cross
7143
+ * @see https://huobiapi.github.io/docs/spot/v1/en/#search-past-margin-orders-isolated
7142
7144
  * @param {string} code unified currency code
7143
7145
  * @param {string} symbol unified market symbol when fetch interest in isolated markets
7144
7146
  * @param {int} [since] the earliest time in ms to fetch borrrow interest for
@@ -7718,7 +7720,11 @@ class htx extends htx$1 {
7718
7720
  * @method
7719
7721
  * @name htx#fetchPositions
7720
7722
  * @description fetch all open positions
7721
- * @param {string[]|undefined} symbols list of unified market symbols
7723
+ * @see https://huobiapi.github.io/docs/usdt_swap/v1/en/#cross-query-user-39-s-position-information
7724
+ * @see https://huobiapi.github.io/docs/usdt_swap/v1/en/#isolated-query-user-s-position-information
7725
+ * @see https://huobiapi.github.io/docs/coin_margined_swap/v1/en/#query-user-s-position-information
7726
+ * @see https://huobiapi.github.io/docs/dm/v1/en/#query-user-s-position-information
7727
+ * @param {string[]} [symbols] list of unified market symbols
7722
7728
  * @param {object} [params] extra parameters specific to the exchange API endpoint
7723
7729
  * @param {string} [params.subType] 'linear' or 'inverse'
7724
7730
  * @param {string} [params.type] *inverse only* 'future', or 'swap'
@@ -7862,6 +7868,10 @@ class htx extends htx$1 {
7862
7868
  * @method
7863
7869
  * @name htx#fetchPosition
7864
7870
  * @description fetch data on a single open contract trade position
7871
+ * @see https://huobiapi.github.io/docs/usdt_swap/v1/en/#cross-query-assets-and-positions
7872
+ * @see https://huobiapi.github.io/docs/usdt_swap/v1/en/#isolated-query-assets-and-positions
7873
+ * @see https://huobiapi.github.io/docs/coin_margined_swap/v1/en/#query-assets-and-positions
7874
+ * @see https://huobiapi.github.io/docs/dm/v1/en/#query-assets-and-positions
7865
7875
  * @param {string} symbol unified market symbol of the market the position is held in, default is undefined
7866
7876
  * @param {object} [params] extra parameters specific to the exchange API endpoint
7867
7877
  * @returns {object} a [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
@@ -2221,11 +2221,12 @@ class hyperliquid extends hyperliquid$1 {
2221
2221
  market = this.safeMarket(marketId, undefined);
2222
2222
  const symbol = market['symbol'];
2223
2223
  const leverage = this.safeDict(entry, 'leverage', {});
2224
- const isIsolated = (this.safeString(leverage, 'type') === 'isolated');
2225
- const quantity = this.safeNumber(leverage, 'rawUsd');
2224
+ const marginMode = this.safeString(leverage, 'type');
2225
+ const isIsolated = (marginMode === 'isolated');
2226
+ const size = this.safeNumber(entry, 'szi');
2226
2227
  let side = undefined;
2227
- if (quantity !== undefined) {
2228
- side = (quantity > 0) ? 'short' : 'long';
2228
+ if (size !== undefined) {
2229
+ side = (size > 0) ? 'long' : 'short';
2229
2230
  }
2230
2231
  const unrealizedPnl = this.safeNumber(entry, 'unrealizedPnl');
2231
2232
  const initialMargin = this.safeNumber(entry, 'marginUsed');
@@ -2239,20 +2240,20 @@ class hyperliquid extends hyperliquid$1 {
2239
2240
  'isolated': isIsolated,
2240
2241
  'hedged': undefined,
2241
2242
  'side': side,
2242
- 'contracts': this.safeNumber(entry, 'szi'),
2243
+ 'contracts': size,
2243
2244
  'contractSize': undefined,
2244
2245
  'entryPrice': this.safeNumber(entry, 'entryPx'),
2245
2246
  'markPrice': undefined,
2246
2247
  'notional': this.safeNumber(entry, 'positionValue'),
2247
2248
  'leverage': this.safeNumber(leverage, 'value'),
2248
- 'collateral': undefined,
2249
+ 'collateral': this.safeNumber(entry, 'marginUsed'),
2249
2250
  'initialMargin': initialMargin,
2250
2251
  'maintenanceMargin': undefined,
2251
2252
  'initialMarginPercentage': undefined,
2252
2253
  'maintenanceMarginPercentage': undefined,
2253
2254
  'unrealizedPnl': unrealizedPnl,
2254
2255
  'liquidationPrice': this.safeNumber(entry, 'liquidationPx'),
2255
- 'marginMode': undefined,
2256
+ 'marginMode': marginMode,
2256
2257
  'percentage': percentage,
2257
2258
  });
2258
2259
  }
@@ -1809,9 +1809,9 @@ class idex extends idex$1 {
1809
1809
  return {
1810
1810
  'info': depositAddress,
1811
1811
  'currency': undefined,
1812
+ 'network': 'MATIC',
1812
1813
  'address': address,
1813
1814
  'tag': undefined,
1814
- 'network': 'MATIC',
1815
1815
  };
1816
1816
  }
1817
1817
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
@@ -801,9 +801,9 @@ class independentreserve extends independentreserve$1 {
801
801
  return {
802
802
  'info': depositAddress,
803
803
  'currency': this.safeString(currency, 'code'),
804
+ 'network': undefined,
804
805
  'address': address,
805
806
  'tag': this.safeString(depositAddress, 'Tag'),
806
- 'network': undefined,
807
807
  };
808
808
  }
809
809
  async withdraw(code, amount, address, tag = undefined, params = {}) {
@@ -1284,8 +1284,8 @@ class indodax extends indodax$1 {
1284
1284
  result[code] = {
1285
1285
  'info': {},
1286
1286
  'currency': code,
1287
- 'address': address,
1288
1287
  'network': network,
1288
+ 'address': address,
1289
1289
  'tag': undefined,
1290
1290
  };
1291
1291
  }
@@ -59,6 +59,8 @@ class kraken extends kraken$1 {
59
59
  'fetchCrossBorrowRates': false,
60
60
  'fetchCurrencies': true,
61
61
  'fetchDepositAddress': true,
62
+ 'fetchDepositAddresses': false,
63
+ 'fetchDepositAddressesByNetwork': false,
62
64
  'fetchDeposits': true,
63
65
  'fetchFundingHistory': false,
64
66
  'fetchFundingRate': false,
@@ -2883,11 +2885,11 @@ class kraken extends kraken$1 {
2883
2885
  const code = currency['code'];
2884
2886
  this.checkAddress(address);
2885
2887
  return {
2888
+ 'info': depositAddress,
2886
2889
  'currency': code,
2890
+ 'network': undefined,
2887
2891
  'address': address,
2888
2892
  'tag': tag,
2889
- 'network': undefined,
2890
- 'info': depositAddress,
2891
2893
  };
2892
2894
  }
2893
2895
  async withdraw(code, amount, address, tag = undefined, params = {}) {
@@ -59,6 +59,7 @@ class kucoin extends kucoin$1 {
59
59
  'fetchCrossBorrowRates': false,
60
60
  'fetchCurrencies': true,
61
61
  'fetchDepositAddress': true,
62
+ 'fetchDepositAddresses': false,
62
63
  'fetchDepositAddressesByNetwork': true,
63
64
  'fetchDeposits': true,
64
65
  'fetchDepositWithdrawFee': true,
@@ -1980,9 +1981,9 @@ class kucoin extends kucoin$1 {
1980
1981
  return {
1981
1982
  'info': depositAddress,
1982
1983
  'currency': code,
1984
+ 'network': this.networkIdToCode(this.safeString(depositAddress, 'chain')),
1983
1985
  'address': address,
1984
1986
  'tag': this.safeString(depositAddress, 'memo'),
1985
- 'network': this.networkIdToCode(this.safeString(depositAddress, 'chain')),
1986
1987
  };
1987
1988
  }
1988
1989
  async fetchDepositAddressesByNetwork(code, params = {}) {
@@ -56,6 +56,8 @@ class kucoinfutures extends kucoinfutures$1 {
56
56
  'fetchCrossBorrowRates': false,
57
57
  'fetchCurrencies': false,
58
58
  'fetchDepositAddress': true,
59
+ 'fetchDepositAddresses': false,
60
+ 'fetchDepositAddressesByNetwork': false,
59
61
  'fetchDeposits': true,
60
62
  'fetchDepositWithdrawFee': false,
61
63
  'fetchDepositWithdrawFees': false,
@@ -681,9 +683,9 @@ class kucoinfutures extends kucoinfutures$1 {
681
683
  return {
682
684
  'info': response,
683
685
  'currency': currencyId,
686
+ 'network': this.safeString(data, 'chain'),
684
687
  'address': address,
685
688
  'tag': this.safeString(data, 'memo'),
686
- 'network': this.safeString(data, 'chain'),
687
689
  };
688
690
  }
689
691
  async fetchOrderBook(symbol, limit = undefined, params = {}) {
@@ -51,6 +51,8 @@ class kuna extends kuna$1 {
51
51
  'fetchCurrencies': true,
52
52
  'fetchDeposit': true,
53
53
  'fetchDepositAddress': true,
54
+ 'fetchDepositAddresses': false,
55
+ 'fetchDepositAddressesByNetwork': false,
54
56
  'fetchDeposits': true,
55
57
  'fetchDepositsWithdrawals': false,
56
58
  'fetchFundingHistory': false,
@@ -50,6 +50,8 @@ class lbank extends lbank$1 {
50
50
  'fetchCrossBorrowRate': false,
51
51
  'fetchCrossBorrowRates': false,
52
52
  'fetchDepositAddress': true,
53
+ 'fetchDepositAddresses': false,
54
+ 'fetchDepositAddressesByNetwork': false,
53
55
  'fetchDepositWithdrawFee': 'emulated',
54
56
  'fetchDepositWithdrawFees': true,
55
57
  'fetchFundingHistory': false,
@@ -1991,11 +1993,11 @@ class lbank extends lbank$1 {
1991
1993
  const inverseNetworks = this.safeValue(this.options, 'inverse-networks', {});
1992
1994
  const networkCode = this.safeStringUpper(inverseNetworks, networkId, networkId);
1993
1995
  return {
1996
+ 'info': response,
1994
1997
  'currency': code,
1998
+ 'network': networkCode,
1995
1999
  'address': address,
1996
2000
  'tag': tag,
1997
- 'network': networkCode,
1998
- 'info': response,
1999
2001
  };
2000
2002
  }
2001
2003
  async fetchDepositAddressSupplement(code, params = {}) {
@@ -2031,11 +2033,11 @@ class lbank extends lbank$1 {
2031
2033
  const inverseNetworks = this.safeValue(this.options, 'inverse-networks', {});
2032
2034
  const networkCode = this.safeStringUpper(inverseNetworks, network, network);
2033
2035
  return {
2036
+ 'info': response,
2034
2037
  'currency': code,
2038
+ 'network': networkCode,
2035
2039
  'address': address,
2036
2040
  'tag': tag,
2037
- 'network': networkCode,
2038
- 'info': response,
2039
2041
  };
2040
2042
  }
2041
2043
  async withdraw(code, amount, address, tag = undefined, params = {}) {
@@ -2470,27 +2472,27 @@ class lbank extends lbank$1 {
2470
2472
  * @description when using private endpoint, only returns information for currencies with non-zero balance, use public method by specifying this.options['fetchDepositWithdrawFees']['method'] = 'fetchPublicDepositWithdrawFees'
2471
2473
  * @see https://www.lbank.com/en-US/docs/index.html#get-all-coins-information
2472
2474
  * @see https://www.lbank.com/en-US/docs/index.html#withdrawal-configurations
2473
- * @param {string[]|undefined} codes array of unified currency codes
2475
+ * @param {string[]} [codes] array of unified currency codes
2474
2476
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2475
2477
  * @returns {object} a list of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure}
2476
2478
  */
2477
2479
  await this.loadMarkets();
2478
2480
  const isAuthorized = this.checkRequiredCredentials(false);
2479
- const response = undefined;
2481
+ let response = undefined;
2480
2482
  if (isAuthorized === true) {
2481
2483
  const options = this.safeValue(this.options, 'fetchDepositWithdrawFees', {});
2482
2484
  const defaultMethod = this.safeString(options, 'method', 'fetchPrivateDepositWithdrawFees');
2483
2485
  const method = this.safeString(params, 'method', defaultMethod);
2484
2486
  params = this.omit(params, 'method');
2485
2487
  if (method === 'fetchPublicDepositWithdrawFees') {
2486
- await this.fetchPublicDepositWithdrawFees(codes, params);
2488
+ response = await this.fetchPublicDepositWithdrawFees(codes, params);
2487
2489
  }
2488
2490
  else {
2489
- await this.fetchPrivateDepositWithdrawFees(codes, params);
2491
+ response = await this.fetchPrivateDepositWithdrawFees(codes, params);
2490
2492
  }
2491
2493
  }
2492
2494
  else {
2493
- await this.fetchPublicDepositWithdrawFees(codes, params);
2495
+ response = await this.fetchPublicDepositWithdrawFees(codes, params);
2494
2496
  }
2495
2497
  return response;
2496
2498
  }
@@ -43,6 +43,8 @@ class lykke extends lykke$1 {
43
43
  'fetchCrossBorrowRates': false,
44
44
  'fetchCurrencies': true,
45
45
  'fetchDepositAddress': true,
46
+ 'fetchDepositAddresses': false,
47
+ 'fetchDepositAddressesByNetwork': false,
46
48
  'fetchDeposits': false,
47
49
  'fetchDepositsWithdrawals': true,
48
50
  'fetchFundingHistory': false,
@@ -1142,11 +1144,11 @@ class lykke extends lykke$1 {
1142
1144
  const tag = this.safeString(response, 'addressExtension');
1143
1145
  this.checkAddress(address);
1144
1146
  return {
1147
+ 'info': response,
1145
1148
  'currency': code,
1149
+ 'network': undefined,
1146
1150
  'address': address,
1147
1151
  'tag': tag,
1148
- 'network': undefined,
1149
- 'info': response,
1150
1152
  };
1151
1153
  }
1152
1154
  parseTransaction(transaction, currency = undefined) {
@@ -4530,11 +4530,11 @@ class mexc extends mexc$1 {
4530
4530
  const networkId = this.safeString(depositAddress, 'netWork');
4531
4531
  this.checkAddress(address);
4532
4532
  return {
4533
+ 'info': depositAddress,
4533
4534
  'currency': this.safeCurrencyCode(currencyId, currency),
4535
+ 'network': this.networkIdToCode(networkId),
4534
4536
  'address': address,
4535
4537
  'tag': this.safeString(depositAddress, 'memo'),
4536
- 'network': this.networkIdToCode(networkId),
4537
- 'info': depositAddress,
4538
4538
  };
4539
4539
  }
4540
4540
  async fetchDepositAddressesByNetwork(code, params = {}) {
@@ -42,29 +42,51 @@ class ndax extends ndax$1 {
42
42
  'editOrder': true,
43
43
  'fetchAccounts': true,
44
44
  'fetchBalance': true,
45
+ 'fetchBorrowInterest': false,
46
+ 'fetchBorrowRate': false,
45
47
  'fetchBorrowRateHistories': false,
46
48
  'fetchBorrowRateHistory': false,
49
+ 'fetchBorrowRates': false,
50
+ 'fetchBorrowRatesPerSymbol': false,
47
51
  'fetchCrossBorrowRate': false,
48
52
  'fetchCrossBorrowRates': false,
49
53
  'fetchCurrencies': true,
50
54
  'fetchDepositAddress': true,
55
+ 'fetchDepositAddresses': false,
56
+ 'fetchDepositAddressesByNetwork': false,
51
57
  'fetchDeposits': true,
52
58
  'fetchFundingHistory': false,
59
+ 'fetchFundingInterval': false,
60
+ 'fetchFundingIntervals': false,
53
61
  'fetchFundingRate': false,
54
62
  'fetchFundingRateHistory': false,
55
63
  'fetchFundingRates': false,
64
+ 'fetchGreeks': false,
56
65
  'fetchIndexOHLCV': false,
57
66
  'fetchIsolatedBorrowRate': false,
58
67
  'fetchIsolatedBorrowRates': false,
68
+ 'fetchIsolatedPositions': false,
59
69
  'fetchLedger': true,
60
70
  'fetchLeverage': false,
71
+ 'fetchLeverages': false,
61
72
  'fetchLeverageTiers': false,
73
+ 'fetchLiquidations': false,
74
+ 'fetchMarginAdjustmentHistory': false,
75
+ 'fetchMarginMode': false,
76
+ 'fetchMarginModes': false,
77
+ 'fetchMarketLeverageTiers': false,
62
78
  'fetchMarkets': true,
63
79
  'fetchMarkOHLCV': false,
80
+ 'fetchMarkPrices': false,
81
+ 'fetchMyLiquidations': false,
82
+ 'fetchMySettlementHistory': false,
64
83
  'fetchMyTrades': true,
65
84
  'fetchOHLCV': true,
85
+ 'fetchOpenInterest': false,
66
86
  'fetchOpenInterestHistory': false,
67
87
  'fetchOpenOrders': true,
88
+ 'fetchOption': false,
89
+ 'fetchOptionChain': false,
68
90
  'fetchOrder': true,
69
91
  'fetchOrderBook': true,
70
92
  'fetchOrders': true,
@@ -77,16 +99,22 @@ class ndax extends ndax$1 {
77
99
  'fetchPositionsHistory': false,
78
100
  'fetchPositionsRisk': false,
79
101
  'fetchPremiumIndexOHLCV': false,
102
+ 'fetchSettlementHistory': false,
80
103
  'fetchTicker': true,
81
104
  'fetchTickers': false,
82
105
  'fetchTime': false,
83
106
  'fetchTrades': true,
84
107
  'fetchTradingFee': false,
85
108
  'fetchTradingFees': false,
109
+ 'fetchUnderlyingAssets': false,
110
+ 'fetchVolatilityHistory': false,
86
111
  'fetchWithdrawals': true,
87
112
  'reduceMargin': false,
113
+ 'repayCrossMargin': false,
114
+ 'repayIsolatedMargin': false,
88
115
  'sandbox': true,
89
116
  'setLeverage': false,
117
+ 'setMargin': false,
90
118
  'setMarginMode': false,
91
119
  'setPositionMode': false,
92
120
  'signIn': true,
@@ -2017,11 +2045,11 @@ class ndax extends ndax$1 {
2017
2045
  }
2018
2046
  this.checkAddress(address);
2019
2047
  return {
2048
+ 'info': depositAddress,
2020
2049
  'currency': code,
2050
+ 'network': undefined,
2021
2051
  'address': address,
2022
2052
  'tag': tag,
2023
- 'network': undefined,
2024
- 'info': depositAddress,
2025
2053
  };
2026
2054
  }
2027
2055
  async createDepositAddress(code, params = {}) {
@@ -985,9 +985,9 @@ class oceanex extends oceanex$1 {
985
985
  return {
986
986
  'info': depositAddress,
987
987
  'currency': this.safeCurrencyCode(currencyId, currency),
988
+ 'network': this.networkIdToCode(networkId),
988
989
  'address': address,
989
990
  'tag': this.safeString(depositAddress, 'memo'),
990
- 'network': this.networkIdToCode(networkId),
991
991
  };
992
992
  }
993
993
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
@@ -45,6 +45,8 @@ class okcoin extends okcoin$1 {
45
45
  'fetchClosedOrders': true,
46
46
  'fetchCurrencies': true,
47
47
  'fetchDepositAddress': true,
48
+ 'fetchDepositAddresses': false,
49
+ 'fetchDepositAddressesByNetwork': false,
48
50
  'fetchDeposits': true,
49
51
  'fetchFundingHistory': false,
50
52
  'fetchFundingRate': false,
@@ -2247,17 +2249,17 @@ class okcoin extends okcoin$1 {
2247
2249
  //
2248
2250
  this.checkAddress(address);
2249
2251
  return {
2252
+ 'info': depositAddress,
2250
2253
  'currency': code,
2254
+ 'network': network,
2251
2255
  'address': address,
2252
2256
  'tag': tag,
2253
- 'network': network,
2254
- 'info': depositAddress,
2255
2257
  };
2256
2258
  }
2257
2259
  async fetchDepositAddress(code, params = {}) {
2258
2260
  /**
2259
2261
  * @method
2260
- * @name okx#fetchDepositAddress
2262
+ * @name okcoin#fetchDepositAddress
2261
2263
  * @description fetch the deposit address for a currency associated with this account
2262
2264
  * @see https://www.okx.com/docs-v5/en/#funding-account-rest-api-get-deposit-address
2263
2265
  * @param {string} code unified currency code
@@ -2279,7 +2281,7 @@ class okcoin extends okcoin$1 {
2279
2281
  async fetchDepositAddressesByNetwork(code, params = {}) {
2280
2282
  /**
2281
2283
  * @method
2282
- * @name okx#fetchDepositAddressesByNetwork
2284
+ * @name okcoin#fetchDepositAddressesByNetwork
2283
2285
  * @description fetch a dictionary of addresses for a currency, indexed by network
2284
2286
  * @see https://www.okx.com/docs-v5/en/#funding-account-rest-api-get-deposit-address
2285
2287
  * @param {string} code unified currency code of the currency for the deposit address
@@ -1830,6 +1830,16 @@ class okx extends okx$1 {
1830
1830
  // "sodUtc0": "0.07872",
1831
1831
  // "sodUtc8": "0.07345"
1832
1832
  // }
1833
+ // {
1834
+ // instId: 'LTC-USDT',
1835
+ // idxPx: '65.74',
1836
+ // open24h: '65.37',
1837
+ // high24h: '66.15',
1838
+ // low24h: '64.97',
1839
+ // sodUtc0: '65.68',
1840
+ // sodUtc8: '65.54',
1841
+ // ts: '1728467346900'
1842
+ // },
1833
1843
  //
1834
1844
  const timestamp = this.safeInteger(ticker, 'ts');
1835
1845
  const marketId = this.safeString(ticker, 'instId');
@@ -1863,6 +1873,7 @@ class okx extends okx$1 {
1863
1873
  'baseVolume': baseVolume,
1864
1874
  'quoteVolume': quoteVolume,
1865
1875
  'markPrice': this.safeString(ticker, 'markPx'),
1876
+ 'indexPrice': this.safeString(ticker, 'idxPx'),
1866
1877
  'info': ticker,
1867
1878
  }, market);
1868
1879
  }
@@ -4811,11 +4822,11 @@ class okx extends okx$1 {
4811
4822
  const networkCode = this.networkIdToCode(network, code);
4812
4823
  this.checkAddress(address);
4813
4824
  return {
4825
+ 'info': depositAddress,
4814
4826
  'currency': code,
4827
+ 'network': networkCode,
4815
4828
  'address': address,
4816
4829
  'tag': tag,
4817
- 'network': networkCode,
4818
- 'info': depositAddress,
4819
4830
  };
4820
4831
  }
4821
4832
  async fetchDepositAddressesByNetwork(code, params = {}) {