ccxt 4.1.51 → 4.1.53

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 (319) hide show
  1. package/README.md +108 -113
  2. package/dist/ccxt.browser.js +2295 -5268
  3. package/dist/ccxt.browser.min.js +3 -3
  4. package/dist/cjs/ccxt.js +1 -13
  5. package/dist/cjs/src/ace.js +56 -59
  6. package/dist/cjs/src/alpaca.js +62 -64
  7. package/dist/cjs/src/ascendex.js +1 -0
  8. package/dist/cjs/src/base/Exchange.js +11 -11
  9. package/dist/cjs/src/bigone.js +60 -77
  10. package/dist/cjs/src/binance.js +1 -0
  11. package/dist/cjs/src/bingx.js +52 -19
  12. package/dist/cjs/src/bitbank.js +58 -59
  13. package/dist/cjs/src/bitbns.js +1 -0
  14. package/dist/cjs/src/bitfinex.js +1 -0
  15. package/dist/cjs/src/bitfinex2.js +1 -0
  16. package/dist/cjs/src/bitflyer.js +1 -0
  17. package/dist/cjs/src/bitget.js +3 -8
  18. package/dist/cjs/src/bithumb.js +1 -0
  19. package/dist/cjs/src/bitmart.js +10 -1
  20. package/dist/cjs/src/bitmex.js +114 -119
  21. package/dist/cjs/src/bitopro.js +63 -65
  22. package/dist/cjs/src/bitpanda.js +60 -60
  23. package/dist/cjs/src/bitrue.js +67 -71
  24. package/dist/cjs/src/bitso.js +1 -0
  25. package/dist/cjs/src/bitstamp.js +1 -0
  26. package/dist/cjs/src/bittrex.js +57 -57
  27. package/dist/cjs/src/bitvavo.js +10 -2
  28. package/dist/cjs/src/blockchaincom.js +2 -2
  29. package/dist/cjs/src/btcalpha.js +59 -60
  30. package/dist/cjs/src/btcmarkets.js +68 -69
  31. package/dist/cjs/src/btcturk.js +72 -74
  32. package/dist/cjs/src/bybit.js +5 -12
  33. package/dist/cjs/src/coinbase.js +7 -2
  34. package/dist/cjs/src/coinbasepro.js +1 -0
  35. package/dist/cjs/src/coincheck.js +1 -0
  36. package/dist/cjs/src/coinex.js +4 -0
  37. package/dist/cjs/src/coinlist.js +60 -60
  38. package/dist/cjs/src/coinmate.js +1 -0
  39. package/dist/cjs/src/coinsph.js +2 -4
  40. package/dist/cjs/src/cryptocom.js +2 -0
  41. package/dist/cjs/src/currencycom.js +2 -2
  42. package/dist/cjs/src/deribit.js +2 -0
  43. package/dist/cjs/src/digifinex.js +11 -5
  44. package/dist/cjs/src/exmo.js +1 -0
  45. package/dist/cjs/src/gate.js +2 -0
  46. package/dist/cjs/src/gemini.js +2 -0
  47. package/dist/cjs/src/hitbtc.js +4 -0
  48. package/dist/cjs/src/hollaex.js +2 -0
  49. package/dist/cjs/src/htx.js +4 -0
  50. package/dist/cjs/src/huobijp.js +2 -0
  51. package/dist/cjs/src/idex.js +2 -0
  52. package/dist/cjs/src/indodax.js +1 -0
  53. package/dist/cjs/src/kraken.js +3 -3
  54. package/dist/cjs/src/kucoin.js +6 -5
  55. package/dist/cjs/src/kuna.js +3 -1
  56. package/dist/cjs/src/latoken.js +1 -0
  57. package/dist/cjs/src/lbank.js +2333 -442
  58. package/dist/cjs/src/lykke.js +2 -0
  59. package/dist/cjs/src/mercado.js +1 -0
  60. package/dist/cjs/src/mexc.js +2 -0
  61. package/dist/cjs/src/ndax.js +61 -61
  62. package/dist/cjs/src/novadax.js +58 -59
  63. package/dist/cjs/src/oceanex.js +58 -60
  64. package/dist/cjs/src/okcoin.js +3 -9
  65. package/dist/cjs/src/okx.js +2 -7
  66. package/dist/cjs/src/phemex.js +2 -0
  67. package/dist/cjs/src/poloniex.js +56 -57
  68. package/dist/cjs/src/poloniexfutures.js +67 -70
  69. package/dist/cjs/src/pro/binance.js +5 -3
  70. package/dist/cjs/src/pro/bingx.js +18 -11
  71. package/dist/cjs/src/pro/coinbase.js +12 -3
  72. package/dist/cjs/src/pro/cryptocom.js +17 -17
  73. package/dist/cjs/src/pro/krakenfutures.js +15 -15
  74. package/dist/cjs/src/pro/poloniexfutures.js +9 -0
  75. package/dist/cjs/src/probit.js +64 -65
  76. package/dist/cjs/src/tidex.js +1 -0
  77. package/dist/cjs/src/timex.js +3 -5
  78. package/dist/cjs/src/upbit.js +58 -58
  79. package/dist/cjs/src/wavesexchange.js +2 -1
  80. package/dist/cjs/src/wazirx.js +72 -74
  81. package/dist/cjs/src/whitebit.js +89 -91
  82. package/dist/cjs/src/woo.js +76 -77
  83. package/dist/cjs/src/zaif.js +58 -71
  84. package/dist/cjs/src/zonda.js +68 -70
  85. package/js/ccxt.d.ts +2 -14
  86. package/js/ccxt.js +2 -10
  87. package/js/src/abstract/bybit.d.ts +1 -0
  88. package/js/src/abstract/lbank.d.ts +57 -15
  89. package/js/src/ace.d.ts +8 -7
  90. package/js/src/ace.js +56 -59
  91. package/js/src/alpaca.d.ts +6 -5
  92. package/js/src/alpaca.js +62 -64
  93. package/js/src/ascendex.d.ts +12 -12
  94. package/js/src/ascendex.js +1 -0
  95. package/js/src/base/Exchange.d.ts +2 -0
  96. package/js/src/base/Exchange.js +11 -11
  97. package/js/src/base/types.d.ts +76 -71
  98. package/js/src/bigone.d.ts +12 -12
  99. package/js/src/bigone.js +60 -77
  100. package/js/src/binance.d.ts +27 -27
  101. package/js/src/binance.js +1 -0
  102. package/js/src/bingx.d.ts +17 -17
  103. package/js/src/bingx.js +52 -19
  104. package/js/src/bit2c.d.ts +5 -5
  105. package/js/src/bitbank.d.ts +7 -6
  106. package/js/src/bitbank.js +58 -59
  107. package/js/src/bitbns.d.ts +7 -7
  108. package/js/src/bitbns.js +1 -0
  109. package/js/src/bitfinex.d.ts +8 -8
  110. package/js/src/bitfinex.js +1 -0
  111. package/js/src/bitfinex2.d.ts +12 -12
  112. package/js/src/bitfinex2.js +1 -0
  113. package/js/src/bitflyer.d.ts +9 -9
  114. package/js/src/bitflyer.js +1 -0
  115. package/js/src/bitforex.d.ts +6 -6
  116. package/js/src/bitget.d.ts +25 -26
  117. package/js/src/bitget.js +3 -8
  118. package/js/src/bithumb.d.ts +4 -4
  119. package/js/src/bithumb.js +1 -0
  120. package/js/src/bitmart.d.ts +21 -21
  121. package/js/src/bitmart.js +10 -1
  122. package/js/src/bitmex.d.ts +16 -15
  123. package/js/src/bitmex.js +114 -119
  124. package/js/src/bitopro.d.ts +14 -13
  125. package/js/src/bitopro.js +63 -65
  126. package/js/src/bitpanda.d.ts +13 -12
  127. package/js/src/bitpanda.js +60 -60
  128. package/js/src/bitrue.d.ts +10 -9
  129. package/js/src/bitrue.js +67 -71
  130. package/js/src/bitso.d.ts +11 -11
  131. package/js/src/bitso.js +1 -0
  132. package/js/src/bitstamp.d.ts +10 -10
  133. package/js/src/bitstamp.js +1 -0
  134. package/js/src/bitstamp1.d.ts +4 -4
  135. package/js/src/bittrex.d.ts +16 -15
  136. package/js/src/bittrex.js +57 -57
  137. package/js/src/bitvavo.d.ts +9 -9
  138. package/js/src/bitvavo.js +10 -2
  139. package/js/src/bl3p.d.ts +2 -2
  140. package/js/src/blockchaincom.d.ts +13 -13
  141. package/js/src/blockchaincom.js +2 -2
  142. package/js/src/btcalpha.d.ts +11 -10
  143. package/js/src/btcalpha.js +59 -60
  144. package/js/src/btcbox.d.ts +6 -6
  145. package/js/src/btcmarkets.d.ts +14 -13
  146. package/js/src/btcmarkets.js +68 -69
  147. package/js/src/btcturk.d.ts +7 -6
  148. package/js/src/btcturk.js +72 -74
  149. package/js/src/bybit.d.ts +28 -28
  150. package/js/src/bybit.js +5 -12
  151. package/js/src/cex.d.ts +6 -6
  152. package/js/src/coinbase.d.ts +17 -17
  153. package/js/src/coinbase.js +7 -2
  154. package/js/src/coinbasepro.d.ts +13 -13
  155. package/js/src/coinbasepro.js +1 -0
  156. package/js/src/coincheck.d.ts +6 -6
  157. package/js/src/coincheck.js +1 -0
  158. package/js/src/coinex.d.ts +18 -18
  159. package/js/src/coinex.js +4 -0
  160. package/js/src/coinlist.d.ts +16 -15
  161. package/js/src/coinlist.js +60 -60
  162. package/js/src/coinmate.d.ts +7 -7
  163. package/js/src/coinmate.js +1 -0
  164. package/js/src/coinone.d.ts +5 -5
  165. package/js/src/coinsph.d.ts +10 -10
  166. package/js/src/coinsph.js +2 -4
  167. package/js/src/coinspot.d.ts +3 -3
  168. package/js/src/cryptocom.d.ts +16 -16
  169. package/js/src/cryptocom.js +2 -0
  170. package/js/src/currencycom.d.ts +10 -10
  171. package/js/src/currencycom.js +2 -2
  172. package/js/src/delta.d.ts +10 -10
  173. package/js/src/deribit.d.ts +13 -13
  174. package/js/src/deribit.js +2 -0
  175. package/js/src/digifinex.d.ts +17 -17
  176. package/js/src/digifinex.js +11 -5
  177. package/js/src/exmo.d.ts +12 -12
  178. package/js/src/exmo.js +1 -0
  179. package/js/src/gate.d.ts +20 -20
  180. package/js/src/gate.js +2 -0
  181. package/js/src/gemini.d.ts +6 -6
  182. package/js/src/gemini.js +2 -0
  183. package/js/src/hitbtc.d.ts +15 -15
  184. package/js/src/hitbtc.js +4 -0
  185. package/js/src/hollaex.d.ts +12 -12
  186. package/js/src/hollaex.js +2 -0
  187. package/js/src/htx.d.ts +27 -27
  188. package/js/src/htx.js +4 -0
  189. package/js/src/huobijp.d.ts +16 -16
  190. package/js/src/huobijp.js +2 -0
  191. package/js/src/idex.d.ts +13 -13
  192. package/js/src/idex.js +2 -0
  193. package/js/src/independentreserve.d.ts +6 -6
  194. package/js/src/indodax.d.ts +6 -6
  195. package/js/src/indodax.js +1 -0
  196. package/js/src/kraken.d.ts +16 -16
  197. package/js/src/kraken.js +3 -3
  198. package/js/src/krakenfutures.d.ts +9 -9
  199. package/js/src/kucoin.d.ts +15 -15
  200. package/js/src/kucoin.js +6 -5
  201. package/js/src/kucoinfutures.d.ts +11 -11
  202. package/js/src/kuna.d.ts +12 -12
  203. package/js/src/kuna.js +3 -1
  204. package/js/src/latoken.d.ts +9 -9
  205. package/js/src/latoken.js +1 -0
  206. package/js/src/lbank.d.ts +65 -12
  207. package/js/src/lbank.js +2334 -443
  208. package/js/src/lbank2.d.ts +11 -11
  209. package/js/src/luno.d.ts +10 -10
  210. package/js/src/lykke.d.ts +8 -8
  211. package/js/src/lykke.js +2 -0
  212. package/js/src/mercado.d.ts +6 -6
  213. package/js/src/mercado.js +1 -0
  214. package/js/src/mexc.d.ts +23 -23
  215. package/js/src/mexc.js +2 -0
  216. package/js/src/ndax.d.ts +13 -12
  217. package/js/src/ndax.js +61 -61
  218. package/js/src/novadax.d.ts +13 -12
  219. package/js/src/novadax.js +58 -59
  220. package/js/src/oceanex.d.ts +10 -9
  221. package/js/src/oceanex.js +58 -60
  222. package/js/src/okcoin.d.ts +12 -13
  223. package/js/src/okcoin.js +3 -9
  224. package/js/src/okx.d.ts +26 -27
  225. package/js/src/okx.js +2 -7
  226. package/js/src/paymium.d.ts +2 -2
  227. package/js/src/phemex.d.ts +16 -16
  228. package/js/src/phemex.js +2 -0
  229. package/js/src/poloniex.d.ts +15 -14
  230. package/js/src/poloniex.js +56 -57
  231. package/js/src/poloniexfutures.d.ts +11 -10
  232. package/js/src/poloniexfutures.js +67 -70
  233. package/js/src/pro/alpaca.d.ts +3 -3
  234. package/js/src/pro/ascendex.d.ts +2 -2
  235. package/js/src/pro/binance.d.ts +9 -9
  236. package/js/src/pro/binance.js +5 -3
  237. package/js/src/pro/bingx.d.ts +3 -3
  238. package/js/src/pro/bingx.js +19 -12
  239. package/js/src/pro/bitfinex.d.ts +3 -3
  240. package/js/src/pro/bitfinex2.d.ts +3 -3
  241. package/js/src/pro/bitget.d.ts +3 -3
  242. package/js/src/pro/bitmart.d.ts +2 -2
  243. package/js/src/pro/bitmex.d.ts +3 -3
  244. package/js/src/pro/bitpanda.d.ts +3 -3
  245. package/js/src/pro/bitrue.d.ts +2 -2
  246. package/js/src/pro/bitstamp.d.ts +2 -2
  247. package/js/src/pro/bittrex.d.ts +3 -3
  248. package/js/src/pro/bitvavo.d.ts +3 -3
  249. package/js/src/pro/blockchaincom.d.ts +2 -2
  250. package/js/src/pro/bybit.d.ts +4 -4
  251. package/js/src/pro/cex.d.ts +3 -3
  252. package/js/src/pro/coinbase.js +12 -3
  253. package/js/src/pro/coinbasepro.d.ts +3 -3
  254. package/js/src/pro/coinex.d.ts +2 -2
  255. package/js/src/pro/cryptocom.d.ts +5 -5
  256. package/js/src/pro/cryptocom.js +17 -17
  257. package/js/src/pro/deribit.d.ts +3 -3
  258. package/js/src/pro/exmo.d.ts +2 -2
  259. package/js/src/pro/gate.d.ts +3 -3
  260. package/js/src/pro/gemini.d.ts +2 -2
  261. package/js/src/pro/hitbtc.d.ts +3 -3
  262. package/js/src/pro/hollaex.d.ts +3 -3
  263. package/js/src/pro/htx.d.ts +3 -3
  264. package/js/src/pro/idex.d.ts +3 -3
  265. package/js/src/pro/kraken.d.ts +7 -7
  266. package/js/src/pro/krakenfutures.d.ts +4 -4
  267. package/js/src/pro/krakenfutures.js +15 -15
  268. package/js/src/pro/kucoin.d.ts +3 -3
  269. package/js/src/pro/kucoinfutures.d.ts +3 -3
  270. package/js/src/pro/mexc.d.ts +3 -3
  271. package/js/src/pro/okcoin.d.ts +2 -2
  272. package/js/src/pro/okx.d.ts +6 -6
  273. package/js/src/pro/phemex.d.ts +3 -3
  274. package/js/src/pro/poloniex.d.ts +3 -3
  275. package/js/src/pro/poloniexfutures.d.ts +3 -3
  276. package/js/src/pro/poloniexfutures.js +9 -0
  277. package/js/src/pro/probit.d.ts +3 -3
  278. package/js/src/pro/wazirx.d.ts +3 -3
  279. package/js/src/pro/whitebit.d.ts +3 -3
  280. package/js/src/pro/woo.d.ts +2 -2
  281. package/js/src/probit.d.ts +11 -10
  282. package/js/src/probit.js +64 -65
  283. package/js/src/tidex.d.ts +5 -5
  284. package/js/src/tidex.js +1 -0
  285. package/js/src/timex.d.ts +10 -10
  286. package/js/src/timex.js +3 -5
  287. package/js/src/tokocrypto.d.ts +9 -9
  288. package/js/src/upbit.d.ts +11 -10
  289. package/js/src/upbit.js +58 -58
  290. package/js/src/wavesexchange.d.ts +7 -7
  291. package/js/src/wavesexchange.js +2 -1
  292. package/js/src/wazirx.d.ts +7 -6
  293. package/js/src/wazirx.js +72 -74
  294. package/js/src/whitebit.d.ts +12 -11
  295. package/js/src/whitebit.js +89 -91
  296. package/js/src/woo.d.ts +20 -19
  297. package/js/src/woo.js +76 -77
  298. package/js/src/yobit.d.ts +5 -5
  299. package/js/src/zaif.d.ts +6 -5
  300. package/js/src/zaif.js +58 -71
  301. package/js/src/zonda.d.ts +7 -6
  302. package/js/src/zonda.js +68 -70
  303. package/package.json +1 -1
  304. package/skip-tests.json +2 -18
  305. package/test.ts +0 -0
  306. package/dist/cjs/src/btctradeua.js +0 -571
  307. package/dist/cjs/src/coinfalcon.js +0 -1012
  308. package/js/src/abstract/bitstamp1.d.ts +0 -26
  309. package/js/src/abstract/bitstamp1.js +0 -11
  310. package/js/src/abstract/btctradeua.d.ts +0 -20
  311. package/js/src/abstract/btctradeua.js +0 -11
  312. package/js/src/abstract/coinfalcon.d.ts +0 -26
  313. package/js/src/abstract/coinfalcon.js +0 -11
  314. package/js/src/abstract/lbank2.d.ts +0 -64
  315. package/js/src/abstract/lbank2.js +0 -11
  316. package/js/src/btctradeua.d.ts +0 -30
  317. package/js/src/btctradeua.js +0 -572
  318. package/js/src/coinfalcon.d.ts +0 -53
  319. package/js/src/coinfalcon.js +0 -1013
