ccxt 4.5.33 → 4.5.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 (184) hide show
  1. package/README.md +19 -5
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +4 -4
  4. package/dist/cjs/src/{btcalpha.js → alp.js} +45 -45
  5. package/dist/cjs/src/ascendex.js +2 -2
  6. package/dist/cjs/src/aster.js +15 -22
  7. package/dist/cjs/src/backpack.js +2 -2
  8. package/dist/cjs/src/binance.js +6 -4
  9. package/dist/cjs/src/bingx.js +2 -1
  10. package/dist/cjs/src/bitfinex.js +6 -11
  11. package/dist/cjs/src/bitget.js +4 -4
  12. package/dist/cjs/src/bitmart.js +1 -1
  13. package/dist/cjs/src/bitmex.js +1 -1
  14. package/dist/cjs/src/bitso.js +1 -1
  15. package/dist/cjs/src/bitstamp.js +1 -1
  16. package/dist/cjs/src/blofin.js +1 -1
  17. package/dist/cjs/src/bybit.js +49 -26
  18. package/dist/cjs/src/cex.js +1 -1
  19. package/dist/cjs/src/coinbase.js +7 -6
  20. package/dist/cjs/src/coinbaseexchange.js +1 -1
  21. package/dist/cjs/src/coincatch.js +3 -3
  22. package/dist/cjs/src/coinex.js +2 -2
  23. package/dist/cjs/src/coinmetro.js +1 -1
  24. package/dist/cjs/src/cryptocom.js +4 -1
  25. package/dist/cjs/src/deepcoin.js +1 -1
  26. package/dist/cjs/src/defx.js +1 -1
  27. package/dist/cjs/src/delta.js +3 -3
  28. package/dist/cjs/src/digifinex.js +1 -1
  29. package/dist/cjs/src/dydx.js +1 -1
  30. package/dist/cjs/src/exmo.js +2 -2
  31. package/dist/cjs/src/foxbit.js +1 -1
  32. package/dist/cjs/src/gate.js +23 -3
  33. package/dist/cjs/src/hashkey.js +1 -1
  34. package/dist/cjs/src/hibachi.js +1 -1
  35. package/dist/cjs/src/hitbtc.js +2 -2
  36. package/dist/cjs/src/htx.js +26 -1
  37. package/dist/cjs/src/hyperliquid.js +5 -4
  38. package/dist/cjs/src/kraken.js +1 -1
  39. package/dist/cjs/src/kucoin.js +1 -1
  40. package/dist/cjs/src/kucoinfutures.js +1 -1
  41. package/dist/cjs/src/luno.js +1 -1
  42. package/dist/cjs/src/mexc.js +2 -2
  43. package/dist/cjs/src/modetrade.js +1 -1
  44. package/dist/cjs/src/ndax.js +1 -1
  45. package/dist/cjs/src/okx.js +4 -4
  46. package/dist/cjs/src/paradex.js +1 -1
  47. package/dist/cjs/src/phemex.js +1 -1
  48. package/dist/cjs/src/poloniex.js +2 -2
  49. package/dist/cjs/src/pro/apex.js +5 -4
  50. package/dist/cjs/src/pro/arkham.js +1 -1
  51. package/dist/cjs/src/pro/aster.js +905 -33
  52. package/dist/cjs/src/pro/bitget.js +14 -1
  53. package/dist/cjs/src/pro/okx.js +1 -1
  54. package/dist/cjs/src/toobit.js +1 -1
  55. package/dist/cjs/src/whitebit.js +1 -1
  56. package/dist/cjs/src/woo.js +3 -3
  57. package/dist/cjs/src/woofipro.js +1 -1
  58. package/dist/cjs/src/xt.js +2 -2
  59. package/dist/cjs/src/zebpay.js +2 -2
  60. package/dist/cjs/src/zonda.js +1 -1
  61. package/js/ccxt.d.ts +5 -5
  62. package/js/ccxt.js +4 -4
  63. package/js/src/abstract/aster.d.ts +6 -8
  64. package/js/src/abstract/binance.d.ts +2 -0
  65. package/js/src/abstract/binancecoinm.d.ts +2 -0
  66. package/js/src/abstract/binanceus.d.ts +2 -0
  67. package/js/src/abstract/binanceusdm.d.ts +2 -0
  68. package/js/src/abstract/bingx.d.ts +1 -0
  69. package/js/src/abstract/bybit.d.ts +15 -0
  70. package/js/src/abstract/cryptocom.d.ts +3 -0
  71. package/js/src/abstract/gate.d.ts +13 -0
  72. package/js/src/abstract/gateio.d.ts +13 -0
  73. package/js/src/abstract/htx.d.ts +25 -0
  74. package/js/src/abstract/huobi.d.ts +25 -0
  75. package/js/src/{btcalpha.d.ts → alp.d.ts} +37 -37
  76. package/js/src/{btcalpha.js → alp.js} +44 -44
  77. package/js/src/ascendex.d.ts +2 -2
  78. package/js/src/ascendex.js +2 -2
  79. package/js/src/aster.js +15 -22
  80. package/js/src/backpack.js +2 -2
  81. package/js/src/binance.d.ts +4 -4
  82. package/js/src/binance.js +6 -4
  83. package/js/src/bingx.d.ts +1 -1
  84. package/js/src/bingx.js +2 -1
  85. package/js/src/bitfinex.d.ts +1 -2
  86. package/js/src/bitfinex.js +6 -11
  87. package/js/src/bitget.d.ts +3 -3
  88. package/js/src/bitget.js +4 -4
  89. package/js/src/bitmart.d.ts +1 -1
  90. package/js/src/bitmart.js +1 -1
  91. package/js/src/bitmex.d.ts +1 -1
  92. package/js/src/bitmex.js +1 -1
  93. package/js/src/bitso.d.ts +1 -1
  94. package/js/src/bitso.js +1 -1
  95. package/js/src/bitstamp.d.ts +1 -1
  96. package/js/src/bitstamp.js +1 -1
  97. package/js/src/blofin.d.ts +1 -1
  98. package/js/src/blofin.js +1 -1
  99. package/js/src/bybit.d.ts +1 -1
  100. package/js/src/bybit.js +49 -26
  101. package/js/src/cex.d.ts +1 -1
  102. package/js/src/cex.js +1 -1
  103. package/js/src/coinbase.d.ts +1 -1
  104. package/js/src/coinbase.js +7 -6
  105. package/js/src/coinbaseexchange.d.ts +1 -1
  106. package/js/src/coinbaseexchange.js +1 -1
  107. package/js/src/coincatch.d.ts +3 -3
  108. package/js/src/coincatch.js +3 -3
  109. package/js/src/coinex.d.ts +2 -2
  110. package/js/src/coinex.js +2 -2
  111. package/js/src/coinmetro.d.ts +1 -1
  112. package/js/src/coinmetro.js +1 -1
  113. package/js/src/cryptocom.d.ts +1 -1
  114. package/js/src/cryptocom.js +4 -1
  115. package/js/src/deepcoin.d.ts +1 -1
  116. package/js/src/deepcoin.js +1 -1
  117. package/js/src/defx.d.ts +1 -1
  118. package/js/src/defx.js +1 -1
  119. package/js/src/delta.d.ts +3 -3
  120. package/js/src/delta.js +3 -3
  121. package/js/src/digifinex.d.ts +1 -1
  122. package/js/src/digifinex.js +1 -1
  123. package/js/src/dydx.d.ts +1 -1
  124. package/js/src/dydx.js +1 -1
  125. package/js/src/exmo.d.ts +2 -2
  126. package/js/src/exmo.js +2 -2
  127. package/js/src/foxbit.js +1 -1
  128. package/js/src/gate.d.ts +3 -3
  129. package/js/src/gate.js +23 -3
  130. package/js/src/hashkey.d.ts +1 -1
  131. package/js/src/hashkey.js +1 -1
  132. package/js/src/hibachi.d.ts +1 -1
  133. package/js/src/hibachi.js +1 -1
  134. package/js/src/hitbtc.d.ts +2 -2
  135. package/js/src/hitbtc.js +2 -2
  136. package/js/src/htx.d.ts +1 -1
  137. package/js/src/htx.js +26 -1
  138. package/js/src/hyperliquid.d.ts +3 -3
  139. package/js/src/hyperliquid.js +5 -4
  140. package/js/src/kraken.d.ts +1 -1
  141. package/js/src/kraken.js +1 -1
  142. package/js/src/kucoin.d.ts +1 -1
  143. package/js/src/kucoin.js +1 -1
  144. package/js/src/kucoinfutures.d.ts +1 -1
  145. package/js/src/kucoinfutures.js +1 -1
  146. package/js/src/luno.d.ts +1 -1
  147. package/js/src/luno.js +1 -1
  148. package/js/src/mexc.d.ts +2 -2
  149. package/js/src/mexc.js +2 -2
  150. package/js/src/modetrade.d.ts +1 -1
  151. package/js/src/modetrade.js +1 -1
  152. package/js/src/ndax.d.ts +1 -1
  153. package/js/src/ndax.js +1 -1
  154. package/js/src/okx.d.ts +3 -3
  155. package/js/src/okx.js +4 -4
  156. package/js/src/paradex.js +1 -1
  157. package/js/src/phemex.d.ts +1 -1
  158. package/js/src/phemex.js +1 -1
  159. package/js/src/poloniex.d.ts +2 -2
  160. package/js/src/poloniex.js +2 -2
  161. package/js/src/pro/apex.js +5 -4
  162. package/js/src/pro/arkham.js +1 -1
  163. package/js/src/pro/aster.d.ts +68 -2
  164. package/js/src/pro/aster.js +906 -34
  165. package/js/src/pro/bitget.js +14 -1
  166. package/js/src/pro/okx.d.ts +1 -1
  167. package/js/src/pro/okx.js +1 -1
  168. package/js/src/toobit.d.ts +1 -1
  169. package/js/src/toobit.js +1 -1
  170. package/js/src/whitebit.js +1 -1
  171. package/js/src/woo.d.ts +3 -3
  172. package/js/src/woo.js +3 -3
  173. package/js/src/woofipro.d.ts +1 -1
  174. package/js/src/woofipro.js +1 -1
  175. package/js/src/xt.d.ts +2 -2
  176. package/js/src/xt.js +2 -2
  177. package/js/src/zebpay.d.ts +2 -2
  178. package/js/src/zebpay.js +2 -2
  179. package/js/src/zonda.d.ts +1 -1
  180. package/js/src/zonda.js +1 -1
  181. package/package.json +1 -1
  182. /package/dist/cjs/src/abstract/{btcalpha.js → alp.js} +0 -0
  183. /package/js/src/abstract/{btcalpha.d.ts → alp.d.ts} +0 -0
  184. /package/js/src/abstract/{btcalpha.js → alp.js} +0 -0
