ccxt 4.4.53 → 4.4.58

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 (966) hide show
  1. package/README.md +224 -142
  2. package/dist/ccxt.browser.min.js +8 -8
  3. package/dist/cjs/ccxt.js +1 -4
  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/mercado.js +1 -1
  75. package/dist/cjs/src/abstract/mexc.js +1 -1
  76. package/dist/cjs/src/abstract/ndax.js +1 -1
  77. package/dist/cjs/src/abstract/novadax.js +1 -1
  78. package/dist/cjs/src/abstract/oceanex.js +1 -1
  79. package/dist/cjs/src/abstract/okcoin.js +1 -1
  80. package/dist/cjs/src/abstract/okx.js +1 -1
  81. package/dist/cjs/src/abstract/onetrading.js +1 -1
  82. package/dist/cjs/src/abstract/oxfun.js +1 -1
  83. package/dist/cjs/src/abstract/p2b.js +1 -1
  84. package/dist/cjs/src/abstract/paradex.js +1 -1
  85. package/dist/cjs/src/abstract/paymium.js +1 -1
  86. package/dist/cjs/src/abstract/phemex.js +1 -1
  87. package/dist/cjs/src/abstract/poloniex.js +1 -1
  88. package/dist/cjs/src/abstract/poloniexfutures.js +1 -1
  89. package/dist/cjs/src/abstract/probit.js +1 -1
  90. package/dist/cjs/src/abstract/timex.js +1 -1
  91. package/dist/cjs/src/abstract/tokocrypto.js +1 -1
  92. package/dist/cjs/src/abstract/tradeogre.js +1 -1
  93. package/dist/cjs/src/abstract/upbit.js +1 -1
  94. package/dist/cjs/src/abstract/vertex.js +1 -1
  95. package/dist/cjs/src/abstract/wavesexchange.js +1 -1
  96. package/dist/cjs/src/abstract/wazirx.js +1 -1
  97. package/dist/cjs/src/abstract/whitebit.js +1 -1
  98. package/dist/cjs/src/abstract/woo.js +1 -1
  99. package/dist/cjs/src/abstract/woofipro.js +1 -1
  100. package/dist/cjs/src/abstract/xt.js +1 -1
  101. package/dist/cjs/src/abstract/yobit.js +1 -1
  102. package/dist/cjs/src/abstract/zaif.js +1 -1
  103. package/dist/cjs/src/abstract/zonda.js +1 -1
  104. package/dist/cjs/src/ace.js +4 -1
  105. package/dist/cjs/src/alpaca.js +6 -1
  106. package/dist/cjs/src/ascendex.js +5 -2
  107. package/dist/cjs/src/base/Exchange.js +116 -58
  108. package/dist/cjs/src/base/Precise.js +0 -6
  109. package/dist/cjs/src/base/errors.js +0 -6
  110. package/dist/cjs/src/base/functions/crypto.js +1 -1
  111. package/dist/cjs/src/base/functions/encode.js +1 -1
  112. package/dist/cjs/src/base/functions/misc.js +0 -1
  113. package/dist/cjs/src/base/functions/number.js +0 -6
  114. package/dist/cjs/src/base/functions/platform.js +0 -6
  115. package/dist/cjs/src/base/functions/rsa.js +0 -1
  116. package/dist/cjs/src/base/functions/string.js +0 -6
  117. package/dist/cjs/src/base/functions/throttle.js +1 -1
  118. package/dist/cjs/src/base/functions/time.js +0 -6
  119. package/dist/cjs/src/base/functions/totp.js +0 -1
  120. package/dist/cjs/src/base/functions/type.js +0 -6
  121. package/dist/cjs/src/base/functions.js +1 -1
  122. package/dist/cjs/src/base/ws/Cache.js +0 -6
  123. package/dist/cjs/src/base/ws/Client.js +0 -1
  124. package/dist/cjs/src/base/ws/Future.js +1 -1
  125. package/dist/cjs/src/base/ws/OrderBook.js +1 -1
  126. package/dist/cjs/src/base/ws/OrderBookSide.js +0 -6
  127. package/dist/cjs/src/base/ws/WsClient.js +1 -1
  128. package/dist/cjs/src/bequant.js +1 -1
  129. package/dist/cjs/src/bigone.js +6 -1
  130. package/dist/cjs/src/binance.js +76 -57
  131. package/dist/cjs/src/binancecoinm.js +1 -1
  132. package/dist/cjs/src/binanceus.js +1 -1
  133. package/dist/cjs/src/binanceusdm.js +1 -1
  134. package/dist/cjs/src/bingx.js +28 -31
  135. package/dist/cjs/src/bit2c.js +4 -1
  136. package/dist/cjs/src/bitbank.js +4 -1
  137. package/dist/cjs/src/bitbns.js +4 -1
  138. package/dist/cjs/src/bitcoincom.js +1 -1
  139. package/dist/cjs/src/bitfinex.js +8 -3
  140. package/dist/cjs/src/bitfinex1.js +1 -1
  141. package/dist/cjs/src/bitflyer.js +6 -1
  142. package/dist/cjs/src/bitget.js +17 -6
  143. package/dist/cjs/src/bithumb.js +3 -1
  144. package/dist/cjs/src/bitmart.js +34 -12
  145. package/dist/cjs/src/bitmex.js +100 -94
  146. package/dist/cjs/src/bitopro.js +6 -1
  147. package/dist/cjs/src/bitpanda.js +1 -1
  148. package/dist/cjs/src/bitrue.js +5 -1
  149. package/dist/cjs/src/bitso.js +4 -1
  150. package/dist/cjs/src/bitstamp.js +4 -1
  151. package/dist/cjs/src/bitteam.js +6 -1
  152. package/dist/cjs/src/bitvavo.js +4 -0
  153. package/dist/cjs/src/bl3p.js +1 -1
  154. package/dist/cjs/src/blockchaincom.js +6 -2
  155. package/dist/cjs/src/blofin.js +5 -3
  156. package/dist/cjs/src/btcalpha.js +6 -1
  157. package/dist/cjs/src/btcbox.js +4 -4
  158. package/dist/cjs/src/btcmarkets.js +6 -1
  159. package/dist/cjs/src/btcturk.js +4 -1
  160. package/dist/cjs/src/bybit.js +28 -5
  161. package/dist/cjs/src/cex.js +3 -1
  162. package/dist/cjs/src/coinbase.js +24 -9
  163. package/dist/cjs/src/coinbaseadvanced.js +1 -1
  164. package/dist/cjs/src/coinbaseexchange.js +5 -0
  165. package/dist/cjs/src/coinbaseinternational.js +7 -3
  166. package/dist/cjs/src/coincatch.js +5 -2
  167. package/dist/cjs/src/coincheck.js +3 -1
  168. package/dist/cjs/src/coinex.js +6 -2
  169. package/dist/cjs/src/coinlist.js +5 -1
  170. package/dist/cjs/src/coinmate.js +6 -2
  171. package/dist/cjs/src/coinmetro.js +10 -6
  172. package/dist/cjs/src/coinone.js +5 -2
  173. package/dist/cjs/src/coinsph.js +5 -2
  174. package/dist/cjs/src/coinspot.js +3 -2
  175. package/dist/cjs/src/cryptocom.js +6 -1
  176. package/dist/cjs/src/currencycom.js +5 -2
  177. package/dist/cjs/src/defx.js +6 -1
  178. package/dist/cjs/src/delta.js +4 -1
  179. package/dist/cjs/src/deribit.js +15 -33
  180. package/dist/cjs/src/digifinex.js +11 -6
  181. package/dist/cjs/src/ellipx.js +10 -6
  182. package/dist/cjs/src/exmo.js +6 -3
  183. package/dist/cjs/src/fmfwio.js +1 -1
  184. package/dist/cjs/src/gate.js +5 -1
  185. package/dist/cjs/src/gateio.js +1 -1
  186. package/dist/cjs/src/gemini.js +4 -1
  187. package/dist/cjs/src/hashkey.js +6 -5
  188. package/dist/cjs/src/hitbtc.js +4 -1
  189. package/dist/cjs/src/hollaex.js +7 -2
  190. package/dist/cjs/src/htx.js +10 -2
  191. package/dist/cjs/src/huobi.js +1 -1
  192. package/dist/cjs/src/huobijp.js +6 -1
  193. package/dist/cjs/src/hyperliquid.js +20 -8
  194. package/dist/cjs/src/idex.js +7 -3
  195. package/dist/cjs/src/independentreserve.js +5 -1
  196. package/dist/cjs/src/indodax.js +4 -1
  197. package/dist/cjs/src/kraken.js +8 -6
  198. package/dist/cjs/src/krakenfutures.js +6 -3
  199. package/dist/cjs/src/kucoin.js +16 -8
  200. package/dist/cjs/src/kucoinfutures.js +6 -2
  201. package/dist/cjs/src/kuna.js +4 -1
  202. package/dist/cjs/src/latoken.js +5 -1
  203. package/dist/cjs/src/lbank.js +7 -2
  204. package/dist/cjs/src/luno.js +8 -3
  205. package/dist/cjs/src/mercado.js +6 -2
  206. package/dist/cjs/src/mexc.js +11 -10
  207. package/dist/cjs/src/myokx.js +1 -1
  208. package/dist/cjs/src/ndax.js +8 -3
  209. package/dist/cjs/src/novadax.js +7 -2
  210. package/dist/cjs/src/oceanex.js +5 -1
  211. package/dist/cjs/src/okcoin.js +7 -3
  212. package/dist/cjs/src/okx.js +19 -5
  213. package/dist/cjs/src/onetrading.js +6 -2
  214. package/dist/cjs/src/oxfun.js +4 -1
  215. package/dist/cjs/src/p2b.js +4 -1
  216. package/dist/cjs/src/paradex.js +10 -4
  217. package/dist/cjs/src/paymium.js +1 -1
  218. package/dist/cjs/src/phemex.js +12 -5
  219. package/dist/cjs/src/poloniex.js +7 -4
  220. package/dist/cjs/src/poloniexfutures.js +6 -2
  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/binance.js +2 -2
  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/bitcoincom.js +2 -5
  230. package/dist/cjs/src/pro/bitfinex.js +1 -1
  231. package/dist/cjs/src/pro/bitfinex1.js +1 -1
  232. package/dist/cjs/src/pro/bitget.js +4 -4
  233. package/dist/cjs/src/pro/bithumb.js +1 -1
  234. package/dist/cjs/src/pro/bitmart.js +1 -1
  235. package/dist/cjs/src/pro/bitmex.js +1 -1
  236. package/dist/cjs/src/pro/bitopro.js +1 -1
  237. package/dist/cjs/src/pro/bitpanda.js +1 -1
  238. package/dist/cjs/src/pro/bitrue.js +1 -1
  239. package/dist/cjs/src/pro/bitstamp.js +1 -1
  240. package/dist/cjs/src/pro/bitvavo.js +1 -1
  241. package/dist/cjs/src/pro/blockchaincom.js +1 -1
  242. package/dist/cjs/src/pro/blofin.js +1 -1
  243. package/dist/cjs/src/pro/bybit.js +17 -4
  244. package/dist/cjs/src/pro/cex.js +2 -2
  245. package/dist/cjs/src/pro/coinbase.js +1 -1
  246. package/dist/cjs/src/pro/coinbaseadvanced.js +1 -1
  247. package/dist/cjs/src/pro/coinbaseexchange.js +1 -1
  248. package/dist/cjs/src/pro/coinbaseinternational.js +1 -1
  249. package/dist/cjs/src/pro/coincatch.js +4 -4
  250. package/dist/cjs/src/pro/coincheck.js +1 -1
  251. package/dist/cjs/src/pro/coinex.js +1 -1
  252. package/dist/cjs/src/pro/coinone.js +1 -1
  253. package/dist/cjs/src/pro/cryptocom.js +1 -1
  254. package/dist/cjs/src/pro/currencycom.js +1 -1
  255. package/dist/cjs/src/pro/defx.js +1 -1
  256. package/dist/cjs/src/pro/deribit.js +1 -1
  257. package/dist/cjs/src/pro/exmo.js +1 -1
  258. package/dist/cjs/src/pro/gate.js +1 -1
  259. package/dist/cjs/src/pro/gateio.js +1 -1
  260. package/dist/cjs/src/pro/gemini.js +1 -1
  261. package/dist/cjs/src/pro/hashkey.js +1 -1
  262. package/dist/cjs/src/pro/hitbtc.js +1 -1
  263. package/dist/cjs/src/pro/hollaex.js +1 -1
  264. package/dist/cjs/src/pro/htx.js +1 -1
  265. package/dist/cjs/src/pro/huobi.js +1 -1
  266. package/dist/cjs/src/pro/hyperliquid.js +1 -1
  267. package/dist/cjs/src/pro/idex.js +1 -1
  268. package/dist/cjs/src/pro/independentreserve.js +1 -1
  269. package/dist/cjs/src/pro/kraken.js +1 -1
  270. package/dist/cjs/src/pro/krakenfutures.js +1 -1
  271. package/dist/cjs/src/pro/kucoin.js +1 -1
  272. package/dist/cjs/src/pro/kucoinfutures.js +1 -1
  273. package/dist/cjs/src/pro/lbank.js +0 -1
  274. package/dist/cjs/src/pro/luno.js +1 -1
  275. package/dist/cjs/src/pro/mexc.js +8 -5
  276. package/dist/cjs/src/pro/myokx.js +1 -1
  277. package/dist/cjs/src/pro/ndax.js +1 -1
  278. package/dist/cjs/src/pro/okcoin.js +1 -1
  279. package/dist/cjs/src/pro/okx.js +2 -2
  280. package/dist/cjs/src/pro/onetrading.js +1 -1
  281. package/dist/cjs/src/pro/oxfun.js +1 -1
  282. package/dist/cjs/src/pro/p2b.js +1 -1
  283. package/dist/cjs/src/pro/paradex.js +1 -1
  284. package/dist/cjs/src/pro/phemex.js +1 -1
  285. package/dist/cjs/src/pro/poloniex.js +1 -1
  286. package/dist/cjs/src/pro/poloniexfutures.js +1 -1
  287. package/dist/cjs/src/pro/probit.js +1 -1
  288. package/dist/cjs/src/pro/upbit.js +1 -1
  289. package/dist/cjs/src/pro/wazirx.js +1 -1
  290. package/dist/cjs/src/pro/whitebit.js +1 -1
  291. package/dist/cjs/src/pro/xt.js +1 -1
  292. package/dist/cjs/src/probit.js +6 -2
  293. package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +0 -6
  294. package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -1
  295. package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  296. package/dist/cjs/src/static_dependencies/ethers/coders/address.js +0 -1
  297. package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +0 -1
  298. package/dist/cjs/src/static_dependencies/ethers/coders/array.js +0 -1
  299. package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +0 -1
  300. package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +0 -1
  301. package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -1
  302. package/dist/cjs/src/static_dependencies/ethers/coders/null.js +0 -1
  303. package/dist/cjs/src/static_dependencies/ethers/coders/number.js +0 -1
  304. package/dist/cjs/src/static_dependencies/ethers/coders/string.js +0 -1
  305. package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +0 -1
  306. package/dist/cjs/src/static_dependencies/ethers/fragments.js +0 -6
  307. package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  308. package/dist/cjs/src/static_dependencies/ethers/index.js +10 -1
  309. package/dist/cjs/src/static_dependencies/ethers/interface.js +0 -6
  310. package/dist/cjs/src/static_dependencies/ethers/typed.js +0 -6
  311. package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +13 -1
  312. package/dist/cjs/src/static_dependencies/ethers/utils/data.js +6 -1
  313. package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +9 -1
  314. package/dist/cjs/src/static_dependencies/ethers/utils/events.js +0 -6
  315. package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  316. package/dist/cjs/src/static_dependencies/ethers/utils/index.js +7 -1
  317. package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +5 -1
  318. package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +0 -6
  319. package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +8 -1
  320. package/dist/cjs/src/static_dependencies/fflake/browser.js +1 -1
  321. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -1
  322. package/dist/cjs/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -1
  323. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +1 -1
  324. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  325. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  326. package/dist/cjs/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  327. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -1
  328. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +1 -1
  329. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  330. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +1 -1
  331. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +1 -1
  332. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  333. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +1 -1
  334. package/dist/cjs/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  335. package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +0 -6
  336. package/dist/cjs/src/static_dependencies/noble-curves/_shortw_utils.js +1 -1
  337. package/dist/cjs/src/static_dependencies/noble-curves/abstract/curve.js +1 -1
  338. package/dist/cjs/src/static_dependencies/noble-curves/abstract/edwards.js +1 -1
  339. package/dist/cjs/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -1
  340. package/dist/cjs/src/static_dependencies/noble-curves/abstract/modular.js +1 -1
  341. package/dist/cjs/src/static_dependencies/noble-curves/abstract/montgomery.js +1 -1
  342. package/dist/cjs/src/static_dependencies/noble-curves/abstract/poseidon.js +1 -1
  343. package/dist/cjs/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  344. package/dist/cjs/src/static_dependencies/noble-curves/abstract/weierstrass.js +1 -1
  345. package/dist/cjs/src/static_dependencies/noble-curves/ed25519.js +1 -1
  346. package/dist/cjs/src/static_dependencies/noble-curves/p256.js +1 -1
  347. package/dist/cjs/src/static_dependencies/noble-curves/secp256k1.js +1 -1
  348. package/dist/cjs/src/static_dependencies/noble-hashes/_assert.js +0 -6
  349. package/dist/cjs/src/static_dependencies/noble-hashes/_sha2.js +0 -1
  350. package/dist/cjs/src/static_dependencies/noble-hashes/_u64.js +0 -6
  351. package/dist/cjs/src/static_dependencies/noble-hashes/crypto.js +0 -6
  352. package/dist/cjs/src/static_dependencies/noble-hashes/hmac.js +0 -1
  353. package/dist/cjs/src/static_dependencies/noble-hashes/md5.js +0 -1
  354. package/dist/cjs/src/static_dependencies/noble-hashes/sha1.js +0 -1
  355. package/dist/cjs/src/static_dependencies/noble-hashes/sha256.js +0 -1
  356. package/dist/cjs/src/static_dependencies/noble-hashes/sha3.js +0 -1
  357. package/dist/cjs/src/static_dependencies/noble-hashes/sha512.js +0 -1
  358. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +1 -1
  359. package/dist/cjs/src/static_dependencies/node-fetch/body.js +5 -1
  360. package/dist/cjs/src/static_dependencies/node-fetch/errors/abort-error.js +0 -1
  361. package/dist/cjs/src/static_dependencies/node-fetch/errors/base.js +0 -6
  362. package/dist/cjs/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -1
  363. package/dist/cjs/src/static_dependencies/node-fetch/headers.js +5 -1
  364. package/dist/cjs/src/static_dependencies/node-fetch/index.js +7 -1
  365. package/dist/cjs/src/static_dependencies/node-fetch/request.js +7 -1
  366. package/dist/cjs/src/static_dependencies/node-fetch/response.js +5 -1
  367. package/dist/cjs/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  368. package/dist/cjs/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  369. package/dist/cjs/src/static_dependencies/node-fetch/utils/is.js +0 -6
  370. package/dist/cjs/src/static_dependencies/node-fetch/utils/referrer.js +0 -1
  371. package/dist/cjs/src/static_dependencies/proxies/agent-base/index.js +0 -1
  372. package/dist/cjs/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -1
  373. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -1
  374. package/dist/cjs/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  375. package/dist/cjs/src/static_dependencies/scure-base/index.js +0 -6
  376. package/dist/cjs/src/static_dependencies/scure-starknet/index.js +1 -1
  377. package/dist/cjs/src/static_dependencies/starknet/constants.js +1 -1
  378. package/dist/cjs/src/static_dependencies/starknet/types/calldata.js +0 -6
  379. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  380. package/dist/cjs/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  381. package/dist/cjs/src/static_dependencies/starknet/types/lib/index.js +0 -6
  382. package/dist/cjs/src/static_dependencies/starknet/types/typedData.js +0 -6
  383. package/dist/cjs/src/static_dependencies/starknet/utils/assert.js +0 -6
  384. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +1 -1
  385. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +1 -1
  386. package/dist/cjs/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +1 -1
  387. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -1
  388. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -1
  389. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  390. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  391. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  392. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -1
  393. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/index.js +1 -1
  394. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -1
  395. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -1
  396. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  397. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -1
  398. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -1
  399. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -1
  400. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/tuple.js +1 -1
  401. package/dist/cjs/src/static_dependencies/starknet/utils/calldata/validate.js +4 -1
  402. package/dist/cjs/src/static_dependencies/starknet/utils/encode.js +0 -1
  403. package/dist/cjs/src/static_dependencies/starknet/utils/hash/classHash.js +3 -1
  404. package/dist/cjs/src/static_dependencies/starknet/utils/merkle.js +0 -1
  405. package/dist/cjs/src/static_dependencies/starknet/utils/num.js +0 -1
  406. package/dist/cjs/src/static_dependencies/starknet/utils/selector.js +0 -1
  407. package/dist/cjs/src/static_dependencies/starknet/utils/shortString.js +0 -1
  408. package/dist/cjs/src/static_dependencies/starknet/utils/typedData.js +1 -1
  409. package/dist/cjs/src/static_dependencies/watchable/src/unpromise.js +0 -6
  410. package/dist/cjs/src/timex.js +20 -4
  411. package/dist/cjs/src/tokocrypto.js +7 -2
  412. package/dist/cjs/src/tradeogre.js +3 -1
  413. package/dist/cjs/src/upbit.js +4 -1
  414. package/dist/cjs/src/vertex.js +8 -4
  415. package/dist/cjs/src/wavesexchange.js +25 -5
  416. package/dist/cjs/src/wazirx.js +2 -1
  417. package/dist/cjs/src/whitebit.js +8 -6
  418. package/dist/cjs/src/woo.js +16 -6
  419. package/dist/cjs/src/woofipro.js +26 -10
  420. package/dist/cjs/src/xt.js +68 -4
  421. package/dist/cjs/src/yobit.js +5 -2
  422. package/dist/cjs/src/zaif.js +3 -1
  423. package/dist/cjs/src/zonda.js +4 -2
  424. package/js/ccxt.d.ts +3 -6
  425. package/js/ccxt.js +2 -10
  426. package/js/src/abstract/ace.js +0 -6
  427. package/js/src/abstract/alpaca.js +0 -6
  428. package/js/src/abstract/ascendex.js +0 -6
  429. package/js/src/abstract/bequant.js +0 -6
  430. package/js/src/abstract/bigone.js +0 -6
  431. package/js/src/abstract/binance.d.ts +0 -1
  432. package/js/src/abstract/binance.js +0 -6
  433. package/js/src/abstract/binancecoinm.d.ts +0 -1
  434. package/js/src/abstract/binancecoinm.js +0 -6
  435. package/js/src/abstract/binanceus.d.ts +0 -1
  436. package/js/src/abstract/binanceus.js +0 -6
  437. package/js/src/abstract/binanceusdm.d.ts +0 -1
  438. package/js/src/abstract/binanceusdm.js +0 -6
  439. package/js/src/abstract/bingx.js +0 -6
  440. package/js/src/abstract/bit2c.js +0 -6
  441. package/js/src/abstract/bitbank.js +0 -6
  442. package/js/src/abstract/bitbns.js +0 -6
  443. package/js/src/abstract/bitcoincom.js +0 -6
  444. package/js/src/abstract/bitfinex.js +0 -6
  445. package/js/src/abstract/bitfinex1.js +0 -6
  446. package/js/src/abstract/bitflyer.js +0 -6
  447. package/js/src/abstract/bitget.js +0 -6
  448. package/js/src/abstract/bithumb.js +0 -6
  449. package/js/src/abstract/bitmart.js +0 -6
  450. package/js/src/abstract/bitmex.js +0 -6
  451. package/js/src/abstract/bitopro.js +0 -6
  452. package/js/src/abstract/bitpanda.js +0 -6
  453. package/js/src/abstract/bitrue.js +0 -6
  454. package/js/src/abstract/bitso.js +0 -6
  455. package/js/src/abstract/bitstamp.js +0 -6
  456. package/js/src/abstract/bitteam.js +0 -6
  457. package/js/src/abstract/bitvavo.js +0 -6
  458. package/js/src/abstract/bl3p.js +0 -6
  459. package/js/src/abstract/blockchaincom.js +0 -6
  460. package/js/src/abstract/blofin.js +0 -6
  461. package/js/src/abstract/btcalpha.js +0 -6
  462. package/js/src/abstract/btcbox.js +0 -6
  463. package/js/src/abstract/btcmarkets.js +0 -6
  464. package/js/src/abstract/btcturk.js +0 -6
  465. package/js/src/abstract/bybit.js +0 -6
  466. package/js/src/abstract/cex.js +0 -6
  467. package/js/src/abstract/coinbase.js +0 -6
  468. package/js/src/abstract/coinbaseadvanced.js +0 -6
  469. package/js/src/abstract/coinbaseexchange.js +0 -6
  470. package/js/src/abstract/coinbaseinternational.js +0 -6
  471. package/js/src/abstract/coincatch.js +0 -6
  472. package/js/src/abstract/coincheck.js +0 -6
  473. package/js/src/abstract/coinex.js +0 -6
  474. package/js/src/abstract/coinlist.js +0 -6
  475. package/js/src/abstract/coinmate.js +0 -6
  476. package/js/src/abstract/coinmetro.js +0 -6
  477. package/js/src/abstract/coinone.js +0 -6
  478. package/js/src/abstract/coinsph.js +0 -6
  479. package/js/src/abstract/coinspot.js +0 -6
  480. package/js/src/abstract/cryptocom.js +0 -6
  481. package/js/src/abstract/currencycom.js +0 -6
  482. package/js/src/abstract/defx.js +0 -6
  483. package/js/src/abstract/delta.js +0 -6
  484. package/js/src/abstract/deribit.js +0 -6
  485. package/js/src/abstract/digifinex.js +0 -6
  486. package/js/src/abstract/ellipx.js +0 -6
  487. package/js/src/abstract/exmo.js +0 -6
  488. package/js/src/abstract/fmfwio.js +0 -6
  489. package/js/src/abstract/gate.js +0 -6
  490. package/js/src/abstract/gateio.js +0 -6
  491. package/js/src/abstract/gemini.js +0 -6
  492. package/js/src/abstract/hashkey.js +0 -6
  493. package/js/src/abstract/hitbtc.js +0 -6
  494. package/js/src/abstract/hollaex.js +0 -6
  495. package/js/src/abstract/htx.js +0 -6
  496. package/js/src/abstract/huobi.js +0 -6
  497. package/js/src/abstract/huobijp.js +0 -6
  498. package/js/src/abstract/hyperliquid.js +0 -6
  499. package/js/src/abstract/idex.js +0 -6
  500. package/js/src/abstract/independentreserve.js +0 -6
  501. package/js/src/abstract/indodax.js +0 -6
  502. package/js/src/abstract/kraken.js +0 -6
  503. package/js/src/abstract/krakenfutures.js +0 -6
  504. package/js/src/abstract/kucoin.js +0 -6
  505. package/js/src/abstract/kucoinfutures.js +0 -6
  506. package/js/src/abstract/kuna.js +0 -6
  507. package/js/src/abstract/latoken.js +0 -6
  508. package/js/src/abstract/lbank.js +0 -6
  509. package/js/src/abstract/luno.js +0 -6
  510. package/js/src/abstract/mercado.js +0 -6
  511. package/js/src/abstract/mexc.js +0 -6
  512. package/js/src/abstract/myokx.js +0 -6
  513. package/js/src/abstract/ndax.js +0 -6
  514. package/js/src/abstract/novadax.js +0 -6
  515. package/js/src/abstract/oceanex.js +0 -6
  516. package/js/src/abstract/okcoin.js +0 -6
  517. package/js/src/abstract/okx.js +0 -6
  518. package/js/src/abstract/onetrading.js +0 -6
  519. package/js/src/abstract/oxfun.js +0 -6
  520. package/js/src/abstract/p2b.js +0 -6
  521. package/js/src/abstract/paradex.js +0 -6
  522. package/js/src/abstract/paymium.js +0 -6
  523. package/js/src/abstract/phemex.js +0 -6
  524. package/js/src/abstract/poloniex.js +0 -6
  525. package/js/src/abstract/poloniexfutures.js +0 -6
  526. package/js/src/abstract/probit.js +0 -6
  527. package/js/src/abstract/timex.js +0 -6
  528. package/js/src/abstract/tokocrypto.js +0 -6
  529. package/js/src/abstract/tradeogre.js +0 -6
  530. package/js/src/abstract/upbit.js +0 -6
  531. package/js/src/abstract/vertex.js +0 -6
  532. package/js/src/abstract/wavesexchange.js +0 -6
  533. package/js/src/abstract/wazirx.js +0 -6
  534. package/js/src/abstract/whitebit.js +0 -6
  535. package/js/src/abstract/woo.js +0 -6
  536. package/js/src/abstract/woofipro.js +0 -6
  537. package/js/src/abstract/xt.d.ts +1 -0
  538. package/js/src/abstract/xt.js +0 -6
  539. package/js/src/abstract/yobit.js +0 -6
  540. package/js/src/abstract/zaif.js +0 -6
  541. package/js/src/abstract/zonda.js +0 -6
  542. package/js/src/ace.js +3 -6
  543. package/js/src/alpaca.js +5 -6
  544. package/js/src/ascendex.js +4 -7
  545. package/js/src/base/Exchange.d.ts +7 -3
  546. package/js/src/base/Exchange.js +116 -64
  547. package/js/src/base/Precise.js +0 -6
  548. package/js/src/base/errorHierarchy.js +0 -6
  549. package/js/src/base/errors.js +0 -6
  550. package/js/src/base/functions/crypto.js +0 -6
  551. package/js/src/base/functions/encode.js +0 -6
  552. package/js/src/base/functions/generic.js +0 -6
  553. package/js/src/base/functions/misc.js +0 -6
  554. package/js/src/base/functions/number.js +0 -6
  555. package/js/src/base/functions/platform.js +0 -6
  556. package/js/src/base/functions/rsa.js +0 -6
  557. package/js/src/base/functions/string.js +0 -6
  558. package/js/src/base/functions/throttle.js +0 -6
  559. package/js/src/base/functions/time.js +0 -6
  560. package/js/src/base/functions/totp.js +0 -6
  561. package/js/src/base/functions/type.js +0 -6
  562. package/js/src/base/functions.js +0 -6
  563. package/js/src/base/types.d.ts +2 -0
  564. package/js/src/base/types.js +0 -6
  565. package/js/src/base/ws/Cache.js +0 -6
  566. package/js/src/base/ws/Client.js +0 -6
  567. package/js/src/base/ws/Future.js +0 -6
  568. package/js/src/base/ws/OrderBook.js +0 -6
  569. package/js/src/base/ws/OrderBookSide.js +0 -6
  570. package/js/src/base/ws/WsClient.js +0 -6
  571. package/js/src/base/ws/functions.js +0 -6
  572. package/js/src/bequant.js +0 -6
  573. package/js/src/bigone.d.ts +1 -1
  574. package/js/src/bigone.js +5 -6
  575. package/js/src/binance.d.ts +30 -32
  576. package/js/src/binance.js +75 -62
  577. package/js/src/binancecoinm.js +0 -6
  578. package/js/src/binanceus.js +0 -6
  579. package/js/src/binanceusdm.js +0 -6
  580. package/js/src/bingx.d.ts +1 -1
  581. package/js/src/bingx.js +27 -36
  582. package/js/src/bit2c.js +3 -6
  583. package/js/src/bitbank.js +3 -6
  584. package/js/src/bitbns.js +3 -6
  585. package/js/src/bitcoincom.js +0 -6
  586. package/js/src/bitfinex.js +7 -8
  587. package/js/src/bitfinex1.js +0 -6
  588. package/js/src/bitflyer.js +5 -6
  589. package/js/src/bitget.js +16 -11
  590. package/js/src/bithumb.js +2 -6
  591. package/js/src/bitmart.d.ts +5 -5
  592. package/js/src/bitmart.js +33 -17
  593. package/js/src/bitmex.js +99 -99
  594. package/js/src/bitopro.d.ts +2 -2
  595. package/js/src/bitopro.js +5 -6
  596. package/js/src/bitpanda.js +0 -6
  597. package/js/src/bitrue.js +4 -6
  598. package/js/src/bitso.d.ts +2 -2
  599. package/js/src/bitso.js +3 -6
  600. package/js/src/bitstamp.js +3 -6
  601. package/js/src/bitteam.js +5 -6
  602. package/js/src/bitvavo.js +4 -6
  603. package/js/src/bl3p.js +0 -6
  604. package/js/src/blockchaincom.js +5 -7
  605. package/js/src/blofin.js +4 -8
  606. package/js/src/btcalpha.js +5 -6
  607. package/js/src/btcbox.js +3 -9
  608. package/js/src/btcmarkets.js +5 -6
  609. package/js/src/btcturk.js +3 -6
  610. package/js/src/bybit.d.ts +3 -3
  611. package/js/src/bybit.js +27 -10
  612. package/js/src/cex.js +2 -6
  613. package/js/src/coinbase.d.ts +4 -4
  614. package/js/src/coinbase.js +24 -15
  615. package/js/src/coinbaseadvanced.js +0 -6
  616. package/js/src/coinbaseexchange.js +5 -6
  617. package/js/src/coinbaseinternational.d.ts +1 -1
  618. package/js/src/coinbaseinternational.js +7 -9
  619. package/js/src/coincatch.js +4 -7
  620. package/js/src/coincheck.js +2 -6
  621. package/js/src/coinex.d.ts +1 -1
  622. package/js/src/coinex.js +5 -7
  623. package/js/src/coinlist.js +5 -6
  624. package/js/src/coinmate.js +5 -7
  625. package/js/src/coinmetro.js +9 -11
  626. package/js/src/coinone.js +4 -7
  627. package/js/src/coinsph.js +5 -7
  628. package/js/src/coinspot.js +2 -7
  629. package/js/src/cryptocom.js +5 -6
  630. package/js/src/currencycom.js +4 -7
  631. package/js/src/defx.js +5 -6
  632. package/js/src/delta.js +3 -6
  633. package/js/src/deribit.d.ts +4 -2
  634. package/js/src/deribit.js +14 -38
  635. package/js/src/digifinex.js +10 -11
  636. package/js/src/ellipx.d.ts +1 -1
  637. package/js/src/ellipx.js +9 -11
  638. package/js/src/exmo.d.ts +3 -3
  639. package/js/src/exmo.js +5 -8
  640. package/js/src/fmfwio.js +0 -6
  641. package/js/src/gate.js +4 -6
  642. package/js/src/gateio.js +0 -6
  643. package/js/src/gemini.js +3 -6
  644. package/js/src/hashkey.js +5 -10
  645. package/js/src/hitbtc.d.ts +2 -2
  646. package/js/src/hitbtc.js +4 -6
  647. package/js/src/hollaex.d.ts +2 -2
  648. package/js/src/hollaex.js +6 -7
  649. package/js/src/htx.js +9 -7
  650. package/js/src/huobi.js +0 -6
  651. package/js/src/huobijp.js +5 -6
  652. package/js/src/hyperliquid.d.ts +1 -1
  653. package/js/src/hyperliquid.js +19 -13
  654. package/js/src/idex.d.ts +1 -1
  655. package/js/src/idex.js +6 -8
  656. package/js/src/independentreserve.js +4 -6
  657. package/js/src/indodax.js +3 -6
  658. package/js/src/kraken.js +7 -11
  659. package/js/src/krakenfutures.js +5 -8
  660. package/js/src/kucoin.d.ts +2 -1
  661. package/js/src/kucoin.js +15 -13
  662. package/js/src/kucoinfutures.d.ts +1 -1
  663. package/js/src/kucoinfutures.js +5 -7
  664. package/js/src/kuna.js +3 -6
  665. package/js/src/latoken.js +4 -6
  666. package/js/src/lbank.js +6 -7
  667. package/js/src/luno.d.ts +1 -1
  668. package/js/src/luno.js +7 -8
  669. package/js/src/mercado.js +5 -7
  670. package/js/src/mexc.js +10 -15
  671. package/js/src/myokx.js +0 -6
  672. package/js/src/ndax.js +7 -8
  673. package/js/src/novadax.js +6 -7
  674. package/js/src/oceanex.d.ts +2 -2
  675. package/js/src/oceanex.js +4 -6
  676. package/js/src/okcoin.js +6 -8
  677. package/js/src/okx.js +18 -10
  678. package/js/src/onetrading.js +5 -7
  679. package/js/src/oxfun.js +3 -6
  680. package/js/src/p2b.js +3 -6
  681. package/js/src/paradex.js +9 -9
  682. package/js/src/paymium.js +0 -6
  683. package/js/src/phemex.d.ts +1 -1
  684. package/js/src/phemex.js +12 -11
  685. package/js/src/poloniex.js +6 -9
  686. package/js/src/poloniexfutures.d.ts +1 -1
  687. package/js/src/poloniexfutures.js +5 -7
  688. package/js/src/pro/alpaca.js +0 -6
  689. package/js/src/pro/ascendex.js +0 -6
  690. package/js/src/pro/bequant.js +0 -6
  691. package/js/src/pro/binance.js +2 -8
  692. package/js/src/pro/binancecoinm.js +0 -6
  693. package/js/src/pro/binanceus.js +0 -6
  694. package/js/src/pro/binanceusdm.js +0 -6
  695. package/js/src/pro/bingx.js +0 -6
  696. package/js/src/pro/bitcoincom.js +1 -10
  697. package/js/src/pro/bitfinex.js +0 -6
  698. package/js/src/pro/bitfinex1.js +0 -6
  699. package/js/src/pro/bitget.js +3 -9
  700. package/js/src/pro/bithumb.js +0 -6
  701. package/js/src/pro/bitmart.js +0 -6
  702. package/js/src/pro/bitmex.js +0 -6
  703. package/js/src/pro/bitopro.js +1 -7
  704. package/js/src/pro/bitpanda.js +0 -6
  705. package/js/src/pro/bitrue.js +0 -6
  706. package/js/src/pro/bitstamp.js +0 -6
  707. package/js/src/pro/bitvavo.js +0 -6
  708. package/js/src/pro/blockchaincom.js +0 -6
  709. package/js/src/pro/blofin.js +0 -6
  710. package/js/src/pro/bybit.js +16 -9
  711. package/js/src/pro/cex.js +1 -7
  712. package/js/src/pro/coinbase.js +0 -6
  713. package/js/src/pro/coinbaseadvanced.js +0 -6
  714. package/js/src/pro/coinbaseexchange.js +0 -6
  715. package/js/src/pro/coinbaseinternational.js +0 -6
  716. package/js/src/pro/coincatch.js +3 -9
  717. package/js/src/pro/coincheck.js +0 -6
  718. package/js/src/pro/coinex.js +0 -6
  719. package/js/src/pro/coinone.js +0 -6
  720. package/js/src/pro/cryptocom.js +0 -6
  721. package/js/src/pro/currencycom.js +0 -6
  722. package/js/src/pro/defx.js +0 -6
  723. package/js/src/pro/deribit.js +0 -6
  724. package/js/src/pro/exmo.js +0 -6
  725. package/js/src/pro/gate.js +0 -6
  726. package/js/src/pro/gateio.js +0 -6
  727. package/js/src/pro/gemini.js +0 -6
  728. package/js/src/pro/hashkey.js +0 -6
  729. package/js/src/pro/hitbtc.js +0 -6
  730. package/js/src/pro/hollaex.js +0 -6
  731. package/js/src/pro/htx.js +0 -6
  732. package/js/src/pro/huobi.js +0 -6
  733. package/js/src/pro/huobijp.js +0 -6
  734. package/js/src/pro/hyperliquid.js +0 -6
  735. package/js/src/pro/idex.js +0 -6
  736. package/js/src/pro/independentreserve.js +0 -6
  737. package/js/src/pro/kraken.js +0 -6
  738. package/js/src/pro/krakenfutures.js +0 -6
  739. package/js/src/pro/kucoin.js +0 -6
  740. package/js/src/pro/kucoinfutures.js +0 -6
  741. package/js/src/pro/lbank.js +0 -6
  742. package/js/src/pro/luno.js +0 -6
  743. package/js/src/pro/mexc.js +7 -10
  744. package/js/src/pro/myokx.js +0 -6
  745. package/js/src/pro/ndax.js +0 -6
  746. package/js/src/pro/okcoin.js +0 -6
  747. package/js/src/pro/okx.js +1 -7
  748. package/js/src/pro/onetrading.js +0 -6
  749. package/js/src/pro/oxfun.js +0 -6
  750. package/js/src/pro/p2b.js +0 -6
  751. package/js/src/pro/paradex.js +0 -6
  752. package/js/src/pro/phemex.js +0 -6
  753. package/js/src/pro/poloniex.js +0 -6
  754. package/js/src/pro/poloniexfutures.js +0 -6
  755. package/js/src/pro/probit.js +0 -6
  756. package/js/src/pro/upbit.js +0 -6
  757. package/js/src/pro/vertex.js +0 -6
  758. package/js/src/pro/wazirx.js +0 -6
  759. package/js/src/pro/whitebit.js +0 -6
  760. package/js/src/pro/woo.js +0 -6
  761. package/js/src/pro/woofipro.js +0 -6
  762. package/js/src/pro/xt.js +0 -6
  763. package/js/src/probit.js +5 -7
  764. package/js/src/static_dependencies/ethers/abi-coder.js +0 -6
  765. package/js/src/static_dependencies/ethers/address/address.js +0 -6
  766. package/js/src/static_dependencies/ethers/address/checks.js +0 -6
  767. package/js/src/static_dependencies/ethers/address/contract-address.js +0 -6
  768. package/js/src/static_dependencies/ethers/address/index.js +0 -6
  769. package/js/src/static_dependencies/ethers/bytes32.js +0 -6
  770. package/js/src/static_dependencies/ethers/coders/abstract-coder.js +0 -6
  771. package/js/src/static_dependencies/ethers/coders/address.js +0 -6
  772. package/js/src/static_dependencies/ethers/coders/anonymous.js +0 -6
  773. package/js/src/static_dependencies/ethers/coders/array.js +0 -6
  774. package/js/src/static_dependencies/ethers/coders/boolean.js +0 -6
  775. package/js/src/static_dependencies/ethers/coders/bytes.js +0 -6
  776. package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +0 -6
  777. package/js/src/static_dependencies/ethers/coders/null.js +0 -6
  778. package/js/src/static_dependencies/ethers/coders/number.js +0 -6
  779. package/js/src/static_dependencies/ethers/coders/string.js +0 -6
  780. package/js/src/static_dependencies/ethers/coders/tuple.js +0 -6
  781. package/js/src/static_dependencies/ethers/fragments.js +0 -6
  782. package/js/src/static_dependencies/ethers/hash/index.js +0 -6
  783. package/js/src/static_dependencies/ethers/hash/solidity.js +0 -6
  784. package/js/src/static_dependencies/ethers/hash/typed-data.js +0 -6
  785. package/js/src/static_dependencies/ethers/index.js +0 -6
  786. package/js/src/static_dependencies/ethers/interface.js +0 -6
  787. package/js/src/static_dependencies/ethers/typed.js +0 -6
  788. package/js/src/static_dependencies/ethers/utils/base58.js +0 -6
  789. package/js/src/static_dependencies/ethers/utils/base64-browser.js +0 -6
  790. package/js/src/static_dependencies/ethers/utils/base64.js +0 -6
  791. package/js/src/static_dependencies/ethers/utils/data.js +0 -6
  792. package/js/src/static_dependencies/ethers/utils/errors.js +0 -6
  793. package/js/src/static_dependencies/ethers/utils/events.js +0 -6
  794. package/js/src/static_dependencies/ethers/utils/fixednumber.js +0 -6
  795. package/js/src/static_dependencies/ethers/utils/index.js +0 -6
  796. package/js/src/static_dependencies/ethers/utils/maths.js +0 -6
  797. package/js/src/static_dependencies/ethers/utils/properties.js +0 -6
  798. package/js/src/static_dependencies/ethers/utils/rlp-decode.js +0 -6
  799. package/js/src/static_dependencies/ethers/utils/rlp-encode.js +0 -6
  800. package/js/src/static_dependencies/ethers/utils/rlp.js +0 -6
  801. package/js/src/static_dependencies/ethers/utils/units.js +0 -6
  802. package/js/src/static_dependencies/ethers/utils/utf8.js +0 -6
  803. package/js/src/static_dependencies/ethers/utils/uuid.js +0 -6
  804. package/js/src/static_dependencies/fflake/browser.js +0 -6
  805. package/js/src/static_dependencies/jsencrypt/JSEncrypt.js +0 -6
  806. package/js/src/static_dependencies/jsencrypt/JSEncryptRSAKey.js +0 -6
  807. package/js/src/static_dependencies/jsencrypt/index.js +0 -6
  808. package/js/src/static_dependencies/jsencrypt/lib/asn1js/asn1.js +0 -6
  809. package/js/src/static_dependencies/jsencrypt/lib/asn1js/base64.js +0 -6
  810. package/js/src/static_dependencies/jsencrypt/lib/asn1js/hex.js +0 -6
  811. package/js/src/static_dependencies/jsencrypt/lib/asn1js/int10.js +0 -6
  812. package/js/src/static_dependencies/jsencrypt/lib/asn1js/oids.js +0 -6
  813. package/js/src/static_dependencies/jsencrypt/lib/jsbn/base64.js +0 -6
  814. package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.js +0 -6
  815. package/js/src/static_dependencies/jsencrypt/lib/jsbn/prng4.js +0 -6
  816. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rng.js +0 -6
  817. package/js/src/static_dependencies/jsencrypt/lib/jsbn/rsa.js +0 -6
  818. package/js/src/static_dependencies/jsencrypt/lib/jsbn/util.js +0 -6
  819. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/asn1-1.0.js +0 -6
  820. package/js/src/static_dependencies/jsencrypt/lib/jsrsasign/yahoo.js +0 -6
  821. package/js/src/static_dependencies/messagepack/msgpack.js +0 -6
  822. package/js/src/static_dependencies/noble-curves/_shortw_utils.js +0 -6
  823. package/js/src/static_dependencies/noble-curves/abstract/curve.js +0 -6
  824. package/js/src/static_dependencies/noble-curves/abstract/edwards.js +0 -6
  825. package/js/src/static_dependencies/noble-curves/abstract/hash-to-curve.js +0 -6
  826. package/js/src/static_dependencies/noble-curves/abstract/modular.js +0 -6
  827. package/js/src/static_dependencies/noble-curves/abstract/montgomery.js +0 -6
  828. package/js/src/static_dependencies/noble-curves/abstract/poseidon.js +0 -6
  829. package/js/src/static_dependencies/noble-curves/abstract/utils.js +0 -6
  830. package/js/src/static_dependencies/noble-curves/abstract/weierstrass.js +0 -6
  831. package/js/src/static_dependencies/noble-curves/bn.js +0 -6
  832. package/js/src/static_dependencies/noble-curves/ed25519.js +0 -6
  833. package/js/src/static_dependencies/noble-curves/ed448.js +0 -6
  834. package/js/src/static_dependencies/noble-curves/index.js +0 -6
  835. package/js/src/static_dependencies/noble-curves/jubjub.js +0 -6
  836. package/js/src/static_dependencies/noble-curves/p256.js +0 -6
  837. package/js/src/static_dependencies/noble-curves/p384.js +0 -6
  838. package/js/src/static_dependencies/noble-curves/p521.js +0 -6
  839. package/js/src/static_dependencies/noble-curves/pasta.js +0 -6
  840. package/js/src/static_dependencies/noble-curves/secp256k1.js +0 -6
  841. package/js/src/static_dependencies/noble-hashes/_assert.js +0 -6
  842. package/js/src/static_dependencies/noble-hashes/_blake2.js +0 -6
  843. package/js/src/static_dependencies/noble-hashes/_sha2.js +0 -6
  844. package/js/src/static_dependencies/noble-hashes/_u64.js +0 -6
  845. package/js/src/static_dependencies/noble-hashes/argon2.js +0 -6
  846. package/js/src/static_dependencies/noble-hashes/blake2b.js +0 -6
  847. package/js/src/static_dependencies/noble-hashes/blake2s.js +0 -6
  848. package/js/src/static_dependencies/noble-hashes/blake3.js +0 -6
  849. package/js/src/static_dependencies/noble-hashes/crypto.js +0 -6
  850. package/js/src/static_dependencies/noble-hashes/cryptoNode.js +0 -6
  851. package/js/src/static_dependencies/noble-hashes/eskdf.js +0 -6
  852. package/js/src/static_dependencies/noble-hashes/hkdf.js +0 -6
  853. package/js/src/static_dependencies/noble-hashes/hmac.js +0 -6
  854. package/js/src/static_dependencies/noble-hashes/index.js +0 -6
  855. package/js/src/static_dependencies/noble-hashes/md5.js +0 -6
  856. package/js/src/static_dependencies/noble-hashes/pbkdf2.js +0 -6
  857. package/js/src/static_dependencies/noble-hashes/ripemd160.js +0 -6
  858. package/js/src/static_dependencies/noble-hashes/scrypt.js +0 -6
  859. package/js/src/static_dependencies/noble-hashes/sha1.js +0 -6
  860. package/js/src/static_dependencies/noble-hashes/sha256.js +0 -6
  861. package/js/src/static_dependencies/noble-hashes/sha3-addons.js +0 -6
  862. package/js/src/static_dependencies/noble-hashes/sha3.js +0 -6
  863. package/js/src/static_dependencies/noble-hashes/sha512.js +0 -6
  864. package/js/src/static_dependencies/noble-hashes/utils.js +0 -6
  865. package/js/src/static_dependencies/node-fetch/body.js +0 -6
  866. package/js/src/static_dependencies/node-fetch/errors/abort-error.js +0 -6
  867. package/js/src/static_dependencies/node-fetch/errors/base.js +0 -6
  868. package/js/src/static_dependencies/node-fetch/errors/fetch-error.js +0 -6
  869. package/js/src/static_dependencies/node-fetch/headers.d.ts +5 -0
  870. package/js/src/static_dependencies/node-fetch/headers.js +0 -6
  871. package/js/src/static_dependencies/node-fetch/index.js +0 -6
  872. package/js/src/static_dependencies/node-fetch/request.js +0 -6
  873. package/js/src/static_dependencies/node-fetch/response.js +0 -6
  874. package/js/src/static_dependencies/node-fetch/utils/get-search.js +0 -6
  875. package/js/src/static_dependencies/node-fetch/utils/is-redirect.js +0 -6
  876. package/js/src/static_dependencies/node-fetch/utils/is.js +0 -6
  877. package/js/src/static_dependencies/node-fetch/utils/referrer.js +0 -6
  878. package/js/src/static_dependencies/proxies/agent-base/helpers.d.ts +1 -0
  879. package/js/src/static_dependencies/proxies/agent-base/helpers.js +0 -6
  880. package/js/src/static_dependencies/proxies/agent-base/index.js +0 -6
  881. package/js/src/static_dependencies/proxies/http-proxy-agent/index.js +0 -6
  882. package/js/src/static_dependencies/proxies/https-proxy-agent/index.js +0 -6
  883. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.d.ts +1 -0
  884. package/js/src/static_dependencies/proxies/https-proxy-agent/parse-proxy-response.js +0 -6
  885. package/js/src/static_dependencies/qs/formats.cjs +0 -6
  886. package/js/src/static_dependencies/qs/index.cjs +0 -6
  887. package/js/src/static_dependencies/qs/parse.cjs +0 -6
  888. package/js/src/static_dependencies/qs/stringify.cjs +0 -6
  889. package/js/src/static_dependencies/qs/utils.cjs +0 -6
  890. package/js/src/static_dependencies/scure-base/index.js +0 -6
  891. package/js/src/static_dependencies/scure-starknet/index.js +0 -6
  892. package/js/src/static_dependencies/starknet/constants.js +0 -6
  893. package/js/src/static_dependencies/starknet/index.js +0 -6
  894. package/js/src/static_dependencies/starknet/types/cairoEnum.js +0 -6
  895. package/js/src/static_dependencies/starknet/types/calldata.js +0 -6
  896. package/js/src/static_dependencies/starknet/types/index.js +0 -6
  897. package/js/src/static_dependencies/starknet/types/lib/contract/abi.js +0 -6
  898. package/js/src/static_dependencies/starknet/types/lib/contract/index.js +0 -6
  899. package/js/src/static_dependencies/starknet/types/lib/contract/legacy.js +0 -6
  900. package/js/src/static_dependencies/starknet/types/lib/contract/sierra.js +0 -6
  901. package/js/src/static_dependencies/starknet/types/lib/index.js +0 -6
  902. package/js/src/static_dependencies/starknet/types/typedData.js +0 -6
  903. package/js/src/static_dependencies/starknet/utils/address.js +0 -6
  904. package/js/src/static_dependencies/starknet/utils/assert.js +0 -6
  905. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/felt.js +0 -6
  906. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint256.js +0 -6
  907. package/js/src/static_dependencies/starknet/utils/cairoDataTypes/uint512.js +0 -6
  908. package/js/src/static_dependencies/starknet/utils/calldata/byteArray.js +0 -6
  909. package/js/src/static_dependencies/starknet/utils/calldata/cairo.js +0 -6
  910. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoCustomEnum.js +0 -6
  911. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoOption.js +0 -6
  912. package/js/src/static_dependencies/starknet/utils/calldata/enum/CairoResult.js +0 -6
  913. package/js/src/static_dependencies/starknet/utils/calldata/enum/index.js +0 -6
  914. package/js/src/static_dependencies/starknet/utils/calldata/formatter.js +0 -6
  915. package/js/src/static_dependencies/starknet/utils/calldata/index.js +0 -6
  916. package/js/src/static_dependencies/starknet/utils/calldata/parser/index.js +0 -6
  917. package/js/src/static_dependencies/starknet/utils/calldata/parser/interface.js +0 -6
  918. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-0-1.1.0.js +0 -6
  919. package/js/src/static_dependencies/starknet/utils/calldata/parser/parser-2.0.0.js +0 -6
  920. package/js/src/static_dependencies/starknet/utils/calldata/propertyOrder.js +0 -6
  921. package/js/src/static_dependencies/starknet/utils/calldata/requestParser.js +0 -6
  922. package/js/src/static_dependencies/starknet/utils/calldata/responseParser.js +0 -6
  923. package/js/src/static_dependencies/starknet/utils/calldata/tuple.js +0 -6
  924. package/js/src/static_dependencies/starknet/utils/calldata/validate.js +0 -6
  925. package/js/src/static_dependencies/starknet/utils/encode.js +0 -6
  926. package/js/src/static_dependencies/starknet/utils/hash/classHash.js +0 -6
  927. package/js/src/static_dependencies/starknet/utils/hash/index.js +0 -6
  928. package/js/src/static_dependencies/starknet/utils/merkle.js +0 -6
  929. package/js/src/static_dependencies/starknet/utils/num.js +0 -6
  930. package/js/src/static_dependencies/starknet/utils/selector.js +0 -6
  931. package/js/src/static_dependencies/starknet/utils/shortString.js +0 -6
  932. package/js/src/static_dependencies/starknet/utils/starknetId.js +0 -6
  933. package/js/src/static_dependencies/starknet/utils/typedData.js +0 -6
  934. package/js/src/static_dependencies/starknet/utils/uint256.js +0 -6
  935. package/js/src/static_dependencies/starknet/utils/url.js +0 -6
  936. package/js/src/static_dependencies/watchable/src/index.js +0 -6
  937. package/js/src/static_dependencies/watchable/src/types.js +0 -6
  938. package/js/src/static_dependencies/watchable/src/unpromise.js +0 -6
  939. package/js/src/timex.d.ts +1 -0
  940. package/js/src/timex.js +20 -9
  941. package/js/src/tokocrypto.js +6 -7
  942. package/js/src/tradeogre.js +2 -6
  943. package/js/src/upbit.d.ts +2 -2
  944. package/js/src/upbit.js +3 -6
  945. package/js/src/vertex.js +7 -9
  946. package/js/src/wavesexchange.d.ts +2 -1
  947. package/js/src/wavesexchange.js +24 -10
  948. package/js/src/wazirx.js +2 -6
  949. package/js/src/whitebit.js +7 -11
  950. package/js/src/woo.d.ts +1 -1
  951. package/js/src/woo.js +15 -11
  952. package/js/src/woofipro.d.ts +1 -1
  953. package/js/src/woofipro.js +25 -15
  954. package/js/src/xt.d.ts +12 -0
  955. package/js/src/xt.js +67 -9
  956. package/js/src/yobit.d.ts +2 -2
  957. package/js/src/yobit.js +4 -7
  958. package/js/src/zaif.js +2 -6
  959. package/js/src/zonda.js +3 -7
  960. package/package.json +25 -7
  961. package/dist/cjs/src/abstract/lykke.js +0 -9
  962. package/dist/cjs/src/lykke.js +0 -1401
  963. package/js/src/abstract/lykke.d.ts +0 -32
  964. package/js/src/abstract/lykke.js +0 -11
  965. package/js/src/lykke.d.ts +0 -212
  966. package/js/src/lykke.js +0 -1402
