ccxt 4.1.56 → 4.1.57

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 (316) hide show
  1. package/.git-templates/hooks/pre-push +2 -2
  2. package/README.md +3 -3
  3. package/build.sh +30 -18
  4. package/dist/ccxt.browser.js +3872 -3202
  5. package/dist/ccxt.browser.min.js +10 -10
  6. package/dist/cjs/ccxt.js +1 -1
  7. package/dist/cjs/src/ace.js +17 -13
  8. package/dist/cjs/src/alpaca.js +6 -6
  9. package/dist/cjs/src/ascendex.js +35 -29
  10. package/dist/cjs/src/base/Exchange.js +39 -26
  11. package/dist/cjs/src/base/Precise.js +1 -3
  12. package/dist/cjs/src/bigone.js +24 -20
  13. package/dist/cjs/src/binance.js +97 -76
  14. package/dist/cjs/src/bingx.js +63 -44
  15. package/dist/cjs/src/bit2c.js +18 -15
  16. package/dist/cjs/src/bitbank.js +16 -15
  17. package/dist/cjs/src/bitbns.js +28 -18
  18. package/dist/cjs/src/bitfinex.js +23 -21
  19. package/dist/cjs/src/bitfinex2.js +32 -28
  20. package/dist/cjs/src/bitflyer.js +28 -20
  21. package/dist/cjs/src/bitforex.js +25 -18
  22. package/dist/cjs/src/bitget.js +184 -147
  23. package/dist/cjs/src/bithumb.js +23 -16
  24. package/dist/cjs/src/bitmart.js +106 -85
  25. package/dist/cjs/src/bitmex.js +104 -64
  26. package/dist/cjs/src/bitopro.js +38 -26
  27. package/dist/cjs/src/bitpanda.js +24 -23
  28. package/dist/cjs/src/bitrue.js +33 -24
  29. package/dist/cjs/src/bitso.js +24 -23
  30. package/dist/cjs/src/bitstamp.js +24 -23
  31. package/dist/cjs/src/bittrex.js +30 -29
  32. package/dist/cjs/src/bitvavo.js +38 -30
  33. package/dist/cjs/src/bl3p.js +11 -10
  34. package/dist/cjs/src/blockchaincom.js +20 -20
  35. package/dist/cjs/src/btcalpha.js +18 -17
  36. package/dist/cjs/src/btcbox.js +13 -12
  37. package/dist/cjs/src/btcmarkets.js +20 -19
  38. package/dist/cjs/src/btcturk.js +14 -13
  39. package/dist/cjs/src/bybit.js +84 -54
  40. package/dist/cjs/src/cex.js +16 -14
  41. package/dist/cjs/src/coinbase.js +29 -27
  42. package/dist/cjs/src/coinbasepro.js +27 -25
  43. package/dist/cjs/src/coincheck.js +15 -14
  44. package/dist/cjs/src/coinex.js +100 -77
  45. package/dist/cjs/src/coinlist.js +28 -27
  46. package/dist/cjs/src/coinmate.js +20 -17
  47. package/dist/cjs/src/coinone.js +21 -16
  48. package/dist/cjs/src/coinsph.js +37 -28
  49. package/dist/cjs/src/coinspot.js +12 -11
  50. package/dist/cjs/src/cryptocom.js +40 -202
  51. package/dist/cjs/src/currencycom.js +32 -25
  52. package/dist/cjs/src/delta.js +34 -28
  53. package/dist/cjs/src/deribit.js +39 -36
  54. package/dist/cjs/src/digifinex.js +64 -44
  55. package/dist/cjs/src/exmo.js +29 -27
  56. package/dist/cjs/src/gate.js +67 -53
  57. package/dist/cjs/src/gemini.js +23 -20
  58. package/dist/cjs/src/hitbtc.js +65 -56
  59. package/dist/cjs/src/hollaex.js +30 -27
  60. package/dist/cjs/src/htx.js +132 -143
  61. package/dist/cjs/src/huobijp.js +22 -20
  62. package/dist/cjs/src/idex.js +22 -21
  63. package/dist/cjs/src/independentreserve.js +15 -14
  64. package/dist/cjs/src/indodax.js +30 -26
  65. package/dist/cjs/src/kraken.js +29 -27
  66. package/dist/cjs/src/krakenfutures.js +29 -22
  67. package/dist/cjs/src/kucoin.js +48 -43
  68. package/dist/cjs/src/kucoinfutures.js +33 -28
  69. package/dist/cjs/src/kuna.js +25 -24
  70. package/dist/cjs/src/latoken.js +24 -22
  71. package/dist/cjs/src/lbank.js +45 -30
  72. package/dist/cjs/src/luno.js +22 -19
  73. package/dist/cjs/src/lykke.js +19 -17
  74. package/dist/cjs/src/mercado.js +30 -19
  75. package/dist/cjs/src/mexc.js +60 -49
  76. package/dist/cjs/src/ndax.js +23 -22
  77. package/dist/cjs/src/novadax.js +23 -22
  78. package/dist/cjs/src/oceanex.js +22 -19
  79. package/dist/cjs/src/okcoin.js +29 -23
  80. package/dist/cjs/src/okx.js +87 -82
  81. package/dist/cjs/src/p2b.js +79 -82
  82. package/dist/cjs/src/paymium.js +10 -10
  83. package/dist/cjs/src/phemex.js +63 -40
  84. package/dist/cjs/src/poloniex.js +22 -22
  85. package/dist/cjs/src/poloniexfutures.js +23 -19
  86. package/dist/cjs/src/pro/alpaca.js +5 -5
  87. package/dist/cjs/src/pro/ascendex.js +4 -4
  88. package/dist/cjs/src/pro/binance.js +16 -16
  89. package/dist/cjs/src/pro/bingx.js +1 -1
  90. package/dist/cjs/src/pro/bitfinex.js +4 -4
  91. package/dist/cjs/src/pro/bitfinex2.js +6 -6
  92. package/dist/cjs/src/pro/bitget.js +7 -7
  93. package/dist/cjs/src/pro/bitmart.js +7 -5
  94. package/dist/cjs/src/pro/bitmex.js +6 -6
  95. package/dist/cjs/src/pro/bitopro.js +4 -4
  96. package/dist/cjs/src/pro/bitpanda.js +6 -6
  97. package/dist/cjs/src/pro/bitrue.js +2 -2
  98. package/dist/cjs/src/pro/bitstamp.js +6 -4
  99. package/dist/cjs/src/pro/bittrex.js +6 -6
  100. package/dist/cjs/src/pro/bitvavo.js +11 -7
  101. package/dist/cjs/src/pro/blockchaincom.js +8 -8
  102. package/dist/cjs/src/pro/bybit.js +7 -7
  103. package/dist/cjs/src/pro/cex.js +13 -9
  104. package/dist/cjs/src/pro/coinbase.js +5 -5
  105. package/dist/cjs/src/pro/coinbasepro.js +11 -10
  106. package/dist/cjs/src/pro/coinex.js +7 -9
  107. package/dist/cjs/src/pro/cryptocom.js +9 -9
  108. package/dist/cjs/src/pro/currencycom.js +4 -4
  109. package/dist/cjs/src/pro/deribit.js +6 -6
  110. package/dist/cjs/src/pro/exmo.js +12 -14
  111. package/dist/cjs/src/pro/gate.js +7 -7
  112. package/dist/cjs/src/pro/gemini.js +3 -3
  113. package/dist/cjs/src/pro/hitbtc.js +263 -4
  114. package/dist/cjs/src/pro/hollaex.js +5 -5
  115. package/dist/cjs/src/pro/htx.js +6 -6
  116. package/dist/cjs/src/pro/huobijp.js +3 -3
  117. package/dist/cjs/src/pro/idex.js +4 -4
  118. package/dist/cjs/src/pro/independentreserve.js +2 -2
  119. package/dist/cjs/src/pro/kraken.js +10 -10
  120. package/dist/cjs/src/pro/krakenfutures.js +41 -17
  121. package/dist/cjs/src/pro/kucoin.js +7 -7
  122. package/dist/cjs/src/pro/kucoinfutures.js +8 -6
  123. package/dist/cjs/src/pro/luno.js +2 -2
  124. package/dist/cjs/src/pro/mexc.js +6 -6
  125. package/dist/cjs/src/pro/ndax.js +3 -3
  126. package/dist/cjs/src/pro/okcoin.js +5 -5
  127. package/dist/cjs/src/pro/okx.js +12 -12
  128. package/dist/cjs/src/pro/phemex.js +6 -6
  129. package/dist/cjs/src/pro/poloniex.js +7 -7
  130. package/dist/cjs/src/pro/poloniexfutures.js +5 -5
  131. package/dist/cjs/src/pro/probit.js +6 -6
  132. package/dist/cjs/src/pro/upbit.js +3 -3
  133. package/dist/cjs/src/pro/wazirx.js +8 -8
  134. package/dist/cjs/src/pro/whitebit.js +12 -8
  135. package/dist/cjs/src/pro/woo.js +1 -1
  136. package/dist/cjs/src/probit.js +28 -23
  137. package/dist/cjs/src/tidex.js +16 -15
  138. package/dist/cjs/src/timex.js +19 -18
  139. package/dist/cjs/src/tokocrypto.js +27 -22
  140. package/dist/cjs/src/upbit.js +19 -19
  141. package/dist/cjs/src/wavesexchange.js +22 -19
  142. package/dist/cjs/src/wazirx.js +24 -17
  143. package/dist/cjs/src/whitebit.js +33 -27
  144. package/dist/cjs/src/woo.js +44 -34
  145. package/dist/cjs/src/yobit.js +25 -20
  146. package/dist/cjs/src/zaif.js +9 -9
  147. package/dist/cjs/src/zonda.js +18 -17
  148. package/js/ccxt.d.ts +1 -1
  149. package/js/ccxt.js +1 -1
  150. package/js/src/abstract/bybit.d.ts +1 -0
  151. package/js/src/abstract/cryptocom.d.ts +0 -20
  152. package/js/src/ace.js +18 -14
  153. package/js/src/alpaca.js +6 -6
  154. package/js/src/ascendex.js +35 -29
  155. package/js/src/base/Exchange.d.ts +37 -34
  156. package/js/src/base/Exchange.js +39 -26
  157. package/js/src/base/Precise.d.ts +4 -4
  158. package/js/src/base/Precise.js +1 -3
  159. package/js/src/base/functions/type.d.ts +25 -25
  160. package/js/src/base/types.d.ts +21 -14
  161. package/js/src/bigone.js +25 -21
  162. package/js/src/binance.d.ts +2 -2
  163. package/js/src/binance.js +97 -76
  164. package/js/src/bingx.js +63 -44
  165. package/js/src/bit2c.js +19 -16
  166. package/js/src/bitbank.js +16 -15
  167. package/js/src/bitbns.js +28 -18
  168. package/js/src/bitfinex.js +23 -21
  169. package/js/src/bitfinex2.js +32 -28
  170. package/js/src/bitflyer.js +28 -20
  171. package/js/src/bitforex.js +26 -19
  172. package/js/src/bitget.d.ts +25 -3
  173. package/js/src/bitget.js +184 -147
  174. package/js/src/bithumb.js +23 -16
  175. package/js/src/bitmart.d.ts +1 -1
  176. package/js/src/bitmart.js +106 -85
  177. package/js/src/bitmex.d.ts +2 -2
  178. package/js/src/bitmex.js +104 -64
  179. package/js/src/bitopro.js +38 -26
  180. package/js/src/bitpanda.js +24 -23
  181. package/js/src/bitrue.js +33 -24
  182. package/js/src/bitso.js +24 -23
  183. package/js/src/bitstamp.d.ts +2 -2
  184. package/js/src/bitstamp.js +24 -23
  185. package/js/src/bittrex.js +30 -29
  186. package/js/src/bitvavo.js +38 -30
  187. package/js/src/bl3p.js +11 -10
  188. package/js/src/blockchaincom.js +20 -20
  189. package/js/src/btcalpha.js +18 -17
  190. package/js/src/btcbox.js +13 -12
  191. package/js/src/btcmarkets.js +20 -19
  192. package/js/src/btcturk.js +14 -13
  193. package/js/src/bybit.d.ts +1 -1
  194. package/js/src/bybit.js +84 -54
  195. package/js/src/cex.js +16 -14
  196. package/js/src/coinbase.js +29 -27
  197. package/js/src/coinbasepro.js +27 -25
  198. package/js/src/coincheck.js +15 -14
  199. package/js/src/coinex.d.ts +1 -1
  200. package/js/src/coinex.js +100 -77
  201. package/js/src/coinlist.js +28 -27
  202. package/js/src/coinmate.js +21 -18
  203. package/js/src/coinone.js +21 -16
  204. package/js/src/coinsph.js +37 -28
  205. package/js/src/coinspot.js +12 -11
  206. package/js/src/cryptocom.d.ts +0 -23
  207. package/js/src/cryptocom.js +40 -202
  208. package/js/src/currencycom.js +32 -25
  209. package/js/src/delta.js +35 -29
  210. package/js/src/deribit.js +39 -36
  211. package/js/src/digifinex.d.ts +2 -2
  212. package/js/src/digifinex.js +65 -45
  213. package/js/src/exmo.js +29 -27
  214. package/js/src/gate.d.ts +1 -1
  215. package/js/src/gate.js +67 -53
  216. package/js/src/gemini.js +23 -20
  217. package/js/src/hitbtc.d.ts +1 -0
  218. package/js/src/hitbtc.js +65 -56
  219. package/js/src/hollaex.js +30 -27
  220. package/js/src/htx.d.ts +11 -3
  221. package/js/src/htx.js +132 -143
  222. package/js/src/huobijp.js +23 -21
  223. package/js/src/idex.js +22 -21
  224. package/js/src/independentreserve.js +15 -14
  225. package/js/src/indodax.js +30 -26
  226. package/js/src/kraken.js +29 -27
  227. package/js/src/krakenfutures.js +29 -22
  228. package/js/src/kucoin.d.ts +1 -1
  229. package/js/src/kucoin.js +48 -43
  230. package/js/src/kucoinfutures.js +33 -28
  231. package/js/src/kuna.js +25 -24
  232. package/js/src/latoken.js +25 -23
  233. package/js/src/lbank.js +46 -31
  234. package/js/src/luno.js +22 -19
  235. package/js/src/lykke.js +19 -17
  236. package/js/src/mercado.js +30 -19
  237. package/js/src/mexc.d.ts +1 -1
  238. package/js/src/mexc.js +60 -49
  239. package/js/src/ndax.js +23 -22
  240. package/js/src/novadax.js +23 -22
  241. package/js/src/oceanex.js +22 -19
  242. package/js/src/okcoin.js +29 -23
  243. package/js/src/okx.d.ts +2 -2
  244. package/js/src/okx.js +87 -82
  245. package/js/src/p2b.d.ts +8 -7
  246. package/js/src/p2b.js +79 -81
  247. package/js/src/paymium.js +10 -10
  248. package/js/src/phemex.js +63 -40
  249. package/js/src/poloniex.js +22 -22
  250. package/js/src/poloniexfutures.js +23 -19
  251. package/js/src/pro/alpaca.js +5 -5
  252. package/js/src/pro/ascendex.js +4 -4
  253. package/js/src/pro/binance.js +16 -16
  254. package/js/src/pro/bingx.js +1 -1
  255. package/js/src/pro/bitfinex.js +4 -4
  256. package/js/src/pro/bitfinex2.d.ts +1 -1
  257. package/js/src/pro/bitfinex2.js +6 -6
  258. package/js/src/pro/bitget.js +7 -7
  259. package/js/src/pro/bitmart.js +7 -5
  260. package/js/src/pro/bitmex.js +6 -6
  261. package/js/src/pro/bitopro.js +4 -4
  262. package/js/src/pro/bitpanda.js +6 -6
  263. package/js/src/pro/bitrue.js +2 -2
  264. package/js/src/pro/bitstamp.js +7 -5
  265. package/js/src/pro/bittrex.js +6 -6
  266. package/js/src/pro/bitvavo.js +12 -8
  267. package/js/src/pro/blockchaincom.js +8 -8
  268. package/js/src/pro/bybit.js +7 -7
  269. package/js/src/pro/cex.js +14 -10
  270. package/js/src/pro/coinbase.js +5 -5
  271. package/js/src/pro/coinbasepro.js +12 -11
  272. package/js/src/pro/coinex.js +7 -9
  273. package/js/src/pro/cryptocom.js +9 -9
  274. package/js/src/pro/currencycom.js +4 -4
  275. package/js/src/pro/deribit.js +6 -6
  276. package/js/src/pro/exmo.js +12 -14
  277. package/js/src/pro/gate.js +7 -7
  278. package/js/src/pro/gemini.js +3 -3
  279. package/js/src/pro/hitbtc.d.ts +8 -1
  280. package/js/src/pro/hitbtc.js +264 -5
  281. package/js/src/pro/hollaex.js +5 -5
  282. package/js/src/pro/htx.js +6 -6
  283. package/js/src/pro/huobijp.js +3 -3
  284. package/js/src/pro/idex.js +4 -4
  285. package/js/src/pro/independentreserve.js +2 -2
  286. package/js/src/pro/kraken.js +10 -10
  287. package/js/src/pro/krakenfutures.d.ts +1 -0
  288. package/js/src/pro/krakenfutures.js +42 -18
  289. package/js/src/pro/kucoin.js +7 -7
  290. package/js/src/pro/kucoinfutures.js +8 -6
  291. package/js/src/pro/luno.js +2 -2
  292. package/js/src/pro/mexc.js +6 -6
  293. package/js/src/pro/ndax.js +3 -3
  294. package/js/src/pro/okcoin.js +5 -5
  295. package/js/src/pro/okx.js +12 -12
  296. package/js/src/pro/phemex.js +6 -6
  297. package/js/src/pro/poloniex.js +7 -7
  298. package/js/src/pro/poloniexfutures.js +5 -5
  299. package/js/src/pro/probit.js +6 -6
  300. package/js/src/pro/upbit.js +3 -3
  301. package/js/src/pro/wazirx.js +8 -8
  302. package/js/src/pro/whitebit.js +13 -9
  303. package/js/src/pro/woo.js +1 -1
  304. package/js/src/probit.js +29 -24
  305. package/js/src/tidex.js +16 -15
  306. package/js/src/timex.js +19 -18
  307. package/js/src/tokocrypto.js +28 -23
  308. package/js/src/upbit.js +19 -19
  309. package/js/src/wavesexchange.js +23 -20
  310. package/js/src/wazirx.js +25 -18
  311. package/js/src/whitebit.js +33 -27
  312. package/js/src/woo.js +45 -35
  313. package/js/src/yobit.js +25 -20
  314. package/js/src/zaif.js +9 -9
  315. package/js/src/zonda.js +18 -17
  316. package/package.json +1 -1
