ccxt 4.4.46 → 4.4.47

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 (489) hide show
  1. package/README.md +3 -4
  2. package/dist/ccxt.browser.min.js +15 -15
  3. package/dist/cjs/ccxt.js +1 -1
  4. package/dist/cjs/src/abstract/ace.js +1 -1
  5. package/dist/cjs/src/abstract/alpaca.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/bitfinex1.js +1 -1
  15. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  16. package/dist/cjs/src/abstract/bitget.js +1 -1
  17. package/dist/cjs/src/abstract/bithumb.js +1 -1
  18. package/dist/cjs/src/abstract/bitmart.js +1 -1
  19. package/dist/cjs/src/abstract/bitmex.js +1 -1
  20. package/dist/cjs/src/abstract/bitopro.js +1 -1
  21. package/dist/cjs/src/abstract/bitrue.js +1 -1
  22. package/dist/cjs/src/abstract/bitso.js +1 -1
  23. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  24. package/dist/cjs/src/abstract/bitteam.js +1 -1
  25. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  26. package/dist/cjs/src/abstract/bl3p.js +1 -1
  27. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  28. package/dist/cjs/src/abstract/blofin.js +1 -1
  29. package/dist/cjs/src/abstract/btcalpha.js +1 -1
  30. package/dist/cjs/src/abstract/btcbox.js +1 -1
  31. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  32. package/dist/cjs/src/abstract/btcturk.js +1 -1
  33. package/dist/cjs/src/abstract/bybit.js +1 -1
  34. package/dist/cjs/src/abstract/cex.js +1 -1
  35. package/dist/cjs/src/abstract/coinbase.js +1 -1
  36. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  37. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  38. package/dist/cjs/src/abstract/coincatch.js +1 -1
  39. package/dist/cjs/src/abstract/coincheck.js +1 -1
  40. package/dist/cjs/src/abstract/coinex.js +1 -1
  41. package/dist/cjs/src/abstract/coinlist.js +1 -1
  42. package/dist/cjs/src/abstract/coinmate.js +1 -1
  43. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  44. package/dist/cjs/src/abstract/coinone.js +1 -1
  45. package/dist/cjs/src/abstract/coinsph.js +1 -1
  46. package/dist/cjs/src/abstract/coinspot.js +1 -1
  47. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  48. package/dist/cjs/src/abstract/currencycom.js +1 -1
  49. package/dist/cjs/src/abstract/defx.js +1 -1
  50. package/dist/cjs/src/abstract/delta.js +1 -1
  51. package/dist/cjs/src/abstract/deribit.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/lykke.js +1 -1
  75. package/dist/cjs/src/abstract/mercado.js +1 -1
  76. package/dist/cjs/src/abstract/mexc.js +1 -1
  77. package/dist/cjs/src/abstract/ndax.js +1 -1
  78. package/dist/cjs/src/abstract/novadax.js +1 -1
  79. package/dist/cjs/src/abstract/oceanex.js +1 -1
  80. package/dist/cjs/src/abstract/okcoin.js +1 -1
  81. package/dist/cjs/src/abstract/okx.js +1 -1
  82. package/dist/cjs/src/abstract/onetrading.js +1 -1
  83. package/dist/cjs/src/abstract/oxfun.js +1 -1
  84. package/dist/cjs/src/abstract/p2b.js +1 -1
  85. package/dist/cjs/src/abstract/paradex.js +1 -1
  86. package/dist/cjs/src/abstract/paymium.js +1 -1
  87. package/dist/cjs/src/abstract/phemex.js +1 -1
  88. package/dist/cjs/src/abstract/poloniex.js +1 -1
  89. package/dist/cjs/src/abstract/poloniexfutures.js +1 -1
  90. package/dist/cjs/src/abstract/probit.js +1 -1
  91. package/dist/cjs/src/abstract/timex.js +1 -1
  92. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  93. package/dist/cjs/src/abstract/tradeogre.js +1 -1
  94. package/dist/cjs/src/abstract/upbit.js +1 -1
  95. package/dist/cjs/src/abstract/vertex.js +1 -1
  96. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  97. package/dist/cjs/src/abstract/wazirx.js +1 -1
  98. package/dist/cjs/src/abstract/whitebit.js +1 -1
  99. package/dist/cjs/src/abstract/woo.js +1 -1
  100. package/dist/cjs/src/abstract/woofipro.js +1 -1
  101. package/dist/cjs/src/abstract/xt.js +1 -1
  102. package/dist/cjs/src/abstract/yobit.js +1 -1
  103. package/dist/cjs/src/abstract/zaif.js +1 -1
  104. package/dist/cjs/src/abstract/zonda.js +1 -1
  105. package/dist/cjs/src/ace.js +59 -1
  106. package/dist/cjs/src/alpaca.js +81 -1
  107. package/dist/cjs/src/ascendex.js +96 -3
  108. package/dist/cjs/src/base/Exchange.js +16 -14
  109. package/dist/cjs/src/base/Precise.js +6 -0
  110. package/dist/cjs/src/base/errors.js +6 -0
  111. package/dist/cjs/src/base/functions/crypto.js +1 -1
  112. package/dist/cjs/src/base/functions/encode.js +1 -1
  113. package/dist/cjs/src/base/functions/misc.js +1 -0
  114. package/dist/cjs/src/base/functions/number.js +6 -0
  115. package/dist/cjs/src/base/functions/platform.js +6 -0
  116. package/dist/cjs/src/base/functions/rsa.js +1 -0
  117. package/dist/cjs/src/base/functions/string.js +6 -0
  118. package/dist/cjs/src/base/functions/throttle.js +1 -1
  119. package/dist/cjs/src/base/functions/time.js +6 -0
  120. package/dist/cjs/src/base/functions/totp.js +1 -0
  121. package/dist/cjs/src/base/functions/type.js +6 -0
  122. package/dist/cjs/src/base/functions.js +1 -1
  123. package/dist/cjs/src/base/ws/Cache.js +6 -0
  124. package/dist/cjs/src/base/ws/Client.js +1 -0
  125. package/dist/cjs/src/base/ws/Future.js +1 -1
  126. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  127. package/dist/cjs/src/base/ws/OrderBookSide.js +6 -0
  128. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  129. package/dist/cjs/src/bequant.js +1 -1
  130. package/dist/cjs/src/bigone.js +117 -5
  131. package/dist/cjs/src/binance.js +4 -5
  132. package/dist/cjs/src/binancecoinm.js +1 -1
  133. package/dist/cjs/src/binanceus.js +11 -1
  134. package/dist/cjs/src/binanceusdm.js +1 -1
  135. package/dist/cjs/src/bingx.js +2 -3
  136. package/dist/cjs/src/bit2c.js +57 -1
  137. package/dist/cjs/src/bitbank.js +59 -1
  138. package/dist/cjs/src/bitbns.js +61 -1
  139. package/dist/cjs/src/bitcoincom.js +1 -1
  140. package/dist/cjs/src/bitfinex.js +3 -4
  141. package/dist/cjs/src/bitfinex1.js +12 -2
  142. package/dist/cjs/src/bitflyer.js +72 -1
  143. package/dist/cjs/src/bitget.js +2 -3
  144. package/dist/cjs/src/bithumb.js +55 -1
  145. package/dist/cjs/src/bitmart.js +1 -1
  146. package/dist/cjs/src/bitmex.js +2 -3
  147. package/dist/cjs/src/bitopro.js +75 -1
  148. package/dist/cjs/src/bitpanda.js +1 -1
  149. package/dist/cjs/src/bitrue.js +98 -18
  150. package/dist/cjs/src/bitso.js +60 -1
  151. package/dist/cjs/src/bitstamp.js +1 -1
  152. package/dist/cjs/src/bitteam.js +74 -1
  153. package/dist/cjs/src/bitvavo.js +68 -2
  154. package/dist/cjs/src/bl3p.js +43 -1
  155. package/dist/cjs/src/blockchaincom.js +67 -3
  156. package/dist/cjs/src/blofin.js +88 -2
  157. package/dist/cjs/src/btcalpha.js +74 -1
  158. package/dist/cjs/src/btcbox.js +59 -1
  159. package/dist/cjs/src/btcmarkets.js +74 -1
  160. package/dist/cjs/src/btcturk.js +62 -1
  161. package/dist/cjs/src/bybit.js +10 -4
  162. package/dist/cjs/src/cex.js +58 -1
  163. package/dist/cjs/src/coinbase.js +1 -1
  164. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  165. package/dist/cjs/src/coinbaseexchange.js +76 -0
  166. package/dist/cjs/src/coincatch.js +1 -1
  167. package/dist/cjs/src/coincheck.js +1 -1
  168. package/dist/cjs/src/coinex.js +2 -3
  169. package/dist/cjs/src/coinlist.js +1 -0
  170. package/dist/cjs/src/coinmate.js +1 -1
  171. package/dist/cjs/src/coinmetro.js +1 -1
  172. package/dist/cjs/src/coinone.js +1 -1
  173. package/dist/cjs/src/coinsph.js +1 -0
  174. package/dist/cjs/src/coinspot.js +1 -1
  175. package/dist/cjs/src/cryptocom.js +1 -1
  176. package/dist/cjs/src/currencycom.js +1 -1
  177. package/dist/cjs/src/defx.js +1 -1
  178. package/dist/cjs/src/delta.js +2 -3
  179. package/dist/cjs/src/deribit.js +1 -1
  180. package/dist/cjs/src/digifinex.js +1 -1
  181. package/dist/cjs/src/ellipx.js +1 -1
  182. package/dist/cjs/src/exmo.js +1 -1
  183. package/dist/cjs/src/fmfwio.js +1 -1
  184. package/dist/cjs/src/gate.js +4 -4
  185. package/dist/cjs/src/gateio.js +1 -1
  186. package/dist/cjs/src/gemini.js +1 -1
  187. package/dist/cjs/src/hashkey.js +2 -3
  188. package/dist/cjs/src/hitbtc.js +1 -0
  189. package/dist/cjs/src/hollaex.js +2 -2
  190. package/dist/cjs/src/htx.js +3 -5
  191. package/dist/cjs/src/huobi.js +1 -1
  192. package/dist/cjs/src/huobijp.js +1 -1
  193. package/dist/cjs/src/hyperliquid.js +6 -5
  194. package/dist/cjs/src/idex.js +1 -1
  195. package/dist/cjs/src/independentreserve.js +1 -1
  196. package/dist/cjs/src/indodax.js +1 -1
  197. package/dist/cjs/src/kraken.js +1 -1
  198. package/dist/cjs/src/krakenfutures.js +4 -1
  199. package/dist/cjs/src/kucoin.js +1 -1
  200. package/dist/cjs/src/kucoinfutures.js +1 -1
  201. package/dist/cjs/src/kuna.js +1 -1
  202. package/dist/cjs/src/latoken.js +1 -1
  203. package/dist/cjs/src/lbank.js +2 -3
  204. package/dist/cjs/src/luno.js +1 -1
  205. package/dist/cjs/src/lykke.js +1 -1
  206. package/dist/cjs/src/mercado.js +1 -1
  207. package/dist/cjs/src/mexc.js +1 -1
  208. package/dist/cjs/src/myokx.js +1 -1
  209. package/dist/cjs/src/ndax.js +1 -1
  210. package/dist/cjs/src/novadax.js +1 -1
  211. package/dist/cjs/src/oceanex.js +1 -1
  212. package/dist/cjs/src/okcoin.js +1 -1
  213. package/dist/cjs/src/okx.js +14 -10
  214. package/dist/cjs/src/onetrading.js +1 -1
  215. package/dist/cjs/src/oxfun.js +2 -3
  216. package/dist/cjs/src/p2b.js +1 -1
  217. package/dist/cjs/src/paradex.js +1 -1
  218. package/dist/cjs/src/paymium.js +1 -1
  219. package/dist/cjs/src/poloniex.js +1 -1
  220. package/dist/cjs/src/poloniexfutures.js +1 -1
  221. package/dist/cjs/src/pro/alpaca.js +1 -1
  222. package/dist/cjs/src/pro/ascendex.js +1 -1
  223. package/dist/cjs/src/pro/bequant.js +1 -1
  224. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  225. package/dist/cjs/src/pro/binanceus.js +1 -1
  226. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  227. package/dist/cjs/src/pro/bingx.js +4 -7
  228. package/dist/cjs/src/pro/bitcoincom.js +1 -1
  229. package/dist/cjs/src/pro/bitfinex.js +1 -1
  230. package/dist/cjs/src/pro/bitfinex1.js +1 -1
  231. package/dist/cjs/src/pro/bitget.js +3 -6
  232. package/dist/cjs/src/pro/bithumb.js +1 -1
  233. package/dist/cjs/src/pro/bitmart.js +1 -1
  234. package/dist/cjs/src/pro/bitmex.js +1 -1
  235. package/dist/cjs/src/pro/bitpanda.js +1 -1
  236. package/dist/cjs/src/pro/bitrue.js +1 -1
  237. package/dist/cjs/src/pro/bitstamp.js +1 -1
  238. package/dist/cjs/src/pro/bitvavo.js +1 -1
  239. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  240. package/dist/cjs/src/pro/blofin.js +1 -1
  241. package/dist/cjs/src/pro/bybit.js +1 -1
  242. package/dist/cjs/src/pro/cex.js +1 -1
  243. package/dist/cjs/src/pro/coinbase.js +1 -1
  244. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  245. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  246. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  247. package/dist/cjs/src/pro/coincatch.js +1 -1
  248. package/dist/cjs/src/pro/coincheck.js +1 -1
  249. package/dist/cjs/src/pro/coinex.js +1 -1
  250. package/dist/cjs/src/pro/coinone.js +1 -1
  251. package/dist/cjs/src/pro/cryptocom.js +1 -1
  252. package/dist/cjs/src/pro/currencycom.js +1 -1
  253. package/dist/cjs/src/pro/defx.js +1 -1
  254. package/dist/cjs/src/pro/deribit.js +1 -1
  255. package/dist/cjs/src/pro/exmo.js +1 -1
  256. package/dist/cjs/src/pro/gate.js +1 -1
  257. package/dist/cjs/src/pro/gateio.js +1 -1
  258. package/dist/cjs/src/pro/gemini.js +1 -1
  259. package/dist/cjs/src/pro/hashkey.js +1 -1
  260. package/dist/cjs/src/pro/hitbtc.js +1 -1
  261. package/dist/cjs/src/pro/hollaex.js +1 -1
  262. package/dist/cjs/src/pro/htx.js +1 -1
  263. package/dist/cjs/src/pro/huobi.js +1 -1
  264. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  265. package/dist/cjs/src/pro/idex.js +1 -1
  266. package/dist/cjs/src/pro/independentreserve.js +1 -1
  267. package/dist/cjs/src/pro/kraken.js +1 -1
  268. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  269. package/dist/cjs/src/pro/kucoin.js +1 -1
  270. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  271. package/dist/cjs/src/pro/lbank.js +1 -0
  272. package/dist/cjs/src/pro/luno.js +1 -1
  273. package/dist/cjs/src/pro/mexc.js +1 -1
  274. package/dist/cjs/src/pro/myokx.js +1 -1
  275. package/dist/cjs/src/pro/ndax.js +1 -1
  276. package/dist/cjs/src/pro/okcoin.js +1 -1
  277. package/dist/cjs/src/pro/okx.js +1 -1
  278. package/dist/cjs/src/pro/onetrading.js +1 -1
  279. package/dist/cjs/src/pro/oxfun.js +1 -1
  280. package/dist/cjs/src/pro/p2b.js +1 -1
  281. package/dist/cjs/src/pro/paradex.js +1 -1
  282. package/dist/cjs/src/pro/phemex.js +1 -1
  283. package/dist/cjs/src/pro/poloniex.js +1 -1
  284. package/dist/cjs/src/pro/poloniexfutures.js +1 -1
  285. package/dist/cjs/src/pro/probit.js +1 -1
  286. package/dist/cjs/src/pro/upbit.js +1 -1
  287. package/dist/cjs/src/pro/wazirx.js +1 -1
  288. package/dist/cjs/src/pro/whitebit.js +1 -1
  289. package/dist/cjs/src/pro/xt.js +2 -2
  290. package/dist/cjs/src/probit.js +1 -1
  291. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +6 -0
  292. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  293. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +6 -0
  294. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -0
  295. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +1 -0
  296. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +1 -0
  297. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +1 -0
  298. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -0
  299. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +1 -0
  300. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +1 -0
  301. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +1 -0
  302. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +1 -0
  303. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +1 -0
  304. package/dist/cjs/src/static_dependencies/ethers/fragments.js +6 -0
  305. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +6 -0
  306. package/dist/cjs/src/static_dependencies/ethers/index.js +1 -10
  307. package/dist/cjs/src/static_dependencies/ethers/interface.js +6 -0
  308. package/dist/cjs/src/static_dependencies/ethers/typed.js +6 -0
  309. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +1 -13
  310. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +1 -6
  311. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +1 -9
  312. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +6 -0
  313. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +6 -0
  314. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -7
  315. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +1 -5
  316. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +6 -0
  317. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +1 -8
  318. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  319. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +1 -0
  320. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +1 -0
  321. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  322. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +6 -0
  323. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +6 -0
  324. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +6 -0
  325. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +1 -0
  326. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  327. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +6 -0
  328. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  329. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  330. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +6 -0
  331. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  332. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +6 -0
  333. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +6 -0
  334. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  335. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  336. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  337. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +1 -0
  338. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  339. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  340. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  341. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +6 -0
  342. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  343. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  344. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  345. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  346. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +6 -0
  347. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +1 -0
  348. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +6 -0
  349. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +6 -0
  350. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +1 -0
  351. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +1 -0
  352. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +1 -0
  353. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +1 -0
  354. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +1 -0
  355. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +1 -0
  356. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  357. package/dist/cjs/src/static_dependencies/node-fetch/body.js +1 -5
  358. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +1 -0
  359. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +6 -0
  360. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +1 -0
  361. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +1 -5
  362. package/dist/cjs/src/static_dependencies/node-fetch/index.js +1 -7
  363. package/dist/cjs/src/static_dependencies/node-fetch/request.js +1 -7
  364. package/dist/cjs/src/static_dependencies/node-fetch/response.js +1 -5
  365. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +6 -0
  366. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +6 -0
  367. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +6 -0
  368. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +1 -0
  369. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +1 -0
  370. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +1 -0
  371. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +1 -0
  372. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +6 -0
  373. package/dist/cjs/src/static_dependencies/scure-base/index.js +6 -0
  374. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  375. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  376. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +6 -0
  377. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +6 -0
  378. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +6 -0
  379. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +6 -0
  380. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +6 -0
  381. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +6 -0
  382. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  383. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  384. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  385. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +1 -0
  386. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +1 -0
  387. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +6 -0
  388. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +6 -0
  389. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +6 -0
  390. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +1 -0
  391. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  392. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +1 -0
  393. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +1 -0
  394. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +6 -0
  395. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +1 -0
  396. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +1 -0
  397. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +1 -0
  398. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  399. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +1 -4
  400. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +1 -0
  401. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +1 -3
  402. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +1 -0
  403. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +1 -0
  404. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +1 -0
  405. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +1 -0
  406. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  407. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +6 -0
  408. package/dist/cjs/src/timex.js +1 -0
  409. package/dist/cjs/src/tokocrypto.js +1 -1
  410. package/dist/cjs/src/tradeogre.js +1 -1
  411. package/dist/cjs/src/upbit.js +1 -1
  412. package/dist/cjs/src/vertex.js +1 -1
  413. package/dist/cjs/src/wavesexchange.js +1 -1
  414. package/dist/cjs/src/wazirx.js +1 -0
  415. package/dist/cjs/src/whitebit.js +3 -3
  416. package/dist/cjs/src/woo.js +2 -3
  417. package/dist/cjs/src/woofipro.js +2 -3
  418. package/dist/cjs/src/xt.js +1 -1
  419. package/dist/cjs/src/yobit.js +1 -1
  420. package/dist/cjs/src/zaif.js +1 -1
  421. package/dist/cjs/src/zonda.js +1 -1
  422. package/js/ccxt.d.ts +1 -1
  423. package/js/ccxt.js +1 -1
  424. package/js/src/abstract/binance.d.ts +1 -0
  425. package/js/src/abstract/binancecoinm.d.ts +1 -0
  426. package/js/src/abstract/binanceus.d.ts +1 -0
  427. package/js/src/abstract/binanceusdm.d.ts +1 -0
  428. package/js/src/abstract/bybit.d.ts +1 -0
  429. package/js/src/ace.js +58 -0
  430. package/js/src/alpaca.js +80 -0
  431. package/js/src/ascendex.js +95 -2
  432. package/js/src/base/Exchange.d.ts +2 -2
  433. package/js/src/base/Exchange.js +16 -14
  434. package/js/src/bigone.d.ts +1 -0
  435. package/js/src/bigone.js +116 -4
  436. package/js/src/binance.js +3 -4
  437. package/js/src/binanceus.js +10 -0
  438. package/js/src/bingx.js +1 -2
  439. package/js/src/bit2c.js +56 -0
  440. package/js/src/bitbank.js +58 -0
  441. package/js/src/bitbns.js +60 -0
  442. package/js/src/bitfinex.js +2 -3
  443. package/js/src/bitfinex1.d.ts +2 -1
  444. package/js/src/bitfinex1.js +11 -1
  445. package/js/src/bitflyer.js +71 -0
  446. package/js/src/bitget.js +1 -2
  447. package/js/src/bithumb.js +54 -0
  448. package/js/src/bitmex.js +1 -2
  449. package/js/src/bitopro.js +74 -0
  450. package/js/src/bitrue.d.ts +11 -16
  451. package/js/src/bitrue.js +97 -17
  452. package/js/src/bitso.js +59 -0
  453. package/js/src/bitteam.js +73 -0
  454. package/js/src/bitvavo.d.ts +3 -2
  455. package/js/src/bitvavo.js +68 -2
  456. package/js/src/bl3p.js +42 -0
  457. package/js/src/blockchaincom.js +66 -2
  458. package/js/src/blofin.js +87 -1
  459. package/js/src/btcalpha.js +73 -0
  460. package/js/src/btcbox.js +58 -0
  461. package/js/src/btcmarkets.js +73 -0
  462. package/js/src/btcturk.js +61 -0
  463. package/js/src/bybit.js +9 -3
  464. package/js/src/cex.js +57 -0
  465. package/js/src/coinbase.js +1 -1
  466. package/js/src/coinbaseexchange.js +76 -0
  467. package/js/src/coinex.js +1 -2
  468. package/js/src/delta.js +1 -2
  469. package/js/src/gate.js +3 -3
  470. package/js/src/hashkey.js +1 -2
  471. package/js/src/hollaex.js +1 -1
  472. package/js/src/htx.js +2 -4
  473. package/js/src/hyperliquid.js +5 -4
  474. package/js/src/krakenfutures.js +3 -0
  475. package/js/src/lbank.js +1 -2
  476. package/js/src/okx.js +13 -9
  477. package/js/src/oxfun.js +1 -2
  478. package/js/src/pro/bingx.js +3 -6
  479. package/js/src/pro/bitget.js +2 -5
  480. package/js/src/pro/xt.js +1 -1
  481. package/js/src/static_dependencies/qs/formats.d.cts +0 -6
  482. package/js/src/static_dependencies/qs/index.d.cts +0 -6
  483. package/js/src/static_dependencies/qs/parse.d.cts +0 -6
  484. package/js/src/static_dependencies/qs/stringify.d.cts +0 -6
  485. package/js/src/static_dependencies/qs/utils.d.cts +0 -6
  486. package/js/src/whitebit.js +2 -2
  487. package/js/src/woo.js +1 -2
  488. package/js/src/woofipro.js +1 -2
  489. package/package.json +12 -2
