ccxt 4.5.28 → 4.5.30

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 (522) hide show
  1. package/README.md +24 -7
  2. package/dist/ccxt.browser.min.js +7 -7
  3. package/dist/cjs/ccxt.js +6 -1
  4. package/dist/cjs/src/abstract/bydfi.js +11 -0
  5. package/dist/cjs/src/alpaca.js +21 -21
  6. package/dist/cjs/src/apex.js +20 -20
  7. package/dist/cjs/src/arkham.js +22 -22
  8. package/dist/cjs/src/ascendex.js +28 -28
  9. package/dist/cjs/src/backpack.js +22 -22
  10. package/dist/cjs/src/base/Exchange.js +48 -38
  11. package/dist/cjs/src/base/functions/throttle.js +54 -5
  12. package/dist/cjs/src/bigone.js +19 -19
  13. package/dist/cjs/src/binance.js +83 -82
  14. package/dist/cjs/src/bingx.js +47 -47
  15. package/dist/cjs/src/bit2c.js +11 -11
  16. package/dist/cjs/src/bitbank.js +49 -48
  17. package/dist/cjs/src/bitbns.js +13 -13
  18. package/dist/cjs/src/bitfinex.js +33 -33
  19. package/dist/cjs/src/bitflyer.js +17 -17
  20. package/dist/cjs/src/bitget.js +58 -57
  21. package/dist/cjs/src/bithumb.js +10 -10
  22. package/dist/cjs/src/bitmart.js +44 -44
  23. package/dist/cjs/src/bitmex.js +24 -24
  24. package/dist/cjs/src/bitopro.js +20 -20
  25. package/dist/cjs/src/bitrue.js +18 -18
  26. package/dist/cjs/src/bitso.js +20 -20
  27. package/dist/cjs/src/bitstamp.js +21 -21
  28. package/dist/cjs/src/bittrade.js +20 -20
  29. package/dist/cjs/src/bitvavo.js +19 -19
  30. package/dist/cjs/src/blockchaincom.js +20 -20
  31. package/dist/cjs/src/blofin.js +26 -26
  32. package/dist/cjs/src/btcalpha.js +35 -34
  33. package/dist/cjs/src/btcbox.js +10 -10
  34. package/dist/cjs/src/btcmarkets.js +16 -16
  35. package/dist/cjs/src/btcturk.js +10 -10
  36. package/dist/cjs/src/bullish.js +27 -27
  37. package/dist/cjs/src/bybit.js +69 -67
  38. package/dist/cjs/src/bydfi.js +2907 -0
  39. package/dist/cjs/src/cex.js +18 -18
  40. package/dist/cjs/src/coinbase.js +74 -41
  41. package/dist/cjs/src/coinbaseexchange.js +22 -22
  42. package/dist/cjs/src/coinbaseinternational.js +22 -22
  43. package/dist/cjs/src/coincatch.js +39 -39
  44. package/dist/cjs/src/coincheck.js +11 -11
  45. package/dist/cjs/src/coinex.js +48 -48
  46. package/dist/cjs/src/coinmate.js +14 -14
  47. package/dist/cjs/src/coinmetro.js +14 -14
  48. package/dist/cjs/src/coinone.js +11 -11
  49. package/dist/cjs/src/coinsph.js +20 -20
  50. package/dist/cjs/src/coinspot.js +8 -8
  51. package/dist/cjs/src/cryptocom.js +32 -32
  52. package/dist/cjs/src/cryptomus.js +9 -9
  53. package/dist/cjs/src/deepcoin.js +33 -33
  54. package/dist/cjs/src/defx.js +23 -23
  55. package/dist/cjs/src/delta.js +29 -29
  56. package/dist/cjs/src/deribit.js +36 -36
  57. package/dist/cjs/src/derive.js +19 -19
  58. package/dist/cjs/src/digifinex.js +36 -36
  59. package/dist/cjs/src/dydx.js +25 -25
  60. package/dist/cjs/src/exmo.js +29 -29
  61. package/dist/cjs/src/foxbit.js +23 -23
  62. package/dist/cjs/src/gate.js +60 -59
  63. package/dist/cjs/src/gemini.js +16 -16
  64. package/dist/cjs/src/hashkey.js +35 -35
  65. package/dist/cjs/src/hibachi.js +24 -24
  66. package/dist/cjs/src/hitbtc.js +38 -38
  67. package/dist/cjs/src/hollaex.js +22 -22
  68. package/dist/cjs/src/htx.js +50 -50
  69. package/dist/cjs/src/hyperliquid.js +86 -45
  70. package/dist/cjs/src/independentreserve.js +13 -13
  71. package/dist/cjs/src/indodax.js +14 -14
  72. package/dist/cjs/src/kraken.js +30 -30
  73. package/dist/cjs/src/krakenfutures.js +21 -21
  74. package/dist/cjs/src/kucoin.js +156 -48
  75. package/dist/cjs/src/kucoinfutures.js +42 -40
  76. package/dist/cjs/src/latoken.js +16 -16
  77. package/dist/cjs/src/lbank.js +23 -23
  78. package/dist/cjs/src/luno.js +17 -17
  79. package/dist/cjs/src/mercado.js +11 -11
  80. package/dist/cjs/src/mexc.js +47 -47
  81. package/dist/cjs/src/modetrade.js +37 -35
  82. package/dist/cjs/src/ndax.js +19 -19
  83. package/dist/cjs/src/novadax.js +19 -19
  84. package/dist/cjs/src/oceanex.js +16 -16
  85. package/dist/cjs/src/okx.js +83 -83
  86. package/dist/cjs/src/onetrading.js +34 -33
  87. package/dist/cjs/src/oxfun.js +25 -25
  88. package/dist/cjs/src/p2b.js +11 -11
  89. package/dist/cjs/src/paradex.js +54 -54
  90. package/dist/cjs/src/paymium.js +20 -21
  91. package/dist/cjs/src/phemex.js +35 -35
  92. package/dist/cjs/src/poloniex.js +27 -27
  93. package/dist/cjs/src/pro/alpaca.js +5 -5
  94. package/dist/cjs/src/pro/apex.js +13 -11
  95. package/dist/cjs/src/pro/arkham.js +5 -5
  96. package/dist/cjs/src/pro/ascendex.js +5 -5
  97. package/dist/cjs/src/pro/backpack.js +16 -16
  98. package/dist/cjs/src/pro/binance.js +45 -41
  99. package/dist/cjs/src/pro/bingx.js +14 -12
  100. package/dist/cjs/src/pro/bitfinex.js +8 -8
  101. package/dist/cjs/src/pro/bitget.js +12 -12
  102. package/dist/cjs/src/pro/bithumb.js +3 -3
  103. package/dist/cjs/src/pro/bitmart.js +393 -34
  104. package/dist/cjs/src/pro/bitmex.js +9 -9
  105. package/dist/cjs/src/pro/bitopro.js +5 -5
  106. package/dist/cjs/src/pro/bitrue.js +2 -2
  107. package/dist/cjs/src/pro/bitstamp.js +3 -3
  108. package/dist/cjs/src/pro/bittrade.js +3 -3
  109. package/dist/cjs/src/pro/bitvavo.js +19 -19
  110. package/dist/cjs/src/pro/blockchaincom.js +5 -5
  111. package/dist/cjs/src/pro/blofin.js +10 -10
  112. package/dist/cjs/src/pro/bullish.js +6 -6
  113. package/dist/cjs/src/pro/bybit.js +24 -22
  114. package/dist/cjs/src/pro/bydfi.js +1077 -0
  115. package/dist/cjs/src/pro/cex.js +13 -13
  116. package/dist/cjs/src/pro/coinbase.js +13 -13
  117. package/dist/cjs/src/pro/coinbaseexchange.js +10 -10
  118. package/dist/cjs/src/pro/coinbaseinternational.js +8 -8
  119. package/dist/cjs/src/pro/coincatch.js +10 -10
  120. package/dist/cjs/src/pro/coincheck.js +2 -2
  121. package/dist/cjs/src/pro/coinex.js +10 -10
  122. package/dist/cjs/src/pro/coinone.js +3 -3
  123. package/dist/cjs/src/pro/cryptocom.js +25 -23
  124. package/dist/cjs/src/pro/deepcoin.js +8 -8
  125. package/dist/cjs/src/pro/defx.js +15 -15
  126. package/dist/cjs/src/pro/deribit.js +10 -10
  127. package/dist/cjs/src/pro/derive.js +6 -6
  128. package/dist/cjs/src/pro/dydx.js +3 -3
  129. package/dist/cjs/src/pro/exmo.js +7 -7
  130. package/dist/cjs/src/pro/gate.js +26 -62
  131. package/dist/cjs/src/pro/gemini.js +6 -6
  132. package/dist/cjs/src/pro/hashkey.js +11 -9
  133. package/dist/cjs/src/pro/hitbtc.js +8 -8
  134. package/dist/cjs/src/pro/hollaex.js +5 -5
  135. package/dist/cjs/src/pro/htx.js +9 -9
  136. package/dist/cjs/src/pro/hyperliquid.js +103 -14
  137. package/dist/cjs/src/pro/independentreserve.js +2 -2
  138. package/dist/cjs/src/pro/kraken.js +15 -15
  139. package/dist/cjs/src/pro/krakenfutures.js +10 -10
  140. package/dist/cjs/src/pro/kucoin.js +15 -15
  141. package/dist/cjs/src/pro/kucoinfutures.js +18 -16
  142. package/dist/cjs/src/pro/lbank.js +5 -5
  143. package/dist/cjs/src/pro/luno.js +2 -2
  144. package/dist/cjs/src/pro/mexc.js +13 -13
  145. package/dist/cjs/src/pro/modetrade.js +13 -11
  146. package/dist/cjs/src/pro/ndax.js +3 -3
  147. package/dist/cjs/src/pro/okx.js +25 -25
  148. package/dist/cjs/src/pro/onetrading.js +6 -6
  149. package/dist/cjs/src/pro/oxfun.js +13 -13
  150. package/dist/cjs/src/pro/p2b.js +5 -5
  151. package/dist/cjs/src/pro/paradex.js +8 -8
  152. package/dist/cjs/src/pro/phemex.js +7 -7
  153. package/dist/cjs/src/pro/poloniex.js +8 -8
  154. package/dist/cjs/src/pro/probit.js +6 -6
  155. package/dist/cjs/src/pro/toobit.js +20 -16
  156. package/dist/cjs/src/pro/upbit.js +9 -9
  157. package/dist/cjs/src/pro/whitebit.js +7 -7
  158. package/dist/cjs/src/pro/woo.js +18 -16
  159. package/dist/cjs/src/pro/woofipro.js +25 -23
  160. package/dist/cjs/src/pro/xt.js +7 -5
  161. package/dist/cjs/src/probit.js +18 -18
  162. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +11 -0
  163. package/dist/cjs/src/timex.js +16 -16
  164. package/dist/cjs/src/tokocrypto.js +17 -17
  165. package/dist/cjs/src/toobit.js +33 -30
  166. package/dist/cjs/src/upbit.js +23 -23
  167. package/dist/cjs/src/wavesexchange.js +86 -85
  168. package/dist/cjs/src/whitebit.js +44 -44
  169. package/dist/cjs/src/woo.js +51 -49
  170. package/dist/cjs/src/woofipro.js +104 -82
  171. package/dist/cjs/src/xt.js +17 -12
  172. package/dist/cjs/src/yobit.js +15 -15
  173. package/dist/cjs/src/zaif.js +38 -9
  174. package/dist/cjs/src/zebpay.js +35 -20
  175. package/dist/cjs/src/zonda.js +14 -14
  176. package/js/ccxt.d.ts +8 -2
  177. package/js/ccxt.js +6 -2
  178. package/js/src/abstract/bydfi.d.ts +52 -0
  179. package/js/src/abstract/bydfi.js +11 -0
  180. package/js/src/alpaca.d.ts +21 -21
  181. package/js/src/alpaca.js +21 -21
  182. package/js/src/apex.d.ts +20 -20
  183. package/js/src/apex.js +20 -20
  184. package/js/src/arkham.d.ts +22 -22
  185. package/js/src/arkham.js +22 -22
  186. package/js/src/ascendex.d.ts +28 -28
  187. package/js/src/ascendex.js +28 -28
  188. package/js/src/backpack.d.ts +21 -21
  189. package/js/src/backpack.js +22 -22
  190. package/js/src/base/Exchange.d.ts +6 -3
  191. package/js/src/base/Exchange.js +48 -38
  192. package/js/src/base/functions/throttle.d.ts +22 -0
  193. package/js/src/base/functions/throttle.js +54 -5
  194. package/js/src/bigone.d.ts +19 -19
  195. package/js/src/bigone.js +19 -19
  196. package/js/src/binance.d.ts +82 -82
  197. package/js/src/binance.js +83 -82
  198. package/js/src/bingx.d.ts +46 -46
  199. package/js/src/bingx.js +47 -47
  200. package/js/src/bit2c.d.ts +11 -11
  201. package/js/src/bit2c.js +11 -11
  202. package/js/src/bitbank.d.ts +12 -12
  203. package/js/src/bitbank.js +49 -48
  204. package/js/src/bitbns.d.ts +13 -13
  205. package/js/src/bitbns.js +13 -13
  206. package/js/src/bitfinex.d.ts +33 -33
  207. package/js/src/bitfinex.js +33 -33
  208. package/js/src/bitflyer.d.ts +17 -17
  209. package/js/src/bitflyer.js +17 -17
  210. package/js/src/bitget.d.ts +57 -57
  211. package/js/src/bitget.js +58 -57
  212. package/js/src/bithumb.d.ts +10 -10
  213. package/js/src/bithumb.js +10 -10
  214. package/js/src/bitmart.d.ts +42 -42
  215. package/js/src/bitmart.js +44 -44
  216. package/js/src/bitmex.d.ts +24 -24
  217. package/js/src/bitmex.js +24 -24
  218. package/js/src/bitopro.d.ts +20 -20
  219. package/js/src/bitopro.js +20 -20
  220. package/js/src/bitrue.d.ts +18 -18
  221. package/js/src/bitrue.js +18 -18
  222. package/js/src/bitso.d.ts +20 -20
  223. package/js/src/bitso.js +20 -20
  224. package/js/src/bitstamp.d.ts +21 -21
  225. package/js/src/bitstamp.js +21 -21
  226. package/js/src/bittrade.d.ts +20 -20
  227. package/js/src/bittrade.js +20 -20
  228. package/js/src/bitvavo.d.ts +19 -19
  229. package/js/src/bitvavo.js +19 -19
  230. package/js/src/blockchaincom.d.ts +20 -20
  231. package/js/src/blockchaincom.js +20 -20
  232. package/js/src/blofin.d.ts +26 -26
  233. package/js/src/blofin.js +26 -26
  234. package/js/src/btcalpha.d.ts +14 -14
  235. package/js/src/btcalpha.js +35 -34
  236. package/js/src/btcbox.d.ts +10 -10
  237. package/js/src/btcbox.js +10 -10
  238. package/js/src/btcmarkets.d.ts +16 -16
  239. package/js/src/btcmarkets.js +16 -16
  240. package/js/src/btcturk.d.ts +10 -10
  241. package/js/src/btcturk.js +10 -10
  242. package/js/src/bullish.d.ts +26 -26
  243. package/js/src/bullish.js +27 -27
  244. package/js/src/bybit.d.ts +66 -66
  245. package/js/src/bybit.js +69 -67
  246. package/js/src/bydfi.d.ts +472 -0
  247. package/js/src/bydfi.js +2905 -0
  248. package/js/src/cex.d.ts +18 -18
  249. package/js/src/cex.js +18 -18
  250. package/js/src/coinbase.d.ts +51 -40
  251. package/js/src/coinbase.js +74 -41
  252. package/js/src/coinbaseexchange.d.ts +22 -22
  253. package/js/src/coinbaseexchange.js +22 -22
  254. package/js/src/coinbaseinternational.d.ts +22 -22
  255. package/js/src/coinbaseinternational.js +22 -22
  256. package/js/src/coincatch.d.ts +39 -39
  257. package/js/src/coincatch.js +39 -39
  258. package/js/src/coincheck.d.ts +11 -11
  259. package/js/src/coincheck.js +11 -11
  260. package/js/src/coinex.d.ts +48 -48
  261. package/js/src/coinex.js +48 -48
  262. package/js/src/coinmate.d.ts +14 -14
  263. package/js/src/coinmate.js +14 -14
  264. package/js/src/coinmetro.d.ts +14 -14
  265. package/js/src/coinmetro.js +14 -14
  266. package/js/src/coinone.d.ts +11 -11
  267. package/js/src/coinone.js +11 -11
  268. package/js/src/coinsph.d.ts +20 -20
  269. package/js/src/coinsph.js +20 -20
  270. package/js/src/coinspot.d.ts +8 -8
  271. package/js/src/coinspot.js +8 -8
  272. package/js/src/cryptocom.d.ts +32 -32
  273. package/js/src/cryptocom.js +32 -32
  274. package/js/src/cryptomus.d.ts +9 -9
  275. package/js/src/cryptomus.js +9 -9
  276. package/js/src/deepcoin.d.ts +33 -33
  277. package/js/src/deepcoin.js +33 -33
  278. package/js/src/defx.d.ts +23 -23
  279. package/js/src/defx.js +23 -23
  280. package/js/src/delta.d.ts +29 -29
  281. package/js/src/delta.js +29 -29
  282. package/js/src/deribit.d.ts +36 -36
  283. package/js/src/deribit.js +36 -36
  284. package/js/src/derive.d.ts +19 -19
  285. package/js/src/derive.js +19 -19
  286. package/js/src/digifinex.d.ts +36 -36
  287. package/js/src/digifinex.js +36 -36
  288. package/js/src/dydx.d.ts +22 -22
  289. package/js/src/dydx.js +25 -25
  290. package/js/src/exmo.d.ts +29 -29
  291. package/js/src/exmo.js +29 -29
  292. package/js/src/foxbit.d.ts +23 -23
  293. package/js/src/foxbit.js +23 -23
  294. package/js/src/gate.d.ts +57 -57
  295. package/js/src/gate.js +60 -59
  296. package/js/src/gemini.d.ts +16 -16
  297. package/js/src/gemini.js +16 -16
  298. package/js/src/hashkey.d.ts +35 -35
  299. package/js/src/hashkey.js +35 -35
  300. package/js/src/hibachi.d.ts +24 -24
  301. package/js/src/hibachi.js +24 -24
  302. package/js/src/hitbtc.d.ts +38 -38
  303. package/js/src/hitbtc.js +38 -38
  304. package/js/src/hollaex.d.ts +22 -22
  305. package/js/src/hollaex.js +22 -22
  306. package/js/src/htx.d.ts +50 -50
  307. package/js/src/htx.js +50 -50
  308. package/js/src/hyperliquid.d.ts +46 -36
  309. package/js/src/hyperliquid.js +86 -45
  310. package/js/src/independentreserve.d.ts +13 -13
  311. package/js/src/independentreserve.js +13 -13
  312. package/js/src/indodax.d.ts +14 -14
  313. package/js/src/indodax.js +14 -14
  314. package/js/src/kraken.d.ts +30 -30
  315. package/js/src/kraken.js +30 -30
  316. package/js/src/krakenfutures.d.ts +21 -21
  317. package/js/src/krakenfutures.js +21 -21
  318. package/js/src/kucoin.d.ts +58 -44
  319. package/js/src/kucoin.js +156 -48
  320. package/js/src/kucoinfutures.d.ts +35 -35
  321. package/js/src/kucoinfutures.js +42 -40
  322. package/js/src/latoken.d.ts +16 -16
  323. package/js/src/latoken.js +16 -16
  324. package/js/src/lbank.d.ts +23 -23
  325. package/js/src/lbank.js +23 -23
  326. package/js/src/luno.d.ts +17 -17
  327. package/js/src/luno.js +17 -17
  328. package/js/src/mercado.d.ts +11 -11
  329. package/js/src/mercado.js +11 -11
  330. package/js/src/mexc.d.ts +47 -47
  331. package/js/src/mexc.js +47 -47
  332. package/js/src/modetrade.d.ts +31 -31
  333. package/js/src/modetrade.js +37 -35
  334. package/js/src/ndax.d.ts +19 -19
  335. package/js/src/ndax.js +19 -19
  336. package/js/src/novadax.d.ts +19 -19
  337. package/js/src/novadax.js +19 -19
  338. package/js/src/oceanex.d.ts +16 -16
  339. package/js/src/oceanex.js +16 -16
  340. package/js/src/okx.d.ts +74 -74
  341. package/js/src/okx.js +83 -83
  342. package/js/src/onetrading.d.ts +34 -33
  343. package/js/src/onetrading.js +34 -33
  344. package/js/src/oxfun.d.ts +25 -25
  345. package/js/src/oxfun.js +25 -25
  346. package/js/src/p2b.d.ts +11 -11
  347. package/js/src/p2b.js +11 -11
  348. package/js/src/paradex.d.ts +54 -54
  349. package/js/src/paradex.js +54 -54
  350. package/js/src/paymium.d.ts +20 -21
  351. package/js/src/paymium.js +20 -21
  352. package/js/src/phemex.d.ts +30 -30
  353. package/js/src/phemex.js +35 -35
  354. package/js/src/poloniex.d.ts +26 -26
  355. package/js/src/poloniex.js +27 -27
  356. package/js/src/pro/alpaca.d.ts +5 -5
  357. package/js/src/pro/alpaca.js +5 -5
  358. package/js/src/pro/apex.d.ts +8 -8
  359. package/js/src/pro/apex.js +13 -11
  360. package/js/src/pro/arkham.d.ts +5 -5
  361. package/js/src/pro/arkham.js +5 -5
  362. package/js/src/pro/ascendex.d.ts +5 -5
  363. package/js/src/pro/ascendex.js +5 -5
  364. package/js/src/pro/backpack.d.ts +16 -16
  365. package/js/src/pro/backpack.js +16 -16
  366. package/js/src/pro/binance.d.ts +35 -35
  367. package/js/src/pro/binance.js +45 -41
  368. package/js/src/pro/bingx.d.ts +9 -9
  369. package/js/src/pro/bingx.js +14 -12
  370. package/js/src/pro/bitfinex.d.ts +8 -8
  371. package/js/src/pro/bitfinex.js +8 -8
  372. package/js/src/pro/bitget.d.ts +12 -12
  373. package/js/src/pro/bitget.js +12 -12
  374. package/js/src/pro/bithumb.d.ts +3 -3
  375. package/js/src/pro/bithumb.js +3 -3
  376. package/js/src/pro/bitmart.d.ts +120 -9
  377. package/js/src/pro/bitmart.js +393 -34
  378. package/js/src/pro/bitmex.d.ts +9 -9
  379. package/js/src/pro/bitmex.js +9 -9
  380. package/js/src/pro/bitopro.d.ts +5 -5
  381. package/js/src/pro/bitopro.js +5 -5
  382. package/js/src/pro/bitrue.d.ts +2 -2
  383. package/js/src/pro/bitrue.js +2 -2
  384. package/js/src/pro/bitstamp.d.ts +3 -3
  385. package/js/src/pro/bitstamp.js +3 -3
  386. package/js/src/pro/bittrade.d.ts +3 -3
  387. package/js/src/pro/bittrade.js +3 -3
  388. package/js/src/pro/bitvavo.d.ts +19 -19
  389. package/js/src/pro/bitvavo.js +19 -19
  390. package/js/src/pro/blockchaincom.d.ts +5 -5
  391. package/js/src/pro/blockchaincom.js +5 -5
  392. package/js/src/pro/blofin.d.ts +10 -10
  393. package/js/src/pro/blofin.js +10 -10
  394. package/js/src/pro/bullish.d.ts +6 -6
  395. package/js/src/pro/bullish.js +6 -6
  396. package/js/src/pro/bybit.d.ts +19 -19
  397. package/js/src/pro/bybit.js +24 -22
  398. package/js/src/pro/bydfi.d.ts +206 -0
  399. package/js/src/pro/bydfi.js +1076 -0
  400. package/js/src/pro/cex.d.ts +13 -13
  401. package/js/src/pro/cex.js +13 -13
  402. package/js/src/pro/coinbase.d.ts +13 -13
  403. package/js/src/pro/coinbase.js +13 -13
  404. package/js/src/pro/coinbaseexchange.d.ts +10 -10
  405. package/js/src/pro/coinbaseexchange.js +10 -10
  406. package/js/src/pro/coinbaseinternational.d.ts +8 -8
  407. package/js/src/pro/coinbaseinternational.js +8 -8
  408. package/js/src/pro/coincatch.d.ts +10 -10
  409. package/js/src/pro/coincatch.js +10 -10
  410. package/js/src/pro/coincheck.d.ts +2 -2
  411. package/js/src/pro/coincheck.js +2 -2
  412. package/js/src/pro/coinex.d.ts +10 -10
  413. package/js/src/pro/coinex.js +10 -10
  414. package/js/src/pro/coinone.d.ts +3 -3
  415. package/js/src/pro/coinone.js +3 -3
  416. package/js/src/pro/cryptocom.d.ts +20 -20
  417. package/js/src/pro/cryptocom.js +25 -23
  418. package/js/src/pro/deepcoin.d.ts +8 -8
  419. package/js/src/pro/deepcoin.js +8 -8
  420. package/js/src/pro/defx.d.ts +15 -15
  421. package/js/src/pro/defx.js +15 -15
  422. package/js/src/pro/deribit.d.ts +10 -10
  423. package/js/src/pro/deribit.js +10 -10
  424. package/js/src/pro/derive.d.ts +6 -6
  425. package/js/src/pro/derive.js +6 -6
  426. package/js/src/pro/dydx.d.ts +3 -3
  427. package/js/src/pro/dydx.js +3 -3
  428. package/js/src/pro/exmo.d.ts +7 -7
  429. package/js/src/pro/exmo.js +7 -7
  430. package/js/src/pro/gate.d.ts +22 -23
  431. package/js/src/pro/gate.js +26 -62
  432. package/js/src/pro/gemini.d.ts +6 -6
  433. package/js/src/pro/gemini.js +6 -6
  434. package/js/src/pro/hashkey.d.ts +6 -6
  435. package/js/src/pro/hashkey.js +11 -9
  436. package/js/src/pro/hitbtc.d.ts +8 -8
  437. package/js/src/pro/hitbtc.js +8 -8
  438. package/js/src/pro/hollaex.d.ts +5 -5
  439. package/js/src/pro/hollaex.js +5 -5
  440. package/js/src/pro/htx.d.ts +9 -9
  441. package/js/src/pro/htx.js +9 -9
  442. package/js/src/pro/hyperliquid.d.ts +38 -14
  443. package/js/src/pro/hyperliquid.js +103 -14
  444. package/js/src/pro/independentreserve.d.ts +2 -2
  445. package/js/src/pro/independentreserve.js +2 -2
  446. package/js/src/pro/kraken.d.ts +15 -15
  447. package/js/src/pro/kraken.js +15 -15
  448. package/js/src/pro/krakenfutures.d.ts +10 -10
  449. package/js/src/pro/krakenfutures.js +10 -10
  450. package/js/src/pro/kucoin.d.ts +15 -15
  451. package/js/src/pro/kucoin.js +15 -15
  452. package/js/src/pro/kucoinfutures.d.ts +13 -13
  453. package/js/src/pro/kucoinfutures.js +18 -16
  454. package/js/src/pro/lbank.d.ts +5 -5
  455. package/js/src/pro/lbank.js +5 -5
  456. package/js/src/pro/luno.d.ts +2 -2
  457. package/js/src/pro/luno.js +2 -2
  458. package/js/src/pro/mexc.d.ts +13 -13
  459. package/js/src/pro/mexc.js +13 -13
  460. package/js/src/pro/modetrade.d.ts +8 -8
  461. package/js/src/pro/modetrade.js +13 -11
  462. package/js/src/pro/ndax.d.ts +3 -3
  463. package/js/src/pro/ndax.js +3 -3
  464. package/js/src/pro/okx.d.ts +25 -25
  465. package/js/src/pro/okx.js +25 -25
  466. package/js/src/pro/onetrading.d.ts +6 -6
  467. package/js/src/pro/onetrading.js +6 -6
  468. package/js/src/pro/oxfun.d.ts +13 -13
  469. package/js/src/pro/oxfun.js +13 -13
  470. package/js/src/pro/p2b.d.ts +5 -5
  471. package/js/src/pro/p2b.js +5 -5
  472. package/js/src/pro/paradex.d.ts +8 -8
  473. package/js/src/pro/paradex.js +8 -8
  474. package/js/src/pro/phemex.d.ts +7 -7
  475. package/js/src/pro/phemex.js +7 -7
  476. package/js/src/pro/poloniex.d.ts +8 -8
  477. package/js/src/pro/poloniex.js +8 -8
  478. package/js/src/pro/probit.d.ts +6 -6
  479. package/js/src/pro/probit.js +6 -6
  480. package/js/src/pro/toobit.d.ts +9 -9
  481. package/js/src/pro/toobit.js +20 -16
  482. package/js/src/pro/upbit.d.ts +9 -9
  483. package/js/src/pro/upbit.js +9 -9
  484. package/js/src/pro/whitebit.d.ts +7 -7
  485. package/js/src/pro/whitebit.js +7 -7
  486. package/js/src/pro/woo.d.ts +13 -13
  487. package/js/src/pro/woo.js +18 -16
  488. package/js/src/pro/woofipro.d.ts +20 -20
  489. package/js/src/pro/woofipro.js +25 -23
  490. package/js/src/pro/xt.d.ts +2 -2
  491. package/js/src/pro/xt.js +7 -5
  492. package/js/src/probit.d.ts +18 -18
  493. package/js/src/probit.js +18 -18
  494. package/js/src/static_dependencies/ethers/utils/index.d.ts +2 -1
  495. package/js/src/static_dependencies/ethers/utils/index.js +8 -1
  496. package/js/src/timex.d.ts +16 -16
  497. package/js/src/timex.js +16 -16
  498. package/js/src/tokocrypto.d.ts +17 -17
  499. package/js/src/tokocrypto.js +17 -17
  500. package/js/src/toobit.d.ts +27 -27
  501. package/js/src/toobit.js +33 -30
  502. package/js/src/upbit.d.ts +23 -23
  503. package/js/src/upbit.js +23 -23
  504. package/js/src/wavesexchange.d.ts +15 -15
  505. package/js/src/wavesexchange.js +86 -85
  506. package/js/src/whitebit.d.ts +44 -44
  507. package/js/src/whitebit.js +44 -44
  508. package/js/src/woo.d.ts +45 -45
  509. package/js/src/woo.js +51 -49
  510. package/js/src/woofipro.d.ts +77 -77
  511. package/js/src/woofipro.js +104 -82
  512. package/js/src/xt.d.ts +12 -12
  513. package/js/src/xt.js +17 -12
  514. package/js/src/yobit.d.ts +15 -15
  515. package/js/src/yobit.js +15 -15
  516. package/js/src/zaif.d.ts +9 -9
  517. package/js/src/zaif.js +38 -9
  518. package/js/src/zebpay.d.ts +20 -20
  519. package/js/src/zebpay.js +35 -20
  520. package/js/src/zonda.d.ts +14 -14
  521. package/js/src/zonda.js +14 -14
  522. package/package.json +1 -1
