ccxt 4.2.30 → 4.2.34

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 (318) hide show
  1. package/.gitattributes +1 -0
  2. package/CONTRIBUTING.md +20 -1
  3. package/README.md +9 -9
  4. package/build.sh +9 -2
  5. package/cleanup.sh +3 -0
  6. package/dist/ccxt.browser.js +1136 -561
  7. package/dist/ccxt.browser.min.js +3 -3
  8. package/dist/cjs/ccxt.js +1 -1
  9. package/dist/cjs/src/ace.js +3 -2
  10. package/dist/cjs/src/ascendex.js +1 -1
  11. package/dist/cjs/src/base/Exchange.js +66 -24
  12. package/dist/cjs/src/bigone.js +21 -1
  13. package/dist/cjs/src/binance.js +6 -5
  14. package/dist/cjs/src/bingx.js +4 -3
  15. package/dist/cjs/src/bit2c.js +12 -0
  16. package/dist/cjs/src/bitfinex2.js +415 -41
  17. package/dist/cjs/src/bitforex.js +3 -0
  18. package/dist/cjs/src/bitget.js +3 -3
  19. package/dist/cjs/src/bitmart.js +1 -1
  20. package/dist/cjs/src/bitrue.js +3 -3
  21. package/dist/cjs/src/blockchaincom.js +1 -1
  22. package/dist/cjs/src/bybit.js +1 -1
  23. package/dist/cjs/src/coinbase.js +12 -2
  24. package/dist/cjs/src/coinex.js +1 -1
  25. package/dist/cjs/src/cryptocom.js +10 -10
  26. package/dist/cjs/src/deribit.js +1 -0
  27. package/dist/cjs/src/gate.js +34 -29
  28. package/dist/cjs/src/htx.js +1 -1
  29. package/dist/cjs/src/kraken.js +42 -1
  30. package/dist/cjs/src/krakenfutures.js +3 -0
  31. package/dist/cjs/src/kucoin.js +1 -1
  32. package/dist/cjs/src/lbank.js +27 -26
  33. package/dist/cjs/src/mexc.js +2 -1
  34. package/dist/cjs/src/okx.js +20 -5
  35. package/dist/cjs/src/phemex.js +8 -8
  36. package/dist/cjs/src/poloniexfutures.js +3 -0
  37. package/dist/cjs/src/pro/alpaca.js +8 -4
  38. package/dist/cjs/src/pro/ascendex.js +1 -2
  39. package/dist/cjs/src/pro/binance.js +14 -10
  40. package/dist/cjs/src/pro/bingx.js +1 -1
  41. package/dist/cjs/src/pro/bitfinex.js +21 -24
  42. package/dist/cjs/src/pro/bitfinex2.js +13 -17
  43. package/dist/cjs/src/pro/bitget.js +3 -1
  44. package/dist/cjs/src/pro/bitmart.js +3 -8
  45. package/dist/cjs/src/pro/bitmex.js +4 -7
  46. package/dist/cjs/src/pro/bitopro.js +2 -5
  47. package/dist/cjs/src/pro/bitrue.js +1 -1
  48. package/dist/cjs/src/pro/bitstamp.js +2 -3
  49. package/dist/cjs/src/pro/bitvavo.js +12 -5
  50. package/dist/cjs/src/pro/blockchaincom.js +22 -23
  51. package/dist/cjs/src/pro/bybit.js +5 -5
  52. package/dist/cjs/src/pro/cex.js +7 -7
  53. package/dist/cjs/src/pro/coinbase.js +3 -2
  54. package/dist/cjs/src/pro/coinbasepro.js +1 -1
  55. package/dist/cjs/src/pro/coinex.js +15 -13
  56. package/dist/cjs/src/pro/currencycom.js +5 -7
  57. package/dist/cjs/src/pro/deribit.js +4 -4
  58. package/dist/cjs/src/pro/exmo.js +15 -13
  59. package/dist/cjs/src/pro/gate.js +1 -1
  60. package/dist/cjs/src/pro/gemini.js +4 -2
  61. package/dist/cjs/src/pro/hitbtc.js +9 -8
  62. package/dist/cjs/src/pro/hollaex.js +2 -2
  63. package/dist/cjs/src/pro/htx.js +6 -7
  64. package/dist/cjs/src/pro/huobijp.js +3 -5
  65. package/dist/cjs/src/pro/idex.js +1 -1
  66. package/dist/cjs/src/pro/independentreserve.js +14 -13
  67. package/dist/cjs/src/pro/kraken.js +10 -16
  68. package/dist/cjs/src/pro/krakenfutures.js +10 -6
  69. package/dist/cjs/src/pro/kucoin.js +10 -11
  70. package/dist/cjs/src/pro/kucoinfutures.js +12 -11
  71. package/dist/cjs/src/pro/lbank.js +10 -10
  72. package/dist/cjs/src/pro/luno.js +12 -14
  73. package/dist/cjs/src/pro/mexc.js +3 -2
  74. package/dist/cjs/src/pro/ndax.js +7 -13
  75. package/dist/cjs/src/pro/okcoin.js +7 -12
  76. package/dist/cjs/src/pro/okx.js +6 -11
  77. package/dist/cjs/src/pro/onetrading.js +16 -15
  78. package/dist/cjs/src/pro/p2b.js +5 -3
  79. package/dist/cjs/src/pro/phemex.js +16 -11
  80. package/dist/cjs/src/pro/poloniex.js +6 -4
  81. package/dist/cjs/src/pro/poloniexfutures.js +14 -9
  82. package/dist/cjs/src/pro/probit.js +15 -11
  83. package/dist/cjs/src/pro/upbit.js +8 -8
  84. package/dist/cjs/src/pro/wazirx.js +6 -3
  85. package/dist/cjs/src/pro/woo.js +8 -6
  86. package/dist/cjs/src/probit.js +3 -3
  87. package/dist/cjs/src/timex.js +1 -1
  88. package/dist/cjs/src/tokocrypto.js +2 -2
  89. package/dist/cjs/src/wavesexchange.js +2 -1
  90. package/dist/cjs/src/whitebit.js +1 -1
  91. package/dist/cjs/src/woo.js +1 -1
  92. package/dist/cjs/src/yobit.js +39 -0
  93. package/js/ccxt.d.ts +1 -1
  94. package/js/ccxt.js +1 -1
  95. package/js/src/abstract/coinbase.d.ts +10 -0
  96. package/js/src/abstract/okx.d.ts +12 -1
  97. package/js/src/ace.d.ts +1 -1
  98. package/js/src/ace.js +3 -2
  99. package/js/src/alpaca.d.ts +1 -1
  100. package/js/src/ascendex.d.ts +5 -15
  101. package/js/src/ascendex.js +1 -1
  102. package/js/src/base/Exchange.d.ts +88 -79
  103. package/js/src/base/Exchange.js +66 -24
  104. package/js/src/base/types.d.ts +90 -6
  105. package/js/src/bigone.d.ts +5 -15
  106. package/js/src/bigone.js +21 -1
  107. package/js/src/binance.d.ts +13 -23
  108. package/js/src/binance.js +6 -5
  109. package/js/src/bingx.d.ts +6 -16
  110. package/js/src/bingx.js +4 -3
  111. package/js/src/bit2c.d.ts +1 -1
  112. package/js/src/bit2c.js +12 -0
  113. package/js/src/bitbank.d.ts +2 -2
  114. package/js/src/bitbns.d.ts +1 -1
  115. package/js/src/bitfinex.d.ts +5 -5
  116. package/js/src/bitfinex2.d.ts +11 -16
  117. package/js/src/bitfinex2.js +415 -41
  118. package/js/src/bitflyer.d.ts +5 -5
  119. package/js/src/bitforex.d.ts +1 -1
  120. package/js/src/bitforex.js +3 -0
  121. package/js/src/bitget.d.ts +8 -38
  122. package/js/src/bitget.js +3 -3
  123. package/js/src/bithumb.d.ts +2 -2
  124. package/js/src/bitmart.d.ts +10 -21
  125. package/js/src/bitmart.js +1 -1
  126. package/js/src/bitmex.d.ts +3 -3
  127. package/js/src/bitopro.d.ts +2 -2
  128. package/js/src/bitrue.d.ts +5 -15
  129. package/js/src/bitrue.js +3 -3
  130. package/js/src/bitso.d.ts +4 -4
  131. package/js/src/bitstamp.d.ts +2 -2
  132. package/js/src/bitteam.d.ts +1 -1
  133. package/js/src/bitvavo.d.ts +3 -3
  134. package/js/src/bl3p.d.ts +1 -1
  135. package/js/src/blockchaincom.d.ts +2 -2
  136. package/js/src/blockchaincom.js +1 -1
  137. package/js/src/btcalpha.d.ts +1 -1
  138. package/js/src/btcbox.d.ts +1 -1
  139. package/js/src/btcmarkets.d.ts +3 -3
  140. package/js/src/btcturk.d.ts +1 -1
  141. package/js/src/bybit.d.ts +8 -8
  142. package/js/src/bybit.js +1 -1
  143. package/js/src/cex.d.ts +1 -1
  144. package/js/src/coinbase.d.ts +6 -50
  145. package/js/src/coinbase.js +12 -2
  146. package/js/src/coinbasepro.d.ts +2 -2
  147. package/js/src/coincheck.d.ts +1 -1
  148. package/js/src/coinex.d.ts +8 -8
  149. package/js/src/coinex.js +1 -1
  150. package/js/src/coinlist.d.ts +4 -14
  151. package/js/src/coinmate.d.ts +2 -2
  152. package/js/src/coinmetro.d.ts +2 -2
  153. package/js/src/coinone.d.ts +1 -1
  154. package/js/src/coinsph.d.ts +2 -2
  155. package/js/src/coinspot.d.ts +1 -1
  156. package/js/src/cryptocom.d.ts +4 -4
  157. package/js/src/cryptocom.js +10 -10
  158. package/js/src/currencycom.d.ts +2 -2
  159. package/js/src/delta.d.ts +2 -2
  160. package/js/src/deribit.d.ts +4 -14
  161. package/js/src/deribit.js +1 -0
  162. package/js/src/digifinex.d.ts +10 -38
  163. package/js/src/exmo.d.ts +2 -2
  164. package/js/src/gate.d.ts +8 -18
  165. package/js/src/gate.js +34 -29
  166. package/js/src/gemini.d.ts +2 -2
  167. package/js/src/hitbtc.d.ts +6 -16
  168. package/js/src/hollaex.d.ts +2 -2
  169. package/js/src/htx.d.ts +11 -21
  170. package/js/src/htx.js +1 -1
  171. package/js/src/huobijp.d.ts +4 -4
  172. package/js/src/idex.d.ts +3 -3
  173. package/js/src/independentreserve.d.ts +2 -2
  174. package/js/src/indodax.d.ts +2 -2
  175. package/js/src/kraken.d.ts +5 -5
  176. package/js/src/kraken.js +42 -1
  177. package/js/src/krakenfutures.d.ts +7 -7
  178. package/js/src/krakenfutures.js +3 -0
  179. package/js/src/kucoin.d.ts +8 -29
  180. package/js/src/kucoin.js +1 -1
  181. package/js/src/kucoinfutures.d.ts +4 -4
  182. package/js/src/kuna.d.ts +2 -2
  183. package/js/src/latoken.d.ts +4 -14
  184. package/js/src/lbank.d.ts +3 -6
  185. package/js/src/lbank.js +27 -26
  186. package/js/src/luno.d.ts +1 -1
  187. package/js/src/lykke.d.ts +2 -2
  188. package/js/src/mercado.d.ts +2 -2
  189. package/js/src/mexc.d.ts +6 -6
  190. package/js/src/mexc.js +2 -1
  191. package/js/src/ndax.d.ts +2 -2
  192. package/js/src/novadax.d.ts +4 -15
  193. package/js/src/oceanex.d.ts +1 -1
  194. package/js/src/okcoin.d.ts +5 -15
  195. package/js/src/okx.d.ts +8 -18
  196. package/js/src/okx.js +20 -5
  197. package/js/src/onetrading.d.ts +2 -2
  198. package/js/src/p2b.d.ts +1 -1
  199. package/js/src/paymium.d.ts +3 -13
  200. package/js/src/phemex.d.ts +5 -5
  201. package/js/src/phemex.js +8 -8
  202. package/js/src/poloniex.d.ts +4 -14
  203. package/js/src/poloniexfutures.d.ts +1 -1
  204. package/js/src/poloniexfutures.js +3 -0
  205. package/js/src/pro/alpaca.d.ts +2 -2
  206. package/js/src/pro/alpaca.js +8 -4
  207. package/js/src/pro/ascendex.d.ts +2 -2
  208. package/js/src/pro/ascendex.js +1 -2
  209. package/js/src/pro/binance.d.ts +3 -3
  210. package/js/src/pro/binance.js +14 -10
  211. package/js/src/pro/bingx.d.ts +1 -1
  212. package/js/src/pro/bingx.js +1 -1
  213. package/js/src/pro/bitfinex.d.ts +2 -2
  214. package/js/src/pro/bitfinex.js +21 -24
  215. package/js/src/pro/bitfinex2.d.ts +2 -2
  216. package/js/src/pro/bitfinex2.js +13 -17
  217. package/js/src/pro/bitget.js +3 -1
  218. package/js/src/pro/bitmart.d.ts +3 -3
  219. package/js/src/pro/bitmart.js +3 -8
  220. package/js/src/pro/bitmex.d.ts +1 -1
  221. package/js/src/pro/bitmex.js +4 -7
  222. package/js/src/pro/bitopro.d.ts +1 -1
  223. package/js/src/pro/bitopro.js +2 -5
  224. package/js/src/pro/bitrue.js +1 -1
  225. package/js/src/pro/bitstamp.d.ts +1 -1
  226. package/js/src/pro/bitstamp.js +2 -3
  227. package/js/src/pro/bitvavo.d.ts +3 -3
  228. package/js/src/pro/bitvavo.js +12 -5
  229. package/js/src/pro/blockchaincom.d.ts +8 -8
  230. package/js/src/pro/blockchaincom.js +22 -23
  231. package/js/src/pro/bybit.d.ts +2 -2
  232. package/js/src/pro/bybit.js +5 -5
  233. package/js/src/pro/cex.d.ts +1 -1
  234. package/js/src/pro/cex.js +7 -7
  235. package/js/src/pro/coinbase.d.ts +1 -1
  236. package/js/src/pro/coinbase.js +3 -2
  237. package/js/src/pro/coinbasepro.d.ts +1 -1
  238. package/js/src/pro/coinbasepro.js +1 -1
  239. package/js/src/pro/coinex.d.ts +2 -2
  240. package/js/src/pro/coinex.js +15 -13
  241. package/js/src/pro/currencycom.d.ts +1 -1
  242. package/js/src/pro/currencycom.js +5 -7
  243. package/js/src/pro/deribit.d.ts +2 -2
  244. package/js/src/pro/deribit.js +4 -4
  245. package/js/src/pro/exmo.d.ts +2 -2
  246. package/js/src/pro/exmo.js +15 -13
  247. package/js/src/pro/gate.js +1 -1
  248. package/js/src/pro/gemini.d.ts +1 -1
  249. package/js/src/pro/gemini.js +4 -2
  250. package/js/src/pro/hitbtc.d.ts +2 -2
  251. package/js/src/pro/hitbtc.js +9 -8
  252. package/js/src/pro/hollaex.d.ts +2 -2
  253. package/js/src/pro/hollaex.js +2 -2
  254. package/js/src/pro/htx.d.ts +2 -2
  255. package/js/src/pro/htx.js +6 -7
  256. package/js/src/pro/huobijp.d.ts +1 -1
  257. package/js/src/pro/huobijp.js +3 -5
  258. package/js/src/pro/idex.js +1 -1
  259. package/js/src/pro/independentreserve.d.ts +1 -1
  260. package/js/src/pro/independentreserve.js +14 -13
  261. package/js/src/pro/kraken.d.ts +2 -2
  262. package/js/src/pro/kraken.js +10 -16
  263. package/js/src/pro/krakenfutures.d.ts +1 -1
  264. package/js/src/pro/krakenfutures.js +10 -6
  265. package/js/src/pro/kucoin.d.ts +3 -3
  266. package/js/src/pro/kucoin.js +10 -11
  267. package/js/src/pro/kucoinfutures.d.ts +3 -3
  268. package/js/src/pro/kucoinfutures.js +12 -11
  269. package/js/src/pro/lbank.d.ts +1 -1
  270. package/js/src/pro/lbank.js +10 -10
  271. package/js/src/pro/luno.d.ts +2 -2
  272. package/js/src/pro/luno.js +12 -14
  273. package/js/src/pro/mexc.d.ts +2 -2
  274. package/js/src/pro/mexc.js +3 -2
  275. package/js/src/pro/ndax.d.ts +3 -3
  276. package/js/src/pro/ndax.js +7 -13
  277. package/js/src/pro/okcoin.d.ts +1 -1
  278. package/js/src/pro/okcoin.js +7 -12
  279. package/js/src/pro/okx.d.ts +1 -1
  280. package/js/src/pro/okx.js +6 -11
  281. package/js/src/pro/onetrading.d.ts +1 -1
  282. package/js/src/pro/onetrading.js +16 -15
  283. package/js/src/pro/p2b.d.ts +1 -1
  284. package/js/src/pro/p2b.js +5 -3
  285. package/js/src/pro/phemex.d.ts +3 -3
  286. package/js/src/pro/phemex.js +16 -11
  287. package/js/src/pro/poloniex.d.ts +1 -1
  288. package/js/src/pro/poloniex.js +6 -4
  289. package/js/src/pro/poloniexfutures.d.ts +4 -4
  290. package/js/src/pro/poloniexfutures.js +13 -10
  291. package/js/src/pro/probit.d.ts +1 -1
  292. package/js/src/pro/probit.js +14 -12
  293. package/js/src/pro/upbit.js +8 -8
  294. package/js/src/pro/wazirx.d.ts +1 -1
  295. package/js/src/pro/wazirx.js +6 -3
  296. package/js/src/pro/woo.d.ts +3 -3
  297. package/js/src/pro/woo.js +8 -6
  298. package/js/src/probit.d.ts +3 -3
  299. package/js/src/probit.js +3 -3
  300. package/js/src/timex.d.ts +1 -1
  301. package/js/src/timex.js +1 -1
  302. package/js/src/tokocrypto.d.ts +3 -3
  303. package/js/src/tokocrypto.js +2 -2
  304. package/js/src/upbit.d.ts +2 -2
  305. package/js/src/wavesexchange.d.ts +3 -4
  306. package/js/src/wavesexchange.js +2 -1
  307. package/js/src/wazirx.d.ts +1 -1
  308. package/js/src/whitebit.d.ts +5 -15
  309. package/js/src/whitebit.js +1 -1
  310. package/js/src/woo.d.ts +5 -15
  311. package/js/src/woo.js +1 -1
  312. package/js/src/yobit.d.ts +21 -6
  313. package/js/src/yobit.js +39 -0
  314. package/js/src/zaif.d.ts +2 -2
  315. package/js/src/zonda.d.ts +4 -14
  316. package/package.json +22 -8
  317. package/skip-tests.json +9 -1
  318. package/tests-manager.sh +1 -2
