ccxt 4.4.99 → 4.4.100

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 (426) hide show
  1. package/README.md +4 -4
  2. package/dist/373.ccxt.browser.js +7630 -0
  3. package/dist/373.ccxt.browser.min.js +1 -0
  4. package/dist/ccxt.browser.min.js +8 -8
  5. package/dist/cjs/ccxt.js +288 -288
  6. package/dist/cjs/src/abstract/alpaca.js +3 -1
  7. package/dist/cjs/src/abstract/apex.js +3 -1
  8. package/dist/cjs/src/abstract/ascendex.js +3 -1
  9. package/dist/cjs/src/abstract/bigone.js +3 -1
  10. package/dist/cjs/src/abstract/binance.js +3 -1
  11. package/dist/cjs/src/abstract/bingx.js +3 -1
  12. package/dist/cjs/src/abstract/bit2c.js +3 -1
  13. package/dist/cjs/src/abstract/bitbank.js +3 -1
  14. package/dist/cjs/src/abstract/bitbns.js +3 -1
  15. package/dist/cjs/src/abstract/bitfinex.js +3 -1
  16. package/dist/cjs/src/abstract/bitflyer.js +3 -1
  17. package/dist/cjs/src/abstract/bitget.js +3 -1
  18. package/dist/cjs/src/abstract/bithumb.js +3 -1
  19. package/dist/cjs/src/abstract/bitmart.js +3 -1
  20. package/dist/cjs/src/abstract/bitmex.js +3 -1
  21. package/dist/cjs/src/abstract/bitopro.js +3 -1
  22. package/dist/cjs/src/abstract/bitrue.js +3 -1
  23. package/dist/cjs/src/abstract/bitso.js +3 -1
  24. package/dist/cjs/src/abstract/bitstamp.js +3 -1
  25. package/dist/cjs/src/abstract/bitteam.js +3 -1
  26. package/dist/cjs/src/abstract/bittrade.js +3 -1
  27. package/dist/cjs/src/abstract/bitvavo.js +3 -1
  28. package/dist/cjs/src/abstract/blockchaincom.js +3 -1
  29. package/dist/cjs/src/abstract/blofin.js +3 -1
  30. package/dist/cjs/src/abstract/btcalpha.js +3 -1
  31. package/dist/cjs/src/abstract/btcbox.js +3 -1
  32. package/dist/cjs/src/abstract/btcmarkets.js +3 -1
  33. package/dist/cjs/src/abstract/btcturk.js +3 -1
  34. package/dist/cjs/src/abstract/bybit.js +3 -1
  35. package/dist/cjs/src/abstract/cex.js +3 -1
  36. package/dist/cjs/src/abstract/coinbase.js +3 -1
  37. package/dist/cjs/src/abstract/coinbaseexchange.js +3 -1
  38. package/dist/cjs/src/abstract/coinbaseinternational.js +3 -1
  39. package/dist/cjs/src/abstract/coincatch.js +3 -1
  40. package/dist/cjs/src/abstract/coincheck.js +3 -1
  41. package/dist/cjs/src/abstract/coinex.js +3 -1
  42. package/dist/cjs/src/abstract/coinmate.js +3 -1
  43. package/dist/cjs/src/abstract/coinmetro.js +3 -1
  44. package/dist/cjs/src/abstract/coinone.js +3 -1
  45. package/dist/cjs/src/abstract/coinsph.js +3 -1
  46. package/dist/cjs/src/abstract/coinspot.js +3 -1
  47. package/dist/cjs/src/abstract/cryptocom.js +3 -1
  48. package/dist/cjs/src/abstract/cryptomus.js +3 -1
  49. package/dist/cjs/src/abstract/defx.js +3 -1
  50. package/dist/cjs/src/abstract/delta.js +3 -1
  51. package/dist/cjs/src/abstract/deribit.js +3 -1
  52. package/dist/cjs/src/abstract/derive.js +3 -1
  53. package/dist/cjs/src/abstract/digifinex.js +3 -1
  54. package/dist/cjs/src/abstract/ellipx.js +3 -1
  55. package/dist/cjs/src/abstract/exmo.js +3 -1
  56. package/dist/cjs/src/abstract/foxbit.js +3 -1
  57. package/dist/cjs/src/abstract/gate.js +3 -1
  58. package/dist/cjs/src/abstract/gemini.js +3 -1
  59. package/dist/cjs/src/abstract/hashkey.js +3 -1
  60. package/dist/cjs/src/abstract/hibachi.js +3 -1
  61. package/dist/cjs/src/abstract/hitbtc.js +3 -1
  62. package/dist/cjs/src/abstract/hollaex.js +3 -1
  63. package/dist/cjs/src/abstract/htx.js +3 -1
  64. package/dist/cjs/src/abstract/hyperliquid.js +3 -1
  65. package/dist/cjs/src/abstract/independentreserve.js +3 -1
  66. package/dist/cjs/src/abstract/indodax.js +3 -1
  67. package/dist/cjs/src/abstract/kraken.js +3 -1
  68. package/dist/cjs/src/abstract/krakenfutures.js +3 -1
  69. package/dist/cjs/src/abstract/kucoin.js +3 -1
  70. package/dist/cjs/src/abstract/kucoinfutures.js +4 -2
  71. package/dist/cjs/src/abstract/latoken.js +3 -1
  72. package/dist/cjs/src/abstract/lbank.js +3 -1
  73. package/dist/cjs/src/abstract/luno.js +3 -1
  74. package/dist/cjs/src/abstract/mercado.js +3 -1
  75. package/dist/cjs/src/abstract/mexc.js +3 -1
  76. package/dist/cjs/src/abstract/modetrade.js +3 -1
  77. package/dist/cjs/src/abstract/ndax.js +3 -1
  78. package/dist/cjs/src/abstract/novadax.js +3 -1
  79. package/dist/cjs/src/abstract/oceanex.js +3 -1
  80. package/dist/cjs/src/abstract/okcoin.js +3 -1
  81. package/dist/cjs/src/abstract/okx.js +3 -1
  82. package/dist/cjs/src/abstract/onetrading.js +3 -1
  83. package/dist/cjs/src/abstract/oxfun.js +3 -1
  84. package/dist/cjs/src/abstract/p2b.js +3 -1
  85. package/dist/cjs/src/abstract/paradex.js +3 -1
  86. package/dist/cjs/src/abstract/paymium.js +3 -1
  87. package/dist/cjs/src/abstract/phemex.js +3 -1
  88. package/dist/cjs/src/abstract/poloniex.js +3 -1
  89. package/dist/cjs/src/abstract/probit.js +3 -1
  90. package/dist/cjs/src/abstract/timex.js +3 -1
  91. package/dist/cjs/src/abstract/tokocrypto.js +3 -1
  92. package/dist/cjs/src/abstract/tradeogre.js +3 -1
  93. package/dist/cjs/src/abstract/upbit.js +3 -1
  94. package/dist/cjs/src/abstract/vertex.js +3 -1
  95. package/dist/cjs/src/abstract/wavesexchange.js +3 -1
  96. package/dist/cjs/src/abstract/whitebit.js +3 -1
  97. package/dist/cjs/src/abstract/woo.js +3 -1
  98. package/dist/cjs/src/abstract/woofipro.js +3 -1
  99. package/dist/cjs/src/abstract/xt.js +3 -1
  100. package/dist/cjs/src/abstract/yobit.js +3 -1
  101. package/dist/cjs/src/abstract/zaif.js +3 -1
  102. package/dist/cjs/src/abstract/zonda.js +3 -1
  103. package/dist/cjs/src/alpaca.js +4 -2
  104. package/dist/cjs/src/apex.js +4 -2
  105. package/dist/cjs/src/ascendex.js +4 -2
  106. package/dist/cjs/src/base/Exchange.js +51 -11
  107. package/dist/cjs/src/base/functions/encode.js +2 -2
  108. package/dist/cjs/src/base/ws/Client.js +8 -2
  109. package/dist/cjs/src/base/ws/WsClient.js +4 -2
  110. package/dist/cjs/src/bequant.js +4 -2
  111. package/dist/cjs/src/bigone.js +4 -2
  112. package/dist/cjs/src/binance.js +5 -2
  113. package/dist/cjs/src/binancecoinm.js +4 -2
  114. package/dist/cjs/src/binanceus.js +4 -2
  115. package/dist/cjs/src/binanceusdm.js +4 -2
  116. package/dist/cjs/src/bingx.js +36 -4
  117. package/dist/cjs/src/bit2c.js +4 -2
  118. package/dist/cjs/src/bitbank.js +4 -2
  119. package/dist/cjs/src/bitbns.js +4 -2
  120. package/dist/cjs/src/bitfinex.js +7 -2
  121. package/dist/cjs/src/bitflyer.js +4 -2
  122. package/dist/cjs/src/bitget.js +42 -16
  123. package/dist/cjs/src/bithumb.js +4 -2
  124. package/dist/cjs/src/bitmart.js +4 -2
  125. package/dist/cjs/src/bitmex.js +5 -2
  126. package/dist/cjs/src/bitopro.js +4 -2
  127. package/dist/cjs/src/bitrue.js +4 -2
  128. package/dist/cjs/src/bitso.js +4 -2
  129. package/dist/cjs/src/bitstamp.js +4 -2
  130. package/dist/cjs/src/bitteam.js +4 -2
  131. package/dist/cjs/src/bittrade.js +4 -2
  132. package/dist/cjs/src/bitvavo.js +4 -2
  133. package/dist/cjs/src/blockchaincom.js +4 -2
  134. package/dist/cjs/src/blofin.js +4 -2
  135. package/dist/cjs/src/btcalpha.js +4 -2
  136. package/dist/cjs/src/btcbox.js +4 -2
  137. package/dist/cjs/src/btcmarkets.js +4 -2
  138. package/dist/cjs/src/btcturk.js +4 -2
  139. package/dist/cjs/src/bybit.js +4 -2
  140. package/dist/cjs/src/cex.js +4 -2
  141. package/dist/cjs/src/coinbase.js +4 -2
  142. package/dist/cjs/src/coinbaseadvanced.js +4 -2
  143. package/dist/cjs/src/coinbaseexchange.js +4 -2
  144. package/dist/cjs/src/coinbaseinternational.js +4 -2
  145. package/dist/cjs/src/coincatch.js +4 -2
  146. package/dist/cjs/src/coincheck.js +4 -2
  147. package/dist/cjs/src/coinex.js +5 -3
  148. package/dist/cjs/src/coinmate.js +4 -2
  149. package/dist/cjs/src/coinmetro.js +4 -2
  150. package/dist/cjs/src/coinone.js +4 -2
  151. package/dist/cjs/src/coinsph.js +4 -2
  152. package/dist/cjs/src/coinspot.js +4 -2
  153. package/dist/cjs/src/cryptocom.js +4 -2
  154. package/dist/cjs/src/cryptomus.js +4 -2
  155. package/dist/cjs/src/defx.js +4 -2
  156. package/dist/cjs/src/delta.js +4 -2
  157. package/dist/cjs/src/deribit.js +4 -2
  158. package/dist/cjs/src/derive.js +4 -2
  159. package/dist/cjs/src/digifinex.js +4 -2
  160. package/dist/cjs/src/ellipx.js +4 -2
  161. package/dist/cjs/src/exmo.js +4 -2
  162. package/dist/cjs/src/fmfwio.js +4 -2
  163. package/dist/cjs/src/foxbit.js +7 -6
  164. package/dist/cjs/src/gate.js +25 -2
  165. package/dist/cjs/src/gateio.js +4 -2
  166. package/dist/cjs/src/gemini.js +4 -2
  167. package/dist/cjs/src/hashkey.js +4 -2
  168. package/dist/cjs/src/hibachi.js +4 -2
  169. package/dist/cjs/src/hitbtc.js +4 -2
  170. package/dist/cjs/src/hollaex.js +4 -2
  171. package/dist/cjs/src/htx.js +5 -2
  172. package/dist/cjs/src/huobi.js +4 -2
  173. package/dist/cjs/src/hyperliquid.js +83 -30
  174. package/dist/cjs/src/independentreserve.js +4 -2
  175. package/dist/cjs/src/indodax.js +4 -2
  176. package/dist/cjs/src/kraken.js +4 -2
  177. package/dist/cjs/src/krakenfutures.js +5 -2
  178. package/dist/cjs/src/kucoin.js +4 -2
  179. package/dist/cjs/src/kucoinfutures.js +5 -2
  180. package/dist/cjs/src/latoken.js +4 -2
  181. package/dist/cjs/src/lbank.js +5 -3
  182. package/dist/cjs/src/luno.js +4 -2
  183. package/dist/cjs/src/mercado.js +4 -2
  184. package/dist/cjs/src/mexc.js +11 -2
  185. package/dist/cjs/src/modetrade.js +100 -2
  186. package/dist/cjs/src/myokx.js +4 -2
  187. package/dist/cjs/src/ndax.js +4 -2
  188. package/dist/cjs/src/novadax.js +4 -2
  189. package/dist/cjs/src/oceanex.js +4 -2
  190. package/dist/cjs/src/okcoin.js +4 -2
  191. package/dist/cjs/src/okx.js +4 -2
  192. package/dist/cjs/src/okxus.js +4 -2
  193. package/dist/cjs/src/onetrading.js +37 -2
  194. package/dist/cjs/src/oxfun.js +4 -2
  195. package/dist/cjs/src/p2b.js +36 -2
  196. package/dist/cjs/src/paradex.js +5 -2
  197. package/dist/cjs/src/paymium.js +4 -2
  198. package/dist/cjs/src/phemex.js +4 -2
  199. package/dist/cjs/src/poloniex.js +4 -2
  200. package/dist/cjs/src/pro/alpaca.js +4 -2
  201. package/dist/cjs/src/pro/apex.js +4 -2
  202. package/dist/cjs/src/pro/ascendex.js +4 -2
  203. package/dist/cjs/src/pro/bequant.js +5 -3
  204. package/dist/cjs/src/pro/binance.js +6 -3
  205. package/dist/cjs/src/pro/binancecoinm.js +5 -3
  206. package/dist/cjs/src/pro/binanceus.js +5 -3
  207. package/dist/cjs/src/pro/binanceusdm.js +4 -2
  208. package/dist/cjs/src/pro/bingx.js +4 -2
  209. package/dist/cjs/src/pro/bitfinex.js +4 -2
  210. package/dist/cjs/src/pro/bitget.js +4 -2
  211. package/dist/cjs/src/pro/bithumb.js +4 -2
  212. package/dist/cjs/src/pro/bitmart.js +4 -2
  213. package/dist/cjs/src/pro/bitmex.js +4 -2
  214. package/dist/cjs/src/pro/bitopro.js +4 -2
  215. package/dist/cjs/src/pro/bitrue.js +4 -2
  216. package/dist/cjs/src/pro/bitstamp.js +4 -2
  217. package/dist/cjs/src/pro/bittrade.js +4 -2
  218. package/dist/cjs/src/pro/bitvavo.js +5 -3
  219. package/dist/cjs/src/pro/blockchaincom.js +4 -2
  220. package/dist/cjs/src/pro/blofin.js +4 -2
  221. package/dist/cjs/src/pro/bybit.js +5 -2
  222. package/dist/cjs/src/pro/cex.js +4 -2
  223. package/dist/cjs/src/pro/coinbase.js +4 -2
  224. package/dist/cjs/src/pro/coinbaseadvanced.js +4 -2
  225. package/dist/cjs/src/pro/coinbaseexchange.js +4 -2
  226. package/dist/cjs/src/pro/coinbaseinternational.js +4 -2
  227. package/dist/cjs/src/pro/coincatch.js +4 -2
  228. package/dist/cjs/src/pro/coincheck.js +4 -2
  229. package/dist/cjs/src/pro/coinex.js +5 -3
  230. package/dist/cjs/src/pro/coinone.js +4 -2
  231. package/dist/cjs/src/pro/cryptocom.js +4 -2
  232. package/dist/cjs/src/pro/defx.js +4 -2
  233. package/dist/cjs/src/pro/deribit.js +4 -2
  234. package/dist/cjs/src/pro/derive.js +4 -2
  235. package/dist/cjs/src/pro/exmo.js +4 -2
  236. package/dist/cjs/src/pro/gate.js +4 -2
  237. package/dist/cjs/src/pro/gateio.js +4 -2
  238. package/dist/cjs/src/pro/gemini.js +4 -2
  239. package/dist/cjs/src/pro/hashkey.js +4 -2
  240. package/dist/cjs/src/pro/hitbtc.js +4 -2
  241. package/dist/cjs/src/pro/hollaex.js +4 -2
  242. package/dist/cjs/src/pro/htx.js +4 -2
  243. package/dist/cjs/src/pro/huobi.js +4 -2
  244. package/dist/cjs/src/pro/hyperliquid.js +107 -14
  245. package/dist/cjs/src/pro/independentreserve.js +4 -2
  246. package/dist/cjs/src/pro/kraken.js +4 -2
  247. package/dist/cjs/src/pro/krakenfutures.js +4 -2
  248. package/dist/cjs/src/pro/kucoin.js +5 -3
  249. package/dist/cjs/src/pro/kucoinfutures.js +5 -3
  250. package/dist/cjs/src/pro/lbank.js +4 -2
  251. package/dist/cjs/src/pro/luno.js +4 -2
  252. package/dist/cjs/src/pro/mexc.js +342 -159
  253. package/dist/cjs/src/pro/modetrade.js +4 -2
  254. package/dist/cjs/src/pro/myokx.js +4 -2
  255. package/dist/cjs/src/pro/ndax.js +4 -2
  256. package/dist/cjs/src/pro/okcoin.js +4 -2
  257. package/dist/cjs/src/pro/okx.js +6 -3
  258. package/dist/cjs/src/pro/okxus.js +4 -2
  259. package/dist/cjs/src/pro/onetrading.js +4 -2
  260. package/dist/cjs/src/pro/oxfun.js +5 -3
  261. package/dist/cjs/src/pro/p2b.js +4 -2
  262. package/dist/cjs/src/pro/paradex.js +4 -2
  263. package/dist/cjs/src/pro/phemex.js +4 -2
  264. package/dist/cjs/src/pro/poloniex.js +4 -2
  265. package/dist/cjs/src/pro/probit.js +4 -2
  266. package/dist/cjs/src/pro/tradeogre.js +4 -2
  267. package/dist/cjs/src/pro/upbit.js +4 -2
  268. package/dist/cjs/src/pro/vertex.js +4 -2
  269. package/dist/cjs/src/pro/whitebit.js +4 -2
  270. package/dist/cjs/src/pro/woo.js +4 -2
  271. package/dist/cjs/src/pro/woofipro.js +4 -2
  272. package/dist/cjs/src/pro/xt.js +4 -2
  273. package/dist/cjs/src/probit.js +39 -2
  274. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +7180 -0
  275. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +1 -1
  276. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +2 -2
  277. package/dist/cjs/src/static_dependencies/ethers/fragments.js +2 -2
  278. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +2 -2
  279. package/dist/cjs/src/static_dependencies/ethers/interface.js +2 -2
  280. package/dist/cjs/src/static_dependencies/ethers/typed.js +2 -2
  281. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +2 -2
  282. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +2 -2
  283. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -7
  284. package/dist/cjs/src/static_dependencies/node-fetch/response.js +3 -1
  285. package/dist/cjs/src/static_dependencies/qs/index.cjs.js +3 -1
  286. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +3 -1
  287. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +3 -1
  288. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +7 -7
  289. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +4 -2
  290. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +1 -1
  291. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +4 -2
  292. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +3 -1
  293. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +28 -26
  294. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +2 -2
  295. package/dist/cjs/src/timex.js +4 -2
  296. package/dist/cjs/src/tokocrypto.js +4 -2
  297. package/dist/cjs/src/tradeogre.js +4 -2
  298. package/dist/cjs/src/upbit.js +4 -2
  299. package/dist/cjs/src/vertex.js +4 -2
  300. package/dist/cjs/src/wavesexchange.js +4 -2
  301. package/dist/cjs/src/whitebit.js +4 -2
  302. package/dist/cjs/src/woo.js +4 -2
  303. package/dist/cjs/src/woofipro.js +100 -2
  304. package/dist/cjs/src/xt.js +4 -2
  305. package/dist/cjs/src/yobit.js +4 -2
  306. package/dist/cjs/src/zaif.js +4 -2
  307. package/dist/cjs/src/zonda.js +4 -2
  308. package/js/ccxt.d.ts +1 -1
  309. package/js/ccxt.js +1 -1
  310. package/js/src/abstract/bingx.d.ts +1 -0
  311. package/js/src/alpaca.d.ts +1 -1
  312. package/js/src/apex.d.ts +1 -1
  313. package/js/src/ascendex.d.ts +1 -1
  314. package/js/src/base/Exchange.d.ts +9 -7
  315. package/js/src/base/Exchange.js +50 -10
  316. package/js/src/base/types.d.ts +2 -1
  317. package/js/src/base/ws/Client.d.ts +1 -0
  318. package/js/src/base/ws/Client.js +5 -1
  319. package/js/src/bigone.d.ts +1 -1
  320. package/js/src/binance.d.ts +2 -2
  321. package/js/src/binance.js +1 -0
  322. package/js/src/bingx.d.ts +3 -2
  323. package/js/src/bingx.js +32 -2
  324. package/js/src/bitbank.d.ts +1 -1
  325. package/js/src/bitfinex.d.ts +1 -1
  326. package/js/src/bitfinex.js +3 -0
  327. package/js/src/bitflyer.d.ts +1 -1
  328. package/js/src/bitget.d.ts +4 -2
  329. package/js/src/bitget.js +38 -14
  330. package/js/src/bithumb.d.ts +1 -1
  331. package/js/src/bitmart.d.ts +2 -2
  332. package/js/src/bitmex.d.ts +2 -2
  333. package/js/src/bitmex.js +1 -0
  334. package/js/src/bitopro.d.ts +1 -1
  335. package/js/src/bitrue.d.ts +2 -2
  336. package/js/src/bitso.d.ts +1 -1
  337. package/js/src/bitstamp.d.ts +1 -1
  338. package/js/src/bittrade.d.ts +1 -1
  339. package/js/src/bitvavo.d.ts +1 -1
  340. package/js/src/blockchaincom.d.ts +1 -1
  341. package/js/src/blofin.d.ts +1 -1
  342. package/js/src/btcmarkets.d.ts +1 -1
  343. package/js/src/bybit.d.ts +2 -2
  344. package/js/src/coinbase.d.ts +1 -1
  345. package/js/src/coinbaseexchange.d.ts +1 -1
  346. package/js/src/coinbaseinternational.d.ts +1 -1
  347. package/js/src/coincatch.d.ts +2 -2
  348. package/js/src/coinex.d.ts +3 -3
  349. package/js/src/coinex.js +1 -1
  350. package/js/src/coinmate.d.ts +1 -1
  351. package/js/src/coinsph.d.ts +1 -1
  352. package/js/src/cryptocom.d.ts +1 -1
  353. package/js/src/defx.d.ts +2 -2
  354. package/js/src/delta.d.ts +1 -1
  355. package/js/src/deribit.d.ts +1 -1
  356. package/js/src/digifinex.d.ts +2 -2
  357. package/js/src/ellipx.d.ts +1 -1
  358. package/js/src/exmo.d.ts +1 -1
  359. package/js/src/foxbit.d.ts +1 -1
  360. package/js/src/foxbit.js +3 -3
  361. package/js/src/gate.d.ts +2 -2
  362. package/js/src/gate.js +21 -0
  363. package/js/src/gemini.d.ts +1 -1
  364. package/js/src/hashkey.d.ts +3 -3
  365. package/js/src/hibachi.d.ts +1 -1
  366. package/js/src/hitbtc.d.ts +2 -2
  367. package/js/src/hollaex.d.ts +1 -1
  368. package/js/src/htx.d.ts +3 -3
  369. package/js/src/htx.js +1 -0
  370. package/js/src/hyperliquid.d.ts +12 -2
  371. package/js/src/hyperliquid.js +79 -28
  372. package/js/src/independentreserve.d.ts +1 -1
  373. package/js/src/indodax.d.ts +1 -1
  374. package/js/src/kraken.d.ts +1 -1
  375. package/js/src/krakenfutures.d.ts +1 -1
  376. package/js/src/krakenfutures.js +1 -0
  377. package/js/src/kucoin.d.ts +2 -2
  378. package/js/src/kucoinfutures.d.ts +3 -2
  379. package/js/src/kucoinfutures.js +1 -0
  380. package/js/src/lbank.d.ts +1 -1
  381. package/js/src/lbank.js +1 -1
  382. package/js/src/mercado.d.ts +1 -1
  383. package/js/src/mexc.d.ts +2 -2
  384. package/js/src/mexc.js +7 -0
  385. package/js/src/modetrade.d.ts +26 -3
  386. package/js/src/modetrade.js +96 -0
  387. package/js/src/ndax.d.ts +1 -1
  388. package/js/src/novadax.d.ts +1 -1
  389. package/js/src/okcoin.d.ts +1 -1
  390. package/js/src/okx.d.ts +2 -2
  391. package/js/src/onetrading.js +33 -0
  392. package/js/src/oxfun.d.ts +1 -1
  393. package/js/src/p2b.js +32 -0
  394. package/js/src/paradex.d.ts +1 -1
  395. package/js/src/paradex.js +1 -0
  396. package/js/src/phemex.d.ts +2 -2
  397. package/js/src/poloniex.d.ts +2 -2
  398. package/js/src/pro/binance.js +2 -1
  399. package/js/src/pro/bitvavo.js +1 -1
  400. package/js/src/pro/bybit.js +1 -0
  401. package/js/src/pro/coinex.js +1 -1
  402. package/js/src/pro/hyperliquid.d.ts +26 -0
  403. package/js/src/pro/hyperliquid.js +103 -12
  404. package/js/src/pro/kucoin.js +1 -1
  405. package/js/src/pro/kucoinfutures.js +1 -1
  406. package/js/src/pro/mexc.d.ts +9 -6
  407. package/js/src/pro/mexc.js +338 -157
  408. package/js/src/pro/okx.js +2 -1
  409. package/js/src/pro/oxfun.js +1 -1
  410. package/js/src/probit.d.ts +1 -1
  411. package/js/src/probit.js +35 -0
  412. package/js/src/protobuf/mexc/compiled.cjs +7180 -0
  413. package/js/src/protobuf/mexc/compiled.d.cts +2 -0
  414. package/js/src/tokocrypto.d.ts +1 -1
  415. package/js/src/upbit.d.ts +1 -1
  416. package/js/src/vertex.d.ts +1 -1
  417. package/js/src/wavesexchange.d.ts +1 -1
  418. package/js/src/whitebit.d.ts +2 -2
  419. package/js/src/woo.d.ts +4 -4
  420. package/js/src/woofipro.d.ts +26 -3
  421. package/js/src/woofipro.js +96 -0
  422. package/js/src/xt.d.ts +3 -3
  423. package/js/src/yobit.d.ts +1 -1
  424. package/js/src/zaif.d.ts +1 -1
  425. package/js/src/zonda.d.ts +1 -1
  426. package/package.json +4 -3
