ccxt 4.4.80 → 4.4.85

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 (921) hide show
  1. package/README.md +5 -9
  2. package/dist/ccxt.browser.min.js +7 -7
  3. package/dist/cjs/ccxt.js +1 -9
  4. package/dist/cjs/src/abstract/alpaca.js +1 -1
  5. package/dist/cjs/src/abstract/apex.js +1 -1
  6. package/dist/cjs/src/abstract/ascendex.js +1 -1
  7. package/dist/cjs/src/abstract/bigone.js +1 -1
  8. package/dist/cjs/src/abstract/binance.js +1 -1
  9. package/dist/cjs/src/abstract/bingx.js +1 -1
  10. package/dist/cjs/src/abstract/bit2c.js +1 -1
  11. package/dist/cjs/src/abstract/bitbank.js +1 -1
  12. package/dist/cjs/src/abstract/bitbns.js +1 -1
  13. package/dist/cjs/src/abstract/bitfinex.js +1 -1
  14. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  15. package/dist/cjs/src/abstract/bitget.js +1 -1
  16. package/dist/cjs/src/abstract/bithumb.js +1 -1
  17. package/dist/cjs/src/abstract/bitmart.js +1 -1
  18. package/dist/cjs/src/abstract/bitmex.js +1 -1
  19. package/dist/cjs/src/abstract/bitopro.js +1 -1
  20. package/dist/cjs/src/abstract/bitrue.js +1 -1
  21. package/dist/cjs/src/abstract/bitso.js +1 -1
  22. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  23. package/dist/cjs/src/abstract/bitteam.js +1 -1
  24. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  25. package/dist/cjs/src/abstract/bl3p.js +1 -1
  26. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  27. package/dist/cjs/src/abstract/blofin.js +1 -1
  28. package/dist/cjs/src/abstract/btcalpha.js +1 -1
  29. package/dist/cjs/src/abstract/btcbox.js +1 -1
  30. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  31. package/dist/cjs/src/abstract/btcturk.js +1 -1
  32. package/dist/cjs/src/abstract/bybit.js +1 -1
  33. package/dist/cjs/src/abstract/cex.js +1 -1
  34. package/dist/cjs/src/abstract/coinbase.js +1 -1
  35. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  36. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  37. package/dist/cjs/src/abstract/coincatch.js +1 -1
  38. package/dist/cjs/src/abstract/coincheck.js +1 -1
  39. package/dist/cjs/src/abstract/coinex.js +1 -1
  40. package/dist/cjs/src/abstract/coinlist.js +1 -1
  41. package/dist/cjs/src/abstract/coinmate.js +1 -1
  42. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  43. package/dist/cjs/src/abstract/coinone.js +1 -1
  44. package/dist/cjs/src/abstract/coinsph.js +1 -1
  45. package/dist/cjs/src/abstract/coinspot.js +1 -1
  46. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  47. package/dist/cjs/src/abstract/cryptomus.js +1 -1
  48. package/dist/cjs/src/abstract/defx.js +1 -1
  49. package/dist/cjs/src/abstract/delta.js +1 -1
  50. package/dist/cjs/src/abstract/deribit.js +1 -1
  51. package/dist/cjs/src/abstract/derive.js +1 -1
  52. package/dist/cjs/src/abstract/digifinex.js +1 -1
  53. package/dist/cjs/src/abstract/ellipx.js +1 -1
  54. package/dist/cjs/src/abstract/exmo.js +1 -1
  55. package/dist/cjs/src/abstract/gate.js +1 -1
  56. package/dist/cjs/src/abstract/gemini.js +1 -1
  57. package/dist/cjs/src/abstract/hashkey.js +1 -1
  58. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  59. package/dist/cjs/src/abstract/hollaex.js +1 -1
  60. package/dist/cjs/src/abstract/htx.js +1 -1
  61. package/dist/cjs/src/abstract/huobijp.js +1 -1
  62. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  63. package/dist/cjs/src/abstract/idex.js +1 -1
  64. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  65. package/dist/cjs/src/abstract/indodax.js +1 -1
  66. package/dist/cjs/src/abstract/kraken.js +1 -1
  67. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  68. package/dist/cjs/src/abstract/kucoin.js +1 -1
  69. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  70. package/dist/cjs/src/abstract/kuna.js +1 -1
  71. package/dist/cjs/src/abstract/latoken.js +1 -1
  72. package/dist/cjs/src/abstract/lbank.js +1 -1
  73. package/dist/cjs/src/abstract/luno.js +1 -1
  74. package/dist/cjs/src/abstract/mercado.js +1 -1
  75. package/dist/cjs/src/abstract/mexc.js +1 -1
  76. package/dist/cjs/src/abstract/ndax.js +1 -1
  77. package/dist/cjs/src/abstract/novadax.js +1 -1
  78. package/dist/cjs/src/abstract/oceanex.js +1 -1
  79. package/dist/cjs/src/abstract/okcoin.js +1 -1
  80. package/dist/cjs/src/abstract/okx.js +1 -1
  81. package/dist/cjs/src/abstract/onetrading.js +1 -1
  82. package/dist/cjs/src/abstract/oxfun.js +1 -1
  83. package/dist/cjs/src/abstract/p2b.js +1 -1
  84. package/dist/cjs/src/abstract/paradex.js +1 -1
  85. package/dist/cjs/src/abstract/paymium.js +1 -1
  86. package/dist/cjs/src/abstract/phemex.js +1 -1
  87. package/dist/cjs/src/abstract/poloniex.js +1 -1
  88. package/dist/cjs/src/abstract/probit.js +1 -1
  89. package/dist/cjs/src/abstract/timex.js +1 -1
  90. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  91. package/dist/cjs/src/abstract/tradeogre.js +1 -1
  92. package/dist/cjs/src/abstract/upbit.js +1 -1
  93. package/dist/cjs/src/abstract/vertex.js +1 -1
  94. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  95. package/dist/cjs/src/abstract/whitebit.js +1 -1
  96. package/dist/cjs/src/abstract/woo.js +1 -1
  97. package/dist/cjs/src/abstract/woofipro.js +1 -1
  98. package/dist/cjs/src/abstract/xt.js +1 -1
  99. package/dist/cjs/src/abstract/yobit.js +1 -1
  100. package/dist/cjs/src/abstract/zaif.js +1 -1
  101. package/dist/cjs/src/abstract/zonda.js +1 -1
  102. package/dist/cjs/src/alpaca.js +1 -1
  103. package/dist/cjs/src/apex.js +22 -31
  104. package/dist/cjs/src/ascendex.js +2 -2
  105. package/dist/cjs/src/base/Exchange.js +41 -5
  106. package/dist/cjs/src/base/Precise.js +6 -0
  107. package/dist/cjs/src/base/errors.js +6 -0
  108. package/dist/cjs/src/base/functions/crypto.js +1 -1
  109. package/dist/cjs/src/base/functions/encode.js +2 -2
  110. package/dist/cjs/src/base/functions/misc.js +1 -0
  111. package/dist/cjs/src/base/functions/number.js +6 -0
  112. package/dist/cjs/src/base/functions/platform.js +6 -0
  113. package/dist/cjs/src/base/functions/rsa.js +1 -0
  114. package/dist/cjs/src/base/functions/string.js +6 -0
  115. package/dist/cjs/src/base/functions/throttle.js +1 -1
  116. package/dist/cjs/src/base/functions/time.js +6 -0
  117. package/dist/cjs/src/base/functions/totp.js +1 -0
  118. package/dist/cjs/src/base/functions/type.js +6 -0
  119. package/dist/cjs/src/base/functions.js +1 -1
  120. package/dist/cjs/src/base/ws/Cache.js +6 -0
  121. package/dist/cjs/src/base/ws/Client.js +1 -0
  122. package/dist/cjs/src/base/ws/Future.js +1 -1
  123. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  124. package/dist/cjs/src/base/ws/OrderBookSide.js +6 -0
  125. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  126. package/dist/cjs/src/bequant.js +1 -1
  127. package/dist/cjs/src/bigone.js +23 -15
  128. package/dist/cjs/src/binance.js +1 -1
  129. package/dist/cjs/src/binancecoinm.js +1 -1
  130. package/dist/cjs/src/binanceus.js +1 -1
  131. package/dist/cjs/src/binanceusdm.js +1 -1
  132. package/dist/cjs/src/bingx.js +14 -38
  133. package/dist/cjs/src/bit2c.js +1 -1
  134. package/dist/cjs/src/bitbank.js +1 -1
  135. package/dist/cjs/src/bitbns.js +1 -1
  136. package/dist/cjs/src/bitfinex.js +65 -53
  137. package/dist/cjs/src/bitflyer.js +1 -1
  138. package/dist/cjs/src/bitget.js +9 -7
  139. package/dist/cjs/src/bithumb.js +1 -1
  140. package/dist/cjs/src/bitmart.js +1 -1
  141. package/dist/cjs/src/bitmex.js +1 -1
  142. package/dist/cjs/src/bitopro.js +1 -1
  143. package/dist/cjs/src/bitrue.js +15 -36
  144. package/dist/cjs/src/bitso.js +34 -1
  145. package/dist/cjs/src/bitstamp.js +34 -1
  146. package/dist/cjs/src/bitteam.js +1 -1
  147. package/dist/cjs/src/bl3p.js +1 -1
  148. package/dist/cjs/src/blockchaincom.js +1 -1
  149. package/dist/cjs/src/blofin.js +155 -14
  150. package/dist/cjs/src/btcalpha.js +1 -1
  151. package/dist/cjs/src/btcbox.js +26 -6
  152. package/dist/cjs/src/btcmarkets.js +1 -1
  153. package/dist/cjs/src/btcturk.js +1 -1
  154. package/dist/cjs/src/bybit.js +21 -43
  155. package/dist/cjs/src/cex.js +3 -5
  156. package/dist/cjs/src/coinbase.js +56 -40
  157. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  158. package/dist/cjs/src/coinbaseexchange.js +142 -32
  159. package/dist/cjs/src/coincatch.js +15 -68
  160. package/dist/cjs/src/coincheck.js +1 -1
  161. package/dist/cjs/src/coinex.js +30 -33
  162. package/dist/cjs/src/coinlist.js +17 -15
  163. package/dist/cjs/src/coinmate.js +1 -1
  164. package/dist/cjs/src/coinmetro.js +23 -12
  165. package/dist/cjs/src/coinone.js +9 -11
  166. package/dist/cjs/src/coinsph.js +127 -1
  167. package/dist/cjs/src/coinspot.js +1 -1
  168. package/dist/cjs/src/cryptocom.js +112 -2
  169. package/dist/cjs/src/cryptomus.js +44 -90
  170. package/dist/cjs/src/defx.js +1 -1
  171. package/dist/cjs/src/delta.js +77 -37
  172. package/dist/cjs/src/deribit.js +1 -1
  173. package/dist/cjs/src/derive.js +47 -11
  174. package/dist/cjs/src/digifinex.js +1 -1
  175. package/dist/cjs/src/ellipx.js +176 -80
  176. package/dist/cjs/src/exmo.js +1 -1
  177. package/dist/cjs/src/fmfwio.js +1 -1
  178. package/dist/cjs/src/gate.js +2 -2
  179. package/dist/cjs/src/gateio.js +1 -1
  180. package/dist/cjs/src/gemini.js +4 -6
  181. package/dist/cjs/src/hashkey.js +1 -1
  182. package/dist/cjs/src/hitbtc.js +57 -69
  183. package/dist/cjs/src/hollaex.js +1 -1
  184. package/dist/cjs/src/htx.js +3 -3
  185. package/dist/cjs/src/huobi.js +1 -1
  186. package/dist/cjs/src/huobijp.js +1 -1
  187. package/dist/cjs/src/hyperliquid.js +18 -3
  188. package/dist/cjs/src/idex.js +1 -1
  189. package/dist/cjs/src/independentreserve.js +1 -1
  190. package/dist/cjs/src/indodax.js +1 -1
  191. package/dist/cjs/src/kraken.js +30 -25
  192. package/dist/cjs/src/krakenfutures.js +1 -1
  193. package/dist/cjs/src/kucoin.js +1 -1
  194. package/dist/cjs/src/kucoinfutures.js +7 -1
  195. package/dist/cjs/src/kuna.js +1 -1
  196. package/dist/cjs/src/latoken.js +1 -1
  197. package/dist/cjs/src/lbank.js +2 -2
  198. package/dist/cjs/src/luno.js +1 -1
  199. package/dist/cjs/src/mercado.js +1 -1
  200. package/dist/cjs/src/mexc.js +1 -1
  201. package/dist/cjs/src/myokx.js +1 -1
  202. package/dist/cjs/src/ndax.js +1 -1
  203. package/dist/cjs/src/novadax.js +1 -1
  204. package/dist/cjs/src/oceanex.js +1 -1
  205. package/dist/cjs/src/okcoin.js +1 -1
  206. package/dist/cjs/src/okx.js +2 -3
  207. package/dist/cjs/src/onetrading.js +1 -1
  208. package/dist/cjs/src/oxfun.js +22 -2
  209. package/dist/cjs/src/p2b.js +1 -1
  210. package/dist/cjs/src/paradex.js +120 -4
  211. package/dist/cjs/src/paymium.js +1 -1
  212. package/dist/cjs/src/poloniex.js +1 -1
  213. package/dist/cjs/src/pro/alpaca.js +1 -1
  214. package/dist/cjs/src/pro/apex.js +1 -1
  215. package/dist/cjs/src/pro/ascendex.js +1 -1
  216. package/dist/cjs/src/pro/bequant.js +1 -1
  217. package/dist/cjs/src/pro/binance.js +31 -33
  218. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  219. package/dist/cjs/src/pro/binanceus.js +1 -1
  220. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  221. package/dist/cjs/src/pro/bingx.js +1 -1
  222. package/dist/cjs/src/pro/bitfinex.js +1 -1
  223. package/dist/cjs/src/pro/bitget.js +1 -1
  224. package/dist/cjs/src/pro/bithumb.js +6 -4
  225. package/dist/cjs/src/pro/bitmart.js +1 -1
  226. package/dist/cjs/src/pro/bitmex.js +1 -1
  227. package/dist/cjs/src/pro/bitrue.js +1 -1
  228. package/dist/cjs/src/pro/bitstamp.js +1 -1
  229. package/dist/cjs/src/pro/bitvavo.js +1 -1
  230. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  231. package/dist/cjs/src/pro/blofin.js +1 -1
  232. package/dist/cjs/src/pro/bybit.js +1 -1
  233. package/dist/cjs/src/pro/cex.js +1 -1
  234. package/dist/cjs/src/pro/coinbase.js +2 -2
  235. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  236. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  237. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  238. package/dist/cjs/src/pro/coincatch.js +1 -1
  239. package/dist/cjs/src/pro/coincheck.js +1 -1
  240. package/dist/cjs/src/pro/coinex.js +1 -1
  241. package/dist/cjs/src/pro/coinone.js +1 -1
  242. package/dist/cjs/src/pro/cryptocom.js +1 -1
  243. package/dist/cjs/src/pro/defx.js +1 -1
  244. package/dist/cjs/src/pro/deribit.js +1 -1
  245. package/dist/cjs/src/pro/exmo.js +1 -1
  246. package/dist/cjs/src/pro/gate.js +1 -1
  247. package/dist/cjs/src/pro/gateio.js +1 -1
  248. package/dist/cjs/src/pro/gemini.js +1 -1
  249. package/dist/cjs/src/pro/hashkey.js +1 -1
  250. package/dist/cjs/src/pro/hitbtc.js +1 -1
  251. package/dist/cjs/src/pro/hollaex.js +1 -1
  252. package/dist/cjs/src/pro/htx.js +1 -1
  253. package/dist/cjs/src/pro/huobi.js +1 -1
  254. package/dist/cjs/src/pro/hyperliquid.js +11 -3
  255. package/dist/cjs/src/pro/idex.js +1 -1
  256. package/dist/cjs/src/pro/independentreserve.js +1 -1
  257. package/dist/cjs/src/pro/kraken.js +290 -80
  258. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  259. package/dist/cjs/src/pro/kucoin.js +1 -1
  260. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  261. package/dist/cjs/src/pro/lbank.js +1 -0
  262. package/dist/cjs/src/pro/luno.js +1 -1
  263. package/dist/cjs/src/pro/mexc.js +303 -9
  264. package/dist/cjs/src/pro/myokx.js +1 -1
  265. package/dist/cjs/src/pro/ndax.js +1 -1
  266. package/dist/cjs/src/pro/okcoin.js +1 -1
  267. package/dist/cjs/src/pro/okx.js +1 -1
  268. package/dist/cjs/src/pro/onetrading.js +1 -1
  269. package/dist/cjs/src/pro/oxfun.js +1 -1
  270. package/dist/cjs/src/pro/p2b.js +1 -1
  271. package/dist/cjs/src/pro/paradex.js +1 -1
  272. package/dist/cjs/src/pro/phemex.js +1 -1
  273. package/dist/cjs/src/pro/poloniex.js +7 -3
  274. package/dist/cjs/src/pro/probit.js +1 -1
  275. package/dist/cjs/src/pro/tradeogre.js +1 -1
  276. package/dist/cjs/src/pro/upbit.js +1 -1
  277. package/dist/cjs/src/pro/whitebit.js +1 -1
  278. package/dist/cjs/src/pro/xt.js +1 -1
  279. package/dist/cjs/src/probit.js +1 -1
  280. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +6 -0
  281. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  282. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
  283. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -0
  284. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +1 -0
  285. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +1 -0
  286. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +1 -0
  287. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -0
  288. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +1 -0
  289. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +1 -0
  290. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +1 -0
  291. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +1 -0
  292. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +1 -0
  293. package/dist/cjs/src/static_dependencies/ethers/fragments.js +6 -0
  294. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +6 -0
  295. package/dist/cjs/src/static_dependencies/ethers/index.js +1 -10
  296. package/dist/cjs/src/static_dependencies/ethers/interface.js +6 -0
  297. package/dist/cjs/src/static_dependencies/ethers/typed.js +6 -0
  298. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +1 -13
  299. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +1 -6
  300. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +1 -9
  301. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +6 -0
  302. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
  303. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -7
  304. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +1 -5
  305. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +6 -0
  306. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +1 -8
  307. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  308. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +1 -0
  309. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +1 -0
  310. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  311. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
  312. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
  313. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
  314. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +1 -0
  315. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  316. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
  317. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  318. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  319. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
  320. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  321. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
  322. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +6 -0
  323. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  324. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  325. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  326. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +1 -0
  327. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  328. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  329. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  330. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
  331. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  332. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  333. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  334. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  335. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +6 -0
  336. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +1 -0
  337. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +6 -0
  338. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +6 -0
  339. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +1 -0
  340. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +1 -0
  341. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +1 -0
  342. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +1 -0
  343. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +1 -0
  344. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +1 -0
  345. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  346. package/dist/cjs/src/static_dependencies/node-fetch/body.js +1 -5
  347. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +1 -0
  348. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +6 -0
  349. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +1 -0
  350. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +1 -5
  351. package/dist/cjs/src/static_dependencies/node-fetch/index.js +1 -7
  352. package/dist/cjs/src/static_dependencies/node-fetch/request.js +1 -7
  353. package/dist/cjs/src/static_dependencies/node-fetch/response.js +1 -5
  354. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
  355. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
  356. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +6 -0
  357. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +1 -0
  358. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +1 -0
  359. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +1 -0
  360. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +1 -0
  361. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
  362. package/dist/cjs/src/static_dependencies/scure-base/index.js +6 -0
  363. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  364. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  365. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +6 -0
  366. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
  367. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
  368. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +6 -0
  369. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +6 -0
  370. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +6 -0
  371. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  372. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  373. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  374. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +1 -0
  375. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +1 -0
  376. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
  377. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
  378. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
  379. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +1 -0
  380. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  381. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +1 -0
  382. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +1 -0
  383. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
  384. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +1 -0
  385. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +1 -0
  386. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +1 -0
  387. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  388. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +1 -4
  389. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +1 -0
  390. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +1 -3
  391. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +1 -0
  392. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +1 -0
  393. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +1 -0
  394. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +1 -0
  395. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  396. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +6 -0
  397. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +6 -0
  398. package/dist/cjs/src/timex.js +1 -0
  399. package/dist/cjs/src/tokocrypto.js +1 -1
  400. package/dist/cjs/src/tradeogre.js +1 -1
  401. package/dist/cjs/src/upbit.js +1 -1
  402. package/dist/cjs/src/vertex.js +1 -1
  403. package/dist/cjs/src/wavesexchange.js +1 -1
  404. package/dist/cjs/src/whitebit.js +1 -1
  405. package/dist/cjs/src/woo.js +1 -1
  406. package/dist/cjs/src/woofipro.js +1 -1
  407. package/dist/cjs/src/xt.js +1 -1
  408. package/dist/cjs/src/yobit.js +1 -1
  409. package/dist/cjs/src/zaif.js +1 -1
  410. package/dist/cjs/src/zonda.js +1 -1
  411. package/examples/js/cli.js +127 -13
  412. package/js/ccxt.d.ts +2 -11
  413. package/js/ccxt.js +8 -8
  414. package/js/src/abstract/alpaca.js +6 -0
  415. package/js/src/abstract/apex.js +6 -0
  416. package/js/src/abstract/ascendex.js +6 -0
  417. package/js/src/abstract/bequant.js +6 -0
  418. package/js/src/abstract/bigone.js +6 -0
  419. package/js/src/abstract/binance.js +6 -0
  420. package/js/src/abstract/binancecoinm.js +6 -0
  421. package/js/src/abstract/binanceus.js +6 -0
  422. package/js/src/abstract/binanceusdm.js +6 -0
  423. package/js/src/abstract/bingx.js +6 -0
  424. package/js/src/abstract/bit2c.js +6 -0
  425. package/js/src/abstract/bitbank.js +6 -0
  426. package/js/src/abstract/bitbns.js +6 -0
  427. package/js/src/abstract/bitfinex.js +6 -0
  428. package/js/src/abstract/bitflyer.js +6 -0
  429. package/js/src/abstract/bitget.js +6 -0
  430. package/js/src/abstract/bithumb.js +6 -0
  431. package/js/src/abstract/bitmart.js +6 -0
  432. package/js/src/abstract/bitmex.js +6 -0
  433. package/js/src/abstract/bitopro.js +6 -0
  434. package/js/src/abstract/bitrue.js +6 -0
  435. package/js/src/abstract/bitso.js +6 -0
  436. package/js/src/abstract/bitstamp.js +6 -0
  437. package/js/src/abstract/bitteam.js +6 -0
  438. package/js/src/abstract/bitvavo.js +6 -0
  439. package/js/src/abstract/blockchaincom.js +6 -0
  440. package/js/src/abstract/blofin.d.ts +8 -0
  441. package/js/src/abstract/blofin.js +6 -0
  442. package/js/src/abstract/btcalpha.js +6 -0
  443. package/js/src/abstract/btcbox.d.ts +1 -0
  444. package/js/src/abstract/btcbox.js +6 -0
  445. package/js/src/abstract/btcmarkets.js +6 -0
  446. package/js/src/abstract/btcturk.js +6 -0
  447. package/js/src/abstract/bybit.js +6 -0
  448. package/js/src/abstract/cex.js +6 -0
  449. package/js/src/abstract/coinbase.js +6 -0
  450. package/js/src/abstract/coinbaseadvanced.js +6 -0
  451. package/js/src/abstract/coinbaseexchange.js +6 -0
  452. package/js/src/abstract/coinbaseinternational.js +6 -0
  453. package/js/src/abstract/coincatch.js +6 -0
  454. package/js/src/abstract/coincheck.js +6 -0
  455. package/js/src/abstract/coinex.js +6 -0
  456. package/js/src/abstract/coinlist.js +6 -0
  457. package/js/src/abstract/coinmate.js +6 -0
  458. package/js/src/abstract/coinmetro.js +6 -0
  459. package/js/src/abstract/coinone.js +6 -0
  460. package/js/src/abstract/coinsph.js +6 -0
  461. package/js/src/abstract/coinspot.js +6 -0
  462. package/js/src/abstract/cryptocom.js +6 -0
  463. package/js/src/abstract/cryptomus.js +6 -0
  464. package/js/src/abstract/defx.js +6 -0
  465. package/js/src/abstract/delta.js +6 -0
  466. package/js/src/abstract/deribit.js +6 -0
  467. package/js/src/abstract/derive.js +6 -0
  468. package/js/src/abstract/digifinex.js +6 -0
  469. package/js/src/abstract/ellipx.js +6 -0
  470. package/js/src/abstract/exmo.js +6 -0
  471. package/js/src/abstract/fmfwio.js +6 -0
  472. package/js/src/abstract/gate.js +6 -0
  473. package/js/src/abstract/gateio.js +6 -0
  474. package/js/src/abstract/gemini.js +6 -0
  475. package/js/src/abstract/hashkey.js +6 -0
  476. package/js/src/abstract/hitbtc.js +6 -0
  477. package/js/src/abstract/hollaex.js +6 -0
  478. package/js/src/abstract/htx.js +6 -0
  479. package/js/src/abstract/huobi.js +6 -0
  480. package/js/src/abstract/huobijp.js +6 -0
  481. package/js/src/abstract/hyperliquid.js +6 -0
  482. package/js/src/abstract/independentreserve.js +6 -0
  483. package/js/src/abstract/indodax.js +6 -0
  484. package/js/src/abstract/kraken.js +6 -0
  485. package/js/src/abstract/krakenfutures.js +6 -0
  486. package/js/src/abstract/kucoin.js +6 -0
  487. package/js/src/abstract/kucoinfutures.js +6 -0
  488. package/js/src/abstract/kuna.js +6 -0
  489. package/js/src/abstract/latoken.js +6 -0
  490. package/js/src/abstract/lbank.js +6 -0
  491. package/js/src/abstract/luno.js +6 -0
  492. package/js/src/abstract/mercado.js +6 -0
  493. package/js/src/abstract/mexc.js +6 -0
  494. package/js/src/abstract/myokx.js +6 -0
  495. package/js/src/abstract/ndax.js +6 -0
  496. package/js/src/abstract/novadax.js +6 -0
  497. package/js/src/abstract/oceanex.js +6 -0
  498. package/js/src/abstract/okcoin.js +6 -0
  499. package/js/src/abstract/okx.js +6 -0
  500. package/js/src/abstract/onetrading.js +6 -0
  501. package/js/src/abstract/oxfun.js +6 -0
  502. package/js/src/abstract/p2b.js +6 -0
  503. package/js/src/abstract/paradex.js +6 -0
  504. package/js/src/abstract/paymium.js +6 -0
  505. package/js/src/abstract/phemex.js +6 -0
  506. package/js/src/abstract/poloniex.js +6 -0
  507. package/js/src/abstract/probit.js +6 -0
  508. package/js/src/abstract/timex.js +6 -0
  509. package/js/src/abstract/tokocrypto.js +6 -0
  510. package/js/src/abstract/tradeogre.js +6 -0
  511. package/js/src/abstract/upbit.js +6 -0
  512. package/js/src/abstract/vertex.js +6 -0
  513. package/js/src/abstract/wavesexchange.js +6 -0
  514. package/js/src/abstract/whitebit.js +6 -0
  515. package/js/src/abstract/woo.js +6 -0
  516. package/js/src/abstract/woofipro.js +6 -0
  517. package/js/src/abstract/xt.js +6 -0
  518. package/js/src/abstract/yobit.js +6 -0
  519. package/js/src/abstract/zaif.js +6 -0
  520. package/js/src/abstract/zonda.js +6 -0
  521. package/js/src/alpaca.js +6 -0
  522. package/js/src/apex.js +27 -30
  523. package/js/src/ascendex.js +7 -1
  524. package/js/src/base/Exchange.d.ts +17 -2
  525. package/js/src/base/Exchange.js +47 -5
  526. package/js/src/base/Precise.js +6 -0
  527. package/js/src/base/errorHierarchy.js +6 -0
  528. package/js/src/base/errors.js +6 -0
  529. package/js/src/base/functions/crypto.js +6 -0
  530. package/js/src/base/functions/encode.d.ts +1 -1
  531. package/js/src/base/functions/encode.js +7 -1
  532. package/js/src/base/functions/generic.js +6 -0
  533. package/js/src/base/functions/misc.js +6 -0
  534. package/js/src/base/functions/number.js +6 -0
  535. package/js/src/base/functions/platform.js +6 -0
  536. package/js/src/base/functions/rsa.js +6 -0
  537. package/js/src/base/functions/string.js +6 -0
  538. package/js/src/base/functions/throttle.js +6 -0
  539. package/js/src/base/functions/time.js +6 -0
  540. package/js/src/base/functions/totp.js +6 -0
  541. package/js/src/base/functions/type.js +6 -0
  542. package/js/src/base/functions.js +6 -0
  543. package/js/src/base/types.d.ts +3 -0
  544. package/js/src/base/types.js +6 -0
  545. package/js/src/base/ws/Cache.js +6 -0
  546. package/js/src/base/ws/Client.js +6 -0
  547. package/js/src/base/ws/Future.js +6 -0
  548. package/js/src/base/ws/OrderBook.js +6 -0
  549. package/js/src/base/ws/OrderBookSide.js +6 -0
  550. package/js/src/base/ws/WsClient.js +6 -0
  551. package/js/src/base/ws/functions.js +6 -0
  552. package/js/src/bequant.js +6 -0
  553. package/js/src/bigone.js +28 -14
  554. package/js/src/binance.js +6 -0
  555. package/js/src/binancecoinm.js +6 -0
  556. package/js/src/binanceus.js +6 -0
  557. package/js/src/binanceusdm.js +6 -0
  558. package/js/src/bingx.d.ts +1 -1
  559. package/js/src/bingx.js +19 -37
  560. package/js/src/bit2c.js +6 -0
  561. package/js/src/bitbank.js +6 -0
  562. package/js/src/bitbns.js +6 -0
  563. package/js/src/bitfinex.js +70 -52
  564. package/js/src/bitflyer.js +6 -0
  565. package/js/src/bitget.d.ts +1 -0
  566. package/js/src/bitget.js +14 -6
  567. package/js/src/bithumb.js +6 -0
  568. package/js/src/bitmart.js +6 -0
  569. package/js/src/bitmex.js +6 -0
  570. package/js/src/bitopro.js +6 -0
  571. package/js/src/bitrue.js +20 -35
  572. package/js/src/bitso.js +39 -0
  573. package/js/src/bitstamp.js +39 -0
  574. package/js/src/bitteam.js +6 -0
  575. package/js/src/bitvavo.js +6 -0
  576. package/js/src/blockchaincom.js +6 -0
  577. package/js/src/blofin.d.ts +42 -2
  578. package/js/src/blofin.js +160 -13
  579. package/js/src/btcalpha.js +6 -0
  580. package/js/src/btcbox.js +31 -5
  581. package/js/src/btcmarkets.js +6 -0
  582. package/js/src/btcturk.js +6 -0
  583. package/js/src/bybit.js +26 -42
  584. package/js/src/cex.js +8 -4
  585. package/js/src/coinbase.js +62 -40
  586. package/js/src/coinbaseadvanced.js +6 -0
  587. package/js/src/coinbaseexchange.js +148 -32
  588. package/js/src/coinbaseinternational.js +6 -0
  589. package/js/src/coincatch.js +20 -67
  590. package/js/src/coincheck.js +6 -0
  591. package/js/src/coinex.js +34 -29
  592. package/js/src/coinlist.js +22 -15
  593. package/js/src/coinmate.js +6 -0
  594. package/js/src/coinmetro.js +28 -11
  595. package/js/src/coinone.js +14 -10
  596. package/js/src/coinsph.d.ts +10 -1
  597. package/js/src/coinsph.js +132 -1
  598. package/js/src/coinspot.js +6 -0
  599. package/js/src/cryptocom.d.ts +10 -1
  600. package/js/src/cryptocom.js +117 -1
  601. package/js/src/cryptomus.js +49 -89
  602. package/js/src/defx.js +6 -0
  603. package/js/src/delta.js +82 -36
  604. package/js/src/deribit.js +6 -0
  605. package/js/src/derive.js +52 -10
  606. package/js/src/digifinex.js +6 -0
  607. package/js/src/ellipx.d.ts +2 -3
  608. package/js/src/ellipx.js +181 -80
  609. package/js/src/exmo.js +6 -0
  610. package/js/src/fmfwio.js +6 -0
  611. package/js/src/gate.js +7 -1
  612. package/js/src/gateio.js +6 -0
  613. package/js/src/gemini.js +9 -5
  614. package/js/src/hashkey.js +6 -0
  615. package/js/src/hitbtc.js +62 -69
  616. package/js/src/hollaex.js +6 -0
  617. package/js/src/htx.js +8 -2
  618. package/js/src/huobi.js +6 -0
  619. package/js/src/huobijp.js +6 -0
  620. package/js/src/hyperliquid.js +23 -2
  621. package/js/src/independentreserve.js +6 -0
  622. package/js/src/indodax.js +6 -0
  623. package/js/src/kraken.js +35 -24
  624. package/js/src/krakenfutures.js +6 -0
  625. package/js/src/kucoin.js +6 -0
  626. package/js/src/kucoinfutures.d.ts +1 -0
  627. package/js/src/kucoinfutures.js +12 -0
  628. package/js/src/kuna.js +6 -0
  629. package/js/src/latoken.js +6 -0
  630. package/js/src/lbank.js +7 -1
  631. package/js/src/luno.js +6 -0
  632. package/js/src/mercado.js +6 -0
  633. package/js/src/mexc.js +6 -0
  634. package/js/src/myokx.js +6 -0
  635. package/js/src/ndax.js +6 -0
  636. package/js/src/novadax.js +6 -0
  637. package/js/src/oceanex.js +6 -0
  638. package/js/src/okcoin.js +6 -0
  639. package/js/src/okx.js +7 -2
  640. package/js/src/onetrading.js +6 -0
  641. package/js/src/oxfun.d.ts +10 -0
  642. package/js/src/oxfun.js +27 -1
  643. package/js/src/p2b.js +6 -0
  644. package/js/src/paradex.d.ts +12 -1
  645. package/js/src/paradex.js +125 -3
  646. package/js/src/paymium.js +6 -0
  647. package/js/src/phemex.js +6 -0
  648. package/js/src/poloniex.js +6 -0
  649. package/js/src/pro/alpaca.js +6 -0
  650. package/js/src/pro/apex.js +6 -0
  651. package/js/src/pro/ascendex.js +6 -0
  652. package/js/src/pro/bequant.js +6 -0
  653. package/js/src/pro/binance.d.ts +26 -26
  654. package/js/src/pro/binance.js +37 -33
  655. package/js/src/pro/binancecoinm.js +6 -0
  656. package/js/src/pro/binanceus.js +6 -0
  657. package/js/src/pro/binanceusdm.js +6 -0
  658. package/js/src/pro/bingx.js +6 -0
  659. package/js/src/pro/bitfinex.js +6 -0
  660. package/js/src/pro/bitget.js +6 -0
  661. package/js/src/pro/bithumb.js +11 -3
  662. package/js/src/pro/bitmart.js +6 -0
  663. package/js/src/pro/bitmex.js +6 -0
  664. package/js/src/pro/bitopro.js +6 -0
  665. package/js/src/pro/bitrue.js +6 -0
  666. package/js/src/pro/bitstamp.js +6 -0
  667. package/js/src/pro/bitvavo.js +6 -0
  668. package/js/src/pro/blockchaincom.js +6 -0
  669. package/js/src/pro/blofin.js +6 -0
  670. package/js/src/pro/bybit.js +6 -0
  671. package/js/src/pro/cex.js +6 -0
  672. package/js/src/pro/coinbase.js +7 -1
  673. package/js/src/pro/coinbaseadvanced.js +6 -0
  674. package/js/src/pro/coinbaseexchange.js +6 -0
  675. package/js/src/pro/coinbaseinternational.js +6 -0
  676. package/js/src/pro/coincatch.js +6 -0
  677. package/js/src/pro/coincheck.js +6 -0
  678. package/js/src/pro/coinex.js +6 -0
  679. package/js/src/pro/coinone.js +6 -0
  680. package/js/src/pro/cryptocom.js +6 -0
  681. package/js/src/pro/defx.js +6 -0
  682. package/js/src/pro/deribit.js +6 -0
  683. package/js/src/pro/derive.js +6 -0
  684. package/js/src/pro/exmo.js +6 -0
  685. package/js/src/pro/gate.js +6 -0
  686. package/js/src/pro/gateio.js +6 -0
  687. package/js/src/pro/gemini.js +6 -0
  688. package/js/src/pro/hashkey.js +6 -0
  689. package/js/src/pro/hitbtc.js +6 -0
  690. package/js/src/pro/hollaex.js +6 -0
  691. package/js/src/pro/htx.js +6 -0
  692. package/js/src/pro/huobi.js +6 -0
  693. package/js/src/pro/huobijp.js +6 -0
  694. package/js/src/pro/hyperliquid.js +16 -2
  695. package/js/src/pro/independentreserve.js +6 -0
  696. package/js/src/pro/kraken.d.ts +7 -6
  697. package/js/src/pro/kraken.js +296 -80
  698. package/js/src/pro/krakenfutures.js +6 -0
  699. package/js/src/pro/kucoin.js +6 -0
  700. package/js/src/pro/kucoinfutures.js +6 -0
  701. package/js/src/pro/lbank.js +6 -0
  702. package/js/src/pro/luno.js +6 -0
  703. package/js/src/pro/mexc.d.ts +58 -0
  704. package/js/src/pro/mexc.js +308 -8
  705. package/js/src/pro/myokx.js +6 -0
  706. package/js/src/pro/ndax.js +6 -0
  707. package/js/src/pro/okcoin.js +6 -0
  708. package/js/src/pro/okx.js +6 -0
  709. package/js/src/pro/onetrading.js +6 -0
  710. package/js/src/pro/oxfun.js +6 -0
  711. package/js/src/pro/p2b.js +6 -0
  712. package/js/src/pro/paradex.js +6 -0
  713. package/js/src/pro/phemex.js +6 -0
  714. package/js/src/pro/poloniex.d.ts +1 -1
  715. package/js/src/pro/poloniex.js +12 -2
  716. package/js/src/pro/probit.js +6 -0
  717. package/js/src/pro/tradeogre.js +6 -0
  718. package/js/src/pro/upbit.js +6 -0
  719. package/js/src/pro/vertex.js +6 -0
  720. package/js/src/pro/whitebit.js +6 -0
  721. package/js/src/pro/woo.js +6 -0
  722. package/js/src/pro/woofipro.js +6 -0
  723. package/js/src/pro/xt.js +6 -0
  724. package/js/src/probit.js +6 -0
  725. package/js/src/static_dependencies/ethers/abi-coder.js +6 -0
  726. package/js/src/static_dependencies/ethers/address/address.js +6 -0
  727. package/js/src/static_dependencies/ethers/address/checks.js +6 -0
  728. package/js/src/static_dependencies/ethers/address/contract-address.js +6 -0
  729. package/js/src/static_dependencies/ethers/address/index.js +6 -0
  730. package/js/src/static_dependencies/ethers/bytes32.js +6 -0
  731. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
  732. package/js/src/static_dependencies/ethers/coders/address.js +6 -0
  733. package/js/src/static_dependencies/ethers/coders/anonymous.js +6 -0
  734. package/js/src/static_dependencies/ethers/coders/array.js +6 -0
  735. package/js/src/static_dependencies/ethers/coders/boolean.js +6 -0
  736. package/js/src/static_dependencies/ethers/coders/bytes.js +6 -0
  737. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +6 -0
  738. package/js/src/static_dependencies/ethers/coders/null.js +6 -0
  739. package/js/src/static_dependencies/ethers/coders/number.js +6 -0
  740. package/js/src/static_dependencies/ethers/coders/string.js +6 -0
  741. package/js/src/static_dependencies/ethers/coders/tuple.js +6 -0
  742. package/js/src/static_dependencies/ethers/fragments.js +6 -0
  743. package/js/src/static_dependencies/ethers/hash/index.js +6 -0
  744. package/js/src/static_dependencies/ethers/hash/solidity.js +6 -0
  745. package/js/src/static_dependencies/ethers/hash/typed-data.js +6 -0
  746. package/js/src/static_dependencies/ethers/index.js +6 -0
  747. package/js/src/static_dependencies/ethers/interface.js +6 -0
  748. package/js/src/static_dependencies/ethers/typed.js +6 -0
  749. package/js/src/static_dependencies/ethers/utils/base58.js +6 -0
  750. package/js/src/static_dependencies/ethers/utils/base64-browser.js +6 -0
  751. package/js/src/static_dependencies/ethers/utils/base64.js +6 -0
  752. package/js/src/static_dependencies/ethers/utils/data.js +6 -0
  753. package/js/src/static_dependencies/ethers/utils/errors.js +6 -0
  754. package/js/src/static_dependencies/ethers/utils/events.js +6 -0
  755. package/js/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
  756. package/js/src/static_dependencies/ethers/utils/index.js +6 -0
  757. package/js/src/static_dependencies/ethers/utils/maths.js +6 -0
  758. package/js/src/static_dependencies/ethers/utils/properties.js +6 -0
  759. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +6 -0
  760. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +6 -0
  761. package/js/src/static_dependencies/ethers/utils/rlp.js +6 -0
  762. package/js/src/static_dependencies/ethers/utils/units.js +6 -0
  763. package/js/src/static_dependencies/ethers/utils/utf8.js +6 -0
  764. package/js/src/static_dependencies/ethers/utils/uuid.js +6 -0
  765. package/js/src/static_dependencies/fflake/browser.js +6 -0
  766. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +6 -0
  767. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +6 -0
  768. package/js/src/static_dependencies/jsencrypt/index.js +6 -0
  769. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +6 -0
  770. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
  771. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
  772. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
  773. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +6 -0
  774. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +6 -0
  775. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +6 -0
  776. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
  777. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +6 -0
  778. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +6 -0
  779. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
  780. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +6 -0
  781. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
  782. package/js/src/static_dependencies/messagepack/msgpack.js +6 -0
  783. package/js/src/static_dependencies/noble-curves/_shortw_utils.js +6 -0
  784. package/js/src/static_dependencies/noble-curves/abstract/curve.js +6 -0
  785. package/js/src/static_dependencies/noble-curves/abstract/edwards.js +6 -0
  786. package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +6 -0
  787. package/js/src/static_dependencies/noble-curves/abstract/modular.js +6 -0
  788. package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +6 -0
  789. package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +6 -0
  790. package/js/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
  791. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +6 -0
  792. package/js/src/static_dependencies/noble-curves/bn.js +6 -0
  793. package/js/src/static_dependencies/noble-curves/ed25519.js +6 -0
  794. package/js/src/static_dependencies/noble-curves/ed448.js +6 -0
  795. package/js/src/static_dependencies/noble-curves/index.js +6 -0
  796. package/js/src/static_dependencies/noble-curves/jubjub.js +6 -0
  797. package/js/src/static_dependencies/noble-curves/p256.js +6 -0
  798. package/js/src/static_dependencies/noble-curves/p384.js +6 -0
  799. package/js/src/static_dependencies/noble-curves/p521.js +6 -0
  800. package/js/src/static_dependencies/noble-curves/pasta.js +6 -0
  801. package/js/src/static_dependencies/noble-curves/secp256k1.js +6 -0
  802. package/js/src/static_dependencies/noble-hashes/_assert.js +6 -0
  803. package/js/src/static_dependencies/noble-hashes/_blake2.js +6 -0
  804. package/js/src/static_dependencies/noble-hashes/_sha2.js +6 -0
  805. package/js/src/static_dependencies/noble-hashes/_u64.js +6 -0
  806. package/js/src/static_dependencies/noble-hashes/argon2.js +6 -0
  807. package/js/src/static_dependencies/noble-hashes/blake2b.js +6 -0
  808. package/js/src/static_dependencies/noble-hashes/blake2s.js +6 -0
  809. package/js/src/static_dependencies/noble-hashes/blake3.js +6 -0
  810. package/js/src/static_dependencies/noble-hashes/crypto.js +6 -0
  811. package/js/src/static_dependencies/noble-hashes/cryptoNode.js +6 -0
  812. package/js/src/static_dependencies/noble-hashes/eskdf.js +6 -0
  813. package/js/src/static_dependencies/noble-hashes/hkdf.js +6 -0
  814. package/js/src/static_dependencies/noble-hashes/hmac.js +6 -0
  815. package/js/src/static_dependencies/noble-hashes/index.js +6 -0
  816. package/js/src/static_dependencies/noble-hashes/md5.js +6 -0
  817. package/js/src/static_dependencies/noble-hashes/pbkdf2.js +6 -0
  818. package/js/src/static_dependencies/noble-hashes/ripemd160.js +6 -0
  819. package/js/src/static_dependencies/noble-hashes/scrypt.js +6 -0
  820. package/js/src/static_dependencies/noble-hashes/sha1.js +6 -0
  821. package/js/src/static_dependencies/noble-hashes/sha256.js +6 -0
  822. package/js/src/static_dependencies/noble-hashes/sha3-addons.js +6 -0
  823. package/js/src/static_dependencies/noble-hashes/sha3.js +6 -0
  824. package/js/src/static_dependencies/noble-hashes/sha512.js +6 -0
  825. package/js/src/static_dependencies/noble-hashes/utils.js +6 -0
  826. package/js/src/static_dependencies/node-fetch/body.js +6 -0
  827. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +6 -0
  828. package/js/src/static_dependencies/node-fetch/errors/base.js +6 -0
  829. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +6 -0
  830. package/js/src/static_dependencies/node-fetch/headers.js +6 -0
  831. package/js/src/static_dependencies/node-fetch/index.js +6 -0
  832. package/js/src/static_dependencies/node-fetch/request.js +6 -0
  833. package/js/src/static_dependencies/node-fetch/response.js +6 -0
  834. package/js/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
  835. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
  836. package/js/src/static_dependencies/node-fetch/utils/is.js +6 -0
  837. package/js/src/static_dependencies/node-fetch/utils/referrer.js +6 -0
  838. package/js/src/static_dependencies/proxies/agent-base/helpers.js +6 -0
  839. package/js/src/static_dependencies/proxies/agent-base/index.js +6 -0
  840. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +6 -0
  841. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +6 -0
  842. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
  843. package/js/src/static_dependencies/qs/formats.cjs +6 -0
  844. package/js/src/static_dependencies/qs/index.cjs +6 -0
  845. package/js/src/static_dependencies/qs/parse.cjs +6 -0
  846. package/js/src/static_dependencies/qs/stringify.cjs +6 -0
  847. package/js/src/static_dependencies/qs/utils.cjs +6 -0
  848. package/js/src/static_dependencies/scure-base/index.js +6 -0
  849. package/js/src/static_dependencies/scure-starknet/index.js +6 -0
  850. package/js/src/static_dependencies/starknet/constants.js +6 -0
  851. package/js/src/static_dependencies/starknet/index.js +6 -0
  852. package/js/src/static_dependencies/starknet/types/cairoEnum.js +6 -0
  853. package/js/src/static_dependencies/starknet/types/calldata.js +6 -0
  854. package/js/src/static_dependencies/starknet/types/index.js +6 -0
  855. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
  856. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
  857. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +6 -0
  858. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +6 -0
  859. package/js/src/static_dependencies/starknet/types/lib/index.js +6 -0
  860. package/js/src/static_dependencies/starknet/types/typedData.js +6 -0
  861. package/js/src/static_dependencies/starknet/utils/address.js +6 -0
  862. package/js/src/static_dependencies/starknet/utils/assert.js +6 -0
  863. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +6 -0
  864. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +6 -0
  865. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +6 -0
  866. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +6 -0
  867. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +6 -0
  868. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
  869. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
  870. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
  871. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +6 -0
  872. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +6 -0
  873. package/js/src/static_dependencies/starknet/utils/calldata/index.js +6 -0
  874. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +6 -0
  875. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +6 -0
  876. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +6 -0
  877. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
  878. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +6 -0
  879. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +6 -0
  880. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +6 -0
  881. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +6 -0
  882. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +6 -0
  883. package/js/src/static_dependencies/starknet/utils/encode.js +6 -0
  884. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +6 -0
  885. package/js/src/static_dependencies/starknet/utils/hash/index.js +6 -0
  886. package/js/src/static_dependencies/starknet/utils/merkle.js +6 -0
  887. package/js/src/static_dependencies/starknet/utils/num.js +6 -0
  888. package/js/src/static_dependencies/starknet/utils/selector.js +6 -0
  889. package/js/src/static_dependencies/starknet/utils/shortString.js +6 -0
  890. package/js/src/static_dependencies/starknet/utils/starknetId.js +6 -0
  891. package/js/src/static_dependencies/starknet/utils/typedData.js +6 -0
  892. package/js/src/static_dependencies/starknet/utils/uint256.js +6 -0
  893. package/js/src/static_dependencies/starknet/utils/url.js +6 -0
  894. package/js/src/static_dependencies/watchable/src/index.js +6 -0
  895. package/js/src/static_dependencies/watchable/src/types.js +6 -0
  896. package/js/src/static_dependencies/watchable/src/unpromise.js +6 -0
  897. package/js/src/static_dependencies/zklink/zklink-sdk-web.js +6 -0
  898. package/js/src/timex.js +6 -0
  899. package/js/src/tokocrypto.js +6 -0
  900. package/js/src/tradeogre.js +6 -0
  901. package/js/src/upbit.js +6 -0
  902. package/js/src/vertex.js +6 -0
  903. package/js/src/wavesexchange.js +6 -0
  904. package/js/src/whitebit.js +6 -0
  905. package/js/src/woo.js +6 -0
  906. package/js/src/woofipro.js +6 -0
  907. package/js/src/xt.js +6 -0
  908. package/js/src/yobit.js +6 -0
  909. package/js/src/zaif.js +6 -0
  910. package/js/src/zonda.js +6 -0
  911. package/package.json +1 -1
  912. package/js/src/abstract/bl3p.d.ts +0 -22
  913. package/js/src/abstract/bl3p.js +0 -5
  914. package/js/src/abstract/idex.d.ts +0 -29
  915. package/js/src/abstract/idex.js +0 -5
  916. package/js/src/bl3p.d.ts +0 -116
  917. package/js/src/bl3p.js +0 -546
  918. package/js/src/idex.d.ts +0 -312
  919. package/js/src/idex.js +0 -1955
  920. package/js/src/pro/idex.d.ts +0 -81
  921. package/js/src/pro/idex.js +0 -714
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ---------------------------------------------------------------------------
2
8
  import Exchange from './abstract/bitstamp.js';