@@ -726,6 +726,7 @@ interface Exchange {
726
726
  papiGetUmSymbolConfig(params?: {}): Promise<implicitReturnType>;
727
727
  papiGetCmAccountConfig(params?: {}): Promise<implicitReturnType>;
728
728
  papiGetCmSymbolConfig(params?: {}): Promise<implicitReturnType>;
729
+ papiGetRateLimitOrder(params?: {}): Promise<implicitReturnType>;
729
730
  papiPostUmOrder(params?: {}): Promise<implicitReturnType>;
730
731
  papiPostUmConditionalOrder(params?: {}): Promise<implicitReturnType>;
731
732
  papiPostCmOrder(params?: {}): Promise<implicitReturnType>;
@@ -726,6 +726,7 @@ interface binance {
726
726
  papiGetUmSymbolConfig(params?: {}): Promise<implicitReturnType>;
727
727
  papiGetCmAccountConfig(params?: {}): Promise<implicitReturnType>;
728
728
  papiGetCmSymbolConfig(params?: {}): Promise<implicitReturnType>;
729
+ papiGetRateLimitOrder(params?: {}): Promise<implicitReturnType>;
729
730
  papiPostUmOrder(params?: {}): Promise<implicitReturnType>;
730
731
  papiPostUmConditionalOrder(params?: {}): Promise<implicitReturnType>;
731
732
  papiPostCmOrder(params?: {}): Promise<implicitReturnType>;
@@ -778,6 +778,7 @@ interface binance {
778
778
  papiGetUmSymbolConfig(params?: {}): Promise<implicitReturnType>;
779
779
  papiGetCmAccountConfig(params?: {}): Promise<implicitReturnType>;
780
780
  papiGetCmSymbolConfig(params?: {}): Promise<implicitReturnType>;
781
+ papiGetRateLimitOrder(params?: {}): Promise<implicitReturnType>;
781
782
  papiPostUmOrder(params?: {}): Promise<implicitReturnType>;
782
783
  papiPostUmConditionalOrder(params?: {}): Promise<implicitReturnType>;
783
784
  papiPostCmOrder(params?: {}): Promise<implicitReturnType>;
@@ -726,6 +726,7 @@ interface binance {
726
726
  papiGetUmSymbolConfig(params?: {}): Promise<implicitReturnType>;
727
727
  papiGetCmAccountConfig(params?: {}): Promise<implicitReturnType>;
728
728
  papiGetCmSymbolConfig(params?: {}): Promise<implicitReturnType>;
729
+ papiGetRateLimitOrder(params?: {}): Promise<implicitReturnType>;
729
730
  papiPostUmOrder(params?: {}): Promise<implicitReturnType>;
730
731
  papiPostUmConditionalOrder(params?: {}): Promise<implicitReturnType>;
731
732
  papiPostCmOrder(params?: {}): Promise<implicitReturnType>;
@@ -133,6 +133,7 @@ interface Exchange {
133
133
  privateGetV5AccountContractTransactionLog(params?: {}): Promise<implicitReturnType>;
134
134
  privateGetV5AccountSmpGroup(params?: {}): Promise<implicitReturnType>;
135
135
  privateGetV5AccountMmpState(params?: {}): Promise<implicitReturnType>;
136
+ privateGetV5AccountWithdrawal(params?: {}): Promise<implicitReturnType>;
136
137
  privateGetV5AssetExchangeQueryCoinList(params?: {}): Promise<implicitReturnType>;
137
138
  privateGetV5AssetExchangeConvertResultQuery(params?: {}): Promise<implicitReturnType>;
138
139
  privateGetV5AssetExchangeQueryConvertHistory(params?: {}): Promise<implicitReturnType>;
package/js/src/ace.js CHANGED
@@ -152,6 +152,64 @@ export default class ace extends Exchange {
152
152
  'options': {
153
153
  'brokerId': 'ccxt',
154
154
  },
155
+ 'features': {
156
+ 'spot': {
157
+ 'sandbox': false,
158
+ 'createOrder': {
159
+ 'marginMode': false,
160
+ 'triggerPrice': false,
161
+ 'triggerPriceType': undefined,
162
+ 'triggerDirection': false,
163
+ 'stopLossPrice': false,
164
+ 'takeProfitPrice': false,
165
+ 'attachedStopLossTakeProfit': undefined,
166
+ 'timeInForce': {
167
+ 'IOC': false,
168
+ 'FOK': false,
169
+ 'PO': false,
170
+ 'GTD': false,
171
+ },
172
+ 'hedged': false,
173
+ 'leverage': false,
174
+ 'marketBuyRequiresPrice': false,
175
+ 'marketBuyByCost': false,
176
+ 'selfTradePrevention': false,
177
+ 'trailing': false,
178
+ 'iceberg': false,
179
+ },
180
+ 'createOrders': undefined,
181
+ 'fetchMyTrades': {
182
+ 'marginMode': false,
183
+ 'limit': 500,
184
+ 'daysBack': undefined,
185
+ 'untilDays': undefined,
186
+ },
187
+ 'fetchOrder': {
188
+ 'marginMode': false,
189
+ 'trigger': false,
190
+ 'trailing': false,
191
+ },
192
+ 'fetchOpenOrders': {
193
+ 'marginMode': false,
194
+ 'limit': undefined,
195
+ 'trigger': false,
196
+ 'trailing': false,
197
+ },
198
+ 'fetchOrders': undefined,
199
+ 'fetchClosedOrders': undefined,
200
+ 'fetchOHLCV': {
201
+ 'limit': 2000,
202
+ },
203
+ },
204
+ 'swap': {
205
+ 'linear': undefined,
206
+ 'inverse': undefined,
207
+ },
208
+ 'future': {
209
+ 'linear': undefined,
210
+ 'inverse': undefined,
211
+ },
212
+ },
155
213
  'precisionMode': TICK_SIZE,
156
214
  'exceptions': {
157
215
  'exact': {
package/js/src/alpaca.js CHANGED
@@ -266,6 +266,86 @@ export default class alpaca extends Exchange {
266
266
  'defaultTimeInForce': 'gtc',
267
267
  'clientOrderId': 'ccxt_{id}',
268
268
  },
269
+ 'features': {
270
+ 'spot': {
271
+ 'sandbox': true,
272
+ 'createOrder': {
273
+ 'marginMode': false,
274
+ 'triggerPrice': true,
275
+ 'triggerPriceType': undefined,
276
+ 'triggerDirection': false,
277
+ 'stopLossPrice': false,
278
+ 'takeProfitPrice': false,
279
+ 'attachedStopLossTakeProfit': {
280
+ 'triggerPriceType': {
281
+ 'last': true,
282
+ 'mark': true,
283
+ 'index': true,
284
+ },
285
+ 'price': true,
286
+ },
287
+ 'timeInForce': {
288
+ 'IOC': true,
289
+ 'FOK': true,
290
+ 'PO': true,
291
+ 'GTD': false,
292
+ },
293
+ 'hedged': false,
294
+ 'trailing': true,
295
+ 'leverage': false,
296
+ 'marketBuyRequiresPrice': false,
297
+ 'marketBuyByCost': false,
298
+ 'selfTradePrevention': false,
299
+ 'iceberg': false,
300
+ },
301
+ 'createOrders': undefined,
302
+ 'fetchMyTrades': {
303
+ 'marginMode': false,
304
+ 'limit': 100,
305
+ 'daysBack': 100000,
306
+ 'untilDays': 100000,
307
+ },
308
+ 'fetchOrder': {
309
+ 'marginMode': false,
310
+ 'trigger': false,
311
+ 'trailing': false,
312
+ },
313
+ 'fetchOpenOrders': {
314
+ 'marginMode': false,
315
+ 'limit': 500,
316
+ 'trigger': false,
317
+ 'trailing': false,
318
+ },
319
+ 'fetchOrders': {
320
+ 'marginMode': false,
321
+ 'limit': 500,
322
+ 'daysBack': 100000,
323
+ 'untilDays': 100000,
324
+ 'trigger': false,
325
+ 'trailing': false,
326
+ },
327
+ 'fetchClosedOrders': {
328
+ 'marginMode': false,
329
+ 'limit': 500,
330
+ 'daysBack': 100000,
331
+ 'daysBackCanceled': undefined,
332
+ 'untilDays': 100000,
333
+ 'trigger': false,
334
+ 'trailing': false,
335
+ },
336
+ 'fetchOHLCV': {
337
+ 'limit': 1000,
338
+ },
339
+ },
340
+ 'swap': {
341
+ 'linear': undefined,
342
+ 'inverse': undefined,
343
+ },
344
+ 'future': {
345
+ 'linear': undefined,
346
+ 'inverse': undefined,
347
+ },
348
+ },
269
349
  'exceptions': {
270
350
  'exact': {
271
351
  'forbidden.': PermissionDenied,
@@ -298,6 +298,100 @@ export default class ascendex extends Exchange {
298
298
  'AKT': 'Akash',
299
299
  },
300
300
  },
301
+ 'features': {
302
+ 'default': {
303
+ 'sandbox': true,
304
+ 'createOrder': {
305
+ 'marginMode': true,
306
+ 'triggerPrice': true,
307
+ 'triggerPriceType': undefined,
308
+ 'triggerDirection': false,
309
+ 'stopLossPrice': false,
310
+ 'takeProfitPrice': false,
311
+ 'attachedStopLossTakeProfit': undefined,
312
+ 'timeInForce': {
313
+ 'IOC': true,
314
+ 'FOK': true,
315
+ 'PO': true,
316
+ 'GTD': false,
317
+ },
318
+ 'hedged': false,
319
+ 'trailing': false,
320
+ 'leverage': false,
321
+ 'marketBuyRequiresPrice': false,
322
+ 'marketBuyByCost': false,
323
+ 'selfTradePrevention': false,
324
+ 'iceberg': false,
325
+ },
326
+ 'createOrders': {
327
+ 'max': 10,
328
+ },
329
+ 'fetchMyTrades': undefined,
330
+ 'fetchOrder': {
331
+ 'marginMode': false,
332
+ 'trigger': false,
333
+ 'trailing': false,
334
+ 'marketType': true,
335
+ },
336
+ 'fetchOpenOrders': {
337
+ 'marginMode': false,
338
+ 'limit': undefined,
339
+ 'trigger': false,
340
+ 'trailing': false,
341
+ 'marketType': true,
342
+ },
343
+ 'fetchOrders': undefined,
344
+ 'fetchClosedOrders': undefined,
345
+ 'fetchOHLCV': {
346
+ 'limit': 500,
347
+ },
348
+ },
349
+ 'spot': {
350
+ 'extends': 'default',
351
+ 'fetchClosedOrders': {
352
+ 'marginMode': false,
353
+ 'limit': 1000,
354
+ 'daysBack': 100000,
355
+ 'daysBackCanceled': 1,
356
+ 'untilDays': 100000,
357
+ 'trigger': false,
358
+ 'trailing': false,
359
+ },
360
+ },
361
+ 'forDerivatives': {
362
+ 'extends': 'default',
363
+ 'createOrder': {
364
+ // todo: implementation
365
+ 'attachedStopLossTakeProfit': {
366
+ 'triggerPriceType': {
367
+ 'last': true,
368
+ 'mark': false,
369
+ 'index': false,
370
+ },
371
+ 'price': false,
372
+ },
373
+ },
374
+ 'fetchClosedOrders': {
375
+ 'marginMode': false,
376
+ 'limit': 1000,
377
+ 'daysBack': undefined,
378
+ 'daysBackCanceled': undefined,
379
+ 'untilDays': undefined,
380
+ 'trigger': false,
381
+ 'trailing': false,
382
+ },
383
+ },
384
+ 'swap': {
385
+ 'linear': {
386
+ 'extends': 'forDerivatives',
387
+ },
388
+ 'inverse': undefined,
389
+ },
390
+ 'future': {
391
+ 'linear': undefined,
392
+ 'inverse': undefined,
393
+ },
394
+ },
301
395
  'exceptions': {
302
396
  'exact': {
303
397
  // not documented
@@ -2856,8 +2950,7 @@ export default class ascendex extends Exchange {
2856
2950
  //
2857
2951
  const data = this.safeDict(response, 'data', {});
2858
2952
  const contracts = this.safeList(data, 'contracts', []);
2859
- const result = this.parseFundingRates(contracts);
2860
- return this.filterByArray(result, 'symbol', symbols);
2953
+ return this.parseFundingRates(contracts, symbols);
2861
2954
  }
2862
2955
  async modifyMarginHelper(symbol, amount, type, params = {}) {
2863
2956
  await this.loadMarkets();
@@ -1125,8 +1125,7 @@ export default class Exchange {
1125
1125
  parseFundingRateHistories(response: any, market?: any, since?: Int, limit?: Int): FundingRateHistory[];
1126
1126
  safeSymbol(marketId: Str, market?: Market, delimiter?: Str, marketType?: Str): string;
1127
1127
  parseFundingRate(contract: string, market?: Market): FundingRate;
1128
- parseFundingRates(response: any, market?: Market): FundingRates;
1129
- parseOpenInterests(response: any, market?: Market): OpenInterests;
1128
+ parseFundingRates(response: any, symbols?: Strings): FundingRates;
1130
1129
  parseLongShortRatio(info: Dict, market?: Market): LongShortRatio;
1131
1130
  parseLongShortRatioHistory(response: any, market?: any, since?: Int, limit?: Int): LongShortRatio[];
1132
1131
  handleTriggerAndParams(params: any): any[];
@@ -1139,6 +1138,7 @@ export default class Exchange {
1139
1138
  fetchTradingFee(symbol: string, params?: {}): Promise<TradingFeeInterface>;
1140
1139
  fetchConvertCurrencies(params?: {}): Promise<Currencies>;
1141
1140
  parseOpenInterest(interest: any, market?: Market): OpenInterest;
1141
+ parseOpenInterests(response: any, symbols?: Strings): OpenInterests;
1142
1142
  parseOpenInterestsHistory(response: any, market?: any, since?: Int, limit?: Int): OpenInterest[];
1143
1143
  fetchFundingRate(symbol: string, params?: {}): Promise<FundingRate>;
1144
1144
  fetchFundingInterval(symbol: string, params?: {}): Promise<FundingRate>;
@@ -79,7 +79,7 @@ export default class Exchange {
79
79
  this.requiresWeb3 = false;
80
80
  this.requiresEddsa = false;
81
81
  this.precision = undefined;
82
- this.enableLastJsonResponse = true;
82
+ this.enableLastJsonResponse = false;
83
83
  this.enableLastHttpResponse = true;
84
84
  this.enableLastResponseHeaders = true;
85
85
  this.last_http_response = undefined;
@@ -5717,21 +5717,14 @@ export default class Exchange {
5717
5717
  parseFundingRate(contract, market = undefined) {
5718
5718
  throw new NotSupported(this.id + ' parseFundingRate() is not supported yet');
5719
5719
  }
5720
- parseFundingRates(response, market = undefined) {
5721
- const result = {};
5720
+ parseFundingRates(response, symbols = undefined) {
5721
+ const fundingRates = {};
5722
5722
  for (let i = 0; i < response.length; i++) {
5723
- const parsed = this.parseFundingRate(response[i], market);
5724
- result[parsed['symbol']] = parsed;
5725
- }
5726
- return result;
5727
- }
5728
- parseOpenInterests(response, market = undefined) {
5729
- const result = {};
5730
- for (let i = 0; i < response.length; i++) {
5731
- const parsed = this.parseOpenInterest(response[i], market);
5732
- result[parsed['symbol']] = parsed;
5723
+ const entry = response[i];
5724
+ const parsed = this.parseFundingRate(entry);
5725
+ fundingRates[parsed['symbol']] = parsed;
5733
5726
  }
5734
- return result;
5727
+ return this.filterByArray(fundingRates, 'symbol', symbols);
5735
5728
  }
5736
5729
  parseLongShortRatio(info, market = undefined) {
5737
5730
  throw new NotSupported(this.id + ' parseLongShortRatio() is not supported yet');
@@ -5842,6 +5835,15 @@ export default class Exchange {
5842
5835
  parseOpenInterest(interest, market = undefined) {
5843
5836
  throw new NotSupported(this.id + ' parseOpenInterest () is not supported yet');
5844
5837
  }
5838
+ parseOpenInterests(response, symbols = undefined) {
5839
+ const result = {};
5840
+ for (let i = 0; i < response.length; i++) {
5841
+ const entry = response[i];
5842
+ const parsed = this.parseOpenInterest(entry);
5843
+ result[parsed['symbol']] = parsed;
5844
+ }
5845
+ return this.filterByArray(result, 'symbol', symbols);
5846
+ }
5845
5847
  parseOpenInterestsHistory(response, market = undefined, since = undefined, limit = undefined) {
5846
5848
  const interests = [];
5847
5849
  for (let i = 0; i < response.length; i++) {
@@ -90,6 +90,7 @@ export default class bigone extends Exchange {
90
90
  * @param {int} [since] timestamp in ms of the earliest candle to fetch
91
91
  * @param {int} [limit] the maximum amount of candles to fetch
92
92
  * @param {object} [params] extra parameters specific to the exchange API endpoint
93
+ * @param {int} [params.until] timestamp in ms of the earliest candle to fetch
93
94
  * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
94
95
  */
95
96
  fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
package/js/src/bigone.js CHANGED
@@ -299,6 +299,105 @@ export default class bigone extends Exchange {
299
299
  // undetermined: XinFin, YAS, Ycash
300
300
  },
301
301
  },
302
+ 'features': {
303
+ 'default': {
304
+ 'sandbox': false,
305
+ 'createOrder': {
306
+ 'marginMode': false,
307
+ 'triggerPrice': true,
308
+ 'triggerPriceType': undefined,
309
+ 'triggerDirection': true,
310
+ 'stopLossPrice': false,
311
+ 'takeProfitPrice': false,
312
+ 'attachedStopLossTakeProfit': undefined,
313
+ 'timeInForce': {
314
+ 'IOC': true,
315
+ 'FOK': false,
316
+ 'PO': true,
317
+ 'GTD': false,
318
+ },
319
+ 'hedged': false,
320
+ 'trailing': false,
321
+ 'leverage': false,
322
+ 'marketBuyRequiresPrice': true,
323
+ 'marketBuyByCost': true,
324
+ 'selfTradePrevention': false,
325
+ 'iceberg': false,
326
+ },
327
+ 'createOrders': undefined,
328
+ 'fetchMyTrades': {
329
+ 'marginMode': false,
330
+ 'limit': 200,
331
+ 'daysBack': undefined,
332
+ 'untilDays': undefined,
333
+ },
334
+ 'fetchOrder': {
335
+ 'marginMode': false,
336
+ 'trigger': false,
337
+ 'trailing': false,
338
+ },
339
+ 'fetchOpenOrders': {
340
+ 'marginMode': false,
341
+ 'limit': 200,
342
+ 'trigger': false,
343
+ 'trailing': false,
344
+ },
345
+ 'fetchOrders': {
346
+ 'marginMode': false,
347
+ 'limit': 200,
348
+ 'daysBack': undefined,
349
+ 'untilDays': undefined,
350
+ 'trigger': false,
351
+ 'trailing': false,
352
+ },
353
+ 'fetchClosedOrders': {
354
+ 'marginMode': false,
355
+ 'limit': 200,
356
+ 'daysBack': undefined,
357
+ 'daysBackCanceled': undefined,
358
+ 'untilDays': undefined,
359
+ 'trigger': false,
360
+ 'trailing': false,
361
+ },
362
+ 'fetchOHLCV': {
363
+ 'limit': 500,
364
+ },
365
+ },
366
+ 'spot': {
367
+ 'extends': 'default',
368
+ },
369
+ 'forDerivatives': {
370
+ 'extends': 'default',
371
+ 'createOrder': {
372
+ // todo: implement
373
+ 'triggerPriceType': {
374
+ 'mark': true,
375
+ 'index': true,
376
+ 'last': true,
377
+ },
378
+ },
379
+ 'fetchOrders': {
380
+ 'daysBack': 100000,
381
+ 'untilDays': 100000,
382
+ },
383
+ 'fetchClosedOrders': {
384
+ 'daysBack': 100000,
385
+ 'untilDays': 100000,
386
+ },
387
+ },
388
+ 'swap': {
389
+ 'linear': {
390
+ 'extends': 'forDerivatives',
391
+ },
392
+ 'inverse': {
393
+ 'extends': 'forDerivatives',
394
+ },
395
+ },
396
+ 'future': {
397
+ 'linear': undefined,
398
+ 'inverse': undefined,
399
+ },
400
+ },
302
401
  'precisionMode': TICK_SIZE,
303
402
  'exceptions': {
304
403
  'exact': {
@@ -1205,6 +1304,7 @@ export default class bigone extends Exchange {
1205
1304
  * @param {int} [since] timestamp in ms of the earliest candle to fetch
1206
1305
  * @param {int} [limit] the maximum amount of candles to fetch
1207
1306
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1307
+ * @param {int} [params.until] timestamp in ms of the earliest candle to fetch
1208
1308
  * @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
1209
1309
  */
1210
1310
  async fetchOHLCV(symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) {
@@ -1213,20 +1313,32 @@ export default class bigone extends Exchange {
1213
1313
  if (market['contract']) {
1214
1314
  throw new BadRequest(this.id + ' fetchOHLCV () can only fetch ohlcvs for spot markets');
1215
1315
  }
1316
+ const until = this.safeInteger(params, 'until');
1317
+ const untilIsDefined = (until !== undefined);
1318
+ const sinceIsDefined = (since !== undefined);
1216
1319
  if (limit === undefined) {
1217
- limit = 100; // default 100, max 500
1320
+ limit = (sinceIsDefined && untilIsDefined) ? 500 : 100; // default 100, max 500, if since and limit defined then fetch all the candles between them unless it exceeds the max of 500
1218
1321
  }
1219
1322
  const request = {
1220
1323
  'asset_pair_name': market['id'],
1221
1324
  'period': this.safeString(this.timeframes, timeframe, timeframe),
1222
1325
  'limit': limit,
1223
1326
  };
1224
- if (since !== undefined) {
1327
+ if (sinceIsDefined) {
1225
1328
  // const start = this.parseToInt (since / 1000);
1226
1329
  const duration = this.parseTimeframe(timeframe);
1227
- const end = this.sum(since, limit * duration * 1000);
1228
- request['time'] = this.iso8601(end);
1330
+ const endByLimit = this.sum(since, limit * duration * 1000);
1331
+ if (untilIsDefined) {
1332
+ request['time'] = this.iso8601(Math.min(endByLimit, until + 1));
1333
+ }
1334
+ else {
1335
+ request['time'] = this.iso8601(endByLimit);
1336
+ }
1337
+ }
1338
+ else if (untilIsDefined) {
1339
+ request['time'] = this.iso8601(until + 1);
1229
1340
  }
1341
+ params = this.omit(params, 'until');
1230
1342
  const response = await this.publicGetAssetPairsAssetPairNameCandles(this.extend(request, params));
1231
1343
  //
1232
1344
  // {
package/js/src/binance.js CHANGED
@@ -1128,6 +1128,7 @@ export default class binance extends Exchange {
1128
1128
  'um/symbolConfig': 1,
1129
1129
  'cm/accountConfig': 1,
1130
1130
  'cm/symbolConfig': 1,
1131
+ 'rateLimit/order': 1,
1131
1132
  },
1132
1133
  'post': {
1133
1134
  'um/order': 1,
@@ -9916,8 +9917,7 @@ export default class binance extends Exchange {
9916
9917
  else {
9917
9918
  throw new NotSupported(this.id + ' fetchFundingRates() supports linear and inverse contracts only');
9918
9919
  }
9919
- const result = this.parseFundingRates(response);
9920
- return this.filterByArray(result, 'symbol', symbols);
9920
+ return this.parseFundingRates(response, symbols);
9921
9921
  }
9922
9922
  parseFundingRate(contract, market = undefined) {
9923
9923
  // ensure it matches with https://www.binance.com/en/futures/funding-history/0
@@ -14195,8 +14195,7 @@ export default class binance extends Exchange {
14195
14195
  // },
14196
14196
  // ]
14197
14197
  //
14198
- const result = this.parseFundingRates(response, market);
14199
- return this.filterByArray(result, 'symbol', symbols);
14198
+ return this.parseFundingRates(response, symbols);
14200
14199
  }
14201
14200
  /**
14202
14201
  * @method
@@ -208,6 +208,16 @@ export default class binanceus extends binance {
208
208
  },
209
209
  },
210
210
  },
211
+ 'features': {
212
+ 'swap': {
213
+ 'linear': undefined,
214
+ 'inverse': undefined,
215
+ },
216
+ 'future': {
217
+ 'linear': undefined,
218
+ 'inverse': undefined,
219
+ },
220
+ },
211
221
  });
212
222
  }
213
223
  }
package/js/src/bingx.js CHANGED
@@ -1570,8 +1570,7 @@ export default class bingx extends Exchange {
1570
1570
  symbols = this.marketSymbols(symbols, 'swap', true);
1571
1571
  const response = await this.swapV2PublicGetQuotePremiumIndex(this.extend(params));
1572
1572
  const data = this.safeList(response, 'data', []);
1573
- const result = this.parseFundingRates(data);
1574
- return this.filterByArray(result, 'symbol', symbols);
1573
+ return this.parseFundingRates(data, symbols);
1575
1574
  }
1576
1575
  parseFundingRate(contract, market = undefined) {
1577
1576
  //
package/js/src/bit2c.js CHANGED
@@ -173,6 +173,62 @@ export default class bit2c extends Exchange {
173
173
  'options': {
174
174
  'fetchTradesMethod': 'public_get_exchanges_pair_trades',
175
175
  },
176
+ 'features': {
177
+ 'spot': {
178
+ 'sandbox': false,
179
+ 'createOrder': {
180
+ 'marginMode': false,
181
+ 'triggerPrice': false,
182
+ 'triggerPriceType': undefined,
183
+ 'triggerDirection': false,
184
+ 'stopLossPrice': false,
185
+ 'takeProfitPrice': false,
186
+ 'attachedStopLossTakeProfit': undefined,
187
+ 'timeInForce': {
188
+ 'IOC': false,
189
+ 'FOK': false,
190
+ 'PO': false,
191
+ 'GTD': false,
192
+ },
193
+ 'hedged': false,
194
+ 'trailing': false,
195
+ 'leverage': false,
196
+ 'marketBuyRequiresPrice': false,
197
+ 'marketBuyByCost': false,
198
+ 'selfTradePrevention': false,
199
+ 'iceberg': false,
200
+ },
201
+ 'createOrders': undefined,
202
+ 'fetchMyTrades': {
203
+ 'marginMode': false,
204
+ 'limit': 100,
205
+ 'daysBack': 30,
206
+ 'untilDays': 30,
207
+ },
208
+ 'fetchOrder': {
209
+ 'marginMode': false,
210
+ 'trigger': false,
211
+ 'trailing': false,
212
+ },
213
+ 'fetchOpenOrders': {
214
+ 'marginMode': false,
215
+ 'limit': undefined,
216
+ 'trigger': false,
217
+ 'trailing': false,
218
+ },
219
+ 'fetchOrders': undefined,
220
+ 'fetchClosedOrders': undefined,
221
+ 'fetchOHLCV': undefined,
222
+ },
223
+ 'swap': {
224
+ 'linear': undefined,
225
+ 'inverse': undefined,
226
+ },
227
+ 'future': {
228
+ 'linear': undefined,
229
+ 'inverse': undefined,
230
+ },
231
+ },
176
232
  'precisionMode': TICK_SIZE,
177
233
  'exceptions': {
178
234
  'exact': {