@@ -292,7 +292,7 @@ export default class foxbit extends Exchange {
292
292
  * @param {object} [params] extra parameters specific to the exchange API endpoint
293
293
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
294
294
  */
295
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
295
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
296
296
  /**
297
297
  * @method
298
298
  * @name foxbit#fetchLedger
package/js/src/foxbit.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // ---------------------------------------------------------------------------
2
- import { Precise } from '../ccxt.js';
2
+ import { Precise } from './base/Precise.js';
3
3
  import Exchange from './abstract/foxbit.js';
4
4
  import { AccountSuspended, ArgumentsRequired, AuthenticationError, BadRequest, BadSymbol, ExchangeError, ExchangeNotAvailable, InsufficientFunds, InvalidOrder, OnMaintenance, PermissionDenied, RateLimitExceeded } from './base/errors.js';
5
5
  import { DECIMAL_PLACES } from './base/functions/number.js';
@@ -79,7 +79,7 @@ export default class foxbit extends Exchange {
79
79
  '1M': '1M',
80
80
  },
81
81
  'urls': {
82
- 'logo': 'https://github.com/user-attachments/assets/ba1435eb-1d59-4393-8de7-0db10a002fb3',
82
+ 'logo': 'https://github.com/user-attachments/assets/1f8faca2-ae2f-4222-b33e-5671e7d873dd',
83
83
  'api': {
84
84
  'public': 'https://api.foxbit.com.br',
85
85
  'private': 'https://api.foxbit.com.br',
@@ -1680,7 +1680,7 @@ export default class foxbit extends Exchange {
1680
1680
  'percentage': this.safeString(rolling_24h, 'price_change_percent'),
1681
1681
  'average': undefined,
1682
1682
  'baseVolume': this.safeString(rolling_24h, 'volume'),
1683
- 'quoteVolume': undefined,
1683
+ 'quoteVolume': this.safeString(rolling_24h, 'quote_volume'),
1684
1684
  'info': ticker,
1685
1685
  }, market);
1686
1686
  }
package/js/src/gate.d.ts CHANGED
@@ -422,7 +422,7 @@ export default class gate extends Exchange {
422
422
  * @param {object} [params] extra parameters specific to the exchange API endpoint
423
423
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
424
424
  */
425
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
425
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
426
426
  parseTransactionStatus(status: Str): string;
427
427
  parseTransactionType(type: any): string;
428
428
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
@@ -652,7 +652,7 @@ export default class gate extends Exchange {
652
652
  * @param {object} [params] extra parameters specific to the exchange API endpoint
653
653
  * @returns {object} response from the exchange
654
654
  */
655
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
655
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
656
656
  parsePosition(position: Dict, market?: Market): Position;
657
657
  /**
658
658
  * @method
package/js/src/gate.js CHANGED
@@ -7654,12 +7654,33 @@ export default class gate extends Exchange {
7654
7654
  if (quoteValueString === undefined) {
7655
7655
  quoteValueString = Precise.stringMul(baseValueString, priceString);
7656
7656
  }
7657
+ // --- derive side ---
7658
+ // 1) options payload has explicit 'side': 'long' | 'short'
7659
+ const optPos = this.safeStringLower(liquidation, 'side');
7660
+ let side = undefined;
7661
+ if (optPos === 'long') {
7662
+ side = 'buy';
7663
+ }
7664
+ else if (optPos === 'short') {
7665
+ side = 'sell';
7666
+ }
7667
+ else {
7668
+ if (size !== undefined) { // 2) futures/perpetual (and fallback for options): infer from size
7669
+ if (Precise.stringGt(size, '0')) {
7670
+ side = 'buy';
7671
+ }
7672
+ else if (Precise.stringLt(size, '0')) {
7673
+ side = 'sell';
7674
+ }
7675
+ }
7676
+ }
7657
7677
  return this.safeLiquidation({
7658
7678
  'info': liquidation,
7659
7679
  'symbol': this.safeSymbol(marketId, market),
7660
7680
  'contracts': this.parseNumber(contractsString),
7661
7681
  'contractSize': this.parseNumber(contractSizeString),
7662
7682
  'price': this.parseNumber(priceString),
7683
+ 'side': side,
7663
7684
  'baseValue': this.parseNumber(baseValueString),
7664
7685
  'quoteValue': this.parseNumber(Precise.stringAbs(quoteValueString)),
7665
7686
  'timestamp': timestamp,
@@ -179,7 +179,7 @@ export default class gemini extends Exchange {
179
179
  * @param {object} [params] extra parameters specific to the exchange API endpoint
180
180
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
181
181
  */
182
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
182
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
183
183
  nonce(): number;
184
184
  /**
185
185
  * @method
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/hashkey.js';
2
- import type { Account, Balances, Currencies, Currency, Dict, FundingRateHistory, LastPrice, LastPrices, Leverage, LeverageTier, LeverageTiers, Int, Market, Num, OHLCV, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry, LedgerEntry, FundingRate, FundingRates, DepositAddress } from './base/types.js';
2
+ import type { Account, Balances, Currencies, Currency, Dict, FundingRateHistory, LastPrice, LastPrices, Leverage, LeverageTier, LeverageTiers, Int, Market, Num, OHLCV, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, Trade, TradingFeeInterface, TradingFees, Transaction, TransferEntry, LedgerEntry, FundingRate, FundingRates, DepositAddress, int } from './base/types.js';
3
3
  /**
4
4
  * @class hashkey
5
5
  * @augments Exchange
@@ -210,7 +210,7 @@ export default class hashkey extends Exchange {
210
210
  * @param {string} [params.platform] the platform to withdraw to (hashkey, HashKey HK)
211
211
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
212
212
  */
213
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
213
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
214
214
  parseTransaction(transaction: any, currency?: Currency): Transaction;
215
215
  parseTransactionStatus(status: any): string;
216
216
  /**
@@ -584,7 +584,7 @@ export default class hashkey extends Exchange {
584
584
  * @param {object} [params] extra parameters specific to the exchange API endpoint
585
585
  * @returns {object} response from the exchange
586
586
  */
587
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<Leverage>;
587
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<Leverage>;
588
588
  /**
589
589
  * @method
590
590
  * @name hashkey#fetchLeverageTiers
@@ -182,7 +182,7 @@ export default class hibachi extends Exchange {
182
182
  * @param {object} [params] extra parameters specific to the exchange API endpoint
183
183
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
184
184
  */
185
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
185
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
186
186
  nonce(): number;
187
187
  signMessage(message: any, privateKey: any): any;
188
188
  /**
@@ -384,7 +384,7 @@ export default class hitbtc extends Exchange {
384
384
  * @param {object} [params] extra parameters specific to the exchange API endpoint
385
385
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
386
386
  */
387
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
387
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
388
388
  /**
389
389
  * @method
390
390
  * @name hitbtc#fetchFundingRates
@@ -522,7 +522,7 @@ export default class hitbtc extends Exchange {
522
522
  * @param {object} [params] extra parameters specific to the exchange API endpoint
523
523
  * @returns {object} response from the exchange
524
524
  */
525
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
525
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
526
526
  /**
527
527
  * @method
528
528
  * @name hitbtc#fetchDepositWithdrawFees
@@ -283,7 +283,7 @@ export default class hollaex extends Exchange {
283
283
  * @param {object} [params] extra parameters specific to the exchange API endpoint
284
284
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
285
285
  */
286
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
286
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
287
287
  parseDepositWithdrawFee(fee: any, currency?: Currency): Dict;
288
288
  /**
289
289
  * @method
package/js/src/htx.d.ts CHANGED
@@ -402,7 +402,7 @@ export default class htx extends Exchange {
402
402
  * @param {object} [params] extra parameters specific to the exchange API endpoint
403
403
  * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
404
404
  */
405
- createTrailingPercentOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, trailingPercent?: any, trailingTriggerPrice?: any, params?: {}): Promise<Order>;
405
+ createTrailingPercentOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, trailingPercent?: Num, trailingTriggerPrice?: Num, params?: {}): Promise<Order>;
406
406
  /**
407
407
  * @method
408
408
  * @ignore
@@ -586,7 +586,7 @@ export default class htx extends Exchange {
586
586
  * @param {object} [params] extra parameters specific to the exchange API endpoint
587
587
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
588
588
  */
