ccxt 4.5.37 → 4.5.39

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 (497) hide show
  1. package/README.md +5 -7
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +1 -6
  4. package/dist/cjs/src/abstract/alp.js +1 -1
  5. package/dist/cjs/src/abstract/alpaca.js +1 -1
  6. package/dist/cjs/src/abstract/apex.js +1 -1
  7. package/dist/cjs/src/abstract/arkham.js +1 -1
  8. package/dist/cjs/src/abstract/ascendex.js +1 -1
  9. package/dist/cjs/src/abstract/aster.js +1 -1
  10. package/dist/cjs/src/abstract/backpack.js +1 -1
  11. package/dist/cjs/src/abstract/bigone.js +1 -1
  12. package/dist/cjs/src/abstract/binance.js +1 -1
  13. package/dist/cjs/src/abstract/bingx.js +1 -1
  14. package/dist/cjs/src/abstract/bit2c.js +1 -1
  15. package/dist/cjs/src/abstract/bitbank.js +1 -1
  16. package/dist/cjs/src/abstract/bitbns.js +1 -1
  17. package/dist/cjs/src/abstract/bitfinex.js +1 -1
  18. package/dist/cjs/src/abstract/bitflyer.js +1 -1
  19. package/dist/cjs/src/abstract/bitget.js +1 -1
  20. package/dist/cjs/src/abstract/bithumb.js +1 -1
  21. package/dist/cjs/src/abstract/bitmart.js +1 -1
  22. package/dist/cjs/src/abstract/bitmex.js +1 -1
  23. package/dist/cjs/src/abstract/bitopro.js +1 -1
  24. package/dist/cjs/src/abstract/bitrue.js +1 -1
  25. package/dist/cjs/src/abstract/bitso.js +1 -1
  26. package/dist/cjs/src/abstract/bitstamp.js +1 -1
  27. package/dist/cjs/src/abstract/bitteam.js +1 -1
  28. package/dist/cjs/src/abstract/bittrade.js +1 -1
  29. package/dist/cjs/src/abstract/bitvavo.js +1 -1
  30. package/dist/cjs/src/abstract/blockchaincom.js +1 -1
  31. package/dist/cjs/src/abstract/blofin.js +1 -1
  32. package/dist/cjs/src/abstract/btcbox.js +1 -1
  33. package/dist/cjs/src/abstract/btcmarkets.js +1 -1
  34. package/dist/cjs/src/abstract/btcturk.js +1 -1
  35. package/dist/cjs/src/abstract/bullish.js +1 -1
  36. package/dist/cjs/src/abstract/bybit.js +1 -1
  37. package/dist/cjs/src/abstract/bydfi.js +1 -1
  38. package/dist/cjs/src/abstract/cex.js +1 -1
  39. package/dist/cjs/src/abstract/coinbase.js +1 -1
  40. package/dist/cjs/src/abstract/coinbaseexchange.js +1 -1
  41. package/dist/cjs/src/abstract/coinbaseinternational.js +1 -1
  42. package/dist/cjs/src/abstract/coincatch.js +1 -1
  43. package/dist/cjs/src/abstract/coincheck.js +1 -1
  44. package/dist/cjs/src/abstract/coinex.js +1 -1
  45. package/dist/cjs/src/abstract/coinmate.js +1 -1
  46. package/dist/cjs/src/abstract/coinmetro.js +1 -1
  47. package/dist/cjs/src/abstract/coinone.js +1 -1
  48. package/dist/cjs/src/abstract/coinsph.js +1 -1
  49. package/dist/cjs/src/abstract/coinspot.js +1 -1
  50. package/dist/cjs/src/abstract/cryptocom.js +1 -1
  51. package/dist/cjs/src/abstract/cryptomus.js +1 -1
  52. package/dist/cjs/src/abstract/deepcoin.js +1 -1
  53. package/dist/cjs/src/abstract/defx.js +1 -1
  54. package/dist/cjs/src/abstract/delta.js +1 -1
  55. package/dist/cjs/src/abstract/deribit.js +1 -1
  56. package/dist/cjs/src/abstract/derive.js +1 -1
  57. package/dist/cjs/src/abstract/digifinex.js +1 -1
  58. package/dist/cjs/src/abstract/dydx.js +1 -1
  59. package/dist/cjs/src/abstract/exmo.js +1 -1
  60. package/dist/cjs/src/abstract/foxbit.js +1 -1
  61. package/dist/cjs/src/abstract/gate.js +1 -1
  62. package/dist/cjs/src/abstract/gemini.js +1 -1
  63. package/dist/cjs/src/abstract/hashkey.js +1 -1
  64. package/dist/cjs/src/abstract/hibachi.js +1 -1
  65. package/dist/cjs/src/abstract/hitbtc.js +1 -1
  66. package/dist/cjs/src/abstract/hollaex.js +1 -1
  67. package/dist/cjs/src/abstract/htx.js +1 -1
  68. package/dist/cjs/src/abstract/hyperliquid.js +1 -1
  69. package/dist/cjs/src/abstract/independentreserve.js +1 -1
  70. package/dist/cjs/src/abstract/indodax.js +1 -1
  71. package/dist/cjs/src/abstract/kraken.js +1 -1
  72. package/dist/cjs/src/abstract/krakenfutures.js +1 -1
  73. package/dist/cjs/src/abstract/kucoin.js +1 -1
  74. package/dist/cjs/src/abstract/kucoinfutures.js +1 -1
  75. package/dist/cjs/src/abstract/latoken.js +1 -1
  76. package/dist/cjs/src/abstract/lbank.js +1 -1
  77. package/dist/cjs/src/abstract/luno.js +1 -1
  78. package/dist/cjs/src/abstract/mercado.js +1 -1
  79. package/dist/cjs/src/abstract/mexc.js +1 -1
  80. package/dist/cjs/src/abstract/modetrade.js +1 -1
  81. package/dist/cjs/src/abstract/ndax.js +1 -1
  82. package/dist/cjs/src/abstract/novadax.js +1 -1
  83. package/dist/cjs/src/abstract/okx.js +1 -1
  84. package/dist/cjs/src/abstract/onetrading.js +1 -1
  85. package/dist/cjs/src/abstract/oxfun.js +1 -1
  86. package/dist/cjs/src/abstract/p2b.js +1 -1
  87. package/dist/cjs/src/abstract/paradex.js +1 -1
  88. package/dist/cjs/src/abstract/paymium.js +1 -1
  89. package/dist/cjs/src/abstract/phemex.js +1 -1
  90. package/dist/cjs/src/abstract/poloniex.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/toobit.js +1 -1
  94. package/dist/cjs/src/abstract/upbit.js +1 -1
  95. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  96. package/dist/cjs/src/abstract/whitebit.js +1 -1
  97. package/dist/cjs/src/abstract/woo.js +1 -1
  98. package/dist/cjs/src/abstract/woofipro.js +1 -1
  99. package/dist/cjs/src/abstract/xt.js +1 -1
  100. package/dist/cjs/src/abstract/yobit.js +1 -1
  101. package/dist/cjs/src/abstract/zaif.js +1 -1
  102. package/dist/cjs/src/abstract/zebpay.js +1 -1
  103. package/dist/cjs/src/abstract/zonda.js +1 -1
  104. package/dist/cjs/src/alp.js +1 -1
  105. package/dist/cjs/src/alpaca.js +1 -1
  106. package/dist/cjs/src/apex.js +1 -1
  107. package/dist/cjs/src/arkham.js +1 -1
  108. package/dist/cjs/src/ascendex.js +1 -1
  109. package/dist/cjs/src/aster.js +1 -1
  110. package/dist/cjs/src/backpack.js +1 -1
  111. package/dist/cjs/src/base/Precise.js +0 -6
  112. package/dist/cjs/src/base/errors.js +0 -6
  113. package/dist/cjs/src/base/functions/crypto.js +1 -1
  114. package/dist/cjs/src/base/functions/encode.js +1 -1
  115. package/dist/cjs/src/base/functions/misc.js +0 -1
  116. package/dist/cjs/src/base/functions/number.js +0 -6
  117. package/dist/cjs/src/base/functions/platform.js +0 -6
  118. package/dist/cjs/src/base/functions/rsa.js +0 -1
  119. package/dist/cjs/src/base/functions/string.js +0 -6
  120. package/dist/cjs/src/base/functions/throttle.js +1 -1
  121. package/dist/cjs/src/base/functions/time.js +0 -6
  122. package/dist/cjs/src/base/functions/totp.js +0 -1
  123. package/dist/cjs/src/base/functions/type.js +0 -6
  124. package/dist/cjs/src/base/functions.js +1 -1
  125. package/dist/cjs/src/base/ws/Cache.js +0 -6
  126. package/dist/cjs/src/base/ws/Client.js +0 -1
  127. package/dist/cjs/src/base/ws/Future.js +1 -1
  128. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  129. package/dist/cjs/src/base/ws/OrderBookSide.js +0 -6
  130. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  131. package/dist/cjs/src/bequant.js +1 -1
  132. package/dist/cjs/src/bigone.js +1 -1
  133. package/dist/cjs/src/binance.js +10 -3
  134. package/dist/cjs/src/binancecoinm.js +1 -1
  135. package/dist/cjs/src/binanceus.js +1 -1
  136. package/dist/cjs/src/binanceusdm.js +1 -1
  137. package/dist/cjs/src/bingx.js +1 -1
  138. package/dist/cjs/src/bit2c.js +1 -1
  139. package/dist/cjs/src/bitbank.js +1 -1
  140. package/dist/cjs/src/bitbns.js +1 -1
  141. package/dist/cjs/src/bitfinex.js +1 -1
  142. package/dist/cjs/src/bitflyer.js +1 -1
  143. package/dist/cjs/src/bitget.js +48 -2
  144. package/dist/cjs/src/bithumb.js +1 -1
  145. package/dist/cjs/src/bitmart.js +4 -3
  146. package/dist/cjs/src/bitmex.js +20 -4
  147. package/dist/cjs/src/bitopro.js +1 -1
  148. package/dist/cjs/src/bitrue.js +1 -1
  149. package/dist/cjs/src/bitso.js +1 -1
  150. package/dist/cjs/src/bitstamp.js +273 -43
  151. package/dist/cjs/src/bitteam.js +1 -1
  152. package/dist/cjs/src/bittrade.js +1 -1
  153. package/dist/cjs/src/bitvavo.js +10 -0
  154. package/dist/cjs/src/blockchaincom.js +1 -1
  155. package/dist/cjs/src/blofin.js +1 -1
  156. package/dist/cjs/src/btcbox.js +1 -1
  157. package/dist/cjs/src/btcmarkets.js +2 -2
  158. package/dist/cjs/src/btcturk.js +1 -1
  159. package/dist/cjs/src/bullish.js +1 -1
  160. package/dist/cjs/src/bybit.js +2 -2
  161. package/dist/cjs/src/bydfi.js +1 -1
  162. package/dist/cjs/src/cex.js +1 -1
  163. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  164. package/dist/cjs/src/coincatch.js +1 -1
  165. package/dist/cjs/src/coincheck.js +1 -1
  166. package/dist/cjs/src/coinex.js +1 -1
  167. package/dist/cjs/src/coinmate.js +1 -1
  168. package/dist/cjs/src/coinmetro.js +1 -1
  169. package/dist/cjs/src/coinone.js +1 -1
  170. package/dist/cjs/src/coinsph.js +0 -1
  171. package/dist/cjs/src/coinspot.js +78 -8
  172. package/dist/cjs/src/cryptocom.js +1 -1
  173. package/dist/cjs/src/cryptomus.js +1 -1
  174. package/dist/cjs/src/deepcoin.js +1 -1
  175. package/dist/cjs/src/defx.js +1 -1
  176. package/dist/cjs/src/delta.js +1 -1
  177. package/dist/cjs/src/deribit.js +1 -1
  178. package/dist/cjs/src/derive.js +1 -1
  179. package/dist/cjs/src/digifinex.js +1 -1
  180. package/dist/cjs/src/dydx.js +1 -1
  181. package/dist/cjs/src/exmo.js +1 -1
  182. package/dist/cjs/src/fmfwio.js +1 -1
  183. package/dist/cjs/src/foxbit.js +1 -1
  184. package/dist/cjs/src/gate.js +5 -3
  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 +1 -1
  188. package/dist/cjs/src/hibachi.js +1 -1
  189. package/dist/cjs/src/hitbtc.js +0 -1
  190. package/dist/cjs/src/hollaex.js +1 -1
  191. package/dist/cjs/src/htx.js +1 -1
  192. package/dist/cjs/src/huobi.js +1 -1
  193. package/dist/cjs/src/hyperliquid.js +43 -10
  194. package/dist/cjs/src/independentreserve.js +1 -1
  195. package/dist/cjs/src/indodax.js +1 -1
  196. package/dist/cjs/src/kraken.js +1 -1
  197. package/dist/cjs/src/krakenfutures.js +74 -2
  198. package/dist/cjs/src/kucoin.js +1 -1
  199. package/dist/cjs/src/kucoinfutures.js +1 -1
  200. package/dist/cjs/src/latoken.js +1 -1
  201. package/dist/cjs/src/lbank.js +1 -1
  202. package/dist/cjs/src/luno.js +1 -1
  203. package/dist/cjs/src/mercado.js +1 -1
  204. package/dist/cjs/src/mexc.js +1 -1
  205. package/dist/cjs/src/modetrade.js +1 -1
  206. package/dist/cjs/src/myokx.js +1 -1
  207. package/dist/cjs/src/ndax.js +1 -1
  208. package/dist/cjs/src/novadax.js +1 -1
  209. package/dist/cjs/src/okx.js +1 -1
  210. package/dist/cjs/src/okxus.js +1 -1
  211. package/dist/cjs/src/onetrading.js +1 -1
  212. package/dist/cjs/src/oxfun.js +1 -1
  213. package/dist/cjs/src/p2b.js +1 -1
  214. package/dist/cjs/src/paradex.js +1 -1
  215. package/dist/cjs/src/paymium.js +1 -1
  216. package/dist/cjs/src/poloniex.js +1 -1
  217. package/dist/cjs/src/pro/alpaca.js +1 -1
  218. package/dist/cjs/src/pro/apex.js +1 -1
  219. package/dist/cjs/src/pro/arkham.js +1 -1
  220. package/dist/cjs/src/pro/ascendex.js +1 -1
  221. package/dist/cjs/src/pro/aster.js +12 -3
  222. package/dist/cjs/src/pro/backpack.js +1 -1
  223. package/dist/cjs/src/pro/bequant.js +1 -1
  224. package/dist/cjs/src/pro/binance.js +115 -28
  225. package/dist/cjs/src/pro/binancecoinm.js +1 -1
  226. package/dist/cjs/src/pro/binanceus.js +1 -1
  227. package/dist/cjs/src/pro/binanceusdm.js +1 -1
  228. package/dist/cjs/src/pro/bingx.js +1 -1
  229. package/dist/cjs/src/pro/bitfinex.js +1 -1
  230. package/dist/cjs/src/pro/bitget.js +1 -1
  231. package/dist/cjs/src/pro/bithumb.js +1 -1
  232. package/dist/cjs/src/pro/bitmart.js +1 -1
  233. package/dist/cjs/src/pro/bitmex.js +3 -2
  234. package/dist/cjs/src/pro/bitrue.js +1 -1
  235. package/dist/cjs/src/pro/bitstamp.js +1 -1
  236. package/dist/cjs/src/pro/bitvavo.js +1 -1
  237. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  238. package/dist/cjs/src/pro/blofin.js +1 -1
  239. package/dist/cjs/src/pro/bullish.js +1 -1
  240. package/dist/cjs/src/pro/bybit.js +7 -5
  241. package/dist/cjs/src/pro/bydfi.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/deepcoin.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/dydx.js +1 -1
  256. package/dist/cjs/src/pro/exmo.js +1 -1
  257. package/dist/cjs/src/pro/gate.js +3 -2
  258. package/dist/cjs/src/pro/gateio.js +1 -1
  259. package/dist/cjs/src/pro/gemini.js +1 -1
  260. package/dist/cjs/src/pro/hashkey.js +1 -1
  261. package/dist/cjs/src/pro/hitbtc.js +1 -1
  262. package/dist/cjs/src/pro/hollaex.js +1 -1
  263. package/dist/cjs/src/pro/htx.js +1 -1
  264. package/dist/cjs/src/pro/huobi.js +1 -1
  265. package/dist/cjs/src/pro/hyperliquid.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 +0 -1
  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/okx.js +6 -4
  277. package/dist/cjs/src/pro/okxus.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/toobit.js +1 -1
  285. package/dist/cjs/src/pro/upbit.js +1 -1
  286. package/dist/cjs/src/pro/whitebit.js +1 -1
  287. package/dist/cjs/src/pro/xt.js +1 -1
  288. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +1 -0
  289. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +0 -1
  290. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +0 -1
  291. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +0 -1
  292. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +0 -1
  293. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +0 -1
  294. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +0 -1
  295. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +0 -1
  296. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +0 -1
  297. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +0 -1
  298. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +0 -1
  299. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +0 -1
  300. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +0 -1
  301. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +0 -1
  302. package/dist/cjs/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +0 -1
  303. package/dist/cjs/src/static_dependencies/dydx-v4-client/helpers.js +0 -6
  304. package/dist/cjs/src/static_dependencies/dydx-v4-client/onboarding.js +0 -1
  305. package/dist/cjs/src/static_dependencies/dydx-v4-client/registry.js +0 -1
  306. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
  307. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  308. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  309. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
  310. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
  311. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
  312. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
  313. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
  314. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
  315. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
  316. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
  317. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
  318. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
  319. package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
  320. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  321. package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
  322. package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
  323. package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
  324. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
  325. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
  326. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
  327. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
  328. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  329. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
  330. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
  331. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
  332. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
  333. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  334. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
  335. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
  336. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  337. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  338. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  339. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  340. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
  341. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  342. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  343. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  344. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  345. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  346. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  347. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  348. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
  349. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  350. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  351. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  352. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -1
  353. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  354. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  355. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  356. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  357. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  358. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  359. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  360. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  361. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +0 -6
  362. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
  363. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
  364. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
  365. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
  366. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
  367. package/dist/cjs/src/static_dependencies/noble-hashes/pbkdf2.js +0 -1
  368. package/dist/cjs/src/static_dependencies/noble-hashes/ripemd160.js +0 -1
  369. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
  370. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
  371. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
  372. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
  373. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  374. package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
  375. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
  376. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
  377. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
  378. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
  379. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
  380. package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
  381. package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
  382. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  383. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  384. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
  385. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
  386. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
  387. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
  388. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
  389. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  390. package/dist/cjs/src/static_dependencies/qs/formats.js +0 -6
  391. package/dist/cjs/src/static_dependencies/qs/index.js +0 -1
  392. package/dist/cjs/src/static_dependencies/qs/parse.js +0 -1
  393. package/dist/cjs/src/static_dependencies/qs/stringify.js +0 -1
  394. package/dist/cjs/src/static_dependencies/qs/utils.js +0 -6
  395. package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
  396. package/dist/cjs/src/static_dependencies/scure-bip32/index.js +19 -1
  397. package/dist/cjs/src/static_dependencies/scure-bip39/index.js +1 -1
  398. package/dist/cjs/src/static_dependencies/scure-bip39/wordlists/english.js +0 -6
  399. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  400. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  401. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +0 -6
  402. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  403. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  404. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
  405. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
  406. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
  407. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  408. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  409. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  410. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -1
  411. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
  412. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  413. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  414. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  415. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
  416. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  417. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -1
  418. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
  419. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  420. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
  421. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
  422. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
  423. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  424. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
  425. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
  426. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
  427. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
  428. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
  429. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
  430. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
  431. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  432. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
  433. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +0 -6
  434. package/dist/cjs/src/timex.js +0 -1
  435. package/dist/cjs/src/tokocrypto.js +24 -1
  436. package/dist/cjs/src/toobit.js +21 -1
  437. package/dist/cjs/src/upbit.js +1 -1
  438. package/dist/cjs/src/wavesexchange.js +1 -1
  439. package/dist/cjs/src/whitebit.js +25 -14
  440. package/dist/cjs/src/woo.js +1 -1
  441. package/dist/cjs/src/woofipro.js +1 -1
  442. package/dist/cjs/src/xt.js +1 -1
  443. package/dist/cjs/src/yobit.js +1 -1
  444. package/dist/cjs/src/zaif.js +1 -1
  445. package/dist/cjs/src/zebpay.js +1 -1
  446. package/dist/cjs/src/zonda.js +1 -1
  447. package/js/ccxt.d.ts +2 -8
  448. package/js/ccxt.js +2 -6
  449. package/js/src/abstract/binance.d.ts +5 -0
  450. package/js/src/abstract/binancecoinm.d.ts +5 -0
  451. package/js/src/abstract/binanceus.d.ts +5 -0
  452. package/js/src/abstract/binanceusdm.d.ts +5 -0
  453. package/js/src/abstract/bitget.d.ts +47 -1
  454. package/js/src/abstract/bitstamp.d.ts +8 -0
  455. package/js/src/abstract/bitvavo.d.ts +10 -0
  456. package/js/src/abstract/coinspot.d.ts +45 -0
  457. package/js/src/base/Exchange.d.ts +2 -2
  458. package/js/src/binance.js +9 -2
  459. package/js/src/bitget.js +47 -1
  460. package/js/src/bitmart.js +3 -2
  461. package/js/src/bitmex.js +19 -3
  462. package/js/src/bitstamp.d.ts +52 -1
  463. package/js/src/bitstamp.js +272 -42
  464. package/js/src/bitvavo.js +10 -0
  465. package/js/src/btcmarkets.js +1 -1
  466. package/js/src/bybit.js +1 -1
  467. package/js/src/coinbaseexchange.d.ts +1 -1
  468. package/js/src/coinspot.js +77 -7
  469. package/js/src/gate.js +4 -2
  470. package/js/src/hyperliquid.js +42 -9
  471. package/js/src/krakenfutures.js +73 -1
  472. package/js/src/pro/aster.js +11 -2
  473. package/js/src/pro/binance.d.ts +13 -0
  474. package/js/src/pro/binance.js +115 -28
  475. package/js/src/pro/bitmex.js +2 -1
  476. package/js/src/pro/bybit.d.ts +1 -1
  477. package/js/src/pro/bybit.js +6 -4
  478. package/js/src/pro/gate.js +2 -1
  479. package/js/src/pro/okx.js +5 -3
  480. package/js/src/static_dependencies/fflake/browser.d.ts +5 -5
  481. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
  482. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.d.ts +0 -1
  483. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.d.ts +1 -1
  484. package/js/src/tokocrypto.js +23 -0
  485. package/js/src/toobit.js +20 -0
  486. package/js/src/whitebit.d.ts +1 -0
  487. package/js/src/whitebit.js +21 -11
  488. package/package.json +1 -1
  489. package/dist/cjs/src/abstract/probit.js +0 -11
  490. package/dist/cjs/src/pro/probit.js +0 -594
  491. package/dist/cjs/src/probit.js +0 -1936
  492. package/js/src/abstract/probit.d.ts +0 -26
  493. package/js/src/abstract/probit.js +0 -5
  494. package/js/src/pro/probit.d.ts +0 -91
  495. package/js/src/pro/probit.js +0 -587
  496. package/js/src/probit.d.ts +0 -283
  497. package/js/src/probit.js +0 -1929
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class bitstamp
@@ -165,9 +165,12 @@ class bitstamp extends bitstamp$1["default"] {
165
165
  'ticker/{pair}/': 1,
166
166
  'transactions/{pair}/': 1,
167
167
  'trading-pairs-info/': 1,
168
+ 'markets/': 1,
168
169
  'currencies/': 1,
169
170
  'eur_usd/': 1,
170
171
  'travel_rule/vasps/': 1,
172
+ 'funding_rate/{market_symbol}/': 1,
173
+ 'funding_rate_history/{pair}/': 1,
171
174
  },