@@ -2983,6 +2983,7 @@ export default class hyperliquid extends Exchange {
2983
2983
  if (entry === undefined) {
2984
2984
  entry = order;
2985
2985
  }
2986
+ const filled = this.safeDict(order, 'filled', {});
2986
2987
  const coin = this.safeString(entry, 'coin');
2987
2988
  let marketId = undefined;
2988
2989
  if (coin !== undefined) {
@@ -3028,7 +3029,7 @@ export default class hyperliquid extends Exchange {
3028
3029
  'amount': totalAmount,
3029
3030
  'cost': undefined,
3030
3031
  'average': this.safeString(entry, 'avgPx'),
3031
- 'filled': Precise.stringSub(totalAmount, remaining),
3032
+ 'filled': this.safeString(filled, 'totalSz', Precise.stringSub(totalAmount, remaining)),
3032
3033
  'remaining': remaining,
3033
3034
  'status': this.parseOrderStatus(status),
3034
3035
  'fee': undefined,
@@ -3497,7 +3498,7 @@ export default class hyperliquid extends Exchange {
3497
3498
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3498
3499
  * @param {string} [params.vaultAddress] the vault address
3499
3500
  * @param {string} [params.subAccountAddress] sub account user address
3500
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
3501
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
3501
3502
  */
3502
3503
  async addMargin(symbol, amount, params = {}) {
3503
3504
  return await this.modifyMarginHelper(symbol, amount, 'add', params);
@@ -3512,7 +3513,7 @@ export default class hyperliquid extends Exchange {
3512
3513
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3513
3514
  * @param {string} [params.vaultAddress] the vault address
3514
3515
  * @param {string} [params.subAccountAddress] sub account user address
3515
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
3516
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
3516
3517
  */
3517
3518
  async reduceMargin(symbol, amount, params = {}) {
3518
3519
  return await this.modifyMarginHelper(symbol, amount, 'reduce', params);
@@ -3936,7 +3937,7 @@ export default class hyperliquid extends Exchange {
3936
3937
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3937
3938
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
3938
3939
  * @param {string} [params.subAccountAddress] sub account user address
3939
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
3940
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
3940
3941
  */
3941
3942
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
3942
3943
  await this.loadMarkets();
@@ -121,7 +121,7 @@ export default class kraken extends Exchange {
121
121
  * @param {object} [params] extra parameters specific to the exchange API endpoint
122
122
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
123
123
  * @param {int} [params.end] timestamp in seconds of the latest ledger entry
124
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
124
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
125
125
  */
126
126
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
127
127
  fetchLedgerEntriesByIds(ids: any, code?: Str, params?: {}): Promise<LedgerEntry[]>;
package/js/src/kraken.js CHANGED
@@ -1266,7 +1266,7 @@ export default class kraken extends Exchange {
1266
1266
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1267
1267
  * @param {int} [params.until] timestamp in ms of the latest ledger entry
1268
1268
  * @param {int} [params.end] timestamp in seconds of the latest ledger entry
1269
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
1269
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
1270
1270
  */
1271
1271
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
1272
1272
  // https://www.kraken.com/features/api#get-ledgers-info
@@ -600,7 +600,7 @@ export default class kucoin extends Exchange {
600
600
  * @param {boolean} [params.hf] default false, when true will fetch ledger entries for the high frequency trading account
601
601
  * @param {int} [params.until] the latest time in ms to fetch entries for
602
602
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
603
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
603
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
604
604
  */
605
605
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
606
606
  calculateRateLimiterCost(api: any, method: any, path: any, params: any, config?: {}): any;
package/js/src/kucoin.js CHANGED
@@ -4905,7 +4905,7 @@ export default class kucoin extends Exchange {
4905
4905
  * @param {boolean} [params.hf] default false, when true will fetch ledger entries for the high frequency trading account
4906
4906
  * @param {int} [params.until] the latest time in ms to fetch entries for
4907
4907
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
4908
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
4908
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
4909
4909
  */
4910
4910
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
4911
4911
  await this.loadMarkets();
@@ -255,7 +255,7 @@ export default class kucoinfutures extends kucoin {
255
255
  * @param {string} symbol unified market symbol
256
256
  * @param {float} amount amount of margin to add
257
257
  * @param {object} [params] extra parameters specific to the exchange API endpoint
258
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
258
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
259
259
  */
260
260
  addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
261
261
  parseMarginModification(info: any, market?: Market): MarginModification;
@@ -1899,7 +1899,7 @@ export default class kucoinfutures extends kucoin {
1899
1899
  * @param {string} symbol unified market symbol
1900
1900
  * @param {float} amount amount of margin to add
1901
1901
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1902
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
1902
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
1903
1903
  */
1904
1904
  async addMargin(symbol, amount, params = {}) {
1905
1905
  await this.loadMarkets();
package/js/src/luno.d.ts CHANGED
@@ -210,7 +210,7 @@ export default class luno extends Exchange {
210
210
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
211
211
  * @param {int} [limit] max number of ledger entries to return, default is undefined
212
212
  * @param {object} [params] extra parameters specific to the exchange API endpoint
213
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
213
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
214
214
  */
215
215
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
216
216
  parseLedgerComment(comment: any): {
package/js/src/luno.js CHANGED
@@ -1203,7 +1203,7 @@ export default class luno extends Exchange {
1203
1203
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
1204
1204
  * @param {int} [limit] max number of ledger entries to return, default is undefined
1205
1205
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1206
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
1206
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
1207
1207
  */
1208
1208
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
1209
1209
  await this.loadMarkets();
package/js/src/mexc.d.ts CHANGED
@@ -446,7 +446,7 @@ export default class mexc extends Exchange {
446
446
  * @param {string} symbol unified market symbol
447
447
  * @param {float} amount the amount of margin to remove
448
448
  * @param {object} [params] extra parameters specific to the exchange API endpoint
449
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
449
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
450
450
  */
451
451
  reduceMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
452
452
  /**
@@ -457,7 +457,7 @@ export default class mexc extends Exchange {
457
457
  * @param {string} symbol unified market symbol
458
458
  * @param {float} amount amount of margin to add
459
459
  * @param {object} [params] extra parameters specific to the exchange API endpoint
460
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
460
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
461
461
  */
462
462
  addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
463
463
  /**
package/js/src/mexc.js CHANGED
@@ -4260,7 +4260,7 @@ export default class mexc extends Exchange {
4260
4260
  * @param {string} symbol unified market symbol
4261
4261
  * @param {float} amount the amount of margin to remove
4262
4262
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4263
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
4263
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
4264
4264
  */
4265
4265
  async reduceMargin(symbol, amount, params = {}) {
4266
4266
  return await this.modifyMarginHelper(symbol, amount, 'SUB', params);
@@ -4273,7 +4273,7 @@ export default class mexc extends Exchange {
4273
4273
  * @param {string} symbol unified market symbol
4274
4274
  * @param {float} amount amount of margin to add
4275
4275
  * @param {object} [params] extra parameters specific to the exchange API endpoint
4276
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
4276
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
4277
4277
  */
4278
4278
  async addMargin(symbol, amount, params = {}) {
4279
4279
  return await this.modifyMarginHelper(symbol, amount, 'ADD', params);
@@ -384,7 +384,7 @@ export default class modetrade extends Exchange {
384
384
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
385
385
  * @param {int} [limit] max number of ledger entries to return, default is undefined
386
386
  * @param {object} [params] extra parameters specific to the exchange API endpoint
387
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
387
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
388
388
  */
389
389
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
390
390
  parseTransaction(transaction: Dict, currency?: Currency): Transaction;
@@ -2369,7 +2369,7 @@ export default class modetrade extends Exchange {
2369
2369
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
2370
2370
  * @param {int} [limit] max number of ledger entries to return, default is undefined
2371
2371
  * @param {object} [params] extra parameters specific to the exchange API endpoint
2372
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
2372
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
2373
2373
  */
2374
2374
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
2375
2375
  const currencyRows = await this.getAssetHistoryRows(code, since, limit, params);
package/js/src/ndax.d.ts CHANGED
@@ -113,7 +113,7 @@ export default class ndax extends Exchange {
113
113
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
114
114
  * @param {int} [limit] max number of ledger entries to return, default is undefined
115
115
  * @param {object} [params] extra parameters specific to the exchange API endpoint
116
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
116
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
117
117
  */
118
118
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
119
119
  parseOrderStatus(status: Str): string;
package/js/src/ndax.js CHANGED
@@ -1300,7 +1300,7 @@ export default class ndax extends Exchange {
1300
1300
  * @param {int} [since] timestamp in ms of the earliest ledger entry, default is undefined
1301
1301
  * @param {int} [limit] max number of ledger entries to return, default is undefined
1302
1302
  * @param {object} [params] extra parameters specific to the exchange API endpoint
1303
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
1303
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
1304
1304
  */
1305
1305
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
1306
1306
  const omsId = this.safeInteger(this.options, 'omsId', 1);
package/js/src/okx.d.ts CHANGED
@@ -451,7 +451,7 @@ export default class okx extends Exchange {
451
451
  * @param {string} [params.marginMode] 'cross' or 'isolated'
452
452
  * @param {int} [params.until] the latest time in ms to fetch entries for
453
453
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
454
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
454
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
455
455
  */
456
456
  fetchLedger(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<LedgerEntry[]>;
457
457
  parseLedgerEntryType(type: any): string;
@@ -780,7 +780,7 @@ export default class okx extends Exchange {
780
780
  * @param {string} symbol unified market symbol
781
781
  * @param {float} amount the amount of margin to remove
782
782
  * @param {object} [params] extra parameters specific to the exchange API endpoint
783
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
783
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
784
784
  */
785
785
  reduceMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
786
786
  /**
@@ -791,7 +791,7 @@ export default class okx extends Exchange {
791
791
  * @param {string} symbol unified market symbol
792
792
  * @param {float} amount amount of margin to add
793
793
  * @param {object} [params] extra parameters specific to the exchange API endpoint
794
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
794
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
795
795
  */
796
796
  addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
797
797
  /**
package/js/src/okx.js CHANGED
@@ -4993,7 +4993,7 @@ export default class okx extends Exchange {
4993
4993
  * @param {string} [params.marginMode] 'cross' or 'isolated'
4994
4994
  * @param {int} [params.until] the latest time in ms to fetch entries for
4995
4995
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
4996
- * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger}
4996
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/?id=ledger-entry-structure}
4997
4997
  */
4998
4998
  async fetchLedger(code = undefined, since = undefined, limit = undefined, params = {}) {
4999
4999
  await this.loadMarkets();
@@ -6176,7 +6176,7 @@ export default class okx extends Exchange {
6176
6176
  initialMarginPercentage = this.parseNumber(Precise.stringDiv(initialMarginString, notionalString, 4));
6177
6177
  }
6178
6178
  else if (initialMarginString === undefined) {
6179
- initialMarginString = Precise.stringMul(initialMarginPercentage, notionalString);
6179
+ initialMarginString = Precise.stringDiv(Precise.stringDiv(Precise.stringMul(contractsAbs, contractSizeString), entryPriceString), leverageString);
6180
6180
  }
6181
6181
  const rounder = '0.00005'; // round to closest 0.01%
6182
6182
  const maintenanceMarginPercentage = this.parseNumber(Precise.stringDiv(Precise.stringAdd(maintenanceMarginPercentageString, rounder), '1', 4));
@@ -7330,7 +7330,7 @@ export default class okx extends Exchange {
7330
7330
  * @param {string} symbol unified market symbol
7331
7331
  * @param {float} amount the amount of margin to remove
7332
7332
  * @param {object} [params] extra parameters specific to the exchange API endpoint
7333
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
7333
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
7334
7334
  */
7335
7335
  async reduceMargin(symbol, amount, params = {}) {
7336
7336
  return await this.modifyMarginHelper(symbol, amount, 'reduce', params);
@@ -7343,7 +7343,7 @@ export default class okx extends Exchange {
7343
7343
  * @param {string} symbol unified market symbol
7344
7344
  * @param {float} amount amount of margin to add
7345
7345
  * @param {object} [params] extra parameters specific to the exchange API endpoint
7346
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
7346
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
7347
7347
  */
7348
7348
  async addMargin(symbol, amount, params = {}) {
7349
7349
  return await this.modifyMarginHelper(symbol, amount, 'add', params);
package/js/src/paradex.js CHANGED
@@ -1838,7 +1838,7 @@ export default class paradex extends Exchange {
1838
1838
  // "prev": null,
1839
1839
  // "results": [
1840
1840
  // {
1841
- // "id": "1718947571560201703986670001",
1841
+ // "id": "1718947571560201703986670002",
1842
1842
  // "side": "BUY",
1843
1843
  // "liquidity": "TAKER",
1844
1844
  // "market": "BTC-USD-PERP",
@@ -327,7 +327,7 @@ export default class phemex extends Exchange {
327
327
  * @param {string} symbol unified market symbol of the market to set margin in
328
328
  * @param {float} amount the amount to set the margin to
329
329
  * @param {object} [params] parameters specific to the exchange API endpoint
330
- * @returns {object} A [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
330
+ * @returns {object} A [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
331
331
  */
332
332
  setMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
333
333
  parseMarginStatus(status: any): string;
package/js/src/phemex.js CHANGED
@@ -4316,7 +4316,7 @@ export default class phemex extends Exchange {
4316
4316
  * @param {string} symbol unified market symbol of the market to set margin in
4317
4317
  * @param {float} amount the amount to set the margin to
4318
4318
  * @param {object} [params] parameters specific to the exchange API endpoint
4319
- * @returns {object} A [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
4319
+ * @returns {object} A [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
4320
4320
  */
4321
4321
  async setMargin(symbol, amount, params = {}) {
4322
4322
  await this.loadMarkets();
@@ -417,7 +417,7 @@ export default class poloniex extends Exchange {
417
417
  * @param {string} symbol unified market symbol
418
418
  * @param {float} amount the amount of margin to remove
419
419
  * @param {object} [params] extra parameters specific to the exchange API endpoint
420
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
420
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
421
421
  */
422
422
  reduceMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
423
423
  /**
@@ -427,7 +427,7 @@ export default class poloniex extends Exchange {
427
427
  * @param {string} symbol unified market symbol
428
428
  * @param {float} amount amount of margin to add
429
429
  * @param {object} [params] extra parameters specific to the exchange API endpoint
430
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
430
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
431
431
  */
432
432
  addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
433
433
  nonce(): number;
@@ -3586,7 +3586,7 @@ export default class poloniex extends Exchange {
3586
3586
  * @param {string} symbol unified market symbol
3587
3587
  * @param {float} amount the amount of margin to remove
3588
3588
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3589
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=reduce-margin-structure}
3589
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
3590
3590
  */
3591
3591
  async reduceMargin(symbol, amount, params = {}) {
3592
3592
  return await this.modifyMarginHelper(symbol, -amount, 'reduce', params);
@@ -3598,7 +3598,7 @@ export default class poloniex extends Exchange {
3598
3598
  * @param {string} symbol unified market symbol
3599
3599
  * @param {float} amount amount of margin to add
3600
3600
  * @param {object} [params] extra parameters specific to the exchange API endpoint
3601
- * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=add-margin-structure}
3601
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/?id=margin-structure}
3602
3602
  */
3603
3603
  async addMargin(symbol, amount, params = {}) {
3604
3604
  return await this.modifyMarginHelper(symbol, amount, 'add', params);
@@ -12,6 +12,7 @@ export default class apex extends apexRest {
12
12
  'watchTicker': true,
13
13
  'watchTickers': true,
14
14
  'watchOrderBook': true,
15
+ 'watchOrderBookForSymbols': true,
15
16
  'watchOrders': true,
16
17
  'watchTrades': true,
17
18
  'watchTradesForSymbols': false,
@@ -19,6 +20,7 @@ export default class apex extends apexRest {
19
20
  'watchMyTrades': true,
20
21
  'watchBalance': false,
21
22
  'watchOHLCV': true,
23
+ 'watchOHLCVForSymbols': true,
22
24
  },
23
25
  'urls': {
24
26
  'logo': 'https://omni.apex.exchange/assets/logo_content-CY9uyFbz.svg',
@@ -448,7 +450,7 @@ export default class apex extends apexRest {
448
450
  const unfiedTimeframe = this.safeString(data, 1, '1');
449
451
  const timeframeId = this.safeString(this.timeframes, unfiedTimeframe, unfiedTimeframe);
450
452
  rawHashes.push('candle.' + timeframeId + '.' + symbolString);
451
- messageHashes.push('ohlcv::' + symbolString + '::' + unfiedTimeframe);
453
+ messageHashes.push('ohlcv::' + market['symbol'] + '::' + unfiedTimeframe);
452
454
  }
453
455
  const [symbol, timeframe, stored] = await this.watchTopics(url, messageHashes, rawHashes, params);
454
456
  if (this.newUpdates) {
@@ -491,11 +493,10 @@ export default class apex extends apexRest {
491
493
  const marketType = isSpot ? 'spot' : 'contract';
492
494
  const market = this.safeMarket(marketId, undefined, undefined, marketType);
493
495
  const symbol = market['symbol'];
494
- const ohlcvsByTimeframe = this.safeValue(this.ohlcvs, symbol);
495
- if (ohlcvsByTimeframe === undefined) {
496
+ if (!(symbol in this.ohlcvs)) {
496
497
  this.ohlcvs[symbol] = {};
497
498
  }
498
- if (this.safeValue(ohlcvsByTimeframe, timeframe) === undefined) {
499
+ if (!(timeframe in this.ohlcvs[symbol])) {
499
500
  const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
500
501
  this.ohlcvs[symbol][timeframe] = new ArrayCacheByTimestamp(limit);
501
502
  }
@@ -115,7 +115,7 @@ export default class arkham extends arkhamRest {
115
115
  // volume24h: '32.89729',
116
116
  // quoteVolume24h: '3924438.7146048',
117
117
  // markPrice: '0',
118
- // indexPrice: '118963.080293501',
118
+ // indexPrice: '118963.080293502',
119
119
  // fundingRate: '0',
120
120
  // nextFundingRate: '0',
121
121
  // nextFundingTime: 0,
@@ -1,5 +1,5 @@
1
1
  import asterRest from '../aster.js';
2
- import type { Strings, Tickers, Dict, Ticker, Int, Market, Trade, OrderBook, OHLCV } from '../base/types.js';
2
+ import type { Balances, Str, Strings, Tickers, Ticker, Int, Trade, Order, OrderBook, OHLCV, Position } from '../base/types.js';
3
3
  import Client from '../base/ws/Client.js';
4
4
  export default class aster extends asterRest {
5
5
  describe(): any;
@@ -167,7 +167,7 @@ export default class aster extends asterRest {
167
167
  */
168
168
  unWatchTradesForSymbols(symbols: string[], params?: {}): Promise<any>;
169
169
  handleTrade(client: Client, message: any): void;
170
- parseWsTrade(trade: Dict, market?: Market): Trade;
170
+ parseWsTrade(trade: any, market?: any): Trade;
171
171
  /**
172
172
  * @method
173
173
  * @name aster#watchOrderBook
@@ -269,5 +269,71 @@ export default class aster extends asterRest {
269
269
  unWatchOHLCVForSymbols(symbolsAndTimeframes: string[][], params?: {}): Promise<any>;
270
270
  handleOHLCV(client: Client, message: any): void;
271
271
  parseWsOHLCV(ohlcv: any, market?: any): OHLCV;
272
+ authenticate(type?: string, params?: {}): Promise<void>;
273
+ keepAliveListenKey(params?: {}): Promise<void>;
274
+ getPrivateUrl(type?: string): string;
275
+ /**
276
+ * @method
277
+ * @name aster#watchBalance
278
+ * @description query for balance and get the amount of funds available for trading or funds locked in orders
279
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-spot-api.md#payload-account_update
280
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-futures-api.md#event-balance-and-position-update
281
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
282
+ * @param {string} [params.type] 'spot' or 'swap', default is 'spot'
283
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/?id=balance-structure}
284
+ */
285
+ watchBalance(params?: {}): Promise<Balances>;
286
+ setBalanceCache(client: Client, type: any): void;
287
+ loadBalanceSnapshot(client: any, messageHash: any, type: any): Promise<void>;
288
+ handleBalance(client: Client, message: any): void;
289
+ /**
290
+ * @method
291
+ * @name aster#watchPositions
292
+ * @description watch all open positions
293
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-futures-api.md#event-balance-and-position-update
294
+ * @param {string[]|undefined} symbols list of unified market symbols
295
+ * @param {number} [since] since timestamp
296
+ * @param {number} [limit] limit
297
+ * @param {object} params extra parameters specific to the exchange API endpoint
298
+ * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/en/latest/manual.html#position-structure}
299
+ */
300
+ watchPositions(symbols?: Strings, since?: Int, limit?: Int, params?: {}): Promise<Position[]>;
301
+ setPositionsCache(client: Client): void;
302
+ loadPositionsSnapshot(client: any, messageHash: any): Promise<void>;
303
+ handlePositions(client: any, message: any): void;
304
+ parseWsPosition(position: any, market?: any): Position;
305
+ /**
306
+ * @method
307
+ * @name aster#watchOrders
308
+ * @description watches information on multiple orders made by the user
309
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-spot-api.md#payload-order-update
310
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-futures-api.md#event-order-update
311
+ * @param {string} [symbol] unified market symbol of the market orders were made in
312
+ * @param {int} [since] the earliest time in ms to fetch orders for
313
+ * @param {int} [limit] the maximum number of order structures to retrieve
314
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
315
+ * @param {string} [params.type] 'spot' or 'swap', default is 'spot' if symbol is not provided
316
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/?id=order-structure}
317
+ */
318
+ watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
319
+ /**
320
+ * @method
321
+ * @name aster#watchMyTrades
322
+ * @description watches information on multiple trades made by the user
323
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-spot-api.md#payload-order-update
324
+ * @see https://github.com/asterdex/api-docs/blob/master/aster-finance-futures-api.md#event-order-update
325
+ * @param {string} [symbol] unified market symbol of the market orders were made in
326
+ * @param {int} [since] the earliest time in ms to fetch orders for
327
+ * @param {int} [limit] the maximum number of order structures to retrieve
328
+ * @param {object} [params] extra parameters specific to the exchange API endpoint
329
+ * @param {string} [params.type] 'spot' or 'swap', default is 'spot' if symbol is not provided
330
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/?id=trade-structure}
331
+ */
332
+ watchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
333
+ handleOrderUpdate(client: Client, message: any): void;
334
+ handleMyTrade(client: Client, message: any): void;
335
+ handleOrder(client: Client, message: any): void;
336
+ parseWsOrder(order: any, market?: any): Order;
337
+ getMarketFromOrder(client: Client, order: any): import("../base/types.js").MarketInterface;
272
338
  handleMessage(client: Client, message: any): void;
273
339
  }