@@ -102,7 +102,7 @@ export default class blockchaincom extends blockchaincomRest {
102
102
  //
103
103
  const event = this.safeString(message, 'event');
104
104
  if (event === 'subscribed') {
105
- return message;
105
+ return;
106
106
  }
107
107
  const result = { 'info': message };
108
108
  const balances = this.safeValue(message, 'balances', []);
@@ -172,11 +172,9 @@ export default class blockchaincom extends blockchaincomRest {
172
172
  // }
173
173
  //
174
174
  const event = this.safeString(message, 'event');
175
- if (event === 'subscribed') {
176
- return message;
177
- }
178
- else if (event === 'rejected') {
179
- throw new ExchangeError(this.id + ' ' + this.json(message));
175
+ if (event === 'rejected') {
176
+ const jsonMessage = this.json(message);
177
+ throw new ExchangeError(this.id + ' ' + jsonMessage);
180
178
  }
181
179
  else if (event === 'updated') {
182
180
  const marketId = this.safeString(message, 'symbol');
@@ -196,7 +194,7 @@ export default class blockchaincom extends blockchaincomRest {
196
194
  stored.append(ohlcv);
197
195
  client.resolve(stored, messageHash);
198
196
  }
199
- else {
197
+ else if (event !== 'subscribed') {
200
198
  throw new NotSupported(this.id + ' ' + this.json(message));
201
199
  }
202
200
  }
@@ -258,7 +256,7 @@ export default class blockchaincom extends blockchaincomRest {
258
256
  const symbol = market['symbol'];
259
257
  let ticker = undefined;
260
258
  if (event === 'subscribed') {
261
- return message;
259
+ return;
262
260
  }
263
261
  else if (event === 'snapshot') {
264
262
  ticker = this.parseTicker(message, market);
@@ -357,7 +355,7 @@ export default class blockchaincom extends blockchaincomRest {
357
355
  //
358
356
  const event = this.safeString(message, 'event');
359
357
  if (event !== 'updated') {
360
- return message;
358
+ return;
361
359
  }
362
360
  const marketId = this.safeString(message, 'symbol');
363
361
  const symbol = this.safeSymbol(marketId);
@@ -519,7 +517,7 @@ export default class blockchaincom extends blockchaincomRest {
519
517
  this.orders = new ArrayCacheBySymbolById(limit);
520
518
  }
521
519
  if (event === 'subscribed') {
522
- return message;
520
+ return;
523
521
  }
524
522
  else if (event === 'rejected') {
525
523
  throw new ExchangeError(this.id + ' ' + this.json(message));
@@ -689,30 +687,30 @@ export default class blockchaincom extends blockchaincomRest {
689
687
  const messageHash = 'orderbook:' + symbol + ':' + type;
690
688
  const datetime = this.safeString(message, 'timestamp');
691
689
  const timestamp = this.parse8601(datetime);
692
- let storedOrderBook = this.safeValue(this.orderbooks, symbol);
693
- if (storedOrderBook === undefined) {
694
- storedOrderBook = this.countedOrderBook({});
695
- this.orderbooks[symbol] = storedOrderBook;
690
+ let orderbook = this.safeValue(this.orderbooks, symbol);
691
+ if (orderbook === undefined) {
692
+ orderbook = this.countedOrderBook({});
693
+ this.orderbooks[symbol] = orderbook;
696
694
  }
697
695
  if (event === 'subscribed') {
698
- return message;
696
+ return;
699
697
  }
700
698
  else if (event === 'snapshot') {
701
699
  const snapshot = this.parseOrderBook(message, symbol, timestamp, 'bids', 'asks', 'px', 'qty', 'num');
702
- storedOrderBook.reset(snapshot);
700
+ orderbook.reset(snapshot);
703
701
  }
704
702
  else if (event === 'updated') {
705
703
  const asks = this.safeValue(message, 'asks', []);
706
704
  const bids = this.safeValue(message, 'bids', []);
707
- this.handleDeltas(storedOrderBook['asks'], asks);
708
- this.handleDeltas(storedOrderBook['bids'], bids);
709
- storedOrderBook['timestamp'] = timestamp;
710
- storedOrderBook['datetime'] = datetime;
705
+ this.handleDeltas(orderbook['asks'], asks);
706
+ this.handleDeltas(orderbook['bids'], bids);
707
+ orderbook['timestamp'] = timestamp;
708
+ orderbook['datetime'] = datetime;
711
709
  }
712
710
  else {
713
711
  throw new NotSupported(this.id + ' watchOrderBook() does not support ' + event + ' yet');
714
712
  }
715
- client.resolve(storedOrderBook, messageHash);
713
+ client.resolve(orderbook, messageHash);
716
714
  }
717
715
  handleDelta(bookside, delta) {
718
716
  const bookArray = this.parseBidAsk(delta, 'px', 'qty', 'num');
@@ -753,7 +751,8 @@ export default class blockchaincom extends blockchaincomRest {
753
751
  };
754
752
  const handler = this.safeValue(handlers, channel);
755
753
  if (handler !== undefined) {
756
- return handler.call(this, client, message);
754
+ handler.call(this, client, message);
755
+ return;
757
756
  }
758
757
  throw new NotSupported(this.id + ' received an unsupported message: ' + this.json(message));
759
758
  }
@@ -775,7 +774,7 @@ export default class blockchaincom extends blockchaincomRest {
775
774
  future.resolve(true);
776
775
  }
777
776
  }
778
- authenticate(params = {}) {
777
+ async authenticate(params = {}) {
779
778
  const url = this.urls['api']['ws'];
780
779
  const client = this.client(url);
781
780
  const messageHash = 'authenticated';
@@ -25,11 +25,11 @@ export default class bybit extends bybitRest {
25
25
  watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
26
26
  handleMyTrades(client: Client, message: any): void;
27
27
  watchPositions(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<Position[]>;
28
- setPositionsCache(client: Client, symbols?: Strings): any;
28
+ setPositionsCache(client: Client, symbols?: Strings): void;
29
29
  loadPositionsSnapshot(client: any, messageHash: any): Promise<void>;
30
30
  handlePositions(client: any, message: any): void;
31
31
  watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
32
- handleOrder(client: Client, message: any, subscription?: any): void;
32
+ handleOrder(client: Client, message: any): void;
33
33
  parseWsSpotOrder(order: any, market?: any): Order;
34
34
  watchBalance(params?: {}): Promise<Balances>;
35
35
  handleBalance(client: Client, message: any): void;
@@ -909,7 +909,7 @@ export default class bybit extends bybitRest {
909
909
  * @name bybit#watchPositions
910
910
  * @see https://bybit-exchange.github.io/docs/v5/websocket/private/position
911
911
  * @description watch all open positions
912
- * @param {string[]|undefined} symbols list of unified market symbols
912
+ * @param {string[]} [symbols] list of unified market symbols
913
913
  * @param {object} params extra parameters specific to the exchange API endpoint
914
914
  * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/en/latest/manual.html#position-structure}
915
915
  */
@@ -942,7 +942,7 @@ export default class bybit extends bybitRest {
942
942
  }
943
943
  setPositionsCache(client, symbols = undefined) {
944
944
  if (this.positions !== undefined) {
945
- return this.positions;
945
+ return;
946
946
  }
947
947
  const fetchPositionsSnapshot = this.handleOption('watchPositions', 'fetchPositionsSnapshot', true);
948
948
  if (fetchPositionsSnapshot) {
@@ -1075,7 +1075,7 @@ export default class bybit extends bybitRest {
1075
1075
  }
1076
1076
  return this.filterBySymbolSinceLimit(orders, symbol, since, limit, true);
1077
1077
  }
1078
- handleOrder(client, message, subscription = undefined) {
1078
+ handleOrder(client, message) {
1079
1079
  //
1080
1080
  // spot
1081
1081
  // {
@@ -1641,7 +1641,7 @@ export default class bybit extends bybitRest {
1641
1641
  const authenticated = this.safeValue(client.subscriptions, messageHash);
1642
1642
  if (authenticated === undefined) {
1643
1643
  const expiresInt = this.milliseconds() + 10000;
1644
- const expires = expiresInt.toString();
1644
+ const expires = this.numberToString(expiresInt);
1645
1645
  const path = 'GET/realtime';
1646
1646
  const auth = path + expires;
1647
1647
  const signature = this.hmac(this.encode(auth), this.encode(this.secret), sha256, 'hex');
@@ -1654,7 +1654,7 @@ export default class bybit extends bybitRest {
1654
1654
  const message = this.extend(request, params);
1655
1655
  this.watch(url, messageHash, message, messageHash);
1656
1656
  }
1657
- return future;
1657
+ return await future;
1658
1658
  }
1659
1659
  handleErrorMessage(client, message) {
1660
1660
  //
@@ -46,7 +46,7 @@ export default class cex extends cexRest {
46
46
  resolveData(client: Client, message: any): void;
47
47
  handleConnected(client: Client, message: any): any;
48
48
  handleErrorMessage(client: Client, message: any): void;
49
- handleMessage(client: Client, message: any): any;
49
+ handleMessage(client: Client, message: any): void;
50
50
  handleAuthenticationMessage(client: Client, message: any): void;
51
51
  authenticate(params?: {}): Promise<any>;
52
52
  }
package/js/src/pro/cex.js CHANGED
@@ -963,15 +963,15 @@ export default class cex extends cexRest {
963
963
  const messageHash = 'orderbook:' + symbol;
964
964
  const timestamp = this.safeInteger2(data, 'timestamp_ms', 'timestamp');
965
965
  const incrementalId = this.safeNumber(data, 'id');
966
- const storedOrderBook = this.orderBook({});
966
+ const orderbook = this.orderBook({});
967
967
  const snapshot = this.parseOrderBook(data, symbol, timestamp, 'bids', 'asks');
968
968
  snapshot['nonce'] = incrementalId;
969
- storedOrderBook.reset(snapshot);
969
+ orderbook.reset(snapshot);
970
970
  this.options['orderbook'][symbol] = {
971
971
  'incrementalId': incrementalId,
972
972
  };
973
- this.orderbooks[symbol] = storedOrderBook;
974
- client.resolve(storedOrderBook, messageHash);
973
+ this.orderbooks[symbol] = orderbook;
974
+ client.resolve(orderbook, messageHash);
975
975
  }
976
976
  pairToSymbol(pair) {
977
977
  const parts = pair.split(':');
@@ -1437,7 +1437,8 @@ export default class cex extends cexRest {
1437
1437
  handleMessage(client, message) {
1438
1438
  const ok = this.safeString(message, 'ok');
1439
1439
  if (ok === 'error') {
1440
- return this.handleErrorMessage(client, message);
1440
+ this.handleErrorMessage(client, message);
1441
+ return;
1441
1442
  }
1442
1443
  const event = this.safeString(message, 'e');
1443
1444
  const handlers = {
@@ -1465,9 +1466,8 @@ export default class cex extends cexRest {
1465
1466
  };
1466
1467
  const handler = this.safeValue(handlers, event);
1467
1468
  if (handler !== undefined) {
1468
- return handler.call(this, client, message);
1469
+ handler.call(this, client, message);
1469
1470
  }
1470
- return message;
1471
1471
  }
1472
1472
  handleAuthenticationMessage(client, message) {
1473
1473
  //
@@ -16,5 +16,5 @@ export default class coinbase extends coinbaseRest {
16
16
  handleOrderBookHelper(orderbook: any, updates: any): void;
17
17
  handleOrderBook(client: any, message: any): any;
18
18
  handleSubscriptionStatus(client: any, message: any): any;
19
- handleMessage(client: any, message: any): any;
19
+ handleMessage(client: any, message: any): void;
20
20
  }
@@ -464,7 +464,8 @@ export default class coinbase extends coinbaseRest {
464
464
  const side = this.safeString(this.options['sides'], sideId);
465
465
  const price = this.safeNumber(trade, 'price_level');
466
466
  const amount = this.safeNumber(trade, 'new_quantity');
467
- orderbook[side].store(price, amount);
467
+ const orderbookSide = orderbook[side];
468
+ orderbookSide.store(price, amount);
468
469
  }
469
470
  }
470
471
  handleOrderBook(client, message) {
@@ -557,6 +558,6 @@ export default class coinbase extends coinbaseRest {
557
558
  throw new ExchangeError(errorMessage);
558
559
  }
559
560
  const method = this.safeValue(methods, channel);
560
- return method.call(this, client, message);
561
+ method.call(this, client, message);
561
562
  }
562
563
  }
@@ -34,5 +34,5 @@ export default class coinbasepro extends coinbaseproRest {
34
34
  handleOrderBook(client: Client, message: any): void;
35
35
  handleSubscriptionStatus(client: Client, message: any): any;
36
36
  handleErrorMessage(client: Client, message: any): boolean;
37
- handleMessage(client: Client, message: any): any;
37
+ handleMessage(client: Client, message: any): void;
38
38
  }
@@ -963,7 +963,7 @@ export default class coinbasepro extends coinbaseproRest {
963
963
  }
964
964
  }
965
965
  else {
966
- return method.call(this, client, message);
966
+ method.call(this, client, message);
967
967
  }
968
968
  }
969
969
  }
@@ -24,8 +24,8 @@ export default class coinex extends coinexRest {
24
24
  handleOrders(client: Client, message: any): void;
25
25
  parseWsOrder(order: any, market?: any): Order;
26
26
  parseWsOrderStatus(status: any): string;
27
- handleMessage(client: Client, message: any): any;
27
+ handleMessage(client: Client, message: any): void;
28
28
  handleAuthenticationMessage(client: Client, message: any): any;
29
29
  handleSubscriptionStatus(client: Client, message: any): void;
30
- authenticate(params?: {}): any;
30
+ authenticate(params?: {}): Promise<any>;
31
31
  }
@@ -656,29 +656,29 @@ export default class coinex extends coinexRest {
656
656
  //
657
657
  const params = this.safeValue(message, 'params', []);
658
658
  const fullOrderBook = this.safeValue(params, 0);
659
- let orderBook = this.safeValue(params, 1);
659
+ let orderbook = this.safeValue(params, 1);
660
660
  const marketId = this.safeString(params, 2);
661
661
  const defaultType = this.safeString(this.options, 'defaultType');
662
662
  const market = this.safeMarket(marketId, undefined, undefined, defaultType);
663
663
  const symbol = market['symbol'];
664
664
  const name = 'orderbook';
665
665
  const messageHash = name + ':' + symbol;
666
- const timestamp = this.safeInteger(orderBook, 'time');
666
+ const timestamp = this.safeInteger(orderbook, 'time');
667
667
  const currentOrderBook = this.safeValue(this.orderbooks, symbol);
668
668
  if (fullOrderBook) {
669
- const snapshot = this.parseOrderBook(orderBook, symbol, timestamp);
669
+ const snapshot = this.parseOrderBook(orderbook, symbol, timestamp);
670
670
  if (currentOrderBook === undefined) {
671
- orderBook = this.orderBook(snapshot);
672
- this.orderbooks[symbol] = orderBook;
671
+ orderbook = this.orderBook(snapshot);
672
+ this.orderbooks[symbol] = orderbook;
673
673
  }
674
674
  else {
675
- orderBook = this.orderbooks[symbol];
676
- orderBook.reset(snapshot);
675
+ orderbook = this.orderbooks[symbol];
676
+ orderbook.reset(snapshot);
677
677
  }
678
678
  }
679
679
  else {
680
- const asks = this.safeValue(orderBook, 'asks', []);
681
- const bids = this.safeValue(orderBook, 'bids', []);
680
+ const asks = this.safeValue(orderbook, 'asks', []);
681
+ const bids = this.safeValue(orderbook, 'bids', []);
682
682
  this.handleDeltas(currentOrderBook['asks'], asks);
683
683
  this.handleDeltas(currentOrderBook['bids'], bids);
684
684
  currentOrderBook['nonce'] = timestamp;
@@ -999,9 +999,10 @@ export default class coinex extends coinexRest {
999
999
  };
1000
1000
  const handler = this.safeValue(handlers, method);
1001
1001
  if (handler !== undefined) {
1002
- return handler.call(this, client, message);
1002
+ handler.call(this, client, message);
1003
+ return;
1003
1004
  }
1004
- return this.handleSubscriptionStatus(client, message);
1005
+ this.handleSubscriptionStatus(client, message);
1005
1006
  }
1006
1007
  handleAuthenticationMessage(client, message) {
1007
1008
  //
@@ -1025,7 +1026,8 @@ export default class coinex extends coinexRest {
1025
1026
  if (subscription !== undefined) {
1026
1027
  const futureIndex = this.safeString(subscription, 'future');
1027
1028
  if (futureIndex === 'ohlcv') {
1028
- return this.handleOHLCV(client, message);
1029
+ this.handleOHLCV(client, message);
1030
+ return;
1029
1031
  }
1030
1032
  const future = this.safeValue(client.futures, futureIndex);
1031
1033
  if (future !== undefined) {
@@ -1034,7 +1036,7 @@ export default class coinex extends coinexRest {
1034
1036
  delete client.subscriptions[id];
1035
1037
  }
1036
1038
  }
1037
- authenticate(params = {}) {
1039
+ async authenticate(params = {}) {
1038
1040
  let type = undefined;
1039
1041
  [type, params] = this.handleMarketTypeAndParams('authenticate', undefined, params);
1040
1042
  const url = this.urls['api']['ws'][type];
@@ -39,5 +39,5 @@ export default class currencycom extends currencycomRest {
39
39
  watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
40
40
  handleDeltas(bookside: any, deltas: any): void;
41
41
  handleOrderBook(client: Client, message: any): void;
42
- handleMessage(client: Client, message: any): any;
42
+ handleMessage(client: Client, message: any): void;
43
43
  }
@@ -535,10 +535,11 @@ export default class currencycom extends currencycomRest {
535
535
  };
536
536
  const method = this.safeValue(methods, subscriptionDestination);
537
537
  if (method === undefined) {
538
- return message;
538
+ return;
539
539
  }
540
540
  else {
541
- return method.call(this, client, message, subscription);
541
+ method.call(this, client, message, subscription);
542
+ return;
542
543
  }
543
544
  }
544
545
  }
@@ -553,11 +554,8 @@ export default class currencycom extends currencycomRest {
553
554
  'ping': this.handlePong,
554
555
  };
555
556
  const method = this.safeValue(methods, destination);
556
- if (method === undefined) {
557
- return message;
558
- }
559
- else {
560
- return method.call(this, client, message);
557
+ if (method !== undefined) {
558
+ method.call(this, client, message);
561
559
  }
562
560
  }
563
561
  }
@@ -21,7 +21,7 @@ export default class deribit extends deribitRest {
21
21
  handleOrders(client: Client, message: any): void;
22
22
  watchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
23
23
  handleOHLCV(client: Client, message: any): void;
24
- handleMessage(client: Client, message: any): any;
24
+ handleMessage(client: Client, message: any): void;
25
25
  handleAuthenticationMessage(client: Client, message: any): any;
26
- authenticate(params?: {}): any;
26
+ authenticate(params?: {}): Promise<any>;
27
27
  }
@@ -762,16 +762,16 @@ export default class deribit extends deribitRest {
762
762
  };
763
763
  const handler = this.safeValue(handlers, channelId);
764
764
  if (handler !== undefined) {
765
- return handler.call(this, client, message);
765
+ handler.call(this, client, message);
766
+ return;
766
767
  }
767
768
  throw new NotSupported(this.id + ' no handler found for this message ' + this.json(message));
768
769
  }
769
770
  const result = this.safeValue(message, 'result', {});
770
771
  const accessToken = this.safeString(result, 'access_token');
771
772
  if (accessToken !== undefined) {
772
- return this.handleAuthenticationMessage(client, message);
773
+ this.handleAuthenticationMessage(client, message);
773
774
  }
774
- return message;
775
775
  }
776
776
  handleAuthenticationMessage(client, message) {
777
777
  //
@@ -795,7 +795,7 @@ export default class deribit extends deribitRest {
795
795
  client.resolve(message, messageHash);
796
796
  return message;
797
797
  }
798
- authenticate(params = {}) {
798
+ async authenticate(params = {}) {
799
799
  const url = this.urls['api']['ws'];
800
800
  const client = this.client(url);
801
801
  const time = this.milliseconds();
@@ -18,9 +18,9 @@ export default class exmo extends exmoRest {
18
18
  handleOrderBook(client: Client, message: any): void;
19
19
  handleDelta(bookside: any, delta: any): void;
20
20
  handleDeltas(bookside: any, deltas: any): void;
21
- handleMessage(client: Client, message: any): any;
21
+ handleMessage(client: Client, message: any): void;
22
22
  handleSubscribed(client: Client, message: any): any;
23
23
  handleInfo(client: Client, message: any): any;
24
24
  handleAuthenticationMessage(client: Client, message: any): void;
25
- authenticate(params?: {}): any;
25
+ authenticate(params?: {}): Promise<any>;
26
26
  }
@@ -515,25 +515,25 @@ export default class exmo extends exmoRest {
515
515
  const orderBook = this.safeValue(message, 'data', {});
516
516
  const messageHash = 'orderbook:' + symbol;
517
517
  const timestamp = this.safeInteger(message, 'ts');
518
- let storedOrderBook = this.safeValue(this.orderbooks, symbol);
519
- if (storedOrderBook === undefined) {
520
- storedOrderBook = this.orderBook({});
521
- this.orderbooks[symbol] = storedOrderBook;
518
+ let orderbook = this.safeValue(this.orderbooks, symbol);
519
+ if (orderbook === undefined) {
520
+ orderbook = this.orderBook({});
521
+ this.orderbooks[symbol] = orderbook;
522
522
  }
523
523
  const event = this.safeString(message, 'event');
524
524
  if (event === 'snapshot') {
525
525
  const snapshot = this.parseOrderBook(orderBook, symbol, timestamp, 'bid', 'ask');
526
- storedOrderBook.reset(snapshot);
526
+ orderbook.reset(snapshot);
527
527
  }
528
528
  else {
529
529
  const asks = this.safeValue(orderBook, 'ask', []);
530
530
  const bids = this.safeValue(orderBook, 'bid', []);
531
- this.handleDeltas(storedOrderBook['asks'], asks);
532
- this.handleDeltas(storedOrderBook['bids'], bids);
533
- storedOrderBook['timestamp'] = timestamp;
534
- storedOrderBook['datetime'] = this.iso8601(timestamp);
531
+ this.handleDeltas(orderbook['asks'], asks);
532
+ this.handleDeltas(orderbook['bids'], bids);
533
+ orderbook['timestamp'] = timestamp;
534
+ orderbook['datetime'] = this.iso8601(timestamp);
535
535
  }
536
- client.resolve(storedOrderBook, messageHash);
536
+ client.resolve(orderbook, messageHash);
537
537
  }
538
538
  handleDelta(bookside, delta) {
539
539
  const bidAsk = this.parseBidAsk(delta, 0, 1);
@@ -568,7 +568,8 @@ export default class exmo extends exmoRest {
568
568
  };
569
569
  const eventHandler = this.safeValue(events, event);
570
570
  if (eventHandler !== undefined) {
571
- return eventHandler.call(this, client, message);
571
+ eventHandler.call(this, client, message);
572
+ return;
572
573
  }
573
574
  if ((event === 'update') || (event === 'snapshot')) {
574
575
  const topic = this.safeString(message, 'topic');
@@ -590,7 +591,8 @@ export default class exmo extends exmoRest {
590
591
  };
591
592
  const handler = this.safeValue(handlers, channel);
592
593
  if (handler !== undefined) {
593
- return handler.call(this, client, message);
594
+ handler.call(this, client, message);
595
+ return;
594
596
  }
595
597
  }
596
598
  }
@@ -631,7 +633,7 @@ export default class exmo extends exmoRest {
631
633
  const messageHash = 'authenticated';
632
634
  client.resolve(message, messageHash);
633
635
  }
634
- authenticate(params = {}) {
636
+ async authenticate(params = {}) {
635
637
  const messageHash = 'authenticated';
636
638
  const [type, query] = this.handleMarketTypeAndParams('authenticate', undefined, params);
637
639
  const url = this.urls['api']['ws'][type];
@@ -210,7 +210,7 @@ export default class gate extends gateRest {
210
210
  // max limit is 100
211
211
  const subscription = client.subscriptions[messageHash];
212
212
  const limit = this.safeInteger(subscription, 'limit');
213
- this.spawn(this.loadOrderBook, client, messageHash, symbol, limit);
213
+ this.spawn(this.loadOrderBook, client, messageHash, symbol, limit, {}); // needed for c#, number of args needs to match
214
214
  }
215
215
  storedOrderBook.cache.push(delta);
216
216
  return;
@@ -20,6 +20,6 @@ export default class gemini extends geminiRest {
20
20
  parseWsOrderStatus(status: any): string;
21
21
  parseWsOrderType(type: any): string;
22
22
  handleError(client: Client, message: any): void;
23
- handleMessage(client: Client, message: any): any;
23
+ handleMessage(client: Client, message: any): void;
24
24
  authenticate(params?: {}): Promise<void>;
25
25
  }
@@ -591,7 +591,8 @@ export default class gemini extends geminiRest {
591
591
  //
592
592
  const isArray = Array.isArray(message);
593
593
  if (isArray) {
594
- return this.handleOrder(client, message);
594
+ this.handleOrder(client, message);
595
+ return;
595
596
  }
596
597
  const reason = this.safeString(message, 'reason');
597
598
  if (reason === 'error') {
@@ -605,7 +606,8 @@ export default class gemini extends geminiRest {
605
606
  };
606
607
  const type = this.safeString(message, 'type', '');
607
608
  if (type.indexOf('candles') >= 0) {
608
- return this.handleOHLCV(client, message);
609
+ this.handleOHLCV(client, message);
610
+ return;
609
611
  }
610
612
  const method = this.safeValue(methods, type);
611
613
  if (method !== undefined) {
@@ -5,7 +5,7 @@ import { Str, OrderBook, Order, Trade, Ticker, Balances } from '../base/types';
5
5
  export default class hitbtc extends hitbtcRest {
6
6
  describe(): any;
7
7
  authenticate(): Promise<any>;
8
- subscribePublic(name: string, symbols?: Strings, params?: {}): Promise<any>;
8
+ subscribePublic(name: string, messageHashPrefix: string, symbols?: Strings, params?: {}): Promise<any>;
9
9
  subscribePrivate(name: string, symbol?: Str, params?: {}): Promise<any>;
10
10
  tradeRequest(name: string, params?: {}): Promise<any>;
11
11
  watchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
@@ -29,7 +29,7 @@ export default class hitbtc extends hitbtcRest {
29
29
  parseWsOrderTrade(trade: any, market?: any): Trade;
30
30
  parseWsOrder(order: any, market?: any): Order;
31
31
  watchBalance(params?: {}): Promise<Balances>;
32
- createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
32
+ createOrderWs(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
33
33
  cancelOrderWs(id: string, symbol?: Str, params?: {}): Promise<Order>;
34
34
  cancelAllOrdersWs(symbol?: Str, params?: {}): Promise<any>;
35
35
  fetchOpenOrdersWs(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
@@ -118,7 +118,7 @@ export default class hitbtc extends hitbtcRest {
118
118
  }
119
119
  return future;
120
120
  }
121
- async subscribePublic(name, symbols = undefined, params = {}) {
121
+ async subscribePublic(name, messageHashPrefix, symbols = undefined, params = {}) {
122
122
  /**
123
123
  * @ignore
124
124
  * @method
@@ -128,7 +128,7 @@ export default class hitbtc extends hitbtcRest {
128
128
  */
129
129
  await this.loadMarkets();
130
130
  const url = this.urls['api']['ws']['public'];
131
- let messageHash = name;
131
+ let messageHash = messageHashPrefix;
132
132
  if (symbols !== undefined) {
133
133
  messageHash = messageHash + '::' + symbols.join(',');
134
134
  }
@@ -223,7 +223,7 @@ export default class hitbtc extends hitbtcRest {
223
223
  'symbols': [market['id']],
224
224
  },
225
225
  };
226
- const orderbook = await this.subscribePublic(name, [symbol], this.deepExtend(request, params));
226
+ const orderbook = await this.subscribePublic(name, name, [symbol], this.deepExtend(request, params));
227
227
  return orderbook.limit();
228
228
  }
229
229
  handleOrderBook(client, message) {
@@ -316,7 +316,7 @@ export default class hitbtc extends hitbtcRest {
316
316
  'symbols': [market['id']],
317
317
  },
318
318
  };
319
- const result = await this.subscribePublic(name, [symbol], this.deepExtend(request, params));
319
+ const result = await this.subscribePublic(name, 'ticker', [symbol], this.deepExtend(request, params));
320
320
  return this.safeValue(result, symbol);
321
321
  }
322
322
  async watchTickers(symbols = undefined, params = {}) {
@@ -352,7 +352,7 @@ export default class hitbtc extends hitbtcRest {
352
352
  'symbols': marketIds,
353
353
  },
354
354
  };
355
- const tickers = await this.subscribePublic(name, symbols, this.deepExtend(request, params));
355
+ const tickers = await this.subscribePublic(name, 'tickers', symbols, this.deepExtend(request, params));
356
356
  if (this.newUpdates) {
357
357
  return tickers;
358
358
  }
@@ -411,7 +411,7 @@ export default class hitbtc extends hitbtcRest {
411
411
  const messageHash = channel + '::' + symbol;
412
412
  client.resolve(newTickers, messageHash);
413
413
  }
414
- const messageHashes = this.findMessageHashes(client, channel + '::');
414
+ const messageHashes = this.findMessageHashes(client, 'tickers::');
415
415
  for (let i = 0; i < messageHashes.length; i++) {
416
416
  const messageHash = messageHashes[i];
417
417
  const parts = messageHash.split('::');
@@ -504,7 +504,8 @@ export default class hitbtc extends hitbtcRest {
504
504
  if (limit !== undefined) {
505
505
  request['limit'] = limit;
506
506
  }
507
- const trades = await this.subscribePublic('trades', [symbol], this.deepExtend(request, params));
507
+ const name = 'trades';
508
+ const trades = await this.subscribePublic(name, name, [symbol], this.deepExtend(request, params));
508
509
  if (this.newUpdates) {
509
510
  limit = trades.getLimit(symbol, limit);
510
511
  }
@@ -633,7 +634,7 @@ export default class hitbtc extends hitbtcRest {
633
634
  if (limit !== undefined) {
634
635
  request['params']['limit'] = limit;
635
636
  }
636
- const ohlcv = await this.subscribePublic(name, [symbol], this.deepExtend(request, params));
637
+ const ohlcv = await this.subscribePublic(name, name, [symbol], this.deepExtend(request, params));
637
638
  if (this.newUpdates) {
638
639
  limit = ohlcv.getLimit(symbol, limit);
639
640
  }