package/js/src/lykke.js DELETED
@@ -1,1402 +0,0 @@
1
- // ----------------------------------------------------------------------------
2
-
3
- // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
- // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
- // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
-
7
- // ---------------------------------------------------------------------------
8
- import Exchange from './abstract/lykke.js';
9
- import { NotSupported, ExchangeError, BadRequest, InsufficientFunds, InvalidOrder, DuplicateOrderId } from './base/errors.js';
10
- import { Precise } from './base/Precise.js';
11
- import { TICK_SIZE } from './base/functions/number.js';
12
- // ---------------------------------------------------------------------------
13
- /**
14
- * @class lykke
15
- * @augments Exchange
16
- */
17
- export default class lykke extends Exchange {
18
- describe() {
19
- return this.deepExtend(super.describe(), {
20
- 'id': 'lykke',
21
- 'name': 'Lykke',
22
- 'countries': ['UK'],
23
- 'version': '2',
24
- // 300 requests per minute per method => 60000ms / 300 = 200 (/api/orders/*)
25
- // 120 requests per minute per method => ( 60000ms / rateLimit ) / 120 = cost = 2.5 (/api/*)
26
- 'rateLimit': 200,
27
- 'has': {
28
- 'CORS': undefined,
29
- 'spot': true,
30
- 'margin': false,
31
- 'swap': false,
32
- 'future': false,
33
- 'option': false,
34
- 'cancelAllOrders': true,
35
- 'cancelOrder': true,
36
- 'createOrder': true,
37
- 'createStopLimitOrder': false,
38
- 'createStopMarketOrder': false,
39
- 'createStopOrder': false,
40
- 'editOrder': false,
41
- 'fetchBalance': true,
42
- 'fetchBorrowRateHistories': false,
43
- 'fetchBorrowRateHistory': false,
44
- 'fetchClosedOrders': true,
45
- 'fetchCrossBorrowRate': false,
46
- 'fetchCrossBorrowRates': false,
47
- 'fetchCurrencies': true,
48
- 'fetchDepositAddress': true,
49
- 'fetchDepositAddresses': false,
50
- 'fetchDepositAddressesByNetwork': false,
51
- 'fetchDeposits': false,
52
- 'fetchDepositsWithdrawals': true,
53
- 'fetchFundingHistory': false,
54
- 'fetchFundingRate': false,
55
- 'fetchFundingRateHistory': false,
56
- 'fetchFundingRates': false,
57
- 'fetchIndexOHLCV': false,
58
- 'fetchIsolatedBorrowRate': false,
59
- 'fetchIsolatedBorrowRates': false,
60
- 'fetchMarginMode': false,
61
- 'fetchMarkets': true,
62
- 'fetchMarkOHLCV': false,
63
- 'fetchMyTrades': true,
64
- 'fetchOHLCV': undefined,
65
- 'fetchOpenInterestHistory': false,
66
- 'fetchOpenOrders': true,
67
- 'fetchOrder': true,
68
- 'fetchOrderBook': true,
69
- 'fetchOrders': false,
70
- 'fetchOrderTrades': false,
71
- 'fetchPosition': false,
72
- 'fetchPositionHistory': false,
73
- 'fetchPositionMode': false,
74
- 'fetchPositions': false,
75
- 'fetchPositionsForSymbol': false,
76
- 'fetchPositionsHistory': false,
77
- 'fetchPositionsRisk': false,
78
- 'fetchPremiumIndexOHLCV': false,
79
- 'fetchTicker': true,
80
- 'fetchTickers': true,
81
- 'fetchTime': false,
82
- 'fetchTrades': true,
83
- 'fetchTradingFee': false,
84
- 'fetchTradingFees': false,
85
- 'fetchTransactionFees': false,
86
- 'fetchTransactions': 'emulated',
87
- 'fetchWithdrawals': false,
88
- 'setLeverage': false,
89
- 'setMarginMode': false,
90
- 'withdraw': true,
91
- },
92
- 'requiredCredentials': {
93
- 'apiKey': true,
94
- 'secret': false,
95
- },
96
- 'urls': {
97
- 'logo': 'https://user-images.githubusercontent.com/1294454/155840500-1ea4fdf0-47c0-4daa-9597-c6c1cd51b9ec.jpg',
98
- 'api': {
99
- 'public': 'https://hft-apiv2.lykke.com/api',
100
- 'private': 'https://hft-apiv2.lykke.com/api',
101
- },
102
- 'www': 'https://www.lykke.com',
103
- 'doc': [
104
- 'https://hft-apiv2.lykke.com/swagger/ui/index.html',
105
- 'https://lykkecity.github.io/Trading-API',
106
- ],
107
- 'fees': 'https://support.lykke.com/hc/en-us/articles/115002141125-What-are-the-fees-and-charges-', // zero fee
108
- },
109
- 'api': {
110
- 'public': {
111
- 'get': {
112
- 'assetpairs': 2.5,
113
- 'assetpairs/{id}': 2.5,
114
- 'assets': 2.5,
115
- 'assets/{id}': 2.5,
116
- 'isalive': 2.5,
117
- 'orderbooks': 2.5,
118
- 'tickers': 2.5,
119
- 'prices': 2.5,
120
- 'trades/public/{assetPairId}': 2.5,
121
- },
122
- },
123
- 'private': {
124
- 'get': {
125
- 'balance': 2.5,
126
- 'trades': 2.5,
127
- 'trades/order/{orderId}': 2.5,
128
- 'orders/active': 1,
129
- 'orders/closed': 1,
130
- 'orders/{orderId}': 1,
131
- 'operations': 2.5,
132
- 'operations/deposits/addresses': 2.5,
133
- 'operations/deposits/addresses/{assetId}': 2.5,
134
- },
135
- 'post': {
136
- 'orders/limit': 1,
137
- 'orders/market': 1,
138
- 'orders/bulk': 1,
139
- 'operations/withdrawals': 2.5,
140
- 'operations/deposits/addresses': 2.5,
141
- },
142
- 'delete': {
143
- 'orders': 1,
144
- 'orders/{orderId}': 1,
145
- },
146
- },
147
- },
148
- 'fees': {
149
- 'trading': {
150
- 'tierBased': false,
151
- 'percentage': true,
152
- 'maker': 0,
153
- 'taker': 0,
154
- },
155
- },
156
- 'precisionMode': TICK_SIZE,
157
- 'exceptions': {
158
- 'exact': {
159
- '1001': ExchangeError,
160
- '1100': ExchangeError,
161
- '1101': ExchangeError,
162
- '2000': BadRequest,
163
- '2001': InsufficientFunds,
164
- '2202': DuplicateOrderId,
165
- '2003': ExchangeError,
166
- '2004': NotSupported,
167
- '2005': ExchangeError,
168
- '2006': InsufficientFunds,
169
- '2007': InsufficientFunds,
170
- '2008': InsufficientFunds,
171
- '2009': ExchangeError,
172
- '2010': InsufficientFunds,
173
- '2011': InvalidOrder,
174
- '2012': InvalidOrder,
175
- '2013': InvalidOrder,
176
- '2014': InvalidOrder,
177
- '2015': InvalidOrder,
178
- '2016': InvalidOrder,
179
- '2017': InvalidOrder,
180
- '2018': InvalidOrder,
181
- '2019': InvalidOrder,
182
- '2020': InvalidOrder,
183
- '2021': InvalidOrder,
184
- '2022': InvalidOrder,
185
- '2023': ExchangeError,
186
- },
187
- 'broad': {},
188
- },
189
- 'commonCurrencies': {},
190
- 'features': {
191
- 'spot': {
192
- 'sandbox': false,
193
- 'createOrder': {
194
- 'marginMode': false,
195
- 'triggerPrice': false,
196
- 'triggerPriceType': undefined,
197
- 'triggerDirection': false,
198
- 'stopLossPrice': false,
199
- 'takeProfitPrice': false,
200
- 'attachedStopLossTakeProfit': undefined,
201
- 'timeInForce': {
202
- 'IOC': false,
203
- 'FOK': false,
204
- 'PO': false,
205
- 'GTD': false,
206
- },
207
- 'hedged': false,
208
- 'trailing': false,
209
- 'leverage': false,
210
- 'marketBuyByCost': false,
211
- 'marketBuyRequiresPrice': false,
212
- 'selfTradePrevention': false,
213
- 'iceberg': false,
214
- },
215
- 'createOrders': undefined,
216
- 'fetchMyTrades': {
217
- 'marginMode': false,
218
- 'limit': 1000,
219
- 'daysBack': 100000,
220
- 'untilDays': 100000, // todo
221
- },
222
- 'fetchOrder': {
223
- 'marginMode': false,
224
- 'trigger': false,
225
- 'trailing': false,
226
- },
227
- 'fetchOpenOrders': {
228
- 'marginMode': false,
229
- 'limit': 1000,
230
- 'trigger': false,
231
- 'trailing': false,
232
- },
233
- 'fetchOrders': undefined,
234
- 'fetchClosedOrders': {
235
- 'marginMode': false,
236
- 'limit': 1000,
237
- 'daysBack': undefined,
238
- 'daysBackCanceled': undefined,
239
- 'untilDays': undefined,
240
- 'trigger': false,
241
- 'trailing': false,
242
- },
243
- 'fetchOHLCV': undefined,
244
- },
245
- 'swap': {
246
- 'linear': undefined,
247
- 'inverse': undefined,
248
- },
249
- 'future': {
250
- 'linear': undefined,
251
- 'inverse': undefined,
252
- },
253
- },
254
- });
255
- }
256
- /**
257
- * @method
258
- * @name lykke#fetchCurrencies
259
- * @description fetches all available currencies on an exchange
260
- * @see https://lykkecity.github.io/Trading-API/#get-all-assets
261
- * @param {object} [params] extra parameters specific to the exchange API endpoint
262
- * @returns {object} an associative dictionary of currencies
263
- */
264
- async fetchCurrencies(params = {}) {
265
- const response = await this.publicGetAssets(params);
266
- const currencies = this.safeValue(response, 'payload', []);
267
- //
268
- // {
269
- // "payload":[
270
- // {
271
- // "assetId":"115a60c2-0da1-40f9-a7f2-41da723b9075",
272
- // "name":"Monaco Token",
273
- // "symbol":"MCO",
274
- // "accuracy":6,
275
- // "multiplierPower":8,
276
- // "assetAddress":"",
277
- // "blockchainIntegrationLayerId":"",
278
- // "blockchain":"ethereum",
279
- // "type":"erc20Token",
280
- // "isTradable":true,
281
- // "isTrusted":true,
282
- // "kycNeeded":false,
283
- // "blockchainWithdrawal":true,
284
- // "cashoutMinimalAmount":0.1,
285
- // "lowVolumeAmount":null,
286
- // "lykkeEntityId":"LYKKE NL",
287
- // "siriusAssetId":0,
288
- // "siriusBlockchainId":null,
289
- // "blockchainIntegrationType":"none",
290
- // "blockchainDepositEnabled":false,
291
- // "isDisabled":false
292
- // }
293
- // ],
294
- // "error":null
295
- // }
296
- //
297
- const result = {};
298
- for (let i = 0; i < currencies.length; i++) {
299
- const currency = currencies[i];
300
- const id = this.safeString(currency, 'assetId');
301
- const code = this.safeString(currency, 'symbol');
302
- const name = this.safeString(currency, 'name');
303
- const rawType = this.safeString(currency, 'type');
304
- const type = (rawType === 'erc20Token') ? 'crypto' : 'other';
305
- const deposit = this.safeValue(currency, 'blockchainDepositEnabled');
306
- const withdraw = this.safeValue(currency, 'blockchainWithdrawal');
307
- const isDisabled = this.safeValue(currency, 'isDisabled');
308
- const active = !isDisabled;
309
- result[code] = {
310
- 'id': id,
311
- 'code': code,
312
- 'info': currency,
313
- 'type': type,
314
- 'name': name,
315
- 'active': active,
316
- 'deposit': deposit,
317
- 'withdraw': withdraw,
318
- 'fee': undefined,
319
- 'precision': this.parseNumber(this.parsePrecision(this.safeString(currency, 'accuracy'))),
320
- 'limits': {
321
- 'withdraw': {
322
- 'min': this.safeValue(currency, 'cashoutMinimalAmount'),
323
- 'max': undefined,
324
- },
325
- 'amount': {
326
- 'min': this.safeValue(currency, 'lowVolumeAmount'),
327
- 'max': undefined,
328
- },
329
- },
330
- 'networks': {},
331
- };
332
- }
333
- return result;
334
- }
335
- /**
336
- * @method
337
- * @name lykke#fetchMarkets
338
- * @description retrieves data on all markets for lykke
339
- * @see https://lykkecity.github.io/Trading-API/#get-asset-by-id
340
- * @param {object} [params] extra parameters specific to the exchange API endpoint
341
- * @returns {object[]} an array of objects representing market data
342
- */
343
- async fetchMarkets(params = {}) {
344
- const response = await this.publicGetAssetpairs(params);
345
- const markets = this.safeValue(response, 'payload', []);
346
- //
347
- // {
348
- // "payload":[
349
- // {
350
- // "assetPairId":"AAVEBTC",
351
- // "baseAssetId":"c9e55548-dae5-44fc-bebd-e72249cb19f3",
352
- // "quoteAssetId":"BTC",
353
- // "name":"AAVE/BTC",
354
- // "priceAccuracy":6,
355
- // "baseAssetAccuracy":6,
356
- // "quoteAssetAccuracy":8,
357
- // "minVolume":0.001,
358
- // "minOppositeVolume":0.0001
359
- // }
360
- // ],
361
- // "error":null
362
- // }
363
- //
364
- const result = [];
365
- for (let i = 0; i < markets.length; i++) {
366
- const market = markets[i];
367
- const id = this.safeString(market, 'assetPairId');
368
- const name = this.safeString(market, 'name');
369
- const baseAssetId = this.safeString(market, 'baseAssetId');
370
- const quoteAssetId = this.safeString(market, 'quoteAssetId');
371
- const [baseId, quoteId] = name.split('/');
372
- const base = this.safeCurrencyCode(baseId);
373
- const quote = this.safeCurrencyCode(quoteId);
374
- const symbol = base + '/' + quote;
375
- result.push({
376
- 'id': id,
377
- 'symbol': symbol,
378
- 'base': base,
379
- 'quote': quote,
380
- 'baseId': baseAssetId,
381
- 'quoteId': quoteAssetId,
382
- 'settle': undefined,
383
- 'settleId': undefined,
384
- 'type': 'spot',
385
- 'spot': true,
386
- 'margin': false,
387
- 'swap': false,
388
- 'future': false,
389
- 'option': false,
390
- 'contract': false,
391
- 'active': true,
392
- 'linear': undefined,
393
- 'inverse': undefined,
394
- 'contractSize': undefined,
395
- 'expiry': undefined,
396
- 'expiryDatetime': undefined,
397
- 'strike': undefined,
398
- 'optionType': undefined,
399
- 'precision': {
400
- 'amount': this.parseNumber(this.parsePrecision(this.safeString(market, 'baseAssetAccuracy'))),
401
- 'price': this.parseNumber(this.parsePrecision(this.safeString(market, 'priceAccuracy'))),
402
- },
403
- 'limits': {
404
- 'amount': {
405
- 'min': this.safeNumber(market, 'minVolume'),
406
- 'max': undefined,
407
- },
408
- 'price': {
409
- 'min': undefined,
410
- 'max': undefined,
411
- },
412
- 'cost': {
413
- 'min': this.safeNumber(market, 'minOppositeVolume'),
414
- 'max': undefined,
415
- },
416
- 'leverage': {
417
- 'min': undefined,
418
- 'max': undefined,
419
- },
420
- },
421
- 'created': undefined,
422
- 'info': market,
423
- });
424
- }
425
- return result;
426
- }
427
- parseTicker(ticker, market = undefined) {
428
- //
429
- // fetchTickers
430
- //
431
- // publicGetTickers
432
- //
433
- // {
434
- // "assetPairId":"BTCUSD",
435
- // "volumeBase":2.56905016,
436
- // "volumeQuote":95653.8730,
437
- // "priceChange":-0.0367945778541765034194707584,
438
- // "lastPrice":36840.0,
439
- // "high":38371.645,
440
- // "low":35903.356,
441
- // "timestamp":1643295740729
442
- // }
443
- //
444
- // fetchTicker
445
- //
446
- // publicGetTickers
447
- //
448
- // {
449
- // "assetPairId":"BTCUSD",
450
- // "volumeBase":2.56905016,
451
- // "volumeQuote":95653.8730,
452
- // "priceChange":-0.0367945778541765034194707584,
453
- // "lastPrice":36840.0,
454
- // "high":38371.645,
455
- // "low":35903.356,
456
- // "timestamp":1643295740729
457
- // }
458
- //
459
- // publicGetPrices
460
- //
461
- // {
462
- // "assetPairId":"BTCUSD",
463
- // "bid":36181.521,
464
- // "ask":36244.492,
465
- // "timestamp":1643305510990
466
- // }
467
- //
468
- const timestamp = undefined; // temporary bug in lykke api, returns unrealistic numbers
469
- const marketId = this.safeString(ticker, 'assetPairId');
470
- market = this.safeMarket(marketId, market);
471
- const close = this.safeString(ticker, 'lastPrice');
472
- return this.safeTicker({
473
- 'symbol': this.safeString(market, 'symbol'),
474
- 'timestamp': timestamp,
475
- 'datetime': this.iso8601(timestamp),
476
- 'high': this.safeString(ticker, 'high'),
477
- 'low': this.safeString(ticker, 'low'),
478
- 'bid': this.safeString(ticker, 'bid'),
479
- 'bidVolume': undefined,
480
- 'ask': this.safeString(ticker, 'ask'),
481
- 'askVolume': undefined,
482
- 'vwap': undefined,
483
- 'open': undefined,
484
- 'close': close,
485
- 'last': close,
486
- 'previousClose': undefined,
487
- 'change': this.safeString(ticker, 'priceChange'),
488
- 'percentage': undefined,
489
- 'average': undefined,
490
- 'baseVolume': this.safeString(ticker, 'volumeBase'),
491
- 'quoteVolume': this.safeString(ticker, 'volumeQuote'),
492
- 'info': ticker,
493
- }, market);
494
- }
495
- /**
496
- * @method
497
- * @name lykke#fetchTicker
498
- * @description fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
499
- * @see https://lykkecity.github.io/Trading-API/#get-current-prices
500
- * @see https://lykkecity.github.io/Trading-API/#24hr-ticker-price-change-statistics
501
- * @param {string} symbol unified symbol of the market to fetch the ticker for
502
- * @param {object} [params] extra parameters specific to the exchange API endpoint
503
- * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
504
- */
505
- async fetchTicker(symbol, params = {}) {
506
- await this.loadMarkets();
507
- const market = this.market(symbol);
508
- const request = {
509
- 'assetPairIds': market['id'],
510
- };
511
- // publicGetTickers or publicGetPrices
512
- const method = this.safeString(this.options, 'fetchTickerMethod', 'publicGetTickers');
513
- let response = undefined;
514
- if (method === 'publicGetPrices') {
515
- response = await this.publicGetPrices(this.extend(request, params));
516
- }
517
- else {
518
- response = await this.publicGetTickers(this.extend(request, params));
519
- }
520
- const ticker = this.safeValue(response, 'payload', []);
521
- //
522
- // publicGetTickers
523
- //
524
- // {
525
- // "payload":[
526
- // {
527
- // "assetPairId":"BTCUSD",
528
- // "volumeBase":0.78056880,
529
- // "volumeQuote":29782.5169,
530
- // "priceChange":0.0436602362590968619931324699,
531
- // "lastPrice":38626.885,
532
- // "high":38742.896,
533
- // "low":36872.498,
534
- // "timestamp":1643687822840
535
- // }
536
- // ],
537
- // "error":null
538
- // }
539
- //
540
- // publicGetPrices
541
- //
542
- // {
543
- // "payload":[
544
- // {
545
- // "assetPairId":"BTCUSD",
546
- // "bid":38597.936,
547
- // "ask":38640.311,
548
- // "timestamp":1643688350847
549
- // }
550
- // ],
551
- // "error":null
552
- // }
553
- //
554
- return this.parseTicker(this.safeValue(ticker, 0, {}), market);
555
- }
556
- /**
557
- * @method
558
- * @name lykke#fetchTickers
559
- * @description fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
560
- * @see https://lykkecity.github.io/Trading-API/#24hr-ticker-price-change-statistics
561
- * @param {string[]|undefined} symbols unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
562
- * @param {object} [params] extra parameters specific to the exchange API endpoint
563
- * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
564
- */
565
- async fetchTickers(symbols = undefined, params = {}) {
566
- await this.loadMarkets();
567
- const response = await this.publicGetTickers(params);
568
- const tickers = this.safeValue(response, 'payload', []);
569
- //
570
- // {
571
- // "payload":[
572
- // {
573
- // "assetPairId":"BTCUSD",
574
- // "volumeBase":0.78056880,
575
- // "volumeQuote":29782.5169,
576
- // "priceChange":0.0436602362590968619931324699,
577
- // "lastPrice":38626.885,
578
- // "high":38742.896,
579
- // "low":36872.498,
580
- // "timestamp":1643687822840
581
- // }
582
- // ],
583
- // "error":null
584
- // }
585
- //
586
- return this.parseTickers(tickers, symbols);
587
- }
588
- /**
589
- * @method
590
- * @name lykke#fetchOrderBook
591
- * @description fetches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
592
- * @see https://lykkecity.github.io/Trading-API/#asset-pair-order-book-ticker
593
- * @param {string} symbol unified symbol of the market to fetch the order book for
594
- * @param {int} [limit] the maximum amount of order book entries to return
595
- * @param {object} [params] extra parameters specific to the exchange API endpoint
596
- * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
597
- */
598
- async fetchOrderBook(symbol, limit = undefined, params = {}) {
599
- await this.loadMarkets();
600
- const market = this.market(symbol);
601
- const request = {
602
- 'assetPairId': market['id'],
603
- };
604
- if (limit !== undefined) {
605
- request['depth'] = limit; // default 0
606
- }
607
- const response = await this.publicGetOrderbooks(this.extend(request, params));
608
- const payload = this.safeValue(response, 'payload', []);
609
- //
610
- // {
611
- // "payload":[
612
- // {
613
- // "assetPairId": "BTCUSD",
614
- // "timestamp": "1643298038203",
615
- // "bids": [
616
- // {
617
- // "v":0.59034382,
618
- // "p":36665.329
619
- // }
620
- // ],
621
- // "asks": [
622
- // {
623
- // "v":-0.003,
624
- // "p":36729.686
625
- // }
626
- // ]
627
- // }
628
- // ],
629
- // "error":null
630
- // }
631
- //
632
- const orderbook = this.safeValue(payload, 0, {});
633
- const timestamp = this.safeInteger(orderbook, 'timestamp');
634
- return this.parseOrderBook(orderbook, market['symbol'], timestamp, 'bids', 'asks', 'p', 'v');
635
- }
636
- parseTrade(trade, market = undefined) {
637
- //
638
- // public fetchTrades
639
- //
640
- // {
641
- // "id":"71df1f0c-be4e-4d45-b809-c108fad5f2a8",
642
- // "assetPairId":"BTCUSD",
643
- // "timestamp":1643345958414,
644
- // "volume":0.00010996,
645
- // "price":37205.723,
646
- // "side":"buy"
647
- // }
648
- //
649
- // private fetchMyTrades
650
- // {
651
- // "id":"813a3ffa-1c4b-45cb-b13f-1c077ea2748b",
652
- // "timestamp":1644155923357,
653
- // "assetPairId":"BCHEUR",
654
- // "orderId":"1b367978-7e4f-454b-b870-64040d484443",
655
- // "role":"Taker",
656
- // "side":"sell",
657
- // "price":280.569,
658
- // "baseVolume":0.01,
659
- // "quoteVolume":2.8056,
660
- // "baseAssetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
661
- // "quoteAssetId":"EUR",
662
- // "fee":null
663
- // }
664
- //
665
- const marketId = this.safeString(trade, 'assetPairId');
666
- market = this.safeMarket(marketId, market);
667
- const symbol = market['symbol'];
668
- const id = this.safeString2(trade, 'id', 'id');
669
- const orderId = this.safeString(trade, 'orderId');
670
- const timestamp = this.safeInteger(trade, 'timestamp');
671
- const price = this.safeString2(trade, 'price', 'price');
672
- let amount = this.safeString2(trade, 'volume', 'amount');
673
- if (amount === undefined) {
674
- amount = this.safeString2(trade, 'baseVolume', 'amount');
675
- }
676
- const side = this.safeStringLower(trade, 'side');
677
- return this.safeTrade({
678
- 'id': id,
679
- 'info': trade,
680
- 'timestamp': timestamp,
681
- 'datetime': this.iso8601(timestamp),
682
- 'symbol': symbol,
683
- 'type': undefined,
684
- 'order': orderId,
685
- 'side': side,
686
- 'takerOrMaker': undefined,
687
- 'price': price,
688
- 'amount': amount,
689
- 'cost': undefined,
690
- 'fee': undefined,
691
- }, market);
692
- }
693
- /**
694
- * @method
695
- * @name lykke#fetchTrades
696
- * @description get the list of most recent trades for a particular symbol
697
- * @see https://lykkecity.github.io/Trading-API/#get-public-trades
698
- * @param {string} symbol unified symbol of the market to fetch trades for
699
- * @param {int} [since] timestamp in ms of the earliest trade to fetch
700
- * @param {int} [limit] the maximum amount of trades to fetch
701
- * @param {object} [params] extra parameters specific to the exchange API endpoint
702
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
703
- */
704
- async fetchTrades(symbol, since = undefined, limit = undefined, params = {}) {
705
- await this.loadMarkets();
706
- const market = this.market(symbol);
707
- const request = {
708
- 'assetPairId': market['id'],
709
- // 'offset': 0,
710
- };
711
- if (limit !== undefined) {
712
- request['take'] = limit;
713
- }
714
- const response = await this.publicGetTradesPublicAssetPairId(this.extend(request, params));
715
- const result = this.safeValue(response, 'payload', []);
716
- //
717
- // {
718
- // "payload":[
719
- // {
720
- // "id":"71df1f0c-be4e-4d45-b809-c108fad5f2a8",
721
- // "assetPairId":"BTCUSD",
722
- // "timestamp":1643345958414,
723
- // "volume":0.00010996,
724
- // "price":37205.723,
725
- // "side":"buy"
726
- // }
727
- // ],
728
- // "error":null
729
- // }
730
- //
731
- return this.parseTrades(result, market, since, limit);
732
- }
733
- parseBalance(response) {
734
- //
735
- // [
736
- // {
737
- // "assetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
738
- // "available":0.1,
739
- // "reserved":0.0,
740
- // "timestamp":1644146723620
741
- // }
742
- // ]
743
- //
744
- const result = { 'info': response };
745
- for (let i = 0; i < response.length; i++) {
746
- const balance = response[i];
747
- const currencyId = this.safeString(balance, 'assetId');
748
- const code = this.safeCurrencyCode(currencyId);
749
- const account = this.account();
750
- const total = this.safeString(balance, 'available');
751
- const used = this.safeString(balance, 'reserved');
752
- account['total'] = total;
753
- account['used'] = used;
754
- result[code] = account;
755
- }
756
- return this.safeBalance(result);
757
- }
758
- /**
759
- * @method
760
- * @name lykke#fetchBalance
761
- * @description query for balance and get the amount of funds available for trading or funds locked in orders
762
- * @see https://lykkecity.github.io/Trading-API/#get-the-current-balance
763
- * @param {object} [params] extra parameters specific to the exchange API endpoint
764
- * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
765
- */
766
- async fetchBalance(params = {}) {
767
- await this.loadMarkets();
768
- const response = await this.privateGetBalance(params);
769
- const payload = this.safeValue(response, 'payload', []);
770
- //
771
- // {
772
- // "payload":[
773
- // {
774
- // "assetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
775
- // "available":0.1,
776
- // "reserved":0.0,
777
- // "timestamp":1644146723620
778
- // }
779
- // ],
780
- // "error":null
781
- // }
782
- //
783
- return this.parseBalance(payload);
784
- }
785
- parseOrderStatus(status) {
786
- const statuses = {
787
- 'Open': 'open',
788
- 'Pending': 'open',
789
- 'InOrderBook': 'open',
790
- 'Processing': 'open',
791
- 'Matched': 'closed',
792
- 'Cancelled': 'canceled',
793
- 'Rejected': 'rejected',
794
- 'Replaced': 'canceled',
795
- 'Placed': 'open',
796
- };
797
- return this.safeString(statuses, status, status);
798
- }
799
- parseOrder(order, market = undefined) {
800
- //
801
- // {
802
- // "id":"1b367978-7e4f-454b-b870-64040d484443",
803
- // "timestamp":1644155923357,
804
- // "lastTradeTimestamp":1644155923357,
805
- // "status":"Matched",
806
- // "assetPairId":"BCHEUR",
807
- // "type":"Market",
808
- // "side":"Sell",
809
- // "price":280.569,
810
- // "volume":0.01,
811
- // "filledVolume":0.01,
812
- // "remainingVolume":0.0,
813
- // "cost":2.80569
814
- // }
815
- //
816
- const id = this.safeString(order, 'id');
817
- const status = this.parseOrderStatus(this.safeString(order, 'status'));
818
- const marketId = this.safeString(order, 'assetPairId');
819
- const symbol = this.safeSymbol(marketId, market);
820
- const type = this.safeStringLower(order, 'type');
821
- const lastTradeTimestamp = this.safeInteger(order, 'lastTradeTimestamp');
822
- const timestamp = this.safeInteger(order, 'timestamp');
823
- const price = this.safeString(order, 'price');
824
- const side = this.safeStringLower(order, 'side');
825
- const amount = this.safeString(order, 'volume');
826
- const remaining = this.safeString(order, 'remainingVolume');
827
- const filled = this.safeString(order, 'filledVolume');
828
- const cost = this.safeString(order, 'cost');
829
- return this.safeOrder({
830
- 'info': order,
831
- 'id': id,
832
- 'clientOrderId': undefined,
833
- 'timestamp': timestamp,
834
- 'datetime': this.iso8601(timestamp),
835
- 'lastTradeTimestamp': lastTradeTimestamp,
836
- 'symbol': symbol,
837
- 'type': type,
838
- 'timeInForce': undefined,
839
- 'postOnly': undefined,
840
- 'side': side,
841
- 'price': price,
842
- 'triggerPrice': undefined,
843
- 'amount': amount,
844
- 'cost': cost,
845
- 'average': undefined,
846
- 'filled': filled,
847
- 'remaining': remaining,
848
- 'status': status,
849
- 'fee': undefined,
850
- 'trades': undefined,
851
- }, market);
852
- }
853
- /**
854
- * @method
855
- * @name lykke#createOrder
856
- * @description create a trade order
857
- * @see https://lykkecity.github.io/Trading-API/#place-a-limit-order
858
- * @see https://lykkecity.github.io/Trading-API/#place-a-market-order
859
- * @param {string} symbol unified symbol of the market to create an order in
860
- * @param {string} type 'market' or 'limit'
861
- * @param {string} side 'buy' or 'sell'
862
- * @param {float} amount how much of currency you want to trade in units of base currency
863
- * @param {float} [price] the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
864
- * @param {object} [params] extra parameters specific to the exchange API endpoint
865
- * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
866
- */
867
- async createOrder(symbol, type, side, amount, price = undefined, params = {}) {
868
- await this.loadMarkets();
869
- const market = this.market(symbol);
870
- const query = {
871
- 'assetPairId': market['id'],
872
- 'side': this.capitalize(side),
873
- 'volume': parseFloat(this.amountToPrecision(market['symbol'], amount)),
874
- };
875
- if (type === 'limit') {
876
- query['price'] = parseFloat(this.priceToPrecision(market['symbol'], price));
877
- }
878
- let result = undefined;
879
- if (this.capitalize(type) === 'Market') {
880
- result = await this.privatePostOrdersMarket(this.extend(query, params));
881
- }
882
- else {
883
- result = await this.privatePostOrdersLimit(this.extend(query, params));
884
- }
885
- //
886
- // market
887
- //
888
- // {
889
- // "payload":{
890
- // "orderId":"2b98ec26-8410-49b6-9f37-1fb2150e2299",
891
- // "price":280.699
892
- // },
893
- // "error":null
894
- // }
895
- //
896
- // limit
897
- //
898
- // {
899
- // "payload":{
900
- // "orderId":"27be8802-30be-40ca-bf40-ec886b309c5b"
901
- // },
902
- // "error":null
903
- // }
904
- //
905
- const payload = this.safeValue(result, 'payload');
906
- const id = this.safeString(payload, 'orderId');
907
- if (type === 'market') {
908
- price = this.safeNumber(payload, 'price');
909
- }
910
- return this.safeOrder({
911
- 'id': id,
912
- 'info': result,
913
- 'clientOrderId': undefined,
914
- 'timestamp': undefined,
915
- 'datetime': undefined,
916
- 'lastTradeTimestamp': undefined,
917
- 'symbol': market['symbol'],
918
- 'type': type,
919
- 'side': side,
920
- 'price': price,
921
- 'amount': amount,
922
- 'cost': undefined,
923
- 'average': undefined,
924
- 'filled': undefined,
925
- 'remaining': undefined,
926
- 'status': undefined,
927
- 'fee': undefined,
928
- 'trades': undefined,
929
- }, market);
930
- }
931
- /**
932
- * @method
933
- * @name lykke#cancelOrder
934
- * @description cancels an open order
935
- * @see https://lykkecity.github.io/Trading-API/#cancel-orders-by-id
936
- * @param {string} id order id
937
- * @param {string} symbol unified symbol of the market the order was made in
938
- * @param {object} [params] extra parameters specific to the exchange API endpoint
939
- * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
940
- */
941
- async cancelOrder(id, symbol = undefined, params = {}) {
942
- const request = {
943
- 'orderId': id,
944
- };
945
- //
946
- // {
947
- // "payload":null,
948
- // "error":null
949
- // }
950
- //
951
- const response = await this.privateDeleteOrdersOrderId(this.extend(request, params));
952
- return this.safeOrder({
953
- 'info': response,
954
- });
955
- }
956
- /**
957
- * @method
958
- * @name lykke#cancelAllOrders
959
- * @description cancel all open orders
960
- * @see https://lykkecity.github.io/Trading-API/#mass-cancel-orders
961
- * @param {string} symbol unified market symbol, only orders in the market of this symbol are cancelled when symbol is not undefined
962
- * @param {object} [params] extra parameters specific to the exchange API endpoint
963
- * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
964
- */
965
- async cancelAllOrders(symbol = undefined, params = {}) {
966
- await this.loadMarkets();
967
- const request = {
968
- // 'side': 'Buy',
969
- };
970
- let market = undefined;
971
- if (symbol !== undefined) {
972
- market = this.market(symbol);
973
- request['assetPairId'] = market['id'];
974
- }
975
- //
976
- // {
977
- // "payload":null,
978
- // "error":null
979
- // }
980
- //
981
- const response = await this.privateDeleteOrders(this.extend(request, params));
982
- return [
983
- this.safeOrder({
984
- 'info': response,
985
- }),
986
- ];
987
- }
988
- /**
989
- * @method
990
- * @name lykke#fetchOrder
991
- * @description fetches information on an order made by the user
992
- * @see https://lykkecity.github.io/Trading-API/#get-order-by-id
993
- * @param {string} id order id
994
- * @param {string} symbol not used by lykke fetchOrder
995
- * @param {object} [params] extra parameters specific to the exchange API endpoint
996
- * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
997
- */
998
- async fetchOrder(id, symbol = undefined, params = {}) {
999
- await this.loadMarkets();
1000
- const request = {
1001
- 'orderId': id,
1002
- };
1003
- const response = await this.privateGetOrdersOrderId(this.extend(request, params));
1004
- const payload = this.safeValue(response, 'payload');
1005
- //
1006
- // {
1007
- // "payload":{
1008
- // "id":"1b367978-7e4f-454b-b870-64040d484443",
1009
- // "timestamp":1644155923357,
1010
- // "lastTradeTimestamp":1644155923357,
1011
- // "status":"Matched",
1012
- // "assetPairId":"BCHEUR",
1013
- // "type":"Market",
1014
- // "side":"Sell",
1015
- // "price":280.569,
1016
- // "volume":0.01,
1017
- // "filledVolume":0.01,
1018
- // "remainingVolume":0.0,
1019
- // "cost":2.80569
1020
- // },
1021
- // "error":null
1022
- // }
1023
- //
1024
- return this.parseOrder(payload);
1025
- }
1026
- /**
1027
- * @method
1028
- * @name lykke#fetchOpenOrders
1029
- * @description fetch all unfilled currently open orders
1030
- * @see https://lykkecity.github.io/Trading-API/#get-active-or-closed-orders
1031
- * @param {string} symbol unified market symbol
1032
- * @param {int} [since] the earliest time in ms to fetch open orders for
1033
- * @param {int} [limit] the maximum number of open orders structures to retrieve
1034
- * @param {object} [params] extra parameters specific to the exchange API endpoint
1035
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
1036
- */
1037
- async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
1038
- await this.loadMarkets();
1039
- let market = undefined;
1040
- if (symbol !== undefined) {
1041
- market = this.market(symbol);
1042
- }
1043
- const request = {
1044
- // 'offset': 0,
1045
- // 'take': 1,
1046
- };
1047
- if (limit !== undefined) {
1048
- request['take'] = limit;
1049
- }
1050
- const response = await this.privateGetOrdersActive(this.extend(request, params));
1051
- const payload = this.safeValue(response, 'payload');
1052
- //
1053
- // {
1054
- // "payload":[
1055
- // {
1056
- // "id":"b26f58f5-8542-4b4c-9815-91562b523cc3",
1057
- // "timestamp":1644157177155,
1058
- // "lastTradeTimestamp":null,
1059
- // "status":"Placed",
1060
- // "assetPairId":"BCHEUR",
1061
- // "type":"Limit",
1062
- // "side":"Sell",
1063
- // "price":666.666,
1064
- // "volume":0.01,
1065
- // "filledVolume":0.00,
1066
- // "remainingVolume":0.01,
1067
- // "cost":0.00000
1068
- // }
1069
- // ],
1070
- // "error":null
1071
- // }
1072
- //
1073
- return this.parseOrders(payload, market, since, limit);
1074
- }
1075
- /**
1076
- * @method
1077
- * @name lykke#fetchClosedOrders
1078
- * @description fetches information on multiple closed orders made by the user
1079
- * @see https://lykkecity.github.io/Trading-API/#get-active-or-closed-orders
1080
- * @param {string} symbol unified market symbol of the market orders were made in
1081
- * @param {int} [since] the earliest time in ms to fetch orders for
1082
- * @param {int} [limit] the maximum number of order structures to retrieve
1083
- * @param {object} [params] extra parameters specific to the exchange API endpoint
1084
- * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
1085
- */
1086
- async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
1087
- await this.loadMarkets();
1088
- let market = undefined;
1089
- if (symbol !== undefined) {
1090
- market = this.market(symbol);
1091
- }
1092
- const request = {
1093
- // 'offset': 0,
1094
- // 'take': 1,
1095
- };
1096
- if (limit !== undefined) {
1097
- request['take'] = limit;
1098
- }
1099
- const response = await this.privateGetOrdersClosed(this.extend(request, params));
1100
- const payload = this.safeValue(response, 'payload');
1101
- //
1102
- // {
1103
- // "payload":[
1104
- // {
1105
- // "id":"1b367978-7e4f-454b-b870-64040d484443",
1106
- // "timestamp":1644155923357,
1107
- // "lastTradeTimestamp":1644155923357,
1108
- // "status":"Matched",
1109
- // "assetPairId":"BCHEUR",
1110
- // "type":"Market",
1111
- // "side":"Sell",
1112
- // "price":280.569,
1113
- // "volume":0.01,
1114
- // "filledVolume":0.01,
1115
- // "remainingVolume":0.0,
1116
- // "cost":2.80569
1117
- // }
1118
- // ],
1119
- // "error":null
1120
- // }
1121
- //
1122
- return this.parseOrders(payload, market, since, limit);
1123
- }
1124
- /**
1125
- * @method
1126
- * @name lykke#fetchMyTrades
1127
- * @description fetch all trades made by the user
1128
- * @see https://lykkecity.github.io/Trading-API/#get-trade-history
1129
- * @param {string} symbol unified market symbol
1130
- * @param {int} [since] the earliest time in ms to fetch trades for
1131
- * @param {int} [limit] the maximum number of trades structures to retrieve
1132
- * @param {object} [params] extra parameters specific to the exchange API endpoint
1133
- * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
1134
- */
1135
- async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
1136
- await this.loadMarkets();
1137
- const request = {
1138
- // 'side': 'buy',
1139
- // 'offset': 0,
1140
- // 'take': 1,
1141
- // 'to': 0,
1142
- };
1143
- let market = undefined;
1144
- if (limit !== undefined) {
1145
- request['take'] = limit; // How many maximum items have to be returned, max 1000 default 100.
1146
- }
1147
- if (symbol !== undefined) {
1148
- market = this.market(symbol);
1149
- request['assetPairId'] = market['id'];
1150
- }
1151
- if (since !== undefined) {
1152
- request['from'] = since;
1153
- }
1154
- const response = await this.privateGetTrades(this.extend(request, params));
1155
- const payload = this.safeValue(response, 'payload');
1156
- //
1157
- // {
1158
- // "payload":[
1159
- // {
1160
- // "id":"813a3ffa-1c4b-45cb-b13f-1c077ea2748b",
1161
- // "timestamp":1644155923357,
1162
- // "assetPairId":"BCHEUR",
1163
- // "orderId":"1b367978-7e4f-454b-b870-64040d484443",
1164
- // "role":"Taker",
1165
- // "side":"sell",
1166
- // "price":280.569,
1167
- // "baseVolume":0.01,
1168
- // "quoteVolume":2.8056,
1169
- // "baseAssetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
1170
- // "quoteAssetId":"EUR",
1171
- // "fee":null
1172
- // }
1173
- // ],
1174
- // "error":null
1175
- // }
1176
- //
1177
- return this.parseTrades(payload, market, since, limit);
1178
- }
1179
- parseBidAsk(bidask, priceKey = 0, amountKey = 1, countOrIdKey = 2) {
1180
- const price = this.safeString(bidask, priceKey);
1181
- const amount = Precise.stringAbs(this.safeString(bidask, amountKey));
1182
- return [this.parseNumber(price), this.parseNumber(amount)];
1183
- }
1184
- /**
1185
- * @method
1186
- * @name lykke#fetchDepositAddress
1187
- * @description fetch the deposit address for a currency associated with this account
1188
- * @see https://lykkecity.github.io/Trading-API/#get-deposit-address-for-a-given-asset
1189
- * @param {string} code unified currency code
1190
- * @param {object} [params] extra parameters specific to the exchange API endpoint
1191
- * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
1192
- */
1193
- async fetchDepositAddress(code, params = {}) {
1194
- await this.loadMarkets();
1195
- const currency = this.currency(code);
1196
- const request = {
1197
- 'assetId': this.safeString(currency, 'id'),
1198
- };
1199
- const response = await this.privateGetOperationsDepositsAddressesAssetId(this.extend(request, params));
1200
- //
1201
- // {
1202
- // "assetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
1203
- // "symbol":"BCH",
1204
- // "address":null,
1205
- // "baseAddress":null,
1206
- // "addressExtension":null,
1207
- // "state":"Active"
1208
- // }
1209
- //
1210
- const address = this.safeString(response, 'baseAddress');
1211
- const tag = this.safeString(response, 'addressExtension');
1212
- this.checkAddress(address);
1213
- return {
1214
- 'info': response,
1215
- 'currency': code,
1216
- 'network': undefined,
1217
- 'address': address,
1218
- 'tag': tag,
1219
- };
1220
- }
1221
- parseTransaction(transaction, currency = undefined) {
1222
- //
1223
- // withdraw
1224
- // "3035b1ad-2005-4587-a986-1f7966be78e0"
1225
- //
1226
- // fetchDepositsWithdrawals
1227
- // {
1228
- // "operationId":"787201c8-f1cc-45c0-aec1-fa06eeea426b",
1229
- // "assetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
1230
- // "totalVolume":0.1,
1231
- // "fee":0.0,
1232
- // "type":"deposit",
1233
- // "timestamp":1644146723620
1234
- // }
1235
- //
1236
- let id = undefined;
1237
- let assetId = undefined;
1238
- let code = undefined;
1239
- let amount = undefined;
1240
- let fee = undefined;
1241
- let type = undefined;
1242
- let timestamp = undefined;
1243
- if (typeof transaction === 'string') {
1244
- id = transaction;
1245
- }
1246
- else {
1247
- id = this.safeString(transaction, 'operationId');
1248
- assetId = this.safeString(transaction, 'assetId');
1249
- code = this.safeCurrencyCode(assetId, currency);
1250
- amount = this.safeNumber(transaction, 'totalVolume');
1251
- type = this.safeString(transaction, 'type');
1252
- timestamp = this.safeInteger(transaction, 'timestamp');
1253
- const feeCost = this.safeNumber(transaction, 'fee');
1254
- fee = {
1255
- 'currency': code,
1256
- 'cost': feeCost,
1257
- };
1258
- }
1259
- return {
1260
- 'info': transaction,
1261
- 'id': id,
1262
- 'txid': undefined,
1263
- 'timestamp': timestamp,
1264
- 'datetime': this.iso8601(timestamp),
1265
- 'network': undefined,
1266
- 'addressFrom': undefined,
1267
- 'address': undefined,
1268
- 'addressTo': undefined,
1269
- 'tagFrom': undefined,
1270
- 'tag': undefined,
1271
- 'tagTo': undefined,
1272
- 'type': type,
1273
- 'amount': amount,
1274
- 'currency': code,
1275
- 'status': undefined,
1276
- 'updated': undefined,
1277
- 'internal': undefined,
1278
- 'comment': undefined,
1279
- 'fee': fee,
1280
- };
1281
- }
1282
- /**
1283
- * @method
1284
- * @name lykke#fetchDepositsWithdrawals
1285
- * @description fetch history of deposits and withdrawals
1286
- * @see https://lykkecity.github.io/Trading-API/#get-the-history-of-withdrawals-and-deposits
1287
- * @param {string} [code] unified currency code for the currency of the deposit/withdrawals, default is undefined
1288
- * @param {int} [since] timestamp in ms of the earliest deposit/withdrawal, default is undefined
1289
- * @param {int} [limit] max number of deposit/withdrawals to return, default is undefined
1290
- * @param {object} [params] extra parameters specific to the exchange API endpoint
1291
- * @returns {object} a list of [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
1292
- */
1293
- async fetchDepositsWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
1294
- await this.loadMarkets();
1295
- const request = {
1296
- // 'offset': 0,
1297
- // 'take': 1,
1298
- };
1299
- if (limit !== undefined) {
1300
- request['take'] = limit;
1301
- }
1302
- const response = await this.privateGetOperations(this.extend(request, params));
1303
- const payload = this.safeValue(response, 'payload', []);
1304
- //
1305
- // {
1306
- // "payload":[
1307
- // {
1308
- // "operationId":"787201c8-f1cc-45c0-aec1-fa06eeea426b",
1309
- // "assetId":"2a34d6a6-5839-40e5-836f-c1178fa09b89",
1310
- // "totalVolume":0.1,
1311
- // "fee":0.0,
1312
- // "type":"deposit",
1313
- // "timestamp":1644146723620
1314
- // }
1315
- // ],
1316
- // "error":null
1317
- // }
1318
- //
1319
- let currency = undefined;
1320
- if (code !== undefined) {
1321
- currency = this.currency(code);
1322
- }
1323
- return this.parseTransactions(payload, currency, since, limit);
1324
- }
1325
- /**
1326
- * @method
1327
- * @name lykke#withdraw
1328
- * @description make a withdrawal
1329
- * @see https://lykkecity.github.io/Trading-API/#withdrawal
1330
- * @param {string} code unified currency code
1331
- * @param {float} amount the amount to withdraw
1332
- * @param {string} address the address to withdraw to
1333
- * @param {string} tag
1334
- * @param {object} [params] extra parameters specific to the exchange API endpoint
1335
- * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
1336
- */
1337
- async withdraw(code, amount, address, tag = undefined, params = {}) {
1338
- await this.loadMarkets();
1339
- this.checkAddress(address);
1340
- const currency = this.currency(code);
1341
- const request = {
1342
- 'assetId': currency['id'],
1343
- 'volume': parseFloat(this.currencyToPrecision(code, amount)),
1344
- 'destinationAddress': address,
1345
- // 'destinationAddressExtension': tag,
1346
- };
1347
- if (tag !== undefined) {
1348
- request['destinationAddressExtension'] = tag;
1349
- }
1350
- const response = await this.privatePostOperationsWithdrawals(this.extend(request, params));
1351
- //
1352
- // "3035b1ad-2005-4587-a986-1f7966be78e0"
1353
- //
1354
- return this.parseTransaction(response, currency);
1355
- }
1356
- sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
1357
- let url = this.urls['api'][api] + '/' + this.implodeParams(path, params);
1358
- const query = this.omit(params, this.extractParams(path));
1359
- headers = {
1360
- 'Accept': 'application/json',
1361
- 'Content-Type': 'application/json',
1362
- };
1363
- if (api === 'public') {
1364
- if (Object.keys(query).length) {
1365
- url += '?' + this.urlencode(query);
1366
- }
1367
- }
1368
- else if (api === 'private') {
1369
- if ((method === 'GET') || (method === 'DELETE')) {
1370
- if (Object.keys(query).length) {
1371
- url += '?' + this.urlencode(query);
1372
- }
1373
- }
1374
- this.checkRequiredCredentials();
1375
- headers['Authorization'] = 'Bearer ' + this.apiKey;
1376
- if (method === 'POST') {
1377
- if (Object.keys(params).length) {
1378
- body = this.json(params);
1379
- }
1380
- }
1381
- if (path === 'operations/withdrawals') {
1382
- headers['X-Request-ID'] = this.uuid();
1383
- }
1384
- }
1385
- return { 'url': url, 'method': method, 'body': body, 'headers': headers };
1386
- }
1387
- handleErrors(code, reason, url, method, headers, body, response, requestHeaders, requestBody) {
1388
- if (response === undefined) {
1389
- return undefined;
1390
- }
1391
- const error = this.safeValue(response, 'error', {});
1392
- const errorCode = this.safeString(error, 'code');
1393
- if ((errorCode !== undefined) && (errorCode !== '0')) {
1394
- const feedback = this.id + ' ' + body;
1395
- const message = this.safeString(error, 'message');
1396
- this.throwExactlyMatchedException(this.exceptions['exact'], errorCode, feedback);
1397
- this.throwBroadlyMatchedException(this.exceptions['broad'], message, feedback);
1398
- throw new ExchangeError(feedback);
1399
- }
1400
- return undefined;
1401
- }
1402
- }