@@ -384,7 +384,7 @@ class hyperliquid extends hyperliquid$1["default"] {
384
384
  * @name hyperliquid#fetchStatus
385
385
  * @description the latest known information on the availability of the exchange API
386
386
  * @param {object} [params] extra parameters specific to the exchange API endpoint
387
- * @returns {object} a [status structure]{@link https://docs.ccxt.com/#/?id=exchange-status-structure}
387
+ * @returns {object} a [status structure]{@link https://docs.ccxt.com/?id=exchange-status-structure}
388
388
  */
389
389
  async fetchStatus(params = {}) {
390
390
  const request = {
@@ -578,17 +578,24 @@ class hyperliquid extends hyperliquid$1["default"] {
578
578
  let fetchDexesList = [];
579
579
  const options = this.safeDict(this.options, 'fetchMarkets', {});
580
580
  const hip3 = this.safeDict(options, 'hip3', {});
581
- const dexesProvided = this.safeList(hip3, 'dexes'); // let users provide their own list of dexes to load
581
+ const dexesProvided = this.safeList(hip3, 'dexes', []); // let users provide their own list of dexes to load
582
582
  const maxLimit = this.safeInteger(hip3, 'limit', 10);
583
- if (dexesProvided !== undefined) {
584
- const userProvidedDexesLength = dexesProvided.length;
583
+ const userProvidedDexesLength = dexesProvided.length;
584
+ if (userProvidedDexesLength > 0) {
585
585
  if (userProvidedDexesLength > 0) {
586
586
  fetchDexesList = dexesProvided;
587
587
  }
588
588
  }
589
589
  else {
590
+ const fetchDexesLength = fetchDexes.length;
590
591
  for (let i = 1; i < maxLimit; i++) {
592
+ if (i >= fetchDexesLength) {
593
+ break;
594
+ }
591
595
  const dex = this.safeDict(fetchDexes, i, {});
596
+ if (dex === undefined) {
597
+ continue;
598
+ }
592
599
  const dexName = this.safeString(dex, 'name');
593
600
  fetchDexesList.push(dexName);
594
601
  }
@@ -1067,7 +1074,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1067
1074
  * @param {string} [params.marginMode] 'cross' or 'isolated', for margin trading, uses this.options.defaultMarginMode if not passed, defaults to undefined/None/null
1068
1075
  * @param {string} [params.dex] for hip3 markets, the dex name, eg: 'xyz'
1069
1076
  * @param {string} [params.subAccountAddress] sub account user address
1070
- * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
1077
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/?id=balance-structure}
1071
1078
  */
1072
1079
  async fetchBalance(params = {}) {
1073
1080
  let userAddress = undefined;
@@ -1159,7 +1166,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1159
1166
  * @param {string} symbol unified symbol of the market to fetch the order book for
1160
1167
  * @param {int} [limit] the maximum amount of order book entries to return
1161
1168
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1162
- * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
1169
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/?id=order-book-structure} indexed by market symbols
1163
1170
  */
1164
1171
  async fetchOrderBook(symbol, limit = undefined, params = {}) {
1165
1172
  await this.loadMarkets();
@@ -1209,7 +1216,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1209
1216
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1210
1217
  * @param {string} [params.type] 'spot' or 'swap', by default fetches both
1211
1218
  * @param {boolean} [params.hip3] set to true to fetch hip3 markets only
1212
- * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
1219
+ * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/?id=ticker-structure}
1213
1220
  */
1214
1221
  async fetchTickers(symbols = undefined, params = {}) {
1215
1222
  await this.loadMarkets();
@@ -1490,7 +1497,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1490
1497
  * @param {string} [params.address] wallet address that made trades
1491
1498
  * @param {string} [params.user] wallet address that made trades
1492
1499
  * @param {string} [params.subAccountAddress] sub account user address
1493
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
1500
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
1494
1501
  */
1495
1502
  async fetchTrades(symbol, since = undefined, limit = undefined, params = {}) {
1496
1503
  let userAddress = undefined;
@@ -1573,7 +1580,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1573
1580
  'connectionId': hash,
1574
1581
  };
1575
1582
  }
1576
- actionHash(action, vaultAddress, nonce) {
1583
+ actionHash(action, vaultAddress, nonce, expiresAfter = undefined) {
1577
1584
  const dataBinary = this.packb(action);
1578
1585
  const dataHex = this.binaryToBase16(dataBinary);
1579
1586
  let data = dataHex;
@@ -1585,10 +1592,14 @@ class hyperliquid extends hyperliquid$1["default"] {
1585
1592
  data += '01';
1586
1593
  data += vaultAddress;
1587
1594
  }
1595
+ if (expiresAfter !== undefined) {
1596
+ data += '00';
1597
+ data += '00000' + this.intToBase16(expiresAfter);
1598
+ }
1588
1599
  return this.hash(this.base16ToBinary(data), sha3.keccak_256, 'binary');
1589
1600
  }
1590
- signL1Action(action, nonce, vaultAdress = undefined) {
1591
- const hash = this.actionHash(action, vaultAdress, nonce);
1601
+ signL1Action(action, nonce, vaultAdress = undefined, expiresAfter = undefined) {
1602
+ const hash = this.actionHash(action, vaultAdress, nonce, expiresAfter);
1592
1603
  const isTestnet = this.safeBool(this.options, 'sandboxMode', false);
1593
1604
  const phantomAgent = this.constructPhantomAgent(hash, isTestnet);
1594
1605
  // const data: Dict = {
@@ -1843,7 +1854,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1843
1854
  * @param {string} [params.slippage] the slippage for market order
1844
1855
  * @param {string} [params.vaultAddress] the vault address for order
1845
1856
  * @param {string} [params.subAccountAddress] sub account user address
1846
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1857
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
1847
1858
  */
1848
1859
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
1849
1860
  await this.loadMarkets();
@@ -1858,7 +1869,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1858
1869
  * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#place-an-order
1859
1870
  * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
1860
1871
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1861
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1872
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
1862
1873
  */
1863
1874
  async createOrders(orders, params = {}) {
1864
1875
  await this.loadMarkets();
@@ -1972,7 +1983,7 @@ class hyperliquid extends hyperliquid$1["default"] {
1972
1983
  * @description create a list of trade orders
1973
1984
  * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#place-an-order
1974
1985
  * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
1975
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1986
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
1976
1987
  */
1977
1988
  this.checkRequiredCredentials();
1978
1989
  let defaultSlippage = this.safeString(this.options, 'defaultSlippage');
@@ -2014,11 +2025,12 @@ class hyperliquid extends hyperliquid$1["default"] {
2014
2025
  orderParams['slippage'] = slippage;
2015
2026
  const stopLoss = this.safeValue(orderParams, 'stopLoss');
2016
2027
  const takeProfit = this.safeValue(orderParams, 'takeProfit');
2017
- const isTrigger = (stopLoss || takeProfit);
2028
+ const hasStopLoss = (stopLoss !== undefined);
2029
+ const hasTakeProfit = (takeProfit !== undefined);
2018
2030
  orderParams = this.omit(orderParams, ['stopLoss', 'takeProfit']);
2019
2031
  const mainOrderObj = this.createOrderRequest(symbol, type, side, amount, price, orderParams);
2020
2032
  orderReq.push(mainOrderObj);
2021
- if (isTrigger) {
2033
+ if (hasStopLoss || hasTakeProfit) {
2022
2034
  // grouping opposed orders for sl/tp
2023
2035
  const stopLossOrderTriggerPrice = this.safeStringN(stopLoss, ['triggerPrice', 'stopPrice']);
2024
2036
  const stopLossOrderType = this.safeString(stopLoss, 'type', 'limit');
@@ -2035,14 +2047,14 @@ class hyperliquid extends hyperliquid$1["default"] {
2035
2047
  else {
2036
2048
  triggerOrderSide = 'buy';
2037
2049
  }
2038
- if (takeProfit !== undefined) {
2050
+ if (hasTakeProfit) {
2039
2051
  const orderObj = this.createOrderRequest(symbol, takeProfitOrderType, triggerOrderSide, amount, takeProfitOrderLimitPrice, this.extend(orderParams, {
2040
2052
  'takeProfitPrice': takeProfitOrderTriggerPrice,
2041
2053
  'reduceOnly': true,
2042
2054
  }));
2043
2055
  orderReq.push(orderObj);
2044
2056
  }
2045
- if (stopLoss !== undefined) {
2057
+ if (hasStopLoss) {
2046
2058
  const orderObj = this.createOrderRequest(symbol, stopLossOrderType, triggerOrderSide, amount, stopLossOrderLimitPrice, this.extend(orderParams, {
2047
2059
  'stopLossPrice': stopLossOrderTriggerPrice,
2048
2060
  'reduceOnly': true,
@@ -2088,7 +2100,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2088
2100
  * @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
2089
2101
  * @param {string} [params.vaultAddress] the vault address for order
2090
2102
  * @param {string} [params.subAccountAddress] sub account user address
2091
- * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2103
+ * @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2092
2104
  */
2093
2105
  async cancelOrder(id, symbol = undefined, params = {}) {
2094
2106
  const orders = await this.cancelOrders([id], symbol, params);
@@ -2106,7 +2118,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2106
2118
  * @param {string|string[]} [params.clientOrderId] client order ids, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
2107
2119
  * @param {string} [params.vaultAddress] the vault address
2108
2120
  * @param {string} [params.subAccountAddress] sub account user address
2109
- * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2121
+ * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2110
2122
  */
2111
2123
  async cancelOrders(ids, symbol = undefined, params = {}) {
2112
2124
  this.checkRequiredCredentials();
@@ -2213,7 +2225,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2213
2225
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2214
2226
  * @param {string} [params.vaultAddress] the vault address
2215
2227
  * @param {string} [params.subAccountAddress] sub account user address
2216
- * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2228
+ * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2217
2229
  */
2218
2230
  async cancelOrdersForSymbols(orders, params = {}) {
2219
2231
  this.checkRequiredCredentials();
@@ -2465,7 +2477,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2465
2477
  * @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
2466
2478
  * @param {string} [params.vaultAddress] the vault address for order
2467
2479
  * @param {string} [params.subAccountAddress] sub account user address
2468
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2480
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2469
2481
  */
2470
2482
  async editOrder(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
2471
2483
  await this.loadMarkets();
@@ -2483,7 +2495,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2483
2495
  * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/exchange-endpoint#modify-multiple-orders
2484
2496
  * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
2485
2497
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2486
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2498
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2487
2499
  */
2488
2500
  async editOrders(orders, params = {}) {
2489
2501
  await this.loadMarkets();
@@ -2577,10 +2589,10 @@ class hyperliquid extends hyperliquid$1["default"] {
2577
2589
  * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-historical-funding-rates
2578
2590
  * @param {string} symbol unified symbol of the market to fetch the funding rate history for
2579
2591
  * @param {int} [since] timestamp in ms of the earliest funding rate to fetch
2580
- * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure} to fetch
2592
+ * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure} to fetch
2581
2593
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2582
2594
  * @param {int} [params.until] timestamp in ms of the latest funding rate
2583
- * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
2595
+ * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure}
2584
2596
  */
2585
2597
  async fetchFundingRateHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
2586
2598
  await this.loadMarkets();
@@ -2652,7 +2664,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2652
2664
  * @param {string} [params.method] 'openOrders' or 'frontendOpenOrders' default is 'frontendOpenOrders'
2653
2665
  * @param {string} [params.subAccountAddress] sub account user address
2654
2666
  * @param {string} [params.dex] perp dex name. default is null
2655
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2667
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2656
2668
  */
2657
2669
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
2658
2670
  let userAddress = undefined;
@@ -2707,7 +2719,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2707
2719
  * @param {int} [limit] the maximum number of open orders structures to retrieve
2708
2720
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2709
2721
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
2710
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2722
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2711
2723
  */
2712
2724
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
2713
2725
  await this.loadMarkets();
@@ -2724,7 +2736,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2724
2736
  * @param {int} [limit] the maximum number of open orders structures to retrieve
2725
2737
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2726
2738
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
2727
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2739
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2728
2740
  */
2729
2741
  async fetchCanceledOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
2730
2742
  await this.loadMarkets();
@@ -2741,7 +2753,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2741
2753
  * @param {int} [limit] the maximum number of open orders structures to retrieve
2742
2754
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2743
2755
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
2744
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2756
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2745
2757
  */
2746
2758
  async fetchCanceledAndClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
2747
2759
  await this.loadMarkets();
@@ -2760,7 +2772,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2760
2772
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
2761
2773
  * @param {string} [params.subAccountAddress] sub account user address
2762
2774
  * @param {string} [params.dex] perp dex name. default is null
2763
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
2775
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
2764
2776
  */
2765
2777
  async fetchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
2766
2778
  let userAddress = undefined;
@@ -2806,7 +2818,7 @@ class hyperliquid extends hyperliquid$1["default"] {
2806
2818
  * @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
2807
2819
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
2808
2820
  * @param {string} [params.subAccountAddress] sub account user address
2809
- * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2821
+ * @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2810
2822
  */
2811
2823
  async fetchOrder(id, symbol = undefined, params = {}) {
2812
2824
  let userAddress = undefined;
@@ -3059,7 +3071,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3059
3071
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3060
3072
  * @param {int} [params.until] timestamp in ms of the latest trade
3061
3073
  * @param {string} [params.subAccountAddress] sub account user address
3062
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
3074
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
3063
3075
  */
3064
3076
  async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
3065
3077
  let userAddress = undefined;
@@ -3173,7 +3185,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3173
3185
  * @param {string} symbol unified market symbol of the market the position is held in
3174
3186
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3175
3187
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
3176
- * @returns {object} a [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
3188
+ * @returns {object} a [position structure]{@link https://docs.ccxt.com/?id=position-structure}
3177
3189
  */
3178
3190
  async fetchPosition(symbol, params = {}) {
3179
3191
  const positions = await this.fetchPositions([symbol], params);
@@ -3213,7 +3225,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3213
3225
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
3214
3226
  * @param {string} [params.subAccountAddress] sub account user address
3215
3227
  * @param {string} [params.dex] perp dex name, eg: XYZ
3216
- * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
3228
+ * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/?id=position-structure}
3217
3229
  */
3218
3230
  async fetchPositions(symbols = undefined, params = {}) {
3219
3231
  await this.loadMarkets();
@@ -3482,7 +3494,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3482
3494
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3483
3495
  * @param {string} [params.vaultAddress] the vault address
3484
3496
  * @param {string} [params.subAccountAddress] sub account user address
3485
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/#/?id=add-margin-structure}
3497
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
3486
3498
  */
3487
3499
  async addMargin(symbol, amount, params = {}) {
3488
3500
  return await this.modifyMarginHelper(symbol, amount, 'add', params);
@@ -3497,7 +3509,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3497
3509
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3498
3510
  * @param {string} [params.vaultAddress] the vault address
3499
3511
  * @param {string} [params.subAccountAddress] sub account user address
3500
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/#/?id=reduce-margin-structure}
3512
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
3501
3513
  */
3502
3514
  async reduceMargin(symbol, amount, params = {}) {
3503
3515
  return await this.modifyMarginHelper(symbol, amount, 'reduce', params);
@@ -3573,7 +3585,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3573
3585
  * @param {string} toAccount account to transfer to *swap, spot or address*
3574
3586
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3575
3587
  * @param {string} [params.vaultAddress] the vault address for order
3576
- * @returns {object} a [transfer structure]{@link https://docs.ccxt.com/#/?id=transfer-structure}
3588
+ * @returns {object} a [transfer structure]{@link https://docs.ccxt.com/?id=transfer-structure}
3577
3589
  */
3578
3590
  async transfer(code, amount, fromAccount, toAccount, params = {}) {
3579
3591
  this.checkRequiredCredentials();
@@ -3697,7 +3709,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3697
3709
  * @param {string} tag
3698
3710
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3699
3711
  * @param {string} [params.vaultAddress] vault address withdraw from
3700
- * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
3712
+ * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/?id=transaction-structure}
3701
3713
  */
3702
3714
  async withdraw(code, amount, address, tag = undefined, params = {}) {
3703
3715
  this.checkRequiredCredentials();
@@ -3812,7 +3824,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3812
3824
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3813
3825
  * @param {string} [params.user] user address, will default to this.walletAddress if not provided
3814
3826
  * @param {string} [params.subAccountAddress] sub account user address
3815
- * @returns {object} a [fee structure]{@link https://docs.ccxt.com/#/?id=fee-structure}
3827
+ * @returns {object} a [fee structure]{@link https://docs.ccxt.com/?id=fee-structure}
3816
3828
  */
3817
3829
  async fetchTradingFee(symbol, params = {}) {
3818
3830
  await this.loadMarkets();
@@ -3921,7 +3933,7 @@ class hyperliquid extends hyperliquid$1["default"] {
3921
3933
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3922
3934
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
3923
3935
  * @param {string} [params.subAccountAddress] sub account user address
3924
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
3936
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
3925
3937
  */
3926
3938
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
3927
3939
  await this.loadMarkets();
@@ -4015,7 +4027,7 @@ class hyperliquid extends hyperliquid$1["default"] {
4015
4027
  * @param {int} [params.until] the latest time in ms to fetch withdrawals for
4016
4028
  * @param {string} [params.subAccountAddress] sub account user address
4017
4029
  * @param {string} [params.vaultAddress] vault address
4018
- * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
4030
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
4019
4031
  */
4020
4032
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
4021
4033
  await this.loadMarkets();
@@ -4082,7 +4094,7 @@ class hyperliquid extends hyperliquid$1["default"] {
4082
4094
  * @param {int} [params.until] the latest time in ms to fetch withdrawals for
4083
4095
  * @param {string} [params.subAccountAddress] sub account user address
4084
4096
  * @param {string} [params.vaultAddress] vault address
4085
- * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
4097
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
4086
4098
  */
4087
4099
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
4088
4100
  await this.loadMarkets();
@@ -4141,7 +4153,7 @@ class hyperliquid extends hyperliquid$1["default"] {
4141
4153
  * @description Retrieves the open interest for a list of symbols
4142
4154
  * @param {string[]} [symbols] Unified CCXT market symbol
4143
4155
  * @param {object} [params] exchange specific parameters
4144
- * @returns {object} an open interest structure{@link https://docs.ccxt.com/#/?id=open-interest-structure}
4156
+ * @returns {object} an open interest structure{@link https://docs.ccxt.com/?id=open-interest-structure}
4145
4157
  */
4146
4158
  async fetchOpenInterests(symbols = undefined, params = {}) {
4147
4159
  await this.loadMarkets();
@@ -4155,7 +4167,7 @@ class hyperliquid extends hyperliquid$1["default"] {
4155
4167
  * @description retrieves the open interest of a contract trading pair
4156
4168
  * @param {string} symbol unified CCXT market symbol
4157
4169
  * @param {object} [params] exchange specific parameters
4158
- * @returns {object} an [open interest structure]{@link https://docs.ccxt.com/#/?id=open-interest-structure}
4170
+ * @returns {object} an [open interest structure]{@link https://docs.ccxt.com/?id=open-interest-structure}
4159
4171
  */
4160
4172
  async fetchOpenInterest(symbol, params = {}) {
4161
4173
  symbol = this.symbol(symbol);
@@ -4206,7 +4218,7 @@ class hyperliquid extends hyperliquid$1["default"] {
4206
4218
  * @param {int} [limit] the maximum number of funding history structures to retrieve
4207
4219
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4208
4220
  * @param {string} [params.subAccountAddress] sub account user address
4209
- * @returns {object} a [funding history structure]{@link https://docs.ccxt.com/#/?id=funding-history-structure}
4221
+ * @returns {object} a [funding history structure]{@link https://docs.ccxt.com/?id=funding-history-structure}
4210
4222
  */
4211
4223
  async fetchFundingHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
4212
4224
  await this.loadMarkets();
@@ -4306,6 +4318,35 @@ class hyperliquid extends hyperliquid$1["default"] {
4306
4318
  const response = await this.privatePostExchange(this.extend(request, params));
4307
4319
  return response;
4308
4320
  }
4321
+ /**
4322
+ * @method
4323
+ * @name hyperliquid#createAccount
4324
+ * @description creates a sub-account under the main account
4325
+ * @param {string} name the name of the sub-account
4326
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
4327
+ * @param {int} [params.expiresAfter] time in ms after which the sub-account will expire
4328
+ * @returns {object} a response object
4329
+ */
4330
+ async createSubAccount(name, params = {}) {
4331
+ const nonce = this.milliseconds();
4332
+ const request = {
4333
+ 'nonce': nonce,
4334
+ };
4335
+ const action = {
4336
+ 'type': 'createSubAccount',
4337
+ 'name': name,
4338
+ };
4339
+ const expiresAfter = this.safeInteger(params, 'expiresAfter');
4340
+ if (expiresAfter !== undefined) {
4341
+ params = this.omit(params, 'expiresAfter');
4342
+ request['expiresAfter'] = expiresAfter;
4343
+ }
4344
+ const signature = this.signL1Action(action, nonce, undefined, expiresAfter);
4345
+ request['action'] = action;
4346
+ request['signature'] = signature;
4347
+ const response = await this.privatePostExchange(this.extend(request, params));
4348
+ return response;
4349
+ }
4309
4350
  extractTypeFromDelta(data = []) {
4310
4351
  const records = [];
4311
4352
  for (let i = 0; i < data.length; i++) {
@@ -414,7 +414,7 @@ class independentreserve extends independentreserve$1["default"] {
414
414
  * @name independentreserve#fetchBalance
415
415
  * @description query for balance and get the amount of funds available for trading or funds locked in orders
416
416
  * @param {object} [params] extra parameters specific to the exchange API endpoint
417
- * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
417
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/?id=balance-structure}
418
418
  */
419
419
  async fetchBalance(params = {}) {
420
420
  await this.loadMarkets();
@@ -428,7 +428,7 @@ class independentreserve extends independentreserve$1["default"] {
428
428
  * @param {string} symbol unified symbol of the market to fetch the order book for
429
429
  * @param {int} [limit] the maximum amount of order book entries to return
430
430
  * @param {object} [params] extra parameters specific to the exchange API endpoint
431
- * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
431
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/?id=order-book-structure} indexed by market symbols
432
432
  */
433
433
  async fetchOrderBook(symbol, limit = undefined, params = {}) {
434
434
  await this.loadMarkets();
@@ -494,7 +494,7 @@ class independentreserve extends independentreserve$1["default"] {
494
494
  * @description fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
495
495
  * @param {string} symbol unified symbol of the market to fetch the ticker for
496
496
  * @param {object} [params] extra parameters specific to the exchange API endpoint
497
- * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
497
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/?id=ticker-structure}
498
498
  */
499
499
  async fetchTicker(symbol, params = {}) {
500
500
  await this.loadMarkets();
@@ -654,7 +654,7 @@ class independentreserve extends independentreserve$1["default"] {
654
654
  * @param {string} id order id
655
655
  * @param {string} symbol unified symbol of the market the order was made in
656
656
  * @param {object} [params] extra parameters specific to the exchange API endpoint
657
- * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
657
+ * @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
658
658
  */
659
659
  async fetchOrder(id, symbol = undefined, params = {}) {
660
660
  await this.loadMarkets();
@@ -675,7 +675,7 @@ class independentreserve extends independentreserve$1["default"] {
675
675
  * @param {int} [since] the earliest time in ms to fetch open orders for
676
676
  * @param {int} [limit] the maximum number of open orders structures to retrieve
677
677
  * @param {object} [params] extra parameters specific to the exchange API endpoint
678
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
678
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
679
679
  */
680
680
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
681
681
  await this.loadMarkets();
@@ -703,7 +703,7 @@ class independentreserve extends independentreserve$1["default"] {
703
703
  * @param {int} [since] the earliest time in ms to fetch orders for
704
704
  * @param {int} [limit] the maximum number of order structures to retrieve
705
705
  * @param {object} [params] extra parameters specific to the exchange API endpoint
706
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
706
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
707
707
  */
708
708
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
709
709
  await this.loadMarkets();
@@ -731,7 +731,7 @@ class independentreserve extends independentreserve$1["default"] {
731
731
  * @param {int} [since] the earliest time in ms to fetch trades for
732
732
  * @param {int} [limit] the maximum number of trades structures to retrieve
733
733
  * @param {object} [params] extra parameters specific to the exchange API endpoint
734
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
734
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
735
735
  */
736
736
  async fetchMyTrades(symbol = undefined, since = undefined, limit = 50, params = {}) {
737
737
  await this.loadMarkets();
@@ -799,7 +799,7 @@ class independentreserve extends independentreserve$1["default"] {
799
799
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
800
800
  * @param {int} [limit] the maximum amount of trades to fetch
801
801
  * @param {object} [params] extra parameters specific to the exchange API endpoint
802
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
802
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=public-trades}
803
803
  */
804
804
  async fetchTrades(symbol, since = undefined, limit = undefined, params = {}) {
805
805
  await this.loadMarkets();
@@ -817,7 +817,7 @@ class independentreserve extends independentreserve$1["default"] {
817
817
  * @name independentreserve#fetchTradingFees
818
818
  * @description fetch the trading fees for multiple markets
819
819
  * @param {object} [params] extra parameters specific to the exchange API endpoint
820
- * @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure} indexed by market symbols
820
+ * @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/?id=fee-structure} indexed by market symbols
821
821
  */
822
822
  async fetchTradingFees(params = {}) {
823
823
  await this.loadMarkets();
@@ -868,7 +868,7 @@ class independentreserve extends independentreserve$1["default"] {
868
868
  * @param {float} amount how much of currency you want to trade in units of base currency
869
869
  * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
870
870
  * @param {object} [params] extra parameters specific to the exchange API endpoint
871
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
871
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
872
872
  */
873
873
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
874
874
  await this.loadMarkets();
@@ -902,7 +902,7 @@ class independentreserve extends independentreserve$1["default"] {
902
902
  * @param {string} id order id
903
903
  * @param {string} symbol unified symbol of the market the order was made in
904
904
  * @param {object} [params] extra parameters specific to the exchange API endpoint
905
- * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
905
+ * @returns {object} An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
906
906
  */
907
907
  async cancelOrder(id, symbol = undefined, params = {}) {
908
908
  await this.loadMarkets();
@@ -934,7 +934,7 @@ class independentreserve extends independentreserve$1["default"] {
934
934
  * @see https://www.independentreserve.com/features/api#GetDigitalCurrencyDepositAddress
935
935
  * @param {string} code unified currency code
936
936
  * @param {object} [params] extra parameters specific to the exchange API endpoint
937
- * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
937
+ * @returns {object} an [address structure]{@link https://docs.ccxt.com/?id=address-structure}
938
938
  */
939
939
  async fetchDepositAddress(code, params = {}) {
940
940
  await this.loadMarkets();
@@ -985,7 +985,7 @@ class independentreserve extends independentreserve$1["default"] {
985
985
  *
986
986
  * EXCHANGE SPECIFIC PARAMETERS
987
987
  * @param {object} [params.comment] withdrawal comment, should not exceed 500 characters
988
- * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
988
+ * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/?id=transaction-structure}
989
989
  */
990
990
  async withdraw(code, amount, address, tag = undefined, params = {}) {
991
991
  [tag, params] = this.handleWithdrawTagAndParams(tag, params);