@@ -6,7 +6,7 @@
6
6
 
7
7
  // ---------------------------------------------------------------------------
8
8
  import krakenfuturesRest from '../krakenfutures.js';
9
- import { ArgumentsRequired, AuthenticationError } from '../base/errors.js';
9
+ import { ArgumentsRequired, AuthenticationError, ExchangeError } from '../base/errors.js';
10
10
  import { ArrayCache, ArrayCacheBySymbolById } from '../base/ws/Cache.js';
11
11
  import { Precise } from '../base/Precise.js';
12
12
  import { sha256 } from '../static_dependencies/noble-hashes/sha256.js';
@@ -17,6 +17,15 @@ export default class krakenfutures extends krakenfuturesRest {
17
17
  return this.deepExtend(super.describe(), {
18
18
  'has': {
19
19
  'ws': true,
20
+ 'cancelAllOrdersWs': false,
21
+ 'cancelOrdersWs': false,
22
+ 'cancelOrderWs': false,
23
+ 'createOrderWs': false,
24
+ 'editOrderWs': false,
25
+ 'fetchBalanceWs': false,
26
+ 'fetchOpenOrdersWs': false,
27
+ 'fetchOrderWs': false,
28
+ 'fetchTradesWs': false,
20
29
  'watchOHLCV': false,
21
30
  'watchOrderBook': true,
22
31
  'watchTicker': true,
@@ -150,7 +159,7 @@ export default class krakenfutures extends krakenfuturesRest {
150
159
  * @see https://docs.futures.kraken.com/#websocket-api-public-feeds-ticker
151
160
  * @param {string} symbol unified symbol of the market to fetch the ticker for
152
161
  * @param {object} [params] extra parameters specific to the krakenfutures api endpoint
153
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
162
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
154
163
  */
155
164
  const options = this.safeValue(this.options, 'watchTicker');
156
165
  const method = this.safeString(options, 'method', 'ticker'); // or ticker_lite
@@ -166,7 +175,7 @@ export default class krakenfutures extends krakenfuturesRest {
166
175
  * @see https://docs.futures.kraken.com/#websocket-api-public-feeds-ticker-lite
167
176
  * @param {string} symbol unified symbol of the market to fetch the ticker for
168
177
  * @param {object} [params] extra parameters specific to the krakenfutures api endpoint
169
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
178
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
170
179
  */
171
180
  const method = this.safeString(this.options, 'watchTickerMethod', 'ticker'); // or ticker_lite
172
181
  const name = this.safeString2(params, 'method', 'watchTickerMethod', method);
@@ -184,7 +193,7 @@ export default class krakenfutures extends krakenfuturesRest {
184
193
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
185
194
  * @param {int} [limit] the maximum amount of trades to fetch
186
195
  * @param {object} [params] extra parameters specific to the krakenfutures api endpoint
187
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
196
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
188
197
  */
189
198
  await this.loadMarkets();
190
199
  const name = 'trade';
@@ -203,7 +212,7 @@ export default class krakenfutures extends krakenfuturesRest {
203
212
  * @param {string} symbol unified symbol of the market to fetch the order book for
204
213
  * @param {int} [limit] not used by krakenfutures watchOrderBook
205
214
  * @param {object} [params] extra parameters specific to the krakenfutures api endpoint
206
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
215
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
207
216
  */
208
217
  const orderbook = await this.subscribePublic('book', [symbol], params);
209
218
  return orderbook.limit();
@@ -346,7 +355,7 @@ export default class krakenfutures extends krakenfuturesRest {
346
355
  * @param {int} [since] not used by krakenfutures watchOrders
347
356
  * @param {int} [limit] not used by krakenfutures watchOrders
348
357
  * @param {object} [params] extra parameters specific to the krakenfutures api endpoint
349
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
358
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
350
359
  */
351
360
  await this.loadMarkets();
352
361
  const name = 'open_orders';
@@ -371,7 +380,7 @@ export default class krakenfutures extends krakenfuturesRest {
371
380
  * @param {int} [since] the earliest time in ms to fetch orders for
372
381
  * @param {int} [limit] the maximum number of orde structures to retrieve
373
382
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
374
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure}
383
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
375
384
  */
376
385
  await this.loadMarkets();
377
386
  const name = 'fills';
@@ -397,7 +406,7 @@ export default class krakenfutures extends krakenfuturesRest {
397
406
  * @param {int} [limit] not used by krakenfutures watchBalance
398
407
  * @param {object} [params] extra parameters specific to the krakenfutures api endpoint
399
408
  * @param {string} [params.account] can be either 'futures' or 'flex_futures'
400
- * @returns {object[]} a list of [balance structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
409
+ * @returns {object[]} a list of [balance structures]{@link https://docs.ccxt.com/#/?id=balance-structure}
401
410
  */
402
411
  await this.loadMarkets();
403
412
  const name = 'balances';
@@ -1258,10 +1267,7 @@ export default class krakenfutures extends krakenfuturesRest {
1258
1267
  const key = holdingKeys[i];
1259
1268
  const code = this.safeCurrencyCode(key);
1260
1269
  const newAccount = this.account();
1261
- const amount = this.safeNumber(holding, key);
1262
- newAccount['free'] = amount;
1263
- newAccount['total'] = amount;
1264
- newAccount['used'] = 0;
1270
+ newAccount['total'] = this.safeString(holding, key);
1265
1271
  holdingResult[code] = newAccount;
1266
1272
  }
1267
1273
  this.balance['cash'] = holdingResult;
@@ -1281,9 +1287,9 @@ export default class krakenfutures extends krakenfuturesRest {
1281
1287
  const future = this.safeValue(futures, key);
1282
1288
  const currencyId = this.safeString(future, 'unit');
1283
1289
  const code = this.safeCurrencyCode(currencyId);
1284
- newAccount['free'] = this.safeNumber(future, 'available');
1285
- newAccount['used'] = this.safeNumber(future, 'initial_margin');
1286
- newAccount['total'] = this.safeNumber(future, 'balance');
1290
+ newAccount['free'] = this.safeString(future, 'available');
1291
+ newAccount['used'] = this.safeString(future, 'initial_margin');
1292
+ newAccount['total'] = this.safeString(future, 'balance');
1287
1293
  futuresResult[symbol] = {};
1288
1294
  futuresResult[symbol][code] = newAccount;
1289
1295
  }
@@ -1303,9 +1309,9 @@ export default class krakenfutures extends krakenfuturesRest {
1303
1309
  const flexFuture = this.safeValue(flexFutureCurrencies, key);
1304
1310
  const code = this.safeCurrencyCode(key);
1305
1311
  const newAccount = this.account();
1306
- newAccount['free'] = this.safeNumber(flexFuture, 'available');
1307
- newAccount['used'] = this.safeNumber(flexFuture, 'collateral_value');
1308
- newAccount['total'] = this.safeNumber(flexFuture, 'quantity');
1312
+ newAccount['free'] = this.safeString(flexFuture, 'available');
1313
+ newAccount['used'] = this.safeString(flexFuture, 'collateral_value');
1314
+ newAccount['total'] = this.safeString(flexFuture, 'quantity');
1309
1315
  flexFuturesResult[code] = newAccount;
1310
1316
  }
1311
1317
  this.balance['flex'] = flexFuturesResult;
@@ -1405,11 +1411,29 @@ export default class krakenfutures extends krakenfuturesRest {
1405
1411
  },
1406
1412
  });
1407
1413
  }
1414
+ handleErrorMessage(client, message) {
1415
+ //
1416
+ // {
1417
+ // event: 'alert',
1418
+ // message: 'Failed to subscribe to authenticated feed'
1419
+ // }
1420
+ //
1421
+ const errMsg = this.safeString(message, 'message');
1422
+ try {
1423
+ throw new ExchangeError(this.id + ' ' + errMsg);
1424
+ }
1425
+ catch (error) {
1426
+ client.reject(error);
1427
+ }
1428
+ }
1408
1429
  handleMessage(client, message) {
1409
1430
  const event = this.safeString(message, 'event');
1410
1431
  if (event === 'challenge') {
1411
1432
  this.handleAuthenticate(client, message);
1412
1433
  }
1434
+ else if (event === 'alert') {
1435
+ return this.handleErrorMessage(client, message);
1436
+ }
1413
1437
  else if (event === 'pong') {
1414
1438
  client.lastPong = this.milliseconds();
1415
1439
  }
@@ -124,7 +124,7 @@ export default class kucoin extends kucoinRest {
124
124
  * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
125
125
  * @param {string} symbol unified symbol of the market to fetch the ticker for
126
126
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
127
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
127
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
128
128
  */
129
129
  await this.loadMarkets();
130
130
  const market = this.market(symbol);
@@ -142,7 +142,7 @@ export default class kucoin extends kucoinRest {
142
142
  * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for all markets of a specific list
143
143
  * @param {string[]} symbols unified symbol of the market to fetch the ticker for
144
144
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
145
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
145
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
146
146
  */
147
147
  await this.loadMarkets();
148
148
  symbols = this.marketSymbols(symbols);
@@ -327,7 +327,7 @@ export default class kucoin extends kucoinRest {
327
327
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
328
328
  * @param {int} [limit] the maximum amount of trades to fetch
329
329
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
330
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
330
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
331
331
  */
332
332
  await this.loadMarkets();
333
333
  const url = await this.negotiate(false);
@@ -414,7 +414,7 @@ export default class kucoin extends kucoinRest {
414
414
  * @param {string} symbol unified symbol of the market to fetch the order book for
415
415
  * @param {int} [limit] the maximum amount of order book entries to return
416
416
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
417
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
417
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
418
418
  */
419
419
  //
420
420
  // https://docs.kucoin.com/#level-2-market-data
@@ -634,7 +634,7 @@ export default class kucoin extends kucoinRest {
634
634
  * @param {int} [limit] the maximum number of order structures to retrieve
635
635
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
636
636
  * @param {boolean} [params.stop] trigger orders are watched if true
637
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
637
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
638
638
  */
639
639
  await this.loadMarkets();
640
640
  const stop = this.safeValue2(params, 'stop', 'trigger');
@@ -798,7 +798,7 @@ export default class kucoin extends kucoinRest {
798
798
  * @param {int} [since] the earliest time in ms to fetch trades for
799
799
  * @param {int} [limit] the maximum number of trade structures to retrieve
800
800
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
801
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure
801
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure
802
802
  */
803
803
  await this.loadMarkets();
804
804
  const url = await this.negotiate(true);
@@ -888,7 +888,7 @@ export default class kucoin extends kucoinRest {
888
888
  * @name kucoin#watchBalance
889
889
  * @description watch balance and get the amount of funds available for trading or funds locked in orders
890
890
  * @param {object} [params] extra parameters specific to the kucoin api endpoint
891
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
891
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
892
892
  */
893
893
  await this.loadMarkets();
894
894
  const url = await this.negotiate(true);
@@ -147,7 +147,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
147
147
  * @see https://docs.kucoin.com/futures/#get-real-time-symbol-ticker-v2
148
148
  * @param {string} symbol unified symbol of the market to fetch the ticker for
149
149
  * @param {object} [params] extra parameters specific to the kucoinfutures api endpoint
150
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
150
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
151
151
  */
152
152
  await this.loadMarkets();
153
153
  const market = this.market(symbol);
@@ -197,7 +197,9 @@ export default class kucoinfutures extends kucoinfuturesRest {
197
197
  * @param {object} params extra parameters specific to the kucoinfutures api endpoint
198
198
  * @returns {object} a [position structure]{@link https://docs.ccxt.com/en/latest/manual.html#position-structure}
199
199
  */
200
- this.checkRequiredSymbol('watchPosition', symbol);
200
+ if (symbol === undefined) {
201
+ throw new ArgumentsRequired(this.id + ' watchPosition() requires a symbol argument');
202
+ }
201
203
  await this.loadMarkets();
202
204
  const url = await this.negotiate(true);
203
205
  const market = this.market(symbol);
@@ -369,7 +371,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
369
371
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
370
372
  * @param {int} [limit] the maximum amount of trades to fetch
371
373
  * @param {object} [params] extra parameters specific to the kucoinfutures api endpoint
372
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
374
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
373
375
  */
374
376
  await this.loadMarkets();
375
377
  const url = await this.negotiate(false);
@@ -464,7 +466,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
464
466
  * @param {string} symbol unified symbol of the market to fetch the order book for
465
467
  * @param {int} [limit] the maximum amount of order book entries to return
466
468
  * @param {object} [params] extra parameters specific to the kucoinfutures api endpoint
467
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
469
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
468
470
  */
469
471
  if (limit !== undefined) {
470
472
  if ((limit !== 20) && (limit !== 100)) {
@@ -671,7 +673,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
671
673
  * @param {int} [since] the earliest time in ms to fetch orders for
672
674
  * @param {int} [limit] the maximum number of orde structures to retrieve
673
675
  * @param {object} [params] extra parameters specific to the kucoinfutures api endpoint
674
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
676
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
675
677
  */
676
678
  await this.loadMarkets();
677
679
  const url = await this.negotiate(true);
@@ -793,7 +795,7 @@ export default class kucoinfutures extends kucoinfuturesRest {
793
795
  * @description watch balance and get the amount of funds available for trading or funds locked in orders
794
796
  * @see https://docs.kucoin.com/futures/#account-balance-events
795
797
  * @param {object} [params] extra parameters specific to the kucoinfutures api endpoint
796
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
798
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
797
799
  */
798
800
  await this.loadMarkets();
799
801
  const url = await this.negotiate(true);
@@ -43,7 +43,7 @@ export default class luno extends lunoRest {
43
43
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
44
44
  * @param {int} [limit] the maximum amount of trades to fetch
45
45
  * @param {object} [params] extra parameters specific to the luno api endpoint
46
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
46
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
47
47
  */
48
48
  await this.checkRequiredCredentials();
49
49
  await this.loadMarkets();
@@ -140,7 +140,7 @@ export default class luno extends lunoRest {
140
140
  * @param {int} [limit] the maximum amount of order book entries to return
141
141
  * @param {objectConstructor} [params] extra parameters specific to the luno api endpoint
142
142
  * @param {string} [params.type] accepts l2 or l3 for level 2 or level 3 order book
143
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
143
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
144
144
  */
145
145
  await this.checkRequiredCredentials();
146
146
  await this.loadMarkets();
@@ -67,7 +67,7 @@ export default class mexc extends mexcRest {
67
67
  * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
68
68
  * @param {string} symbol unified symbol of the market to fetch the ticker for
69
69
  * @param {object} [params] extra parameters specific to the mexc3 api endpoint
70
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
70
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
71
71
  */
72
72
  await this.loadMarkets();
73
73
  const market = this.market(symbol);
@@ -348,7 +348,7 @@ export default class mexc extends mexcRest {
348
348
  * @param {string} symbol unified symbol of the market to fetch the order book for
349
349
  * @param {int} [limit] the maximum amount of order book entries to return
350
350
  * @param {object} [params] extra parameters specific to the mexc3 api endpoint
351
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
351
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
352
352
  */
353
353
  await this.loadMarkets();
354
354
  const market = this.market(symbol);
@@ -516,7 +516,7 @@ export default class mexc extends mexcRest {
516
516
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
517
517
  * @param {int} [limit] the maximum amount of trades to fetch
518
518
  * @param {object} [params] extra parameters specific to the mexc3 api endpoint
519
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
519
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
520
520
  */
521
521
  await this.loadMarkets();
522
522
  const market = this.market(symbol);
@@ -605,7 +605,7 @@ export default class mexc extends mexcRest {
605
605
  * @param {int} [since] the earliest time in ms to fetch trades for
606
606
  * @param {int} [limit] the maximum number of trade structures to retrieve
607
607
  * @param {object} [params] extra parameters specific to the mexc3 api endpoint
608
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure
608
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure
609
609
  */
610
610
  await this.loadMarkets();
611
611
  let messageHash = 'myTrades';
@@ -734,7 +734,7 @@ export default class mexc extends mexcRest {
734
734
  * @param {int} [limit] the maximum number of orde structures to retrieve
735
735
  * @param {object} [params] extra parameters specific to the mexc3 api endpoint
736
736
  * @params {string|undefined} params.type the type of orders to retrieve, can be 'spot' or 'margin'
737
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
737
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
738
738
  */
739
739
  await this.loadMarkets();
740
740
  params = this.omit(params, 'type');
@@ -981,7 +981,7 @@ export default class mexc extends mexcRest {
981
981
  * @see https://mxcdevelop.github.io/apidocs/spot_v3_en/#spot-account-upadte
982
982
  * @description watch balance and get the amount of funds available for trading or funds locked in orders
983
983
  * @param {object} [params] extra parameters specific to the mexc3 api endpoint
984
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
984
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
985
985
  */
986
986
  await this.loadMarkets();
987
987
  let type = undefined;
@@ -45,7 +45,7 @@ export default class ndax extends ndaxRest {
45
45
  * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
46
46
  * @param {string} symbol unified symbol of the market to fetch the ticker for
47
47
  * @param {object} [params] extra parameters specific to the ndax api endpoint
48
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
48
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
49
49
  */
50
50
  const omsId = this.safeInteger(this.options, 'omsId', 1);
51
51
  await this.loadMarkets();
@@ -112,7 +112,7 @@ export default class ndax extends ndaxRest {
112
112
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
113
113
  * @param {int} [limit] the maximum amount of trades to fetch
114
114
  * @param {object} [params] extra parameters specific to the ndax api endpoint
115
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
115
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
116
116
  */
117
117
  const omsId = this.safeInteger(this.options, 'omsId', 1);
118
118
  await this.loadMarkets();
@@ -324,7 +324,7 @@ export default class ndax extends ndaxRest {
324
324
  * @param {string} symbol unified symbol of the market to fetch the order book for
325
325
  * @param {int} [limit] the maximum amount of order book entries to return
326
326
  * @param {object} [params] extra parameters specific to the ndax api endpoint
327
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
327
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
328
328
  */
329
329
  const omsId = this.safeInteger(this.options, 'omsId', 1);
330
330
  await this.loadMarkets();
@@ -74,7 +74,7 @@ export default class okcoin extends okcoinRest {
74
74
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
75
75
  * @param {int} [limit] the maximum amount of trades to fetch
76
76
  * @param {object} [params] extra parameters specific to the okcoin api endpoint
77
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
77
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
78
78
  */
79
79
  await this.loadMarkets();
80
80
  symbol = this.symbol(symbol);
@@ -93,7 +93,7 @@ export default class okcoin extends okcoinRest {
93
93
  * @param {int} [since] the earliest time in ms to fetch orders for
94
94
  * @param {int} [limit] the maximum number of orde structures to retrieve
95
95
  * @param {object} [params] extra parameters specific to the okcoin api endpoint
96
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
96
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
97
97
  */
98
98
  await this.loadMarkets();
99
99
  await this.authenticate();
@@ -177,7 +177,7 @@ export default class okcoin extends okcoinRest {
177
177
  * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
178
178
  * @param {string} symbol unified symbol of the market to fetch the ticker for
179
179
  * @param {object} [params] extra parameters specific to the okcoin api endpoint
180
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
180
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
181
181
  */
182
182
  return await this.subscribe('ticker', symbol, params);
183
183
  }
@@ -325,7 +325,7 @@ export default class okcoin extends okcoinRest {
325
325
  * @param {string} symbol unified symbol of the market to fetch the order book for
326
326
  * @param {int} [limit] the maximum amount of order book entries to return
327
327
  * @param {object} [params] extra parameters specific to the okcoin api endpoint
328
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
328
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
329
329
  */
330
330
  const options = this.safeValue(this.options, 'watchOrderBook', {});
331
331
  const depth = this.safeString(options, 'depth', 'depth_l2_tbt');
@@ -486,7 +486,7 @@ export default class okcoin extends okcoinRest {
486
486
  * @name okcoin#watchBalance
487
487
  * @description watch balance and get the amount of funds available for trading or funds locked in orders
488
488
  * @param {object} [params] extra parameters specific to the okcoin api endpoint
489
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
489
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
490
490
  */
491
491
  const defaultType = this.safeString2(this.options, 'watchBalance', 'defaultType');
492
492
  const type = this.safeString(params, 'type', defaultType);
package/js/src/pro/okx.js CHANGED
@@ -166,7 +166,7 @@ export default class okx extends okxRest {
166
166
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
167
167
  * @param {int} [limit] the maximum amount of trades to fetch
168
168
  * @param {object} [params] extra parameters specific to the okx api endpoint
169
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
169
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
170
170
  */
171
171
  await this.loadMarkets();
172
172
  symbol = this.symbol(symbol);
@@ -262,7 +262,7 @@ export default class okx extends okxRest {
262
262
  * @param {string} symbol unified symbol of the market to fetch the ticker for
263
263
  * @param {object} [params] extra parameters specific to the okx api endpoint
264
264
  * @param {string} [params.channel] the channel to subscribe to, tickers by default. Can be tickers, sprd-tickers, index-tickers, block-tickers
265
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
265
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
266
266
  */
267
267
  let channel = undefined;
268
268
  [channel, params] = this.handleOptionAndParams(params, 'watchTicker', 'channel', 'tickers');
@@ -279,7 +279,7 @@ export default class okx extends okxRest {
279
279
  * @param {string[]} [symbols] unified symbol of the market to fetch the ticker for
280
280
  * @param {object} [params] extra parameters specific to the okx api endpoint
281
281
  * @param {string} [params.channel] the channel to subscribe to, tickers by default. Can be tickers, sprd-tickers, index-tickers, block-tickers
282
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
282
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
283
283
  */
284
284
  if (this.isEmpty(symbols)) {
285
285
  throw new ArgumentsRequired(this.id + ' watchTickers requires a list of symbols');
@@ -413,7 +413,7 @@ export default class okx extends okxRest {
413
413
  * @param {string} symbol unified symbol of the market to fetch the order book for
414
414
  * @param {int} [limit] the maximum amount of order book entries to return
415
415
  * @param {object} [params] extra parameters specific to the okx api endpoint
416
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
416
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
417
417
  */
418
418
  const options = this.safeValue(this.options, 'watchOrderBook', {});
419
419
  //
@@ -729,7 +729,7 @@ export default class okx extends okxRest {
729
729
  * @name okx#watchBalance
730
730
  * @description watch balance and get the amount of funds available for trading or funds locked in orders
731
731
  * @param {object} [params] extra parameters specific to the okx api endpoint
732
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
732
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
733
733
  */
734
734
  await this.loadMarkets();
735
735
  await this.authenticate();
@@ -823,7 +823,7 @@ export default class okx extends okxRest {
823
823
  * @param {int} [limit] the maximum number of trade structures to retrieve
824
824
  * @param {object} [params] extra parameters specific to the okx api endpoint
825
825
  * @param {bool} [params.stop] true if fetching trigger or conditional trades
826
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure
826
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure
827
827
  */
828
828
  // By default, receive order updates from any instrument type
829
829
  let type = undefined;
@@ -984,7 +984,7 @@ export default class okx extends okxRest {
984
984
  * @param {int} [limit] the maximum number of orde structures to retrieve
985
985
  * @param {object} [params] extra parameters specific to the okx api endpoint
986
986
  * @param {bool} [params.stop] true if fetching trigger or conditional orders
987
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
987
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
988
988
  */
989
989
  let type = undefined;
990
990
  // By default, receive order updates from any instrument type
@@ -1202,7 +1202,7 @@ export default class okx extends okxRest {
1202
1202
  * @param {float|undefined} [price] the price at which the order is to be fullfilled, in units of the quote currency, ignored in market orders
1203
1203
  * @param {object} [params] extra parameters specific to the okx api endpoint
1204
1204
  * @param {boolean} params.test test order, default false
1205
- * @returns {object} an [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1205
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1206
1206
  */
1207
1207
  await this.loadMarkets();
1208
1208
  await this.authenticate();
@@ -1271,7 +1271,7 @@ export default class okx extends okxRest {
1271
1271
  * @param {float} amount how much of the currency you want to trade in units of the base currency
1272
1272
  * @param {float|undefined} [price] the price at which the order is to be fullfilled, in units of the quote currency, ignored in market orders
1273
1273
  * @param {object} [params] extra parameters specific to the okx api endpoint
1274
- * @returns {object} an [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1274
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1275
1275
  */
1276
1276
  await this.loadMarkets();
1277
1277
  await this.authenticate();
@@ -1297,7 +1297,7 @@ export default class okx extends okxRest {
1297
1297
  * @param {string} symbol unified market symbol, default is undefined
1298
1298
  * @param {object} [params] extra parameters specific to the okx api endpoint
1299
1299
  * @param {string} [params.clOrdId] client order id
1300
- * @returns {object} an list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1300
+ * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
1301
1301
  */
1302
1302
  if (symbol === undefined) {
1303
1303
  throw new BadRequest(this.id + ' cancelOrderWs() requires a symbol argument');
@@ -1333,7 +1333,7 @@ export default class okx extends okxRest {
1333
1333
  * @param {string[]} ids order ids
1334
1334
  * @param {string} symbol unified market symbol, default is undefined
1335
1335
  * @param {object} [params] extra parameters specific to the okx api endpoint
1336
- * @returns {object} an list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1336
+ * @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
1337
1337
  */
1338
1338
  const idsLength = ids.length;
1339
1339
  if (idsLength > 20) {
@@ -1369,7 +1369,7 @@ export default class okx extends okxRest {
1369
1369
  * @description cancel all open orders of a type. Only applicable to Option in Portfolio Margin mode, and MMP privilege is required.
1370
1370
  * @param {string} symbol unified market symbol, only orders in the market of this symbol are cancelled when symbol is not undefined
1371
1371
  * @param {object} [params] extra parameters specific to the okx api endpoint
1372
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1372
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
1373
1373
  */
1374
1374
  if (symbol === undefined) {
1375
1375
  throw new BadRequest(this.id + ' cancelAllOrdersWs() requires a symbol argument');
@@ -303,7 +303,7 @@ export default class phemex extends phemexRest {
303
303
  * @description watch balance and get the amount of funds available for trading or funds locked in orders
304
304
  * @param {object} [params] extra parameters specific to the phemex api endpoint
305
305
  * @param {string} [params.settle] set to USDT to use hedged perpetual api
306
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
306
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
307
307
  */
308
308
  await this.loadMarkets();
309
309
  let type = undefined;
@@ -498,7 +498,7 @@ export default class phemex extends phemexRest {
498
498
  * @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
499
499
  * @param {string} symbol unified symbol of the market to fetch the ticker for
500
500
  * @param {object} [params] extra parameters specific to the phemex api endpoint
501
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
501
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
502
502
  */
503
503
  await this.loadMarkets();
504
504
  const market = this.market(symbol);
@@ -533,7 +533,7 @@ export default class phemex extends phemexRest {
533
533
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
534
534
  * @param {int} [limit] the maximum amount of trades to fetch
535
535
  * @param {object} [params] extra parameters specific to the phemex api endpoint
536
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
536
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
537
537
  */
538
538
  await this.loadMarkets();
539
539
  const market = this.market(symbol);
@@ -570,7 +570,7 @@ export default class phemex extends phemexRest {
570
570
  * @param {string} symbol unified symbol of the market to fetch the order book for
571
571
  * @param {int} [limit] the maximum amount of order book entries to return
572
572
  * @param {object} [params] extra parameters specific to the phemex api endpoint
573
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
573
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
574
574
  */
575
575
  await this.loadMarkets();
576
576
  const market = this.market(symbol);
@@ -728,7 +728,7 @@ export default class phemex extends phemexRest {
728
728
  * @param {int} [since] the earliest time in ms to fetch trades for
729
729
  * @param {int} [limit] the maximum number of trade structures to retrieve
730
730
  * @param {object} [params] extra parameters specific to the phemex api endpoint
731
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure
731
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure
732
732
  */
733
733
  await this.loadMarkets();
734
734
  let market = undefined;
@@ -891,7 +891,7 @@ export default class phemex extends phemexRest {
891
891
  * @param {int} [since] the earliest time in ms to fetch orders for
892
892
  * @param {int} [limit] the maximum number of orde structures to retrieve
893
893
  * @param {object} [params] extra parameters specific to the phemex api endpoint
894
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
894
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
895
895
  */
896
896
  await this.loadMarkets();
897
897
  let messageHash = 'orders:';