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
package/js/src/kucoin.js CHANGED
@@ -106,7 +106,7 @@ export default class kucoin extends Exchange {
106
106
  'fetchTradingFee': true,
107
107
  'fetchTradingFees': false,
108
108
  'fetchTransactionFee': true,
109
- 'fetchTransfers': false,
109
+ 'fetchTransfers': true,
110
110
  'fetchWithdrawals': true,
111
111
  'repayCrossMargin': true,
112
112
  'repayIsolatedMargin': true,
@@ -525,6 +525,8 @@ export default class kucoin extends Exchange {
525
525
  'Unsuccessful! Exceeded the max. funds out-transfer limit': InsufficientFunds,
526
526
  'The amount increment is invalid.': BadRequest,
527
527
  'The quantity is below the minimum requirement.': InvalidOrder,
528
+ 'not in the given range!': BadRequest,
529
+ 'recAccountType not in the given range': BadRequest,
528
530
  '400': BadRequest,
529
531
  '401': AuthenticationError,
530
532
  '403': NotSupported,
@@ -1152,7 +1154,7 @@ export default class kucoin extends Exchange {
1152
1154
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1153
1155
  * @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
1154
1156
  * @param {string} [params.tradeType] *uta only* set to SPOT or FUTURES
1155
- * @returns {object} a [status structure]{@link https://docs.ccxt.com/#/?id=exchange-status-structure}
1157
+ * @returns {object} a [status structure]{@link https://docs.ccxt.com/?id=exchange-status-structure}
1156
1158
  */
1157
1159
  async fetchStatus(params = {}) {
1158
1160
  let uta = undefined;
@@ -1727,7 +1729,7 @@ export default class kucoin extends Exchange {
1727
1729
  * @description fetch all the accounts associated with a profile
1728
1730
  * @see https://docs.kucoin.com/#list-accounts
1729
1731
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1730
- * @returns {object} a dictionary of [account structures]{@link https://docs.ccxt.com/#/?id=account-structure} indexed by the account type
1732
+ * @returns {object} a dictionary of [account structures]{@link https://docs.ccxt.com/?id=account-structure} indexed by the account type
1731
1733
  */
1732
1734
  async fetchAccounts(params = {}) {
1733
1735
  const response = await this.privateGetAccounts(params);
@@ -1779,7 +1781,7 @@ export default class kucoin extends Exchange {
1779
1781
  * @see https://docs.kucoin.com/#get-withdrawal-quotas
1780
1782
  * @param {string} code unified currency code
1781
1783
  * @param {object} params extra parameters specific to the exchange API endpoint
1782
- * @returns {object} a [fee structure]{@link https://docs.ccxt.com/#/?id=fee-structure}
1784
+ * @returns {object} a [fee structure]{@link https://docs.ccxt.com/?id=fee-structure}
1783
1785
  */
1784
1786
  async fetchTransactionFee(code, params = {}) {
1785
1787
  await this.loadMarkets();
@@ -1810,7 +1812,7 @@ export default class kucoin extends Exchange {
1810
1812
  * @param {string} code unified currency code
1811
1813
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1812
1814
  * @param {string} [params.network] The chain of currency. This only apply for multi-chain currency, and there is no need for single chain currency; you can query the chain through the response of the GET /api/v2/currencies/{currency} interface
1813
- * @returns {object} a [fee structure]{@link https://docs.ccxt.com/#/?id=fee-structure}
1815
+ * @returns {object} a [fee structure]{@link https://docs.ccxt.com/?id=fee-structure}
1814
1816
  */
1815
1817
  async fetchDepositWithdrawFee(code, params = {}) {
1816
1818
  await this.loadMarkets();
@@ -2054,7 +2056,7 @@ export default class kucoin extends Exchange {
2054
2056
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2055
2057
  * @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
2056
2058
  * @param {string} [params.tradeType] *uta only* set to SPOT or FUTURES
2057
- * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
2059
+ * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/?id=ticker-structure}
2058
2060
  */
2059
2061
  async fetchTickers(symbols = undefined, params = {}) {
2060
2062
  await this.loadMarkets();
@@ -2164,7 +2166,7 @@ export default class kucoin extends Exchange {
2164
2166
  * @see https://www.kucoin.com/docs/rest/margin-trading/margin-info/get-all-margin-trading-pairs-mark-prices
2165
2167
  * @param {string[]} [symbols] unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
2166
2168
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2167
- * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
2169
+ * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/?id=ticker-structure}
2168
2170
  */
2169
2171
  async fetchMarkPrices(symbols = undefined, params = {}) {
2170
2172
  await this.loadMarkets();
@@ -2182,7 +2184,7 @@ export default class kucoin extends Exchange {
2182
2184
  * @param {string} symbol unified symbol of the market to fetch the ticker for
2183
2185
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2184
2186
  * @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
2185
- * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
2187
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/?id=ticker-structure}
2186
2188
  */
2187
2189
  async fetchTicker(symbol, params = {}) {
2188
2190
  await this.loadMarkets();
@@ -2270,7 +2272,7 @@ export default class kucoin extends Exchange {
2270
2272
  * @see https://www.kucoin.com/docs/rest/margin-trading/margin-info/get-mark-price
2271
2273
  * @param {string} symbol unified symbol of the market to fetch the ticker for
2272
2274
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2273
- * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
2275
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/?id=ticker-structure}
2274
2276
  */
2275
2277
  async fetchMarkPrice(symbol, params = {}) {
2276
2278
  await this.loadMarkets();
@@ -2406,7 +2408,7 @@ export default class kucoin extends Exchange {
2406
2408
  * @param {string} code unified currency code of the currency for the deposit address
2407
2409
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2408
2410
  * @param {string} [params.network] the blockchain network name
2409
- * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
2411
+ * @returns {object} an [address structure]{@link https://docs.ccxt.com/?id=address-structure}
2410
2412
  */
2411
2413
  async createDepositAddress(code, params = {}) {
2412
2414
  await this.loadMarkets();
@@ -2446,7 +2448,7 @@ export default class kucoin extends Exchange {
2446
2448
  * @param {string} code unified currency code
2447
2449
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2448
2450
  * @param {string} [params.network] the blockchain network name
2449
- * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
2451
+ * @returns {object} an [address structure]{@link https://docs.ccxt.com/?id=address-structure}
2450
2452
  */
2451
2453
  async fetchDepositAddress(code, params = {}) {
2452
2454
  await this.loadMarkets();
@@ -2503,7 +2505,7 @@ export default class kucoin extends Exchange {
2503
2505
  * @description fetch the deposit address for a currency associated with this account
2504
2506
  * @param {string} code unified currency code
2505
2507
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2506
- * @returns {object} an array of [address structures]{@link https://docs.ccxt.com/#/?id=address-structure}
2508
+ * @returns {object} an array of [address structures]{@link https://docs.ccxt.com/?id=address-structure}
2507
2509
  */
2508
2510
  async fetchDepositAddressesByNetwork(code, params = {}) {
2509
2511
  await this.loadMarkets();
@@ -2547,7 +2549,7 @@ export default class kucoin extends Exchange {
2547
2549
  * @param {int} [limit] the maximum amount of order book entries to return
2548
2550
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2549
2551
  * @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
2550
- * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
2552
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/?id=order-book-structure} indexed by market symbols
2551
2553
  */
2552
2554
  async fetchOrderBook(symbol, limit = undefined, params = {}) {
2553
2555
  await this.loadMarkets();
@@ -2700,7 +2702,7 @@ export default class kucoin extends Exchange {
2700
2702
  * @param {bool} [params.hf] false, // true for hf order
2701
2703
  * @param {bool} [params.test] set to true to test an order, no order will be created but the request will be validated
2702
2704
  * @param {bool} [params.sync] set to true to use the hf sync call
2703
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2705
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2704
2706
  */
2705
2707
  async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
2706
2708
  await this.loadMarkets();
@@ -2766,7 +2768,7 @@ export default class kucoin extends Exchange {
2766
2768
  * @param {string} side 'buy' or 'sell'
2767
2769
  * @param {float} cost how much you want to trade in units of the quote currency
2768
2770
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2769
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2771
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2770
2772
  */
2771
2773
  async createMarketOrderWithCost(symbol, side, cost, params = {}) {
2772
2774
  await this.loadMarkets();
@@ -2783,7 +2785,7 @@ export default class kucoin extends Exchange {
2783
2785
  * @param {string} symbol unified symbol of the market to create an order in
2784
2786
  * @param {float} cost how much you want to trade in units of the quote currency
2785
2787
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2786
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2788
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2787
2789
  */
2788
2790
  async createMarketBuyOrderWithCost(symbol, cost, params = {}) {
2789
2791
  await this.loadMarkets();
@@ -2797,7 +2799,7 @@ export default class kucoin extends Exchange {
2797
2799
  * @param {string} symbol unified symbol of the market to create an order in
2798
2800
  * @param {float} cost how much you want to trade in units of the quote currency
2799
2801
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2800
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2802
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2801
2803
  */
2802
2804
  async createMarketSellOrderWithCost(symbol, cost, params = {}) {
2803
2805
  await this.loadMarkets();
@@ -2814,7 +2816,7 @@ export default class kucoin extends Exchange {
2814
2816
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2815
2817
  * @param {bool} [params.hf] false, // true for hf orders
2816
2818
  * @param {bool} [params.sync] false, // true to use the hf sync call
2817
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2819
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2818
2820
  */
2819
2821
  async createOrders(orders, params = {}) {
2820
2822
  await this.loadMarkets();
@@ -2987,7 +2989,7 @@ export default class kucoin extends Exchange {
2987
2989
  * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
2988
2990
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2989
2991
  * @param {string} [params.clientOrderId] client order id, defaults to id if not passed
2990
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
2992
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
2991
2993
  */
2992
2994
  async editOrder(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
2993
2995
  await this.loadMarkets();
@@ -3217,7 +3219,7 @@ export default class kucoin extends Exchange {
3217
3219
  * @param {string} [params.orderIds] *trigger orders only* comma seperated order ID list
3218
3220
  * @param {bool} [params.trigger] True if fetching a trigger order
3219
3221
  * @param {bool} [params.hf] false, // true for hf order
3220
- * @returns An [array of order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
3222
+ * @returns An [array of order structures]{@link https://docs.ccxt.com/?id=order-structure}
3221
3223
  */
3222
3224
  async fetchOrdersByStatus(status, symbol = undefined, since = undefined, limit = undefined, params = {}) {
3223
3225
  await this.loadMarkets();
@@ -3340,7 +3342,7 @@ export default class kucoin extends Exchange {
3340
3342
  * @param {bool} [params.trigger] True if fetching a trigger order
3341
3343
  * @param {bool} [params.hf] false, // true for hf order
3342
3344
  * @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)
3343
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
3345
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
3344
3346
  */
3345
3347
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
3346
3348
  await this.loadMarkets();
@@ -3372,7 +3374,7 @@ export default class kucoin extends Exchange {
3372
3374
  * @param {string} [params.orderIds] *trigger orders only* comma seperated order ID list
3373
3375
  * @param {bool} [params.hf] false, // true for hf order
3374
3376
  * @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)
3375
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
3377
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
3376
3378
  */
3377
3379
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
3378
3380
  await this.loadMarkets();
@@ -3399,7 +3401,7 @@ export default class kucoin extends Exchange {
3399
3401
  * @param {bool} [params.trigger] true if fetching a trigger order
3400
3402
  * @param {bool} [params.hf] false, // true for hf order
3401
3403
  * @param {bool} [params.clientOid] unique order id created by users to identify their orders
3402
- * @returns An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
3404
+ * @returns An [order structure]{@link https://docs.ccxt.com/?id=order-structure}
3403
3405
  */
3404
3406
  async fetchOrder(id, symbol = undefined, params = {}) {
3405
3407
  await this.loadMarkets();
@@ -3651,7 +3653,7 @@ export default class kucoin extends Exchange {
3651
3653
  * @param {int} [since] the earliest time in ms to fetch trades for
3652
3654
  * @param {int} [limit] the maximum number of trades to retrieve
3653
3655
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3654
- * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
3656
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
3655
3657
  */
3656
3658
  async fetchOrderTrades(id, symbol = undefined, since = undefined, limit = undefined, params = {}) {
3657
3659
  const request = {
@@ -3672,7 +3674,7 @@ export default class kucoin extends Exchange {
3672
3674
  * @param {int} [params.until] the latest time in ms to fetch entries for
3673
3675
  * @param {bool} [params.hf] false, // true for hf order
3674
3676
  * @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)
3675
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
3677
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
3676
3678
  */
3677
3679
  async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
3678
3680
  await this.loadMarkets();
@@ -3786,7 +3788,7 @@ export default class kucoin extends Exchange {
3786
3788
  * @param {int} [limit] the maximum amount of trades to fetch
3787
3789
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3788
3790
  * @param {boolean} [params.uta] set to true for the unified trading account (uta), defaults to false
3789
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
3791
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=public-trades}
3790
3792
  */
3791
3793
  async fetchTrades(symbol, since = undefined, limit = undefined, params = {}) {
3792
3794
  await this.loadMarkets();
@@ -4005,7 +4007,7 @@ export default class kucoin extends Exchange {
4005
4007
  * @see https://www.kucoin.com/docs/rest/funding/trade-fee/trading-pair-actual-fee-spot-margin-trade_hf
4006
4008
  * @param {string} symbol unified market symbol
4007
4009
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4008
- * @returns {object} a [fee structure]{@link https://docs.ccxt.com/#/?id=fee-structure}
4010
+ * @returns {object} a [fee structure]{@link https://docs.ccxt.com/?id=fee-structure}
4009
4011
  */
4010
4012
  async fetchTradingFee(symbol, params = {}) {
4011
4013
  await this.loadMarkets();
@@ -4048,7 +4050,7 @@ export default class kucoin extends Exchange {
4048
4050
  * @param {string} address the address to withdraw to
4049
4051
  * @param {string} tag
4050
4052
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4051
- * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
4053
+ * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/?id=transaction-structure}
4052
4054
  */
4053
4055
  async withdraw(code, amount, address, tag = undefined, params = {}) {
4054
4056
  [tag, params] = this.handleWithdrawTagAndParams(tag, params);
@@ -4226,7 +4228,7 @@ export default class kucoin extends Exchange {
4226
4228
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4227
4229
  * @param {int} [params.until] the latest time in ms to fetch entries for
4228
4230
  * @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)
4229
- * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
4231
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
4230
4232
  */
4231
4233
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
4232
4234
  await this.loadMarkets();
@@ -4311,7 +4313,7 @@ export default class kucoin extends Exchange {
4311
4313
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4312
4314
  * @param {int} [params.until] the latest time in ms to fetch entries for
4313
4315
  * @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)
4314
- * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
4316
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/?id=transaction-structure}
4315
4317
  */
4316
4318
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
4317
4319
  await this.loadMarkets();
@@ -4406,7 +4408,7 @@ export default class kucoin extends Exchange {
4406
4408
  * @param {object} [params.marginMode] 'cross' or 'isolated', margin type for fetching margin balance
4407
4409
  * @param {object} [params.type] extra parameters specific to the exchange API endpoint
4408
4410
  * @param {object} [params.hf] *default if false* if true, the result includes the balance of the high frequency account
4409
- * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
4411
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/?id=balance-structure}
4410
4412
  */
4411
4413
  async fetchBalance(params = {}) {
4412
4414
  await this.loadMarkets();
@@ -4590,7 +4592,7 @@ export default class kucoin extends Exchange {
4590
4592
  * @param {string} fromAccount account to transfer from
4591
4593
  * @param {string} toAccount account to transfer to
4592
4594
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4593
- * @returns {object} a [transfer structure]{@link https://docs.ccxt.com/#/?id=transfer-structure}
4595
+ * @returns {object} a [transfer structure]{@link https://docs.ccxt.com/?id=transfer-structure}
4594
4596
  */
4595
4597
  async transfer(code, amount, fromAccount, toAccount, params = {}) {
4596
4598
  await this.loadMarkets();
@@ -4708,16 +4710,49 @@ export default class kucoin extends Exchange {
4708
4710
  // "updatedAt": 1616545569000
4709
4711
  // }
4710
4712
  //
4713
+ // ledger entry - from account ledgers API (for fetchTransfers)
4714
+ //
4715
+ // {
4716
+ // "id": "611a1e7c6a053300067a88d9",
4717
+ // "currency": "USDT",
4718
+ // "amount": "10.00059547",
4719
+ // "fee": "0",
4720
+ // "balance": "0",
4721
+ // "accountType": "MAIN",
4722
+ // "bizType": "Transfer",
4723
+ // "direction": "in",
4724
+ // "createdAt": 1629101692950,
4725
+ // "context": "{\"orderId\":\"611a1e7c6a053300067a88d9\"}"
4726
+ // }
4727
+ //
4711
4728
  const timestamp = this.safeInteger(transfer, 'createdAt');
4712
4729
  const currencyId = this.safeString(transfer, 'currency');
4713
4730
  const rawStatus = this.safeString(transfer, 'status');
4714
- const accountFromRaw = this.safeStringLower(transfer, 'payAccountType');
4715
- const accountToRaw = this.safeStringLower(transfer, 'recAccountType');
4731
+ const bizType = this.safeString(transfer, 'bizType');
4732
+ const isLedgerEntry = (bizType !== undefined);
4733
+ let accountFromRaw = undefined;
4734
+ let accountToRaw = undefined;
4735
+ if (isLedgerEntry) {
4736
+ // Ledger entry format: uses accountType + direction
4737
+ const accountType = this.safeStringLower(transfer, 'accountType');
4738
+ const direction = this.safeString(transfer, 'direction');
4739
+ if (direction === 'out') {
4740
+ accountFromRaw = accountType;
4741
+ }
4742
+ else if (direction === 'in') {
4743
+ accountToRaw = accountType;
4744
+ }
4745
+ }
4746
+ else {
4747
+ // Transfer API format: uses payAccountType/recAccountType
4748
+ accountFromRaw = this.safeStringLower(transfer, 'payAccountType');
4749
+ accountToRaw = this.safeStringLower(transfer, 'recAccountType');
4750
+ }
4716
4751
  const accountsByType = this.safeDict(this.options, 'accountsByType');
4717
4752
  const accountFrom = this.safeString(accountsByType, accountFromRaw, accountFromRaw);
4718
4753
  const accountTo = this.safeString(accountsByType, accountToRaw, accountToRaw);
4719
4754
  return {
4720
- 'id': this.safeString2(transfer, 'applyId', 'orderId'),
4755
+ 'id': this.safeStringN(transfer, ['id', 'applyId', 'orderId']),
4721
4756
  'currency': this.safeCurrencyCode(currencyId, currency),
4722
4757
  'timestamp': timestamp,
4723
4758
  'datetime': this.iso8601(timestamp),
@@ -4877,7 +4912,7 @@ export default class kucoin extends Exchange {
4877
4912
  * @param {boolean} [params.hf] default false, when true will fetch ledger entries for the high frequency trading account
4878
4913
  * @param {int} [params.until] the latest time in ms to fetch entries for
4879
4914
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
4880
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger}
4915
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
4881
4916
  */
4882
4917
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
4883
4918
  await this.loadMarkets();
@@ -5024,7 +5059,7 @@ export default class kucoin extends Exchange {
5024
5059
  * @param {int} [limit] the maximum number of structures to retrieve
5025
5060
  * @param {object} [params] extra parameters specific to the exchange API endpoint
5026
5061
  * @param {string} [params.marginMode] 'cross' or 'isolated' default is 'cross'
5027
- * @returns {object[]} a list of [borrow interest structures]{@link https://docs.ccxt.com/#/?id=borrow-interest-structure}
5062
+ * @returns {object[]} a list of [borrow interest structures]{@link https://docs.ccxt.com/?id=borrow-interest-structure}
5028
5063
  */
5029
5064
  async fetchBorrowInterest(code = undefined, symbol = undefined, since = undefined, limit = undefined, params = {}) {
5030
5065
  await this.loadMarkets();
@@ -5209,7 +5244,7 @@ export default class kucoin extends Exchange {
5209
5244
  * @param {object} [params] extra parameters specific to the exchange API endpoint
5210
5245
  * @param {string} [params.marginMode] 'cross' or 'isolated' default is 'cross'
5211
5246
  * @param {int} [params.until] the latest time in ms to fetch entries for
5212
- * @returns {object} a dictionary of [borrow rate structures]{@link https://docs.ccxt.com/#/?id=borrow-rate-structure} indexed by the market symbol
5247
+ * @returns {object} a dictionary of [borrow rate structures]{@link https://docs.ccxt.com/?id=borrow-rate-structure} indexed by the market symbol
5213
5248
  */
5214
5249
  async fetchBorrowRateHistories(codes = undefined, since = undefined, limit = undefined, params = {}) {
5215
5250
  await this.loadMarkets();
@@ -5258,11 +5293,11 @@ export default class kucoin extends Exchange {
5258
5293
  * @see https://www.kucoin.com/docs/rest/margin-trading/margin-trading-v3-/get-cross-isolated-margin-interest-records
5259
5294
  * @param {string} code unified currency code
5260
5295
  * @param {int} [since] timestamp for the earliest borrow rate
5261
- * @param {int} [limit] the maximum number of [borrow rate structures]{@link https://docs.ccxt.com/#/?id=borrow-rate-structure} to retrieve
5296
+ * @param {int} [limit] the maximum number of [borrow rate structures]{@link https://docs.ccxt.com/?id=borrow-rate-structure} to retrieve
5262
5297
  * @param {object} [params] extra parameters specific to the exchange API endpoint
5263
5298
  * @param {string} [params.marginMode] 'cross' or 'isolated' default is 'cross'
5264
5299
  * @param {int} [params.until] the latest time in ms to fetch entries for
5265
- * @returns {object[]} an array of [borrow rate structures]{@link https://docs.ccxt.com/#/?id=borrow-rate-structure}
5300
+ * @returns {object[]} an array of [borrow rate structures]{@link https://docs.ccxt.com/?id=borrow-rate-structure}
5266
5301
  */
5267
5302
  async fetchBorrowRateHistory(code, since = undefined, limit = undefined, params = {}) {
5268
5303
  await this.loadMarkets();
@@ -5346,7 +5381,7 @@ export default class kucoin extends Exchange {
5346
5381
  * @param {float} amount the amount to borrow
5347
5382
  * @param {object} [params] extra parameters specific to the exchange API endpoints
5348
5383
  * @param {string} [params.timeInForce] either IOC or FOK
5349
- * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/#/?id=margin-loan-structure}
5384
+ * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/?id=margin-loan-structure}
5350
5385
  */
5351
5386
  async borrowCrossMargin(code, amount, params = {}) {
5352
5387
  await this.loadMarkets();
@@ -5382,7 +5417,7 @@ export default class kucoin extends Exchange {
5382
5417
  * @param {float} amount the amount to borrow
5383
5418
  * @param {object} [params] extra parameters specific to the exchange API endpoints
5384
5419
  * @param {string} [params.timeInForce] either IOC or FOK
5385
- * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/#/?id=margin-loan-structure}
5420
+ * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/?id=margin-loan-structure}
5386
5421
  */
5387
5422
  async borrowIsolatedMargin(symbol, code, amount, params = {}) {
5388
5423
  await this.loadMarkets();
@@ -5419,7 +5454,7 @@ export default class kucoin extends Exchange {
5419
5454
  * @param {string} code unified currency code of the currency to repay
5420
5455
  * @param {float} amount the amount to repay
5421
5456
  * @param {object} [params] extra parameters specific to the exchange API endpoints
5422
- * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/#/?id=margin-loan-structure}
5457
+ * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/?id=margin-loan-structure}
5423
5458
  */
5424
5459
  async repayCrossMargin(code, amount, params = {}) {
5425
5460
  await this.loadMarkets();
@@ -5453,7 +5488,7 @@ export default class kucoin extends Exchange {
5453
5488
  * @param {string} code unified currency code of the currency to repay
5454
5489
  * @param {float} amount the amount to repay
5455
5490
  * @param {object} [params] extra parameters specific to the exchange API endpoints
5456
- * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/#/?id=margin-loan-structure}
5491
+ * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/?id=margin-loan-structure}
5457
5492
  */
5458
5493
  async repayIsolatedMargin(symbol, code, amount, params = {}) {
5459
5494
  await this.loadMarkets();
@@ -5507,7 +5542,7 @@ export default class kucoin extends Exchange {
5507
5542
  * @see https://docs.kucoin.com/#get-currencies
5508
5543
  * @param {string[]|undefined} codes list of unified currency codes
5509
5544
  * @param {object} [params] extra parameters specific to the exchange API endpoint
5510
- * @returns {object} a list of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure}
5545
+ * @returns {object} a list of [fee structures]{@link https://docs.ccxt.com/?id=fee-structure}
5511
5546
  */
5512
5547
  async fetchDepositWithdrawFees(codes = undefined, params = {}) {
5513
5548
  await this.loadMarkets();
@@ -5577,7 +5612,7 @@ export default class kucoin extends Exchange {
5577
5612
  * @see https://www.kucoin.com/docs-new/rest/ua/get-current-funding-rate
5578
5613
  * @param {string} symbol unified market symbol
5579
5614
  * @param {object} [params] extra parameters specific to the exchange API endpoint
5580
- * @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/#/?id=funding-rate-structure}
5615
+ * @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/?id=funding-rate-structure}
5581
5616
  */
5582
5617
  async fetchFundingRate(symbol, params = {}) {
5583
5618
  await this.loadMarkets();
@@ -5641,10 +5676,10 @@ export default class kucoin extends Exchange {
5641
5676
  * @see https://www.kucoin.com/docs-new/rest/ua/get-history-funding-rate
5642
5677
  * @param {string} symbol unified symbol of the market to fetch the funding rate history for
5643
5678
  * @param {int} [since] not used by kucuoinfutures
5644
- * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure} to fetch
5679
+ * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure} to fetch
5645
5680
  * @param {object} [params] extra parameters specific to the exchange API endpoint
5646
5681
  * @param {int} [params.until] end time in ms
5647
- * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
5682
+ * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure}
5648
5683
  */
5649
5684
  async fetchFundingRateHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
5650
5685
  if (symbol === undefined) {
@@ -5810,4 +5845,77 @@ export default class kucoin extends Exchange {
5810
5845
  }
5811
5846
  return undefined;
5812
5847
  }
5848
+ /**
5849
+ * @method
5850
+ * @name kucoin#fetchTransfers
5851
+ * @description fetch a history of internal transfers made on an account
5852
+ * @see https://www.kucoin.com/docs-new/rest/account-info/account-funding/get-account-ledgers-spot-margin
5853
+ * @param {string} [code] unified currency code of the currency transferred
5854
+ * @param {int} [since] the earliest time in ms to fetch transfers for
5855
+ * @param {int} [limit] the maximum number of transfer structures to retrieve
5856
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
5857
+ * @param {int} [params.until] the latest time in ms to fetch transfers for
5858
+ * @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)
5859
+ * @returns {object[]} a list of [transfer structures]{@link https://docs.ccxt.com/?id=transfer-structure}
5860
+ */
5861
+ async fetchTransfers(code = undefined, since = undefined, limit = undefined, params = {}) {
5862
+ await this.loadMarkets();
5863
+ let paginate = false;
5864
+ [paginate, params] = this.handleOptionAndParams(params, 'fetchTransfers', 'paginate');
5865
+ if (paginate) {
5866
+ return await this.fetchPaginatedCallDynamic('fetchTransfers', code, since, limit, params);
5867
+ }
5868
+ let request = {
5869
+ 'bizType': 'TRANSFER',
5870
+ };
5871
+ const until = this.safeInteger(params, 'until');
5872
+ if (until !== undefined) {
5873
+ params = this.omit(params, 'until');
5874
+ request['endAt'] = until;
5875
+ }
5876
+ let currency = undefined;
5877
+ if (code !== undefined) {
5878
+ currency = this.currency(code);
5879
+ request['currency'] = currency['id'];
5880
+ }
5881
+ if (since !== undefined) {
5882
+ request['startAt'] = since;
5883
+ }
5884
+ if (limit !== undefined) {
5885
+ request['pageSize'] = limit;
5886
+ }
5887
+ else {
5888
+ request['pageSize'] = 500;
5889
+ }
5890
+ [request, params] = this.handleUntilOption('endAt', request, params);
5891
+ const response = await this.privateGetAccountsLedgers(this.extend(request, params));
5892
+ //
5893
+ // {
5894
+ // "code": "200000",
5895
+ // "data": {
5896
+ // "currentPage": 1,
5897
+ // "pageSize": 50,
5898
+ // "totalNum": 1,
5899
+ // "totalPage": 1,
5900
+ // "items": [
5901
+ // {
5902
+ // "id": "611a1e7c6a053300067a88d9",
5903
+ // "currency": "USDT",
5904
+ // "amount": "10.00059547",
5905
+ // "fee": "0",
5906
+ // "balance": "0",
5907
+ // "accountType": "MAIN",
5908
+ // "bizType": "Transfer",
5909
+ // "direction": "in",
5910
+ // "createdAt": 1629101692950,
5911
+ // "context": "{\"orderId\":\"611a1e7c6a053300067a88d9\"}"
5912
+ // }
5913
+ // ]
5914
+ // }
5915
+ // }
5916
+ //
5917
+ const data = this.safeDict(response, 'data', {});
5918
+ const items = this.safeList(data, 'items', []);
5919
+ return this.parseTransfers(items, currency, since, limit);
5920
+ }
5813
5921
  }