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