@@ -300,99 +300,96 @@ export default class whitebit extends Exchange {
300
300
  // }
301
301
  // ]
302
302
  //
303
- const result = [];
304
- for (let i = 0; i < markets.length; i++) {
305
- const market = markets[i];
306
- const id = this.safeString(market, 'name');
307
- const baseId = this.safeString(market, 'stock');
308
- let quoteId = this.safeString(market, 'money');
309
- quoteId = (quoteId === 'PERP') ? 'USDT' : quoteId;
310
- const base = this.safeCurrencyCode(baseId);
311
- const quote = this.safeCurrencyCode(quoteId);
312
- const active = this.safeValue(market, 'tradesEnabled');
313
- const isCollateral = this.safeValue(market, 'isCollateral');
314
- const typeId = this.safeString(market, 'type');
315
- let type = undefined;
316
- let settle = undefined;
317
- let settleId = undefined;
318
- let symbol = base + '/' + quote;
319
- const swap = typeId === 'futures';
320
- const margin = isCollateral && !swap;
321
- let contract = false;
322
- const amountPrecision = this.parseNumber(this.parsePrecision(this.safeString(market, 'stockPrec')));
323
- const contractSize = amountPrecision;
324
- let linear = undefined;
325
- let inverse = undefined;
326
- if (swap) {
327
- settleId = quoteId;
328
- settle = this.safeCurrencyCode(settleId);
329
- symbol = symbol + ':' + settle;
330
- type = 'swap';
331
- contract = true;
332
- linear = true;
333
- inverse = false;
334
- }
335
- else {
336
- type = 'spot';
337
- }
338
- const takerFeeRate = this.safeString(market, 'takerFee');
339
- const taker = Precise.stringDiv(takerFeeRate, '100');
340
- const makerFeeRate = this.safeString(market, 'makerFee');
341
- const maker = Precise.stringDiv(makerFeeRate, '100');
342
- const entry = {
343
- 'id': id,
344
- 'symbol': symbol,
345
- 'base': base,
346
- 'quote': quote,
347
- 'settle': settle,
348
- 'baseId': baseId,
349
- 'quoteId': quoteId,
350
- 'settleId': settleId,
351
- 'type': type,
352
- 'spot': !swap,
353
- 'margin': margin,
354
- 'swap': swap,
355
- 'future': false,
356
- 'option': false,
357
- 'active': active,
358
- 'contract': contract,
359
- 'linear': linear,
360
- 'inverse': inverse,
361
- 'taker': this.parseNumber(taker),
362
- 'maker': this.parseNumber(maker),
363
- 'contractSize': contractSize,
364
- 'expiry': undefined,
365
- 'expiryDatetime': undefined,
366
- 'strike': undefined,
367
- 'optionType': undefined,
368
- 'precision': {
369
- 'amount': amountPrecision,
370
- 'price': this.parseNumber(this.parsePrecision(this.safeString(market, 'moneyPrec'))),
303
+ return this.parseMarkets(markets);
304
+ }
305
+ parseMarket(market) {
306
+ const id = this.safeString(market, 'name');
307
+ const baseId = this.safeString(market, 'stock');
308
+ let quoteId = this.safeString(market, 'money');
309
+ quoteId = (quoteId === 'PERP') ? 'USDT' : quoteId;
310
+ const base = this.safeCurrencyCode(baseId);
311
+ const quote = this.safeCurrencyCode(quoteId);
312
+ const active = this.safeValue(market, 'tradesEnabled');
313
+ const isCollateral = this.safeValue(market, 'isCollateral');
314
+ const typeId = this.safeString(market, 'type');
315
+ let type = undefined;
316
+ let settle = undefined;
317
+ let settleId = undefined;
318
+ let symbol = base + '/' + quote;
319
+ const swap = typeId === 'futures';
320
+ const margin = isCollateral && !swap;
321
+ let contract = false;
322
+ const amountPrecision = this.parseNumber(this.parsePrecision(this.safeString(market, 'stockPrec')));
323
+ const contractSize = amountPrecision;
324
+ let linear = undefined;
325
+ let inverse = undefined;
326
+ if (swap) {
327
+ settleId = quoteId;
328
+ settle = this.safeCurrencyCode(settleId);
329
+ symbol = symbol + ':' + settle;
330
+ type = 'swap';
331
+ contract = true;
332
+ linear = true;
333
+ inverse = false;
334
+ }
335
+ else {
336
+ type = 'spot';
337
+ }
338
+ const takerFeeRate = this.safeString(market, 'takerFee');
339
+ const taker = Precise.stringDiv(takerFeeRate, '100');
340
+ const makerFeeRate = this.safeString(market, 'makerFee');
341
+ const maker = Precise.stringDiv(makerFeeRate, '100');
342
+ return {
343
+ 'id': id,
344
+ 'symbol': symbol,
345
+ 'base': base,
346
+ 'quote': quote,
347
+ 'settle': settle,
348
+ 'baseId': baseId,
349
+ 'quoteId': quoteId,
350
+ 'settleId': settleId,
351
+ 'type': type,
352
+ 'spot': !swap,
353
+ 'margin': margin,
354
+ 'swap': swap,
355
+ 'future': false,
356
+ 'option': false,
357
+ 'active': active,
358
+ 'contract': contract,
359
+ 'linear': linear,
360
+ 'inverse': inverse,
361
+ 'taker': this.parseNumber(taker),
362
+ 'maker': this.parseNumber(maker),
363
+ 'contractSize': contractSize,
364
+ 'expiry': undefined,
365
+ 'expiryDatetime': undefined,
366
+ 'strike': undefined,
367
+ 'optionType': undefined,
368
+ 'precision': {
369
+ 'amount': amountPrecision,
370
+ 'price': this.parseNumber(this.parsePrecision(this.safeString(market, 'moneyPrec'))),
371
+ },
372
+ 'limits': {
373
+ 'leverage': {
374
+ 'min': undefined,
375
+ 'max': undefined,
371
376
  },
372
- 'limits': {
373
- 'leverage': {
374
- 'min': undefined,
375
- 'max': undefined,
376
- },
377
- 'amount': {
378
- 'min': this.safeNumber(market, 'minAmount'),
379
- 'max': undefined,
380
- },
381
- 'price': {
382
- 'min': undefined,
383
- 'max': undefined,
384
- },
385
- 'cost': {
386
- 'min': this.safeNumber(market, 'minTotal'),
387
- 'max': this.safeNumber(market, 'maxTotal'),
388
- },
377
+ 'amount': {
378
+ 'min': this.safeNumber(market, 'minAmount'),
379
+ 'max': undefined,
389
380
  },
390
- 'created': undefined,
391
- 'info': market,
392
- };
393
- result.push(entry);
394
- }
395
- return result;
381
+ 'price': {
382
+ 'min': undefined,
383
+ 'max': undefined,
384
+ },
385
+ 'cost': {
386
+ 'min': this.safeNumber(market, 'minTotal'),
387
+ 'max': this.safeNumber(market, 'maxTotal'),
388
+ },
389
+ },
390
+ 'created': undefined,
391
+ 'info': market,
392
+ };
396
393
  }
397
394
  async fetchCurrencies(params = {}) {
398
395
  /**
@@ -1821,6 +1818,7 @@ export default class whitebit extends Exchange {
1821
1818
  'tag': undefined,
1822
1819
  'tagTo': undefined,
1823
1820
  'comment': this.safeString(transaction, 'description'),
1821
+ 'internal': undefined,
1824
1822
  'fee': {
1825
1823
  'cost': this.safeNumber(transaction, 'fee'),
1826
1824
  'currency': this.safeCurrencyCode(currencyId, currency),
package/js/src/woo.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import Exchange from './abstract/woo.js';
2
- import { Balances, FundingRateHistory, Int, OHLCV, Order, OrderBook, OrderSide, OrderType, Trade, Transaction } from './base/types.js';
2
+ import { Balances, FundingRateHistory, Int, Market, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class woo
5
5
  * @extends Exchange
6
6
  */
7
7
  export default class woo extends Exchange {
8
8
  describe(): any;
9
- fetchMarkets(params?: {}): Promise<any[]>;
9
+ fetchMarkets(params?: {}): Promise<Market[]>;
10
+ parseMarket(market: any): Market;
10
11
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
11
12
  parseTrade(trade: any, market?: any): Trade;
12
13
  parseTokenAndFeeTemp(item: any, feeTokenKey: any, feeAmountKey: any): any;
@@ -14,18 +15,18 @@ export default class woo extends Exchange {
14
15
  fetchCurrencies(params?: {}): Promise<{}>;
15
16
  createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
16
17
  editOrder(id: string, symbol: any, type: any, side: any, amount?: any, price?: any, params?: {}): Promise<Order>;
17
- cancelOrder(id: string, symbol?: string, params?: {}): Promise<any>;
18
- cancelAllOrders(symbol?: string, params?: {}): Promise<any>;
19
- fetchOrder(id: string, symbol?: string, params?: {}): Promise<Order>;
20
- fetchOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
18
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
19
+ cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
20
+ fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
21
+ fetchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
21
22
  parseTimeInForce(timeInForce: any): string;
22
23
  parseOrder(order: any, market?: any): Order;
23
24
  parseOrderStatus(status: any): any;
24
25
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
25
26
  fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
26
27
  parseOHLCV(ohlcv: any, market?: any): OHLCV;
27
- fetchOrderTrades(id: string, symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
28
- fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
28
+ fetchOrderTrades(id: string, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
29
+ fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
29
30
  fetchAccounts(params?: {}): Promise<any[]>;
30
31
  parseAccount(account: any): {
31
32
  info: any;
@@ -43,8 +44,8 @@ export default class woo extends Exchange {
43
44
  network: string;
44
45
  info: any;
45
46
  }>;
46
- getAssetHistoryRows(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any[]>;
47
- fetchLedger(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
47
+ getAssetHistoryRows(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<any[]>;
48
+ fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
48
49
  parseLedgerEntry(item: any, currency?: any): {
49
50
  id: string;
50
51
  currency: any;
@@ -64,9 +65,9 @@ export default class woo extends Exchange {
64
65
  };
65
66
  parseLedgerEntryType(type: any): string;
66
67
  getCurrencyFromChaincode(networkizedCode: any, currency: any): any;
67
- fetchDeposits(code?: string, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
68
- fetchWithdrawals(code?: string, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
69
- fetchDepositsWithdrawals(code?: string, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
68
+ fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
69
+ fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
70
+ fetchDepositsWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
70
71
  parseTransaction(transaction: any, currency?: any): Transaction;
71
72
  parseTransactionStatus(status: any): string;
72
73
  transfer(code: string, amount: any, fromAccount: any, toAccount: any, params?: {}): Promise<{
@@ -80,7 +81,7 @@ export default class woo extends Exchange {
80
81
  status: string;
81
82
  info: any;
82
83
  }>;
83
- fetchTransfers(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
84
+ fetchTransfers(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
84
85
  parseTransfer(transfer: any, currency?: any): {
85
86
  id: string;
86
87
  timestamp: number;
@@ -94,7 +95,7 @@ export default class woo extends Exchange {
94
95
  };
95
96
  parseTransferStatus(status: any): string;
96
97
  withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<Transaction>;
97
- repayMargin(code: string, amount: any, symbol?: string, params?: {}): Promise<any>;
98
+ repayMargin(code: string, amount: any, symbol?: Str, params?: {}): Promise<any>;
98
99
  parseMarginLoan(info: any, currency?: any): {
99
100
  id: any;
100
101
  currency: any;
@@ -122,7 +123,7 @@ export default class woo extends Exchange {
122
123
  amount: number;
123
124
  rate: number;
124
125
  };
125
- fetchFundingHistory(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").FundingHistory[]>;
126
+ fetchFundingHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").FundingHistory[]>;
126
127
  parseFundingRate(fundingRate: any, market?: any): {
127
128
  info: any;
128
129
  symbol: any;
@@ -162,13 +163,13 @@ export default class woo extends Exchange {
162
163
  previousFundingDatetime: string;
163
164
  }>;
164
165
  fetchFundingRates(symbols?: string[], params?: {}): Promise<any>;
165
- fetchFundingRateHistory(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
166
+ fetchFundingRateHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
166
167
  fetchLeverage(symbol: string, params?: {}): Promise<{
167
168
  info: any;
168
169
  leverage: number;
169
170
  }>;
170
- setLeverage(leverage: any, symbol?: string, params?: {}): Promise<any>;
171
- fetchPosition(symbol?: string, params?: {}): Promise<import("./base/types.js").Position>;
171
+ setLeverage(leverage: any, symbol?: Str, params?: {}): Promise<any>;
172
+ fetchPosition(symbol?: Str, params?: {}): Promise<import("./base/types.js").Position>;
172
173
  fetchPositions(symbols?: string[], params?: {}): Promise<import("./base/types.js").Position[]>;
173
174
  parsePosition(position: any, market?: any): import("./base/types.js").Position;
174
175
  defaultNetworkCodeForCurrency(code: any): any;
package/js/src/woo.js CHANGED
@@ -332,86 +332,84 @@ export default class woo extends Exchange {
332
332
  // "success": true
333
333
  // }
334
334
  //
335
- const result = [];
336
335
  const data = this.safeValue(response, 'rows', []);
337
- for (let i = 0; i < data.length; i++) {
338
- const market = data[i];
339
- const marketId = this.safeString(market, 'symbol');
340
- const parts = marketId.split('_');
341
- let marketType = this.safeStringLower(parts, 0);
342
- const isSpot = marketType === 'spot';
343
- const isSwap = marketType === 'perp';
344
- const baseId = this.safeString(parts, 1);
345
- const quoteId = this.safeString(parts, 2);
346
- const base = this.safeCurrencyCode(baseId);
347
- const quote = this.safeCurrencyCode(quoteId);
348
- let settleId = undefined;
349
- let settle = undefined;
350
- let symbol = base + '/' + quote;
351
- let contractSize = undefined;
352
- let linear = undefined;
353
- let margin = true;
354
- const contract = isSwap;
355
- if (contract) {
356
- margin = false;
357
- settleId = this.safeString(parts, 2);
358
- settle = this.safeCurrencyCode(settleId);
359
- symbol = base + '/' + quote + ':' + settle;
360
- contractSize = this.parseNumber('1');
361
- marketType = 'swap';
362
- linear = true;
363
- }
364
- result.push({
365
- 'id': marketId,
366
- 'symbol': symbol,
367
- 'base': base,
368
- 'quote': quote,
369
- 'settle': settle,
370
- 'baseId': baseId,
371
- 'quoteId': quoteId,
372
- 'settleId': settleId,
373
- 'type': marketType,
374
- 'spot': isSpot,
375
- 'margin': margin,
376
- 'swap': isSwap,
377
- 'future': false,
378
- 'option': false,
379
- 'active': undefined,
380
- 'contract': contract,
381
- 'linear': linear,
382
- 'inverse': undefined,
383
- 'contractSize': contractSize,
384
- 'expiry': undefined,
385
- 'expiryDatetime': undefined,
386
- 'strike': undefined,
387
- 'optionType': undefined,
388
- 'precision': {
389
- 'amount': this.safeNumber(market, 'base_tick'),
390
- 'price': this.safeNumber(market, 'quote_tick'),
336
+ return this.parseMarkets(data);
337
+ }
338
+ parseMarket(market) {
339
+ const marketId = this.safeString(market, 'symbol');
340
+ const parts = marketId.split('_');
341
+ let marketType = this.safeStringLower(parts, 0);
342
+ const isSpot = marketType === 'spot';
343
+ const isSwap = marketType === 'perp';
344
+ const baseId = this.safeString(parts, 1);
345
+ const quoteId = this.safeString(parts, 2);
346
+ const base = this.safeCurrencyCode(baseId);
347
+ const quote = this.safeCurrencyCode(quoteId);
348
+ let settleId = undefined;
349
+ let settle = undefined;
350
+ let symbol = base + '/' + quote;
351
+ let contractSize = undefined;
352
+ let linear = undefined;
353
+ let margin = true;
354
+ const contract = isSwap;
355
+ if (contract) {
356
+ margin = false;
357
+ settleId = this.safeString(parts, 2);
358
+ settle = this.safeCurrencyCode(settleId);
359
+ symbol = base + '/' + quote + ':' + settle;
360
+ contractSize = this.parseNumber('1');
361
+ marketType = 'swap';
362
+ linear = true;
363
+ }
364
+ return {
365
+ 'id': marketId,
366
+ 'symbol': symbol,
367
+ 'base': base,
368
+ 'quote': quote,
369
+ 'settle': settle,
370
+ 'baseId': baseId,
371
+ 'quoteId': quoteId,
372
+ 'settleId': settleId,
373
+ 'type': marketType,
374
+ 'spot': isSpot,
375
+ 'margin': margin,
376
+ 'swap': isSwap,
377
+ 'future': false,
378
+ 'option': false,
379
+ 'active': undefined,
380
+ 'contract': contract,
381
+ 'linear': linear,
382
+ 'inverse': undefined,
383
+ 'contractSize': contractSize,
384
+ 'expiry': undefined,
385
+ 'expiryDatetime': undefined,
386
+ 'strike': undefined,
387
+ 'optionType': undefined,
388
+ 'precision': {
389
+ 'amount': this.safeNumber(market, 'base_tick'),
390
+ 'price': this.safeNumber(market, 'quote_tick'),
391
+ },
392
+ 'limits': {
393
+ 'leverage': {
394
+ 'min': undefined,
395
+ 'max': undefined,
391
396
  },
392
- 'limits': {
393
- 'leverage': {
394
- 'min': undefined,
395
- 'max': undefined,
396
- },
397
- 'amount': {
398
- 'min': this.safeNumber(market, 'base_min'),
399
- 'max': this.safeNumber(market, 'base_max'),
400
- },
401
- 'price': {
402
- 'min': this.safeNumber(market, 'quote_min'),
403
- 'max': this.safeNumber(market, 'quote_max'),
404
- },
405
- 'cost': {
406
- 'min': this.safeNumber(market, 'min_notional'),
407
- 'max': undefined,
408
- },
397
+ 'amount': {
398
+ 'min': this.safeNumber(market, 'base_min'),
399
+ 'max': this.safeNumber(market, 'base_max'),
409
400
  },
410
- 'created': this.safeTimestamp(market, 'created_time'),
411
- 'info': market,
412
- });
413
- }
414
- return result;
401
+ 'price': {
402
+ 'min': this.safeNumber(market, 'quote_min'),
403
+ 'max': this.safeNumber(market, 'quote_max'),
404
+ },
405
+ 'cost': {
406
+ 'min': this.safeNumber(market, 'min_notional'),
407
+ 'max': undefined,
408
+ },
409
+ },
410
+ 'created': this.safeTimestamp(market, 'created_time'),
411
+ 'info': market,
412
+ };
415
413
  }
416
414
  async fetchTrades(symbol, since = undefined, limit = undefined, params = {}) {
417
415
  /**
@@ -1897,6 +1895,7 @@ export default class woo extends Exchange {
1897
1895
  'status': this.parseTransactionStatus(this.safeString(transaction, 'status')),
1898
1896
  'updated': this.safeTimestamp(transaction, 'updated_time'),
1899
1897
  'comment': undefined,
1898
+ 'internal': undefined,
1900
1899
  'fee': fee,
1901
1900
  'network': undefined,
1902
1901
  };
package/js/src/yobit.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/yobit.js';
2
- import { Balances, Dictionary, Int, Order, OrderBook, OrderSide, OrderType, Ticker, Tickers, Trade } from './base/types.js';
2
+ import { Balances, Dictionary, Int, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Tickers, Trade } from './base/types.js';
3
3
  /**
4
4
  * @class yobit
5
5
  * @extends Exchange
@@ -18,12 +18,12 @@ export default class yobit extends Exchange {
18
18
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
19
19
  fetchTradingFees(params?: {}): Promise<{}>;
20
20
  createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
21
- cancelOrder(id: string, symbol?: string, params?: {}): Promise<Order>;
21
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
22
22
  parseOrderStatus(status: any): string;
23
23
  parseOrder(order: any, market?: any): Order;
24
- fetchOrder(id: string, symbol?: string, params?: {}): Promise<Order>;
25
- fetchOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
26
- fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
24
+ fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
25
+ fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
26
+ fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
27
27
  createDepositAddress(code: string, params?: {}): Promise<{
28
28
  currency: string;
29
29
  address: string;
package/js/src/zaif.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import Exchange from './abstract/zaif.js';
2
- import { Balances, Int, Order, OrderBook, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
2
+ import { Balances, Int, Market, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class zaif
5
5
  * @extends Exchange
6
6
  */
7
7
  export default class zaif extends Exchange {
8
8
  describe(): any;
9
- fetchMarkets(params?: {}): Promise<any[]>;
9
+ fetchMarkets(params?: {}): Promise<Market[]>;
10
+ parseMarket(market: any): Market;
10
11
  parseBalance(response: any): Balances;
11
12
  fetchBalance(params?: {}): Promise<Balances>;
12
13
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
@@ -15,10 +16,10 @@ export default class zaif extends Exchange {
15
16
  parseTrade(trade: any, market?: any): Trade;
16
17
  fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
17
18
  createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
18
- cancelOrder(id: string, symbol?: string, params?: {}): Promise<any>;
19
+ cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
19
20
  parseOrder(order: any, market?: any): Order;
20
- fetchOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
21
- fetchClosedOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
21
+ fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
22
+ fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
22
23
  withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<Transaction>;
23
24
  parseTransaction(transaction: any, currency?: any): Transaction;
24
25
  customNonce(): string;