172
175
  },
173
176
  'private': {
@@ -176,6 +179,8 @@ class bitstamp extends bitstamp$1["default"] {
176
179
  'contacts/{contact_uuid}/': 1,
177
180
  'earn/subscriptions/': 1,
178
181
  'earn/transactions/': 1,
182
+ 'trade_history/': 1,
183
+ 'trade_history/{pair}': 1,
179
184
  },
180
185
  'post': {
181
186
  'account_balances/': 1,
@@ -190,6 +195,7 @@ class bitstamp extends bitstamp$1["default"] {
190
195
  'open_order': 1,
191
196
  'open_orders/all/': 1,
192
197
  'open_orders/{pair}/': 1,
198
+ 'replace_order/': 1,
193
199
  'order_status/': 1,
194
200
  'cancel_order/': 1,
195
201
  'cancel_all_orders/': 1,
@@ -215,6 +221,8 @@ class bitstamp extends bitstamp$1["default"] {
215
221
  'liquidation_address/info/': 1,
216
222
  'btc_unconfirmed/': 1,
217
223
  'websockets_token/': 1,
224
+ 'revoke_all_api_keys/': 1,
225
+ 'get_max_order_amount/': 1,
218
226
  // individual coins
219
227
  'btc_withdrawal/': 1,
220
228
  'btc_address/': 1,
@@ -603,51 +611,97 @@ class bitstamp extends bitstamp$1["default"] {
603
611
  async fetchMarkets(params = {}) {
604
612
  const response = await this.fetchMarketsFromCache(params);
605
613
  //
606
- // [
614
+ // [
615
+ //
616
+ // spot:
617
+ //
618
+ // {
619
+ // "name": "BTC/USD",
620
+ // "market_symbol": "btcusd",
621
+ // "base_currency": "BTC",
622
+ // "base_decimals": 8,
623
+ // "counter_currency": "USD",
624
+ // "counter_decimals": 0,
625
+ // "minimum_order_value": "10",
626
+ // "trading": "Enabled",
627
+ // "instant_order_counter_decimals": 2,
628
+ // "instant_and_market_orders": "Enabled",
629
+ // "description": "Bitcoin / U.S. dollar",
630
+ // "market_type": "SPOT"
631
+ // },
632
+ // ...
633
+ //
634
+ // perp:
635
+ //
607
636
  // {
637
+ // "name": "BTC/USD-PERP",
638
+ // "market_symbol": "btcusd-perp",
639
+ // "base_currency": "BTC",
640
+ // "base_decimals": 5,
641
+ // "counter_currency": "USD",
642
+ // "counter_decimals": 0,
643
+ // "minimum_order_value": "10",
644
+ // "maximum_order_value": "500000.00000000",
645
+ // "minimum_order_amount": "0.00001000",
646
+ // "maximum_order_amount": "10.00000000",
608
647
  // "trading": "Enabled",
609
- // "base_decimals": 8,
610
- // "url_symbol": "btcusd",
611
- // "name": "BTC/USD",
648
+ // "instant_order_counter_decimals": 2,
612
649
  // "instant_and_market_orders": "Enabled",
613
- // "minimum_order": "20.0 USD",
614
- // "counter_decimals": 2,
615
- // "description": "Bitcoin / U.S. dollar"
650
+ // "description": "Bitcoin / U.S. dollar Perpetual",
651
+ // "market_type": "PERPETUAL",
652
+ // "underlying_asset": "Kaiko BTC Benchmark Reference Rate",
653
+ // "payoff_type": "Linear",
654
+ // "contract_size": "1.00000000",
655
+ // "isin": "EZHKD4DNKHY3"
616
656
  // }
617
- // ]
618
657
  //
619
658
  const result = [];
620
659
  for (let i = 0; i < response.length; i++) {
621
660
  const market = response[i];
622
- const name = this.safeString(market, 'name');
623
- let [base, quote] = name.split('/');
624
- const baseId = base.toLowerCase();
625
- const quoteId = quote.toLowerCase();
626
- base = this.safeCurrencyCode(base);
627
- quote = this.safeCurrencyCode(quote);
628
- const minimumOrder = this.safeString(market, 'minimum_order');
629
- const parts = minimumOrder.split(' ');
630
- const status = this.safeString(market, 'trading');
661
+ const [baseId, quoteId] = [this.safeString(market, 'base_currency'), this.safeString(market, 'counter_currency')];
662
+ const base = this.safeCurrencyCode(baseId);
663
+ const quote = this.safeCurrencyCode(quoteId);
664
+ let settleId = undefined;
665
+ const marketTypeRaw = this.safeString(market, 'market_type');
666
+ let symbol = base + '/' + quote;
667
+ let type = undefined;
668
+ let subType = undefined;
669
+ if (marketTypeRaw === 'SPOT') {
670
+ type = 'spot';
671
+ }
672
+ else if (marketTypeRaw === 'PERPETUAL') {
673
+ type = 'swap';
674
+ settleId = quoteId;
675
+ symbol = base + '/' + quote + ':' + settleId;
676
+ const payoffType = this.safeString(market, 'payoff_type');
677
+ if (payoffType === 'Linear') {
678
+ subType = 'linear';
679
+ }
680
+ else if (payoffType === 'Inverse') {
681
+ subType = 'inverse';
682
+ }
683
+ }
684
+ const isSpot = (type === 'spot');
631
685
  result.push({
632
- 'id': this.safeString(market, 'url_symbol'),
633
- 'marketId': baseId + '_' + quoteId,
634
- 'symbol': base + '/' + quote,
686
+ 'id': this.safeString(market, 'market_symbol'),
687
+ 'symbol': symbol,
635
688
  'base': base,
636
689
  'quote': quote,
637
- 'settle': undefined,
690
+ 'settle': settleId ? this.safeCurrencyCode(settleId) : undefined,
638
691
  'baseId': baseId,
639
692
  'quoteId': quoteId,
640
- 'settleId': undefined,
641
- 'type': 'spot',
642
- 'spot': true,
693
+ 'settleId': settleId,
694
+ 'type': type,
695
+ 'subType': subType,
696
+ 'spot': isSpot,
643
697
  'margin': false,
644
698
  'future': false,
645
- 'swap': false,
699
+ 'swap': !isSpot,
646
700
  'option': false,
647
- 'active': (status === 'Enabled'),
648
- 'contract': false,
649
- 'linear': undefined,
650
- 'inverse': undefined,
701
+ 'active': (this.safeString(market, 'trading') === 'Enabled'),
702
+ 'contract': !isSpot,
703
+ 'linear': isSpot ? undefined : true,
704
+ 'inverse': isSpot ? undefined : false,
651
705
  'contractSize': undefined,
652
706
  'expiry': undefined,
653
707
  'expiryDatetime': undefined,
@@ -663,16 +717,16 @@ class bitstamp extends bitstamp$1["default"] {
663
717
  'max': undefined,
664
718
  },
665
719
  'amount': {
666
- 'min': undefined,
667
- 'max': undefined,
720
+ 'min': this.safeNumber(market, 'minimum_order_amount'),
721
+ 'max': this.safeNumber(market, 'maximum_order_amount'),
668
722
  },
669
723
  'price': {
670
724
  'min': undefined,
671
725
  'max': undefined,
672
726
  },
673
727
  'cost': {
674
- 'min': this.safeNumber(parts, 0),
675
- 'max': undefined,
728
+ 'min': this.safeNumber(market, 'minimum_order_value'),
729
+ 'max': this.safeNumber(market, 'maximum_order_value'),
676
730
  },
677
731
  },
678
732
  'created': undefined,
@@ -728,7 +782,24 @@ class bitstamp extends bitstamp$1["default"] {
728
782
  const expires = this.safeInteger(options, 'expires', 1000);
729
783
  const now = this.milliseconds();
730
784
  if ((timestamp === undefined) || ((now - timestamp) > expires)) {
731
- const response = await this.publicGetTradingPairsInfo(params);
785
+ const response = await this.publicGetMarkets(params);
786
+ //
787
+ // [
788
+ // {
789
+ // "name": "BTC/USD",
790
+ // "market_symbol": "btcusd",
791
+ // "base_currency": "BTC",
792
+ // "base_decimals": 8,
793
+ // "counter_currency": "USD",
794
+ // "counter_decimals": 0,
795
+ // "minimum_order_value": "10",
796
+ // "trading": "Enabled",
797
+ // "instant_order_counter_decimals": 2,
798
+ // "instant_and_market_orders": "Enabled",
799
+ // "description": "Bitcoin / U.S. dollar",
800
+ // "market_type": "SPOT"
801
+ // },
802
+ //
732
803
  this.options['fetchMarkets'] = this.extend(options, {
733
804
  'response': response,
734
805
  'timestamp': now,
@@ -763,15 +834,12 @@ class bitstamp extends bitstamp$1["default"] {
763
834
  const result = {};
764
835
  for (let i = 0; i < response.length; i++) {
765
836
  const market = response[i];
766
- const name = this.safeString(market, 'name');
767
- let [base, quote] = name.split('/');
768
- const baseId = base.toLowerCase();
769
- const quoteId = quote.toLowerCase();
770
- base = this.safeCurrencyCode(base);
771
- quote = this.safeCurrencyCode(quote);
837
+ const [baseId, quoteId] = [this.safeString(market, 'base_currency'), this.safeString(market, 'counter_currency')];
838
+ const base = this.safeCurrencyCode(baseId);
839
+ const quote = this.safeCurrencyCode(quoteId);
772
840
  const description = this.safeString(market, 'description');
773
841
  const [baseDescription, quoteDescription] = description.split(' / ');
774
- const minimumOrder = this.safeString(market, 'minimum_order');
842
+ const minimumOrder = this.safeString(market, 'minimum_order_value');
775
843
  const parts = minimumOrder.split(' ');
776
844
  const cost = parts[0];
777
845
  if (!(base in result)) {
@@ -1065,7 +1133,7 @@ class bitstamp extends bitstamp$1["default"] {
1065
1133
  }
1066
1134
  const feeCostString = this.safeString(trade, 'fee');
1067
1135
  const feeCurrency = market['quote'];
1068
- const priceId = (rawMarketId !== undefined) ? rawMarketId : market['marketId'];
1136
+ const priceId = (rawMarketId !== undefined) ? rawMarketId : market['id'];
1069
1137
  priceString = this.safeString(trade, priceId, priceString);
1070
1138
  amountString = this.safeString(trade, market['baseId'], amountString);
1071
1139
  costString = this.safeString(trade, market['quoteId'], costString);
@@ -1531,6 +1599,43 @@ class bitstamp extends bitstamp$1["default"] {
1531
1599
  order['type'] = type;
1532
1600
  return order;
1533
1601
  }
1602
+ /**
1603
+ * @method
1604
+ * @name bitstamp#editOrder
1605
+ * @description edit a trade order
1606
+ * @see https://www.bitstamp.net/api/#tag/Orders/operation/ReplaceOrder
1607
+ * @param {string} id order id
1608
+ * @param {string} [symbol] unified symbol of the market to create an order in
1609
+ * @param {string} [type] 'market', 'limit' or 'stop_limit'
1610
+ * @param {string} [side] 'buy' or 'sell'
1611
+ * @param {float} [amount] how much of the currency you want to trade in units of the base currency
1612
+ * @param {float} [price] the price for the order, in units of the quote currency, ignored in market orders
1613
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
1614
+ * @param {string} [params.triggerPrice] the price to trigger a stop order
1615
+ * @param {string} [params.timeInForce] for crypto trading either 'gtc' or 'ioc' can be used
1616
+ * @param {string} [params.clientOrderId] a unique identifier for the order, automatically generated if not sent
1617
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/?id=order-structure}
1618
+ */
1619
+ async editOrder(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
1620
+ await this.loadMarkets();
1621
+ const market = this.market(symbol);
1622
+ const request = {
1623
+ 'amount': this.amountToPrecision(symbol, amount),
1624
+ 'price': this.priceToPrecision(symbol, price),
1625
+ };
1626
+ const clientOrderId = this.safeString2(params, 'client_order_id', 'clientOrderId');
1627
+ if (clientOrderId !== undefined) {
1628
+ request['client_order_id'] = clientOrderId;
1629
+ params = this.omit(params, ['clientOrderId']);
1630
+ }
1631
+ else {
1632
+ request['id'] = id;
1633
+ }
1634
+ const response = await this.privatePostReplaceOrder(this.extend(request, params));
1635
+ const order = this.parseOrder(response, market);
1636
+ order['type'] = type;
1637
+ return order;
1638
+ }
1534
1639
  /**
1535
1640
  * @method
1536
1641
  * @name bitstamp#cancelOrder
@@ -1605,6 +1710,7 @@ class bitstamp extends bitstamp$1["default"] {
1605
1710
  'Open': 'open',
1606
1711
  'Finished': 'closed',
1607
1712
  'Canceled': 'canceled',
1713
+ 'Cancel pending': 'canceling',
1608
1714
  };
1609
1715
  return this.safeString(statuses, status, status);
1610
1716
  }
@@ -1697,6 +1803,71 @@ class bitstamp extends bitstamp$1["default"] {
1697
1803
  const result = this.filterBy(response, 'type', '2');
1698
1804
  return this.parseTrades(result, market, since, limit);
1699
1805
  }
1806
+ /**
1807
+ * @method
1808
+ * @name bitstamp#fetchFundingRateHistory
1809
+ * @description fetches historical funding rate prices
1810
+ * @see https://www.bitstamp.net/api/#tag/Market-info/operation/GetFundingRateHistory
1811
+ * @param {string} symbol unified symbol of the market to fetch the funding rate history for
1812
+ * @param {int} [since] timestamp in ms of the earliest funding rate to fetch
1813
+ * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure} to fetch
1814
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
1815
+ * @param {int} [params.until] timestamp in ms of the latest funding rate
1816
+ * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
1817
+ * @param {string} [params.subType] "linear" or "inverse"
1818
+ * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/?id=funding-rate-history-structure}
1819
+ */
1820
+ async fetchFundingRateHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
1821
+ let paginate = false;
1822
+ [paginate, params] = this.handleOptionAndParams(params, 'fetchFundingRateHistory', 'paginate');
1823
+ if (paginate) {
1824
+ return await this.fetchPaginatedCallDeterministic('fetchFundingRateHistory', symbol, since, limit, '8h', params);
1825
+ }
1826
+ await this.loadMarkets();
1827
+ let request = {};
1828
+ let market = undefined;
1829
+ if (symbol !== undefined) {
1830
+ market = this.market(symbol);
1831
+ request['pair'] = market['id'];
1832
+ }
1833
+ if (since !== undefined) {
1834
+ request['since_timestamp'] = Math.round(since / 1000);
1835
+ }
1836
+ [request, params] = this.handleUntilOption('until_timestamp', request, params, 0.001);
1837
+ if (limit !== undefined) {
1838
+ request['limit'] = limit;
1839
+ }
1840
+ const response = await this.publicGetFundingRateHistoryPair(this.extend(request, params));
1841
+ //
1842
+ // {
1843
+ // "market": "BTC/USD-PERP",
1844
+ // "funding_rate_history": [
1845
+ // {
1846
+ // "funding_rate": "0.0024",
1847
+ // "timestamp": "1644406050"
1848
+ // }
1849
+ // ]
1850
+ // }
1851
+ //
1852
+ const values = this.safeValue(response, 'funding_rate_history', []);
1853
+ return this.parseFundingRateHistories(values, market, since, limit);
1854
+ }
1855
+ parseFundingRateHistory(contract, market = undefined) {
1856
+ //
1857
+ // {
1858
+ // "funding_rate": "0.0024",
1859
+ // "timestamp": "1644406050"
1860
+ // }
1861
+ //
1862
+ const timestamp = this.safeIntegerProduct(contract, 'timestamp', 0.001);
1863
+ return {
1864
+ 'info': contract,
1865
+ 'symbol': undefined,
1866
+ 'fundingRate': this.safeNumber(contract, 'funding_rate'),
1867
+ 'timestamp': timestamp,
1868
+ 'datetime': this.iso8601(timestamp),
1869
+ };
1870
+ }
1700
1871
  /**
1701
1872
  * @method
1702
1873
  * @name bitstamp#fetchDepositsWithdrawals
@@ -2150,6 +2321,65 @@ class bitstamp extends bitstamp$1["default"] {
2150
2321
  }
2151
2322
  return this.parseLedger(response, currency, since, limit);
2152
2323
  }
2324
+ /**
2325
+ * @method
2326
+ * @name bitstamp#fetchFundingRate
2327
+ * @description fetch the current funding rate
2328
+ * @see https://www.bitstamp.net/api/#tag/Market-info/operation/GetFundingRate
2329
+ * @param {string} symbol unified market symbol
2330
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
2331
+ * @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/#/?id=funding-rate-structure}
2332
+ */
2333
+ async fetchFundingRate(symbol, params = {}) {
2334
+ await this.loadMarkets();
2335
+ const market = this.market(symbol);
2336
+ const request = {
2337
+ 'market_symbol': market['id'],
2338
+ };
2339
+ const response = await this.publicGetFundingRateMarketSymbol(this.extend(request, params));
2340
+ //
2341
+ // {
2342
+ // "funding_rate": "0.0024",
2343
+ // "timestamp": "1644406050",
2344
+ // "market": "BTC/USD-PERP",
2345
+ // "next_funding_time": "1644406050"
2346
+ // }
2347
+ //
2348
+ return this.parseFundingRate(response, market);
2349
+ }
2350
+ parseFundingRate(fundingRate, market = undefined) {
2351
+ //
2352
+ // {
2353
+ // "funding_rate": "0.0024",
2354
+ // "timestamp": "1644406050",
2355
+ // "market": "BTC/USD-PERP",
2356
+ // "next_funding_time": "1644406050"
2357
+ // }
2358
+ //
2359
+ const currentTime = this.safeIntegerProduct(fundingRate, 'timestamp', 1000);
2360
+ const nextFundingRateTimestamp = this.safeIntegerProduct(fundingRate, 'next_funding_time', 1000);
2361
+ const marketId = this.safeString(fundingRate, 'market');
2362
+ return {
2363
+ 'info': fundingRate,
2364
+ 'symbol': this.safeSymbol(marketId, market),
2365
+ 'markPrice': undefined,
2366
+ 'indexPrice': undefined,
2367
+ 'interestRate': undefined,
2368
+ 'estimatedSettlePrice': undefined,
2369
+ 'timestamp': currentTime,
2370
+ 'datetime': this.iso8601(currentTime),
2371
+ 'previousFundingRate': undefined,
2372
+ 'nextFundingRate': undefined,
2373
+ 'previousFundingTimestamp': undefined,
2374
+ 'nextFundingTimestamp': undefined,
2375
+ 'previousFundingDatetime': undefined,
2376
+ 'nextFundingDatetime': undefined,
2377
+ 'fundingRate': this.safeNumber(fundingRate, 'funding_rate'),
2378
+ 'fundingTimestamp': nextFundingRateTimestamp,
2379
+ 'fundingDatetime': this.iso8601(nextFundingRateTimestamp),
2380
+ 'interval': undefined,
2381
+ };
2382
+ }
2153
2383
  /**
2154
2384
  * @method
2155
2385
  * @name bitstamp#fetchOpenOrders
@@ -7,7 +7,7 @@ var errors = require('./base/errors.js');
7
7
  var number = require('./base/functions/number.js');
8
8
  var Precise = require('./base/Precise.js');
9
9
 
10
- // ----------------------------------------------------------------------------
10
+ // ---------------------------------------------------------------------------
11
11
  // ---------------------------------------------------------------------------
12
12
  /**
13
13
  * @class bitteam
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class bittrade
@@ -180,10 +180,18 @@ class bitvavo extends bitvavo$1["default"] {
180
180
  'deposit': 1,
181
181
  'depositHistory': 5,
182
182
  'withdrawalHistory': 5,
183
+ 'subaccounts': 5,
184
+ 'subaccounts/transfers': 5,
185
+ 'subaccounts/transfers/{transferId}': 5,
186
+ 'institutional/subaccounts/balance': 5,
187
+ 'institutional/subaccounts/history': 5,
188
+ 'institutional/subaccounts/orders/open': { 'cost': 1, 'noMarket': 25 },
183
189
  },
184
190
  'post': {
185
191
  'order': 1,
186
192
  'withdrawal': 1,
193
+ 'subaccounts': 5,
194
+ 'subaccounts/transfers': 5,
187
195
  },
188
196
  'put': {
189
197
  'order': 1,
@@ -191,6 +199,8 @@ class bitvavo extends bitvavo$1["default"] {
191
199
  'delete': {
192
200
  'order': 1,
193
201
  'orders': 1,
202
+ 'institutional/subaccounts/order': 1,
203
+ 'institutional/subaccounts/orders': 1,
194
204
  },
195
205
  },
196
206
  },
@@ -7,7 +7,7 @@ var errors = require('./base/errors.js');
7
7
  var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
 
10
- // ----------------------------------------------------------------------------
10
+ // ---------------------------------------------------------------------------
11
11
  // ---------------------------------------------------------------------------
12
12
  /**
13
13
  * @class blockchaincom
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class blofin
@@ -9,7 +9,7 @@ var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
  var md5 = require('./static_dependencies/noble-hashes/md5.js');
11
11
 
12
- // ----------------------------------------------------------------------------
12
+ // ---------------------------------------------------------------------------
13
13
  // ---------------------------------------------------------------------------
14
14
  /**
15
15
  * @class btcbox
@@ -8,7 +8,7 @@ var number = require('./base/functions/number.js');
8
8
  var Precise = require('./base/Precise.js');
9
9
  var sha512 = require('./static_dependencies/noble-hashes/sha512.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class btcmarkets
@@ -1331,7 +1331,7 @@ class btcmarkets extends btcmarkets$1["default"] {
1331
1331
  await this.loadMarkets();
1332
1332
  const currency = this.currency(code);
1333
1333
  const request = {
1334
- 'currency_id': currency['id'],
1334
+ 'assetName': currency['id'],
1335
1335
  'amount': this.currencyToPrecision(code, amount),
1336
1336
  };
1337
1337
  if (code !== 'AUD') {
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class btcturk
@@ -7,7 +7,7 @@ var errors = require('./base/errors.js');
7
7
  var number = require('./base/functions/number.js');
8
8
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
9
9
 
10
- // ----------------------------------------------------------------------------
10
+ // ---------------------------------------------------------------------------
11
11
  // ---------------------------------------------------------------------------
12
12
  /**
13
13
  * @class bullish
@@ -9,7 +9,7 @@ var Precise = require('./base/Precise.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
  var rsa = require('./base/functions/rsa.js');
11
11
 
12
- // ----------------------------------------------------------------------------
12
+ // ---------------------------------------------------------------------------
13
13
  // ---------------------------------------------------------------------------
14
14
  /**
15
15
  * @class bybit
@@ -6851,7 +6851,7 @@ class bybit extends bybit$1["default"] {
6851
6851
  'notional': this.parseNumber(notional),
6852
6852
  'leverage': this.parseNumber(leverage),
6853
6853
  'unrealizedPnl': this.parseNumber(unrealisedPnl),
6854
- 'realizedPnl': this.safeNumber(position, 'closedPnl'),
6854
+ 'realizedPnl': this.safeNumber2(position, 'curRealisedPnl', 'closedPnl'),
6855
6855
  'contracts': this.parseNumber(size),
6856
6856
  'contractSize': this.safeNumber(market, 'contractSize'),
6857
6857
  'marginRatio': this.parseNumber(marginRatio),
@@ -9,7 +9,7 @@ var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
9
9
  var number = require('./base/functions/number.js');
10
10
  var errors = require('./base/errors.js');
11
11
 
12
- // ----------------------------------------------------------------------------
12
+ // ---------------------------------------------------------------------------
13
13
  // ---------------------------------------------------------------------------
14
14
  /**
15
15
  * @class bydfi
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class cex
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var coinbase = require('./coinbase.js');
6
6
 
7
- // ----------------------------------------------------------------------------
7
+ // ---------------------------------------------------------------------------
8
8
  // ---------------------------------------------------------------------------
9
9
  class coinbaseadvanced extends coinbase["default"] {
10
10
  describe() {
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class coincatch
@@ -7,7 +7,7 @@ var errors = require('./base/errors.js');
7
7
  var number = require('./base/functions/number.js');
8
8
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
9
9
 
10
- // ----------------------------------------------------------------------------
10
+ // ---------------------------------------------------------------------------
11
11
  // ---------------------------------------------------------------------------
12
12
  /**
13
13
  * @class coincheck
@@ -9,7 +9,7 @@ var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
  var md5 = require('./static_dependencies/noble-hashes/md5.js');
11
11
 
12
- // ----------------------------------------------------------------------------
12
+ // ---------------------------------------------------------------------------
13
13
  // ---------------------------------------------------------------------------
14
14
  /**
15
15
  * @class coinex
@@ -8,7 +8,7 @@ var Precise = require('./base/Precise.js');
8
8
  var number = require('./base/functions/number.js');
9
9
  var sha256 = require('./static_dependencies/noble-hashes/sha256.js');
10
10
 
11
- // ----------------------------------------------------------------------------
11
+ // ---------------------------------------------------------------------------
12
12
  // ---------------------------------------------------------------------------
13
13
  /**
14
14
  * @class coinmate