589
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
589
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
590
590
  parseTransfer(transfer: Dict, currency?: Currency): TransferEntry;
591
591
  /**
592
592
  * @method
@@ -707,7 +707,7 @@ export default class htx extends Exchange {
707
707
  * @param {object} [params] extra parameters specific to the exchange API endpoint
708
708
  * @returns {object} response from the exchange
709
709
  */
710
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
710
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
711
711
  parseIncome(income: any, market?: Market): {
712
712
  info: any;
713
713
  symbol: string;
package/js/src/htx.js CHANGED
@@ -9524,6 +9524,7 @@ export default class htx extends Exchange {
9524
9524
  'contracts': this.safeNumber(liquidation, 'volume'),
9525
9525
  'contractSize': this.safeNumber(market, 'contractSize'),
9526
9526
  'price': this.safeNumber(liquidation, 'price'),
9527
+ 'side': this.safeStringLower(liquidation, 'direction'),
9527
9528
  'baseValue': this.safeNumber(liquidation, 'amount'),
9528
9529
  'quoteValue': this.safeNumber(liquidation, 'trade_turnover'),
9529
9530
  'timestamp': timestamp,
@@ -246,6 +246,7 @@ export default class hyperliquid extends Exchange {
246
246
  * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
247
247
  */
248
248
  cancelOrders(ids: string[], symbol?: Str, params?: {}): Promise<any[]>;
249
+ cancelOrdersRequest(ids: string[], symbol?: Str, params?: {}): Dict;
249
250
  /**
250
251
  * @method
251
252
  * @name hyperliquid#cancelOrdersForSymbols
@@ -470,7 +471,7 @@ export default class hyperliquid extends Exchange {
470
471
  * @param {string} [params.marginMode] margin mode must be either [isolated, cross], default is cross
471
472
  * @returns {object} response from the exchange
472
473
  */
473
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
474
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
474
475
  /**
475
476
  * @method
476
477
  * @name hyperliquid#addMargin
@@ -528,7 +529,7 @@ export default class hyperliquid extends Exchange {
528
529
  * @param {string} [params.vaultAddress] vault address withdraw from
529
530
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
530
531
  */
531
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
532
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
532
533
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
533
534
  /**
534
535
  * @method
@@ -624,6 +625,15 @@ export default class hyperliquid extends Exchange {
624
625
  amount: number;
625
626
  rate: number;
626
627
  };
628
+ /**
629
+ * @method
630
+ * @name hyperliquid#reserveRequestWeight
631
+ * @description Instead of trading to increase the address based rate limits, this action allows reserving additional actions for 0.0005 USDC per request. The cost is paid from the Perps balance.
632
+ * @param {number} weight the weight to reserve, 1 weight = 1 action, 0.0005 USDC per action
633
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
634
+ * @returns {object} a response object
635
+ */
636
+ reserveRequestWeight(weight: Num, params?: {}): Promise<Dict>;
627
637
  extractTypeFromDelta(data?: any[]): any[];
628
638
  formatVaultAddress(address?: Str): string;
629
639
  handlePublicAddress(methodName: string, params: Dict): any[];
@@ -1717,6 +1717,46 @@ export default class hyperliquid extends Exchange {
1717
1717
  throw new ArgumentsRequired(this.id + ' cancelOrders() requires a symbol argument');
1718
1718
  }
1719
1719
  await this.loadMarkets();
1720
+ const request = this.cancelOrdersRequest(ids, symbol, params);
1721
+ const response = await this.privatePostExchange(request);
1722
+ //
1723
+ // {
1724
+ // "status":"ok",
1725
+ // "response":{
1726
+ // "type":"cancel",
1727
+ // "data":{
1728
+ // "statuses":[
1729
+ // "success"
1730
+ // ]
1731
+ // }
1732
+ // }
1733
+ // }
1734
+ //
1735
+ const innerResponse = this.safeDict(response, 'response');
1736
+ const data = this.safeDict(innerResponse, 'data');
1737
+ const statuses = this.safeList(data, 'statuses');
1738
+ const orders = [];
1739
+ for (let i = 0; i < statuses.length; i++) {
1740
+ const status = statuses[i];
1741
+ orders.push(this.safeOrder({
1742
+ 'info': status,
1743
+ 'status': status,
1744
+ }));
1745
+ }
1746
+ return orders;
1747
+ }
1748
+ cancelOrdersRequest(ids, symbol = undefined, params = {}) {
1749
+ /**
1750
+ * @method
1751
+ * @name hyperliquid#cancelOrdersRequest
1752
+ * @description build the request payload for cancelling multiple orders
1753
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#cancel-order-s
1754
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#cancel-order-s-by-cloid
1755
+ * @param {string[]} ids order ids
1756
+ * @param {string} symbol unified market symbol
1757
+ * @param {object} [params]
1758
+ * @returns {object} the raw request object to be sent to the exchange
1759
+ */
1720
1760
  const market = this.market(symbol);
1721
1761
  let clientOrderId = this.safeValue2(params, 'clientOrderId', 'client_id');
1722
1762
  params = this.omit(params, ['clientOrderId', 'client_id']);
@@ -1763,32 +1803,7 @@ export default class hyperliquid extends Exchange {
1763
1803
  params = this.omit(params, 'vaultAddress');
1764
1804
  request['vaultAddress'] = vaultAddress;
1765
1805
  }
1766
- const response = await this.privatePostExchange(request);
1767
- //
1768
- // {
1769
- // "status":"ok",
1770
- // "response":{
1771
- // "type":"cancel",
1772
- // "data":{
1773
- // "statuses":[
1774
- // "success"
1775
- // ]
1776
- // }
1777
- // }
1778
- // }
1779
- //
1780
- const innerResponse = this.safeDict(response, 'response');
1781
- const data = this.safeDict(innerResponse, 'data');
1782
- const statuses = this.safeList(data, 'statuses');
1783
- const orders = [];
1784
- for (let i = 0; i < statuses.length; i++) {
1785
- const status = statuses[i];
1786
- orders.push(this.safeOrder({
1787
- 'info': status,
1788
- 'status': status,
1789
- }));
1790
- }
1791
- return orders;
1806
+ return request;
1792
1807
  }
1793
1808
  /**
1794
1809
  * @method
@@ -2566,6 +2581,9 @@ export default class hyperliquid extends Exchange {
2566
2581
  }, market);
2567
2582
  }
2568
2583
  parseOrderStatus(status) {
2584
+ if (status === undefined) {
2585
+ return undefined;
2586
+ }
2569
2587
  const statuses = {
2570
2588
  'triggered': 'open',
2571
2589
  'filled': 'closed',
@@ -2574,6 +2592,12 @@ export default class hyperliquid extends Exchange {
2574
2592
  'rejected': 'rejected',
2575
2593
  'marginCanceled': 'canceled',
2576
2594
  };
2595
+ if (status.endsWith('Rejected')) {
2596
+ return 'rejected';
2597
+ }
2598
+ if (status.endsWith('Canceled')) {
2599
+ return 'canceled';
2600
+ }
2577
2601
  return this.safeString(statuses, status, status);
2578
2602
  }
2579
2603
  parseOrderType(status) {
@@ -3744,6 +3768,29 @@ export default class hyperliquid extends Exchange {
3744
3768
  'rate': rate,
3745
3769
  };
3746
3770
  }
3771
+ /**
3772
+ * @method
3773
+ * @name hyperliquid#reserveRequestWeight
3774
+ * @description Instead of trading to increase the address based rate limits, this action allows reserving additional actions for 0.0005 USDC per request. The cost is paid from the Perps balance.
3775
+ * @param {number} weight the weight to reserve, 1 weight = 1 action, 0.0005 USDC per action
3776
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
3777
+ * @returns {object} a response object
3778
+ */
3779
+ async reserveRequestWeight(weight, params = {}) {
3780
+ const nonce = this.milliseconds();
3781
+ const request = {
3782
+ 'nonce': nonce,
3783
+ };
3784
+ const action = {
3785
+ 'type': 'reserveRequestWeight',
3786
+ 'weight': weight,
3787
+ };
3788
+ const signature = this.signL1Action(action, nonce);
3789
+ request['action'] = action;
3790
+ request['signature'] = signature;
3791
+ const response = await this.privatePostExchange(this.extend(request, params));
3792
+ return response;
3793
+ }
3747
3794
  extractTypeFromDelta(data = []) {
3748
3795
  const records = [];
3749
3796
  for (let i = 0; i < data.length; i++) {
@@ -3806,8 +3853,12 @@ export default class hyperliquid extends Exchange {
3806
3853
  const responsePayload = this.safeDict(response, 'response', {});
3807
3854
  const data = this.safeDict(responsePayload, 'data', {});
3808
3855
  const statuses = this.safeList(data, 'statuses', []);
3809
- const firstStatus = this.safeDict(statuses, 0);
3810
- message = this.safeString(firstStatus, 'error');
3856
+ for (let i = 0; i < statuses.length; i++) {
3857
+ message = this.safeString(statuses[i], 'error');
3858
+ if (message !== undefined) {
3859
+ break;
3860
+ }
3861
+ }
3811
3862
  }
3812
3863
  const feedback = this.id + ' ' + body;
3813
3864
  const nonEmptyMessage = ((message !== undefined) && (message !== ''));
@@ -158,7 +158,7 @@ export default class independentreserve extends Exchange {
158
158
  * @param {object} [params.comment] withdrawal comment, should not exceed 500 characters
159
159
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
160
160
  */
161
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
161
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
162
162
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
163
163
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
164
164
  url: string;
@@ -194,7 +194,7 @@ export default class indodax extends Exchange {
194
194
  * @param {object} [params] extra parameters specific to the exchange API endpoint
195
195
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
196
196
  */
197
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
197
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
198
198
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
199
199
  parseTransactionStatus(status: Str): string;
200
200
  /**
@@ -435,7 +435,7 @@ export default class kraken extends Exchange {
435
435
  * @param {object} [params] extra parameters specific to the exchange API endpoint
436
436
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
437
437
  */
438
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
438
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
439
439
  /**
440
440
  * @method
441
441
  * @name kraken#fetchPositions
@@ -330,7 +330,7 @@ export default class krakenfutures extends Exchange {
330
330
  * @param {object} [params] extra parameters specific to the exchange API endpoint
331
331
  * @returns {object} response from the exchange
332
332
  */
333
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
333
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
334
334
  /**
335
335
  * @method
336
336
  * @name krakenfutures#fetchLeverages
@@ -228,6 +228,7 @@ export default class krakenfutures extends Exchange {
228
228
  'executions': 'private',
229
229
  'triggers': 'private',
230
230
  'accountlogcsv': 'private',
231
+ 'account-log': 'private',
231
232
  },
232
233
  },
233
234
  },
@@ -501,7 +501,7 @@ export default class kucoin extends Exchange {
501
501
  * @param {object} [params] extra parameters specific to the exchange API endpoint
502
502
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
503
503
  */
504
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
504
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
505
505
  parseTransactionStatus(status: Str): string;
506
506
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
507
507
  /**
@@ -748,7 +748,7 @@ export default class kucoin extends Exchange {
748
748
  * @param {object} [params] extra parameters specific to the exchange API endpoint
749
749
  * @returns {object} response from the exchange
750
750
  */
751
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
751
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
752
752
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
753
753
  url: any;
754
754
  method: string;
@@ -1,5 +1,5 @@
1
1
  import kucoin from './abstract/kucoinfutures.js';
2
- import type { TransferEntry, Int, OrderSide, OrderType, OHLCV, Order, Trade, OrderRequest, FundingHistory, Balances, Str, Ticker, Tickers, OrderBook, Transaction, Strings, Market, Currency, Num, MarginModification, TradingFeeInterface, Dict, LeverageTier, MarginMode, Leverage, FundingRate, DepositAddress, Position } from './base/types.js';
2
+ import type { TransferEntry, Int, OrderSide, OrderType, OHLCV, Order, Trade, OrderRequest, FundingHistory, Balances, Str, Ticker, Tickers, OrderBook, Transaction, Strings, Market, Currency, Num, MarginModification, TradingFeeInterface, Dict, LeverageTier, MarginMode, Leverage, FundingRate, DepositAddress, Position, int } from './base/types.js';
3
3
  /**
4
4
  * @class kucoinfutures
5
5
  * @augments Exchange
@@ -351,6 +351,7 @@ export default class kucoinfutures extends kucoin {
351
351
  * @description query for balance and get the amount of funds available for trading or funds locked in orders
352
352
  * @see https://www.kucoin.com/docs/rest/funding/funding-overview/get-account-detail-futures
353
353
  * @param {object} [params] extra parameters specific to the exchange API endpoint
354
+ * @param {object} [params.code] the unified currency code to fetch the balance for, if not provided, the default .options['fetchBalance']['code'] will be used
354
355
  * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
355
356
  */
356
357
  fetchBalance(params?: {}): Promise<Balances>;
@@ -515,6 +516,6 @@ export default class kucoinfutures extends kucoin {
515
516
  * @param {object} [params] extra parameters specific to the exchange API endpoint
516
517
  * @returns {object} response from the exchange
517
518
  */
518
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<Leverage>;
519
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<Leverage>;
519
520
  parseLeverage(leverage: Dict, market?: Market): Leverage;
520
521
  }
@@ -2488,6 +2488,7 @@ export default class kucoinfutures extends kucoin {
2488
2488
  * @description query for balance and get the amount of funds available for trading or funds locked in orders
2489
2489
  * @see https://www.kucoin.com/docs/rest/funding/funding-overview/get-account-detail-futures
2490
2490
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2491
+ * @param {object} [params.code] the unified currency code to fetch the balance for, if not provided, the default .options['fetchBalance']['code'] will be used
2491
2492
  * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
2492
2493
  */
2493
2494
  async fetchBalance(params = {}) {
package/js/src/lbank.d.ts CHANGED
@@ -277,7 +277,7 @@ export default class lbank extends Exchange {
277
277
  * @param {object} [params] extra parameters specific to the exchange API endpoint
278
278
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
279
279
  */
280
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
280
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
281
281
  parseTransactionStatus(status: any, type: any): string;
282
282
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
283
283
  /**
package/js/src/lbank.js CHANGED
@@ -969,7 +969,7 @@ export default class lbank extends Exchange {
969
969
  if (market['swap']) {
970
970
  return this.parseOrderBook(orderbook, market['symbol'], timestamp, 'bids', 'asks', 'price', 'volume');
971
971
  }
972
- return this.parseOrderBook(orderbook, market['symbol'], timestamp, 'bids', 'asks', 1, 0);
972
+ return this.parseOrderBook(orderbook, market['symbol'], timestamp, 'bids', 'asks');
973
973
  }
974
974
  parseTrade(trade, market = undefined) {
975
975
  //
@@ -101,7 +101,7 @@ export default class mercado extends Exchange {
101
101
  * @param {object} [params] extra parameters specific to the exchange API endpoint
102
102
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
103
103
  */
104
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
104
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
105
105
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
106
106
  parseOHLCV(ohlcv: any, market?: Market): OHLCV;
107
107
  /**
package/js/src/mexc.d.ts CHANGED
@@ -470,7 +470,7 @@ export default class mexc extends Exchange {
470
470
  * @param {object} [params] extra parameters specific to the exchange API endpoint
471
471
  * @returns {object} response from the exchange
472
472
  */
473
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
473
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
474
474
  /**
475
475
  * @method
476
476
  * @name mexc#fetchFundingHistory
@@ -660,7 +660,7 @@ export default class mexc extends Exchange {
660
660
  * @param {object} [params] extra parameters specific to the exchange API endpoint
661
661
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
662
662
  */
663
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
663
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
664
664
  /**
665
665
  * @method
666
666
  * @name mexc#setPositionMode
package/js/src/mexc.js CHANGED
@@ -470,6 +470,12 @@ export default class mexc extends Exchange {
470
470
  'ZKSYNC': 'ZKSYNCERA',
471
471
  'TRC20': 'TRX',
472
472
  'TON': 'TONCOIN',
473
+ 'ARBITRUM': 'ARB',
474
+ 'STX': 'STACKS',
475
+ 'LUNC': 'LUNA',
476
+ 'STARK': 'STARKNET',
477
+ 'APT': 'APTOS',
478
+ 'PEAQ': 'PEAQEVM',
473
479
  'AVAXC': 'AVAX_CCHAIN',
474
480
  'ERC20': 'ETH',
475
481
  'ACA': 'ACALA',
@@ -499,6 +505,7 @@ export default class mexc extends Exchange {
499
505
  // 'DNX': 'Dynex(DNX)',
500
506
  // 'DOGE': 'Dogecoin(DOGE)',
501
507
  // 'DOT': 'Polkadot(DOT)',
508
+ 'DOT': 'DOTASSETHUB',
502
509
  // 'DYM': 'Dymension(DYM)',
503
510
  'ETHF': 'ETF',
504
511
  'HRC20': 'HECO',
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/modetrade.js';
2
- import type { Balances, Currency, FundingRateHistory, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Trade, Transaction, Leverage, Currencies, TradingFees, OrderRequest, Dict, int, LedgerEntry, FundingRate, FundingRates, Position } from './base/types.js';
2
+ import type { Balances, Currency, FundingRateHistory, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Strings, Trade, Transaction, Leverage, Currencies, TradingFees, OrderRequest, Dict, int, LedgerEntry, FundingRate, FundingRates, FundingHistory, Position } from './base/types.js';
3
3
  /**
4
4
  * @class modetrade
5
5
  * @augments Exchange
@@ -110,6 +110,29 @@ export default class modetrade extends Exchange {
110
110
  * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
111
111
  */
112
112
  fetchFundingRateHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
113
+ parseIncome(income: any, market?: Market): {
114
+ info: any;
115
+ symbol: string;
116
+ code: string;
117
+ timestamp: number;
118
+ datetime: string;
119
+ id: any;
120
+ amount: number;
121
+ rate: number;
122
+ };
123
+ /**
124
+ * @method
125
+ * @name modetrade#fetchFundingHistory
126
+ * @description fetch the history of funding payments paid and received on this account
127
+ * @see https://orderly.network/docs/build-on-omnichain/evm-api/restful-api/private/get-funding-fee-history
128
+ * @param {string} [symbol] unified market symbol
129
+ * @param {int} [since] the earliest time in ms to fetch funding history for
130
+ * @param {int} [limit] the maximum number of funding history structures to retrieve
131
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
132
+ * @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)
133
+ * @returns {object} a [funding history structure]{@link https://docs.ccxt.com/#/?id=funding-history-structure}
134
+ */
135
+ fetchFundingHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<FundingHistory[]>;
113
136
  /**
114
137
  * @method
115
138
  * @name modetrade#fetchTradingFees
@@ -418,7 +441,7 @@ export default class modetrade extends Exchange {
418
441
  * @param {object} [params] extra parameters specific to the exchange API endpoint
419
442
  * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
420
443
  */
421
- withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
444
+ withdraw(code: string, amount: number, address: string, tag?: Str, params?: {}): Promise<Transaction>;
422
445
  parseLeverage(leverage: any, market?: any): Leverage;
423
446
  /**
424
447
  * @method
@@ -440,7 +463,7 @@ export default class modetrade extends Exchange {
440
463
  * @param {object} [params] extra parameters specific to the exchange API endpoint
441
464
  * @returns {object} response from the exchange
442
465
  */
443
- setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
466
+ setLeverage(leverage: int, symbol?: Str, params?: {}): Promise<any>;
444
467
  parsePosition(position: Dict, market?: Market): Position;
445
468
  /**
446
469
  * @method