3
9
  import { AuthenticationError, BadRequest, ExchangeError, NotSupported, PermissionDenied, InvalidNonce, OrderNotFound, InsufficientFunds, InvalidAddress, InvalidOrder, OnMaintenance, ExchangeNotAvailable } from './base/errors.js';
@@ -28,18 +34,27 @@ export default class bitstamp extends Exchange {
28
34
  'future': false,
29
35
  'option': false,
30
36
  'addMargin': false,
37
+ 'borrowCrossMargin': false,
38
+ 'borrowIsolatedMargin': false,
39
+ 'borrowMargin': false,
31
40
  'cancelAllOrders': true,
32
41
  'cancelOrder': true,
33
42
  'closeAllPositions': false,
34
43
  'closePosition': false,
35
44
  'createOrder': true,
45
+ 'createOrderWithTakeProfitAndStopLoss': false,
46
+ 'createOrderWithTakeProfitAndStopLossWs': false,
36
47
  'createReduceOnlyOrder': false,
37
48
  'createStopLimitOrder': false,
38
49
  'createStopMarketOrder': false,
39
50
  'createStopOrder': false,
40
51
  'fetchBalance': true,
52
+ 'fetchBorrowInterest': false,
53
+ 'fetchBorrowRate': false,
41
54
  'fetchBorrowRateHistories': false,
42
55
  'fetchBorrowRateHistory': false,
56
+ 'fetchBorrowRates': false,
57
+ 'fetchBorrowRatesPerSymbol': false,
43
58
  'fetchCrossBorrowRate': false,
44
59
  'fetchCrossBorrowRates': false,
45
60
  'fetchCurrencies': true,
@@ -50,21 +65,40 @@ export default class bitstamp extends Exchange {
50
65
  'fetchDepositWithdrawFee': 'emulated',
51
66
  'fetchDepositWithdrawFees': true,
52
67
  'fetchFundingHistory': false,
68
+ 'fetchFundingInterval': false,
69
+ 'fetchFundingIntervals': false,
53
70
  'fetchFundingRate': false,
54
71
  'fetchFundingRateHistory': false,
55
72
  'fetchFundingRates': false,
73
+ 'fetchGreeks': false,
56
74
  'fetchIndexOHLCV': false,
57
75
  'fetchIsolatedBorrowRate': false,
58
76
  'fetchIsolatedBorrowRates': false,
77
+ 'fetchIsolatedPositions': false,
59
78
  'fetchLedger': true,
60
79
  'fetchLeverage': false,
80
+ 'fetchLeverages': false,
81
+ 'fetchLeverageTiers': false,
82
+ 'fetchLiquidations': false,
83
+ 'fetchLongShortRatio': false,
84
+ 'fetchLongShortRatioHistory': false,
85
+ 'fetchMarginAdjustmentHistory': false,
61
86
  'fetchMarginMode': false,
87
+ 'fetchMarginModes': false,
88
+ 'fetchMarketLeverageTiers': false,
62
89
  'fetchMarkets': true,
63
90
  'fetchMarkOHLCV': false,
91
+ 'fetchMarkPrices': false,
92
+ 'fetchMyLiquidations': false,
93
+ 'fetchMySettlementHistory': false,
64
94
  'fetchMyTrades': true,
65
95
  'fetchOHLCV': true,
96
+ 'fetchOpenInterest': false,
66
97
  'fetchOpenInterestHistory': false,
98
+ 'fetchOpenInterests': false,
67
99
  'fetchOpenOrders': true,
100
+ 'fetchOption': false,
101
+ 'fetchOptionChain': false,
68
102
  'fetchOrder': true,
69
103
  'fetchOrderBook': true,
70
104
  'fetchPosition': false,
@@ -75,6 +109,7 @@ export default class bitstamp extends Exchange {
75
109
  'fetchPositionsHistory': false,
76
110
  'fetchPositionsRisk': false,
77
111
  'fetchPremiumIndexOHLCV': false,
112
+ 'fetchSettlementHistory': false,
78
113
  'fetchTicker': true,
79
114
  'fetchTickers': true,
80
115
  'fetchTrades': true,
@@ -82,9 +117,13 @@ export default class bitstamp extends Exchange {
82
117
  'fetchTradingFees': true,
83
118
  'fetchTransactionFees': true,
84
119
  'fetchTransactions': 'emulated',
120
+ 'fetchVolatilityHistory': false,
85
121
  'fetchWithdrawals': true,
86
122
  'reduceMargin': false,
123
+ 'repayCrossMargin': false,
124
+ 'repayIsolatedMargin': false,
87
125
  'setLeverage': false,
126
+ 'setMargin': false,
88
127
  'setMarginMode': false,
89
128
  'setPositionMode': false,
90
129
  'transfer': true,
package/js/src/bitteam.js CHANGED
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ---------------------------------------------------------------------------
2
8
  import Exchange from './abstract/bitteam.js';
3
9
  import { ArgumentsRequired, AuthenticationError, BadRequest, BadSymbol, ExchangeError, ExchangeNotAvailable, InsufficientFunds, OrderNotFound } from './base/errors.js';
package/js/src/bitvavo.js CHANGED
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ----------------------------------------------------------------------------
2
8
  import Exchange from './abstract/bitvavo.js';
3
9
  import { ExchangeError, BadSymbol, AuthenticationError, InsufficientFunds, InvalidOrder, ArgumentsRequired, OrderNotFound, InvalidAddress, BadRequest, RateLimitExceeded, PermissionDenied, ExchangeNotAvailable, AccountSuspended, OnMaintenance } from './base/errors.js';
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ---------------------------------------------------------------------------
2
8
  import Exchange from './abstract/blockchaincom.js';
3
9
  import { ExchangeError, AuthenticationError, OrderNotFound, InsufficientFunds, ArgumentsRequired } from './base/errors.js';
@@ -143,12 +143,14 @@ export default class blofin extends Exchange {
143
143
  * @param {float} amount how much of currency you want to trade in units of base currency
144
144
  * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
145
145
  * @param {object} [params] extra parameters specific to the exchange API endpoint
146
+ * @param {string} [params.triggerPrice] the trigger price for a trigger order
146
147
  * @param {bool} [params.reduceOnly] a mark to reduce the position size for margin, swap and future orders
147
148
  * @param {bool} [params.postOnly] true to place a post only order
148
149
  * @param {string} [params.marginMode] 'cross' or 'isolated', default is 'cross'
149
150
  * @param {float} [params.stopLossPrice] stop loss trigger price (will use privatePostTradeOrderTpsl)
150
151
  * @param {float} [params.takeProfitPrice] take profit trigger price (will use privatePostTradeOrderTpsl)
151
152
  * @param {string} [params.positionSide] *stopLossPrice/takeProfitPrice orders only* 'long' or 'short' or 'net' default is 'net'
153
+ * @param {boolean} [params.hedged] if true, the positionSide will be set to long/short instead of net, default is false
152
154
  * @param {string} [params.clientOrderId] a unique id for the order
153
155
  * @param {object} [params.takeProfit] *takeProfit object in params* containing the triggerPrice at which the attached take profit order will be triggered
154
156
  * @param {float} [params.takeProfit.triggerPrice] take profit trigger price
@@ -169,7 +171,8 @@ export default class blofin extends Exchange {
169
171
  * @param {string} id order id
170
172
  * @param {string} symbol unified symbol of the market the order was made in
171
173
  * @param {object} [params] extra parameters specific to the exchange API endpoint
172
- * @param {boolean} [params.trigger] True if cancelling a trigger/conditional order/tp sl orders
174
+ * @param {boolean} [params.trigger] True if cancelling a trigger/conditional
175
+ * @param {boolean} [params.tpsl] True if cancelling a tpsl order
173
176
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
174
177
  */
175
178
  cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
@@ -189,6 +192,7 @@ export default class blofin extends Exchange {
189
192
  * @description Fetch orders that are still open
190
193
  * @see https://blofin.com/docs#get-active-orders
191
194
  * @see https://blofin.com/docs#get-active-tpsl-orders
195
+ * @see https://docs.blofin.com/index.html#get-active-algo-orders
192
196
  * @param {string} symbol unified market symbol
193
197
  * @param {int} [since] the earliest time in ms to fetch open orders for
194
198
  * @param {int} [limit] the maximum number of open orders structures to retrieve
@@ -341,6 +345,7 @@ export default class blofin extends Exchange {
341
345
  * @param {string} symbol unified market symbol
342
346
  * @param {object} [params] extra parameters specific to the exchange API endpoint
343
347
  * @param {string} [params.marginMode] 'cross' or 'isolated'
348
+ * @param {string} [params.positionSide] 'long' or 'short' - required for hedged mode in isolated margin
344
349
  * @returns {object} response from the exchange
345
350
  */
346
351
  setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
@@ -387,7 +392,42 @@ export default class blofin extends Exchange {
387
392
  * @returns {object} a [margin mode structure]{@link https://docs.ccxt.com/#/?id=margin-mode-structure}
388
393
  */
389
394
  fetchMarginMode(symbol: string, params?: {}): Promise<MarginMode>;
390
- parseMarginMode(marginMode: Dict, market?: any): MarginMode;
395
+ parseMarginMode(marginMode: Dict, market?: Market): MarginMode;
396
+ /**
397
+ * @method
398
+ * @name blofin#setMarginMode
399
+ * @description set margin mode to 'cross' or 'isolated'
400
+ * @see https://docs.blofin.com/index.html#set-margin-mode
401
+ * @param {string} marginMode 'cross' or 'isolated'
402
+ * @param {string} [symbol] unified market symbol (not used in blofin setMarginMode)
403
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
404
+ * @returns {object} response from the exchange
405
+ */
406
+ setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<MarginMode>;
407
+ /**
408
+ * @method
409
+ * @name blofin#fetchPositionMode
410
+ * @description fetchs the position mode, hedged or one way
411
+ * @see https://docs.blofin.com/index.html#get-position-mode
412
+ * @param {string} [symbol] unified symbol of the market to fetch the position mode for (not used in blofin fetchPositionMode)
413
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
414
+ * @returns {object} an object detailing whether the market is in hedged or one-way mode
415
+ */
416
+ fetchPositionMode(symbol?: Str, params?: {}): Promise<{
417
+ info: import("./base/types.js").Dictionary<any>;
418
+ hedged: boolean;
419
+ }>;
420
+ /**
421
+ * @method
422
+ * @name blofin#setPositionMode
423
+ * @description set hedged to true or false for a market
424
+ * @see https://docs.blofin.com/index.html#set-position-mode
425
+ * @param {bool} hedged set to true to use hedged mode, false for one-way mode
426
+ * @param {string} [symbol] not used by blofin setPositionMode ()
427
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
428
+ * @returns {object} response from the exchange
429
+ */
430
+ setPositionMode(hedged: boolean, symbol?: Str, params?: {}): Promise<any>;
391
431
  handleErrors(httpCode: int, reason: string, url: string, method: string, headers: Dict, body: string, response: any, requestHeaders: any, requestBody: any): any;
392
432
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
393
433
  url: string;
package/js/src/blofin.js CHANGED
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ---------------------------------------------------------------------------
2
8
  import Exchange from './abstract/blofin.js';
3
9
  import { ExchangeError, ExchangeNotAvailable, ArgumentsRequired, BadRequest, InvalidOrder, AuthenticationError, RateLimitExceeded, InsufficientFunds } from './base/errors.js';
@@ -45,6 +51,7 @@ export default class blofin extends Exchange {
45
51
  'createStopMarketOrder': false,
46
52
  'createStopOrder': false,
47
53
  'createTakeProfitOrder': true,
54
+ 'createTriggerOrder': true,
48
55
  'editOrder': false,
49
56
  'fetchAccounts': false,
50
57
  'fetchBalance': true,
@@ -98,6 +105,7 @@ export default class blofin extends Exchange {
98
105
  'fetchOrders': false,
99
106
  'fetchOrderTrades': true,
100
107
  'fetchPosition': true,
108
+ 'fetchPositionMode': true,
101
109
  'fetchPositions': true,
102
110
  'fetchPositionsForSymbol': false,
103
111
  'fetchPositionsRisk': false,
@@ -125,8 +133,8 @@ export default class blofin extends Exchange {
125
133
  'repayCrossMargin': false,
126
134
  'setLeverage': true,
127
135
  'setMargin': false,
128
- 'setMarginMode': false,
129
- 'setPositionMode': false,
136
+ 'setMarginMode': true,
137
+ 'setPositionMode': true,
130
138
  'signIn': false,
131
139
  'transfer': true,
132
140
  'withdraw': false,
@@ -189,10 +197,14 @@ export default class blofin extends Exchange {
189
197
  'account/positions': 1,
190
198
  'account/leverage-info': 1,
191
199
  'account/margin-mode': 1,
200
+ 'account/position-mode': 1,
192
201
  'account/batch-leverage-info': 1,
193
202
  'trade/orders-tpsl-pending': 1,
203
+ 'trade/orders-algo-pending': 1,
194
204
  'trade/orders-history': 1,
195
205
  'trade/orders-tpsl-history': 1,
206
+ 'trade/orders-algo-history': 1,
207
+ 'trade/order/price-range': 1,
196
208
  'user/query-apikey': 1,
197
209
  'affiliate/basic': 1,
198
210
  'copytrading/instruments': 1,
@@ -209,8 +221,12 @@ export default class blofin extends Exchange {
209
221
  'copytrading/trade/pending-tpsl-by-order': 1,
210
222
  },
211
223
  'post': {
224
+ 'account/set-margin-mode': 1,
225
+ 'account/set-position-mode': 1,
212
226
  'trade/order': 1,
227
+ 'trade/order-algo': 1,
213
228
  'trade/cancel-order': 1,
229
+ 'trade/cancel-algo': 1,
214
230
  'account/set-leverage': 1,
215
231
  'trade/batch-orders': 1,
216
232
  'trade/order-tpsl': 1,
@@ -1145,7 +1161,12 @@ export default class blofin extends Exchange {
1145
1161
  let marginMode = undefined;
1146
1162
  [marginMode, params] = this.handleMarginModeAndParams('createOrder', params, 'cross');
1147
1163
  request['marginMode'] = marginMode;
1164
+ const triggerPrice = this.safeString(params, 'triggerPrice');
1148
1165
  const timeInForce = this.safeString(params, 'timeInForce', 'GTC');
1166
+ const isHedged = this.safeBool(params, 'hedged', false);
1167
+ if (isHedged) {
1168
+ request['positionSide'] = (side === 'buy') ? 'long' : 'short';
1169
+ }
1149
1170
  const isMarketOrder = type === 'market';
1150
1171
  params = this.omit(params, ['timeInForce']);
1151
1172
  const ioc = (timeInForce === 'IOC') || (type === 'ioc');
@@ -1154,7 +1175,8 @@ export default class blofin extends Exchange {
1154
1175
  request['orderType'] = 'market';
1155
1176
  }
1156
1177
  else {
1157
- request['price'] = this.priceToPrecision(symbol, price);
1178
+ const key = (triggerPrice !== undefined) ? 'orderPrice' : 'price';
1179
+ request[key] = this.priceToPrecision(symbol, price);
1158
1180
  }
1159
1181
  let postOnly = false;
1160
1182
  [postOnly, params] = this.handlePostOnly(isMarketOrder, type === 'post_only', params);
@@ -1163,7 +1185,7 @@ export default class blofin extends Exchange {
1163
1185
  }
1164
1186
  const stopLoss = this.safeDict(params, 'stopLoss');
1165
1187
  const takeProfit = this.safeDict(params, 'takeProfit');
1166
- params = this.omit(params, ['stopLoss', 'takeProfit']);
1188
+ params = this.omit(params, ['stopLoss', 'takeProfit', 'hedged']);
1167
1189
  const isStopLoss = stopLoss !== undefined;
1168
1190
  const isTakeProfit = takeProfit !== undefined;
1169
1191
  if (isStopLoss || isTakeProfit) {
@@ -1180,6 +1202,13 @@ export default class blofin extends Exchange {
1180
1202
  request['tpOrderPrice'] = this.priceToPrecision(symbol, tpPrice);
1181
1203
  }
1182
1204
  }
1205
+ else if (triggerPrice !== undefined) {
1206
+ request['orderType'] = 'trigger';
1207
+ request['triggerPrice'] = this.priceToPrecision(symbol, triggerPrice);
1208
+ if (isMarketOrder) {
1209
+ request['orderPrice'] = '-1';
1210
+ }
1211
+ }
1183
1212
  return this.extend(request, params);
1184
1213
  }
1185
1214
  parseOrderStatus(status) {
@@ -1229,7 +1258,7 @@ export default class blofin extends Exchange {
1229
1258
  // "instType": "SWAP", // only in WS
1230
1259
  // }
1231
1260
  //
1232
- const id = this.safeString2(order, 'tpslId', 'orderId');
1261
+ const id = this.safeStringN(order, ['tpslId', 'orderId', 'algoId']);
1233
1262
  const timestamp = this.safeInteger(order, 'createTime');
1234
1263
  const lastUpdateTimestamp = this.safeInteger(order, 'updateTime');
1235
1264
  const lastTradeTimestamp = this.safeInteger(order, 'fillTime');
@@ -1328,12 +1357,14 @@ export default class blofin extends Exchange {
1328
1357
  * @param {float} amount how much of currency you want to trade in units of base currency
1329
1358
  * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
1330
1359
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1360
+ * @param {string} [params.triggerPrice] the trigger price for a trigger order
1331
1361
  * @param {bool} [params.reduceOnly] a mark to reduce the position size for margin, swap and future orders
1332
1362
  * @param {bool} [params.postOnly] true to place a post only order
1333
1363
  * @param {string} [params.marginMode] 'cross' or 'isolated', default is 'cross'
1334
1364
  * @param {float} [params.stopLossPrice] stop loss trigger price (will use privatePostTradeOrderTpsl)
1335
1365
  * @param {float} [params.takeProfitPrice] take profit trigger price (will use privatePostTradeOrderTpsl)
1336
1366
  * @param {string} [params.positionSide] *stopLossPrice/takeProfitPrice orders only* 'long' or 'short' or 'net' default is 'net'
1367
+ * @param {boolean} [params.hedged] if true, the positionSide will be set to long/short instead of net, default is false
1337
1368
  * @param {string} [params.clientOrderId] a unique id for the order
1338
1369
  * @param {object} [params.takeProfit] *takeProfit object in params* containing the triggerPrice at which the attached take profit order will be triggered
1339
1370
  * @param {float} [params.takeProfit.triggerPrice] take profit trigger price
@@ -1352,16 +1383,30 @@ export default class blofin extends Exchange {
1352
1383
  [method, params] = this.handleOptionAndParams(params, 'createOrder', 'method', 'privatePostTradeOrder');
1353
1384
  const isStopLossPriceDefined = this.safeString(params, 'stopLossPrice') !== undefined;
1354
1385
  const isTakeProfitPriceDefined = this.safeString(params, 'takeProfitPrice') !== undefined;
1386
+ const isTriggerOrder = this.safeString(params, 'triggerPrice') !== undefined;
1355
1387
  const isType2Order = (isStopLossPriceDefined || isTakeProfitPriceDefined);
1356
1388
  let response = undefined;
1389
+ const reduceOnly = this.safeBool(params, 'reduceOnly');
1390
+ if (reduceOnly !== undefined) {
1391
+ params['reduceOnly'] = reduceOnly ? 'true' : 'false';
1392
+ }
1357
1393
  if (tpsl || (method === 'privatePostTradeOrderTpsl') || isType2Order) {
1358
1394
  const tpslRequest = this.createTpslOrderRequest(symbol, type, side, amount, price, params);
1359
1395
  response = await this.privatePostTradeOrderTpsl(tpslRequest);
1360
1396
  }
1397
+ else if (isTriggerOrder || (method === 'privatePostTradeOrderAlgo')) {
1398
+ const triggerRequest = this.createOrderRequest(symbol, type, side, amount, price, params);
1399
+ response = await this.privatePostTradeOrderAlgo(triggerRequest);
1400
+ }
1361
1401
  else {
1362
1402
  const request = this.createOrderRequest(symbol, type, side, amount, price, params);
1363
1403
  response = await this.privatePostTradeOrder(request);
1364
1404
  }
1405
+ if (isTriggerOrder || (method === 'privatePostTradeOrderAlgo')) {
1406
+ const dataDict = this.safeDict(response, 'data', {});
1407
+ const triggerOrder = this.parseOrder(dataDict, market);
1408
+ return triggerOrder;
1409
+ }
1365
1410
  const data = this.safeList(response, 'data', []);
1366
1411
  const first = this.safeDict(data, 0);
1367
1412
  const order = this.parseOrder(first, market);
@@ -1418,7 +1463,8 @@ export default class blofin extends Exchange {
1418
1463
  * @param {string} id order id
1419
1464
  * @param {string} symbol unified symbol of the market the order was made in
1420
1465
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1421
- * @param {boolean} [params.trigger] True if cancelling a trigger/conditional order/tp sl orders
1466
+ * @param {boolean} [params.trigger] True if cancelling a trigger/conditional
1467
+ * @param {boolean} [params.tpsl] True if cancelling a tpsl order
1422
1468
  * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1423
1469
  */
1424
1470
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -1430,25 +1476,34 @@ export default class blofin extends Exchange {
1430
1476
  const request = {
1431
1477
  'instId': market['id'],
1432
1478
  };
1433
- const isTrigger = this.safeBoolN(params, ['stop', 'trigger', 'tpsl'], false);
1479
+ const isTrigger = this.safeBoolN(params, ['trigger'], false);
1480
+ const isTpsl = this.safeBool2(params, 'tpsl', 'TPSL', false);
1434
1481
  const clientOrderId = this.safeString(params, 'clientOrderId');
1435
1482
  if (clientOrderId !== undefined) {
1436
1483
  request['clientOrderId'] = clientOrderId;
1437
1484
  }
1438
1485
  else {
1439
- if (!isTrigger) {
1486
+ if (!isTrigger && !isTpsl) {
1440
1487
  request['orderId'] = id.toString();
1441
1488
  }
1442
- else {
1489
+ else if (isTpsl) {
1443
1490
  request['tpslId'] = id.toString();
1444
1491
  }
1492
+ else if (isTrigger) {
1493
+ request['algoId'] = id.toString();
1494
+ }
1445
1495
  }
1446
1496
  const query = this.omit(params, ['orderId', 'clientOrderId', 'stop', 'trigger', 'tpsl']);
1447
- if (isTrigger) {
1497
+ if (isTpsl) {
1448
1498
  const tpslResponse = await this.cancelOrders([id], symbol, params);
1449
1499
  const first = this.safeDict(tpslResponse, 0);
1450
1500
  return first;
1451
1501
  }
1502
+ else if (isTrigger) {
1503
+ const triggerResponse = await this.privatePostTradeCancelAlgo(this.extend(request, query));
1504
+ const triggerData = this.safeDict(triggerResponse, 'data');
1505
+ return this.parseOrder(triggerData, market);
1506
+ }
1452
1507
  const response = await this.privatePostTradeCancelOrder(this.extend(request, query));
1453
1508
  const data = this.safeList(response, 'data', []);
1454
1509
  const order = this.safeDict(data, 0);
@@ -1488,6 +1543,7 @@ export default class blofin extends Exchange {
1488
1543
  * @description Fetch orders that are still open
1489
1544
  * @see https://blofin.com/docs#get-active-orders
1490
1545
  * @see https://blofin.com/docs#get-active-tpsl-orders
1546
+ * @see https://docs.blofin.com/index.html#get-active-algo-orders
1491
1547
  * @param {string} symbol unified market symbol
1492
1548
  * @param {int} [since] the earliest time in ms to fetch open orders for
1493
1549
  * @param {int} [limit] the maximum number of open orders structures to retrieve
@@ -1512,14 +1568,19 @@ export default class blofin extends Exchange {
1512
1568
  if (limit !== undefined) {
1513
1569
  request['limit'] = limit; // default 100, max 100
1514
1570
  }
1515
- const isTrigger = this.safeBoolN(params, ['stop', 'trigger', 'tpsl', 'TPSL'], false);
1571
+ const isTrigger = this.safeBoolN(params, ['stop', 'trigger'], false);
1572
+ const isTpSl = this.safeBool2(params, 'tpsl', 'TPSL', false);
1516
1573
  let method = undefined;
1517
1574
  [method, params] = this.handleOptionAndParams(params, 'fetchOpenOrders', 'method', 'privateGetTradeOrdersPending');
1518
1575
  const query = this.omit(params, ['method', 'stop', 'trigger', 'tpsl', 'TPSL']);
1519
1576
  let response = undefined;
1520
- if (isTrigger || (method === 'privateGetTradeOrdersTpslPending')) {
1577
+ if (isTpSl || (method === 'privateGetTradeOrdersTpslPending')) {
1521
1578
  response = await this.privateGetTradeOrdersTpslPending(this.extend(request, query));
1522
1579
  }
1580
+ else if (isTrigger || (method === 'privateGetTradeOrdersAlgoPending')) {
1581
+ request['orderType'] = 'trigger';
1582
+ response = await this.privateGetTradeOrdersAlgoPending(this.extend(request, query));
1583
+ }
1523
1584
  else {
1524
1585
  response = await this.privateGetTradeOrdersPending(this.extend(request, query));
1525
1586
  }
@@ -2207,6 +2268,7 @@ export default class blofin extends Exchange {
2207
2268
  * @param {string} symbol unified market symbol
2208
2269
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2209
2270
  * @param {string} [params.marginMode] 'cross' or 'isolated'
2271
+ * @param {string} [params.positionSide] 'long' or 'short' - required for hedged mode in isolated margin
2210
2272
  * @returns {object} response from the exchange
2211
2273
  */
2212
2274
  async setLeverage(leverage, symbol = undefined, params = {}) {
@@ -2341,10 +2403,95 @@ export default class blofin extends Exchange {
2341
2403
  parseMarginMode(marginMode, market = undefined) {
2342
2404
  return {
2343
2405
  'info': marginMode,
2344
- 'symbol': market['symbol'],
2406
+ 'symbol': this.safeString(market, 'symbol'),
2345
2407
  'marginMode': this.safeString(marginMode, 'marginMode'),
2346
2408
  };
2347
2409
  }
2410
+ /**
2411
+ * @method
2412
+ * @name blofin#setMarginMode
2413
+ * @description set margin mode to 'cross' or 'isolated'
2414
+ * @see https://docs.blofin.com/index.html#set-margin-mode
2415
+ * @param {string} marginMode 'cross' or 'isolated'
2416
+ * @param {string} [symbol] unified market symbol (not used in blofin setMarginMode)
2417
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2418
+ * @returns {object} response from the exchange
2419
+ */
2420
+ async setMarginMode(marginMode, symbol = undefined, params = {}) {
2421
+ this.checkRequiredArgument('setMarginMode', marginMode, 'marginMode', ['cross', 'isolated']);
2422
+ await this.loadMarkets();
2423
+ let market = undefined;
2424
+ if (symbol !== undefined) {
2425
+ market = this.market(symbol);
2426
+ }
2427
+ const request = {
2428
+ 'marginMode': marginMode,
2429
+ };
2430
+ const response = await this.privatePostAccountSetMarginMode(this.extend(request, params));
2431
+ //
2432
+ // {
2433
+ // "code": "0",
2434
+ // "msg": "success",
2435
+ // "data": {
2436
+ // "marginMode": "isolated"
2437
+ // }
2438
+ // }
2439
+ //
2440
+ const data = this.safeDict(response, 'data', {});
2441
+ return this.parseMarginMode(data, market);
2442
+ }
2443
+ /**
2444
+ * @method
2445
+ * @name blofin#fetchPositionMode
2446
+ * @description fetchs the position mode, hedged or one way
2447
+ * @see https://docs.blofin.com/index.html#get-position-mode
2448
+ * @param {string} [symbol] unified symbol of the market to fetch the position mode for (not used in blofin fetchPositionMode)
2449
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2450
+ * @returns {object} an object detailing whether the market is in hedged or one-way mode
2451
+ */
2452
+ async fetchPositionMode(symbol = undefined, params = {}) {
2453
+ const response = await this.privateGetAccountPositionMode(params);
2454
+ const data = this.safeDict(response, 'data', {});
2455
+ const positionMode = this.safeString(data, 'positionMode');
2456
+ //
2457
+ // {
2458
+ // "code": "0",
2459
+ // "msg": "success",
2460
+ // "data": {
2461
+ // "positionMode": "long_short_mode"
2462
+ // }
2463
+ // }
2464
+ //
2465
+ return {
2466
+ 'info': data,
2467
+ 'hedged': positionMode === 'long_short_mode',
2468
+ };
2469
+ }
2470
+ /**
2471
+ * @method
2472
+ * @name blofin#setPositionMode
2473
+ * @description set hedged to true or false for a market
2474
+ * @see https://docs.blofin.com/index.html#set-position-mode
2475
+ * @param {bool} hedged set to true to use hedged mode, false for one-way mode
2476
+ * @param {string} [symbol] not used by blofin setPositionMode ()
2477
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2478
+ * @returns {object} response from the exchange
2479
+ */
2480
+ async setPositionMode(hedged, symbol = undefined, params = {}) {
2481
+ const request = {
2482
+ 'positionMode': hedged ? 'long_short_mode' : 'net_mode',
2483
+ };
2484
+ //
2485
+ // {
2486
+ // "code": "0",
2487
+ // "msg": "success",
2488
+ // "data": {
2489
+ // "positionMode": "net_mode"
2490
+ // }
2491
+ // }
2492
+ //
2493
+ return await this.privatePostAccountSetPositionMode(this.extend(request, params));
2494
+ }
2348
2495
  handleErrors(httpCode, reason, url, method, headers, body, response, requestHeaders, requestBody) {
2349
2496
  if (response === undefined) {
2350
2497
  return undefined; // fallback to default error handler
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ---------------------------------------------------------------------------
2
8
  import Exchange from './abstract/btcalpha.js';
3
9
  import { ExchangeError, InvalidOrder, InsufficientFunds } from './base/errors.js';
package/js/src/btcbox.js CHANGED
@@ -1,3 +1,9 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
1
7
  // ---------------------------------------------------------------------------
2
8
  import Exchange from './abstract/btcbox.js';
3
9
  import { ExchangeError, InsufficientFunds, InvalidOrder, AuthenticationError, PermissionDenied, InvalidNonce, OrderNotFound, DDoSProtection } from './base/errors.js';
@@ -103,6 +109,18 @@ export default class btcbox extends Exchange {
103
109
  'wallet',
104
110
  ],
105
111
  },
112
+ 'webApi': {
113
+ 'get': [
114
+ 'ajax/coin/coinInfo',
115
+ ],
116
+ },
117
+ },
118
+ 'options': {
119
+ 'fetchMarkets': {
120
+ 'webApiEnable': true,
121
+ 'webApiRetries': 3,
122
+ },
123
+ 'amountPrecision': '0.0001', // exchange has only few pairs and all of them
106
124
  },
107
125
  'features': {
108
126
  'spot': {
@@ -188,9 +206,12 @@ export default class btcbox extends Exchange {
188
206
  * @returns {object[]} an array of objects representing market data
189
207
  */
190
208
  async fetchMarkets(params = {}) {
191
- const response = await this.publicGetTickers();
209
+ const promise1 = this.publicGetTickers();
210
+ const promise2 = this.fetchWebEndpoint('fetchMarkets', 'webApiGetAjaxCoinCoinInfo', true);
211
+ const [response1, response2] = await Promise.all([promise1, promise2]);
192
212
  //
193
- const marketIds = Object.keys(response);
213
+ const result2Data = this.safeDict(response2, 'data', {});
214
+ const marketIds = Object.keys(response1);
194
215
  const markets = [];
195
216
  for (let i = 0; i < marketIds.length; i++) {
196
217
  const marketId = marketIds[i];
@@ -199,9 +220,11 @@ export default class btcbox extends Exchange {
199
220
  const quote = this.safeString(symbolParts, 1);
200
221
  const quoteId = quote.toLowerCase();
201
222
  const id = baseCurr.toLowerCase();
202
- const res = response[marketId];
223
+ const res = response1[marketId];
203
224
  const symbol = baseCurr + '/' + quote;
204
225
  const fee = (id === 'BTC') ? this.parseNumber('0.0005') : this.parseNumber('0.0010');
226
+ const details = this.safeDict(result2Data, id, {});
227
+ const tradeDetails = this.safeDict(details, 'trade', {});
205
228
  markets.push(this.safeMarketStructure({
206
229
  'id': id,
207
230
  'uppercaseId': undefined,
@@ -247,10 +270,10 @@ export default class btcbox extends Exchange {
247
270
  },
248
271
  },
249
272
  'precision': {
250
- 'price': undefined,
273
+ 'price': this.parseNumber(this.parsePrecision(this.safeString(tradeDetails, 'pricedecimal'))),
251
274
  'amount': undefined,
252
275
  },
253
- 'active': undefined,
276
+ 'active': this.safeString(tradeDetails, 'enable') === '1',
254
277
  'created': undefined,
255
278
  'info': res,
256
279
  }));
@@ -724,6 +747,9 @@ export default class btcbox extends Exchange {
724
747
  url += '?' + this.urlencode(params);
725
748
  }
726
749
  }
750
+ else if (api === 'webApi') {
751
+ url = this.urls['www'] + '/' + path;
752
+ }
727
753
  else {
728
754
  this.checkRequiredCredentials();
729
755
  const nonce = this.nonce().toString();