ccxt 4.4.25 → 4.4.27

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 (137) hide show
  1. package/README.md +133 -132
  2. package/dist/ccxt.browser.min.js +3 -3
  3. package/dist/cjs/ccxt.js +1 -1
  4. package/dist/cjs/src/ace.js +1 -1
  5. package/dist/cjs/src/alpaca.js +451 -16
  6. package/dist/cjs/src/ascendex.js +1 -1
  7. package/dist/cjs/src/base/Exchange.js +32 -1
  8. package/dist/cjs/src/bequant.js +1 -1
  9. package/dist/cjs/src/bigone.js +1 -1
  10. package/dist/cjs/src/binance.js +3 -4
  11. package/dist/cjs/src/binancecoinm.js +1 -1
  12. package/dist/cjs/src/binanceus.js +1 -1
  13. package/dist/cjs/src/binanceusdm.js +1 -1
  14. package/dist/cjs/src/bingx.js +32 -37
  15. package/dist/cjs/src/bit2c.js +1 -1
  16. package/dist/cjs/src/bitbank.js +1 -1
  17. package/dist/cjs/src/bitbns.js +1 -1
  18. package/dist/cjs/src/bitfinex.js +1 -1
  19. package/dist/cjs/src/bitfinex2.js +1 -1
  20. package/dist/cjs/src/bitflyer.js +1 -1
  21. package/dist/cjs/src/bitget.js +3 -3
  22. package/dist/cjs/src/bithumb.js +1 -1
  23. package/dist/cjs/src/bitmart.js +4 -4
  24. package/dist/cjs/src/bitmex.js +1 -1
  25. package/dist/cjs/src/bitopro.js +1 -1
  26. package/dist/cjs/src/bitrue.js +1 -1
  27. package/dist/cjs/src/bitso.js +1 -1
  28. package/dist/cjs/src/bitstamp.js +1 -1
  29. package/dist/cjs/src/bitteam.js +1 -1
  30. package/dist/cjs/src/bitvavo.js +1 -1
  31. package/dist/cjs/src/bl3p.js +1 -1
  32. package/dist/cjs/src/blockchaincom.js +1 -1
  33. package/dist/cjs/src/blofin.js +1 -1
  34. package/dist/cjs/src/btcalpha.js +1 -1
  35. package/dist/cjs/src/btcbox.js +1 -1
  36. package/dist/cjs/src/btcmarkets.js +1 -1
  37. package/dist/cjs/src/btcturk.js +1 -1
  38. package/dist/cjs/src/bybit.js +8 -15
  39. package/dist/cjs/src/cex.js +40 -0
  40. package/dist/cjs/src/coinbase.js +97 -11
  41. package/dist/cjs/src/coinex.js +3 -5
  42. package/dist/cjs/src/digifinex.js +2 -2
  43. package/dist/cjs/src/exmo.js +1 -0
  44. package/dist/cjs/src/gate.js +25 -19
  45. package/dist/cjs/src/htx.js +2 -3
  46. package/dist/cjs/src/hyperliquid.js +35 -5
  47. package/dist/cjs/src/kucoin.js +2 -2
  48. package/dist/cjs/src/lbank.js +100 -1
  49. package/dist/cjs/src/okx.js +3 -2
  50. package/dist/cjs/src/phemex.js +4 -2
  51. package/dist/cjs/src/pro/binance.js +1 -1
  52. package/dist/cjs/src/pro/exmo.js +216 -3
  53. package/dist/cjs/src/pro/lbank.js +9 -4
  54. package/dist/cjs/src/wavesexchange.js +13 -2
  55. package/dist/cjs/src/whitebit.js +2 -2
  56. package/dist/cjs/src/xt.js +39 -27
  57. package/examples/js/cli.js +23 -3
  58. package/js/ccxt.d.ts +1 -1
  59. package/js/ccxt.js +1 -1
  60. package/js/src/abstract/alpaca.d.ts +3 -0
  61. package/js/src/abstract/bingx.d.ts +1 -0
  62. package/js/src/abstract/okx.d.ts +1 -0
  63. package/js/src/abstract/phemex.d.ts +1 -0
  64. package/js/src/ace.js +1 -1
  65. package/js/src/alpaca.d.ts +14 -1
  66. package/js/src/alpaca.js +452 -17
  67. package/js/src/ascendex.js +1 -1
  68. package/js/src/base/Exchange.d.ts +13 -6
  69. package/js/src/base/Exchange.js +32 -1
  70. package/js/src/base/types.d.ts +3 -3
  71. package/js/src/bequant.js +1 -1
  72. package/js/src/bigone.js +1 -1
  73. package/js/src/binance.d.ts +3 -14
  74. package/js/src/binance.js +3 -4
  75. package/js/src/binancecoinm.js +1 -1
  76. package/js/src/binanceus.js +1 -1
  77. package/js/src/binanceusdm.js +1 -1
  78. package/js/src/bingx.js +32 -37
  79. package/js/src/bit2c.js +1 -1
  80. package/js/src/bitbank.js +1 -1
  81. package/js/src/bitbns.js +1 -1
  82. package/js/src/bitfinex.js +1 -1
  83. package/js/src/bitfinex2.js +1 -1
  84. package/js/src/bitflyer.js +1 -1
  85. package/js/src/bitget.d.ts +3 -13
  86. package/js/src/bitget.js +3 -3
  87. package/js/src/bithumb.js +1 -1
  88. package/js/src/bitmart.d.ts +3 -13
  89. package/js/src/bitmart.js +4 -4
  90. package/js/src/bitmex.js +1 -1
  91. package/js/src/bitopro.js +1 -1
  92. package/js/src/bitrue.js +1 -1
  93. package/js/src/bitso.js +1 -1
  94. package/js/src/bitstamp.js +1 -1
  95. package/js/src/bitteam.js +1 -1
  96. package/js/src/bitvavo.js +1 -1
  97. package/js/src/bl3p.js +1 -1
  98. package/js/src/blockchaincom.js +1 -1
  99. package/js/src/blofin.js +1 -1
  100. package/js/src/btcalpha.js +1 -1
  101. package/js/src/btcbox.js +1 -1
  102. package/js/src/btcmarkets.js +1 -1
  103. package/js/src/btcturk.js +1 -1
  104. package/js/src/bybit.d.ts +3 -14
  105. package/js/src/bybit.js +8 -15
  106. package/js/src/cex.d.ts +2 -0
  107. package/js/src/cex.js +40 -0
  108. package/js/src/coinbase.d.ts +1 -0
  109. package/js/src/coinbase.js +97 -11
  110. package/js/src/coinex.d.ts +3 -15
  111. package/js/src/coinex.js +3 -5
  112. package/js/src/digifinex.d.ts +3 -13
  113. package/js/src/digifinex.js +2 -2
  114. package/js/src/exmo.js +1 -0
  115. package/js/src/gate.d.ts +3 -13
  116. package/js/src/gate.js +25 -19
  117. package/js/src/htx.d.ts +3 -14
  118. package/js/src/htx.js +2 -3
  119. package/js/src/hyperliquid.d.ts +1 -0
  120. package/js/src/hyperliquid.js +35 -5
  121. package/js/src/kucoin.d.ts +3 -13
  122. package/js/src/kucoin.js +2 -2
  123. package/js/src/lbank.d.ts +4 -1
  124. package/js/src/lbank.js +100 -1
  125. package/js/src/okx.d.ts +3 -13
  126. package/js/src/okx.js +3 -2
  127. package/js/src/phemex.js +4 -2
  128. package/js/src/pro/binance.js +1 -1
  129. package/js/src/pro/exmo.d.ts +5 -1
  130. package/js/src/pro/exmo.js +216 -3
  131. package/js/src/pro/lbank.js +9 -4
  132. package/js/src/wavesexchange.js +13 -2
  133. package/js/src/whitebit.d.ts +3 -13
  134. package/js/src/whitebit.js +2 -2
  135. package/js/src/woo.d.ts +1 -1
  136. package/js/src/xt.js +39 -27
  137. package/package.json +1 -1
@@ -6,7 +6,7 @@ import asTable from 'as-table'
6
6
  import ololog from 'ololog'
7
7
  import ccxt from '../../js/ccxt.js'
8
8
  import { Agent } from 'https'
9
-
9
+ import add_static_result from '../../utils/update-static-request-response.js'
10
10
  const fsPromises = fs.promises;
11
11
  ansi.nice
12
12
  const log = ololog.configure ({ locate: false }).unlimited
@@ -38,12 +38,19 @@ let [processPath, , exchangeId, methodName, ... params] = process.argv.filter (x
38
38
  , isSwap = process.argv.includes ('--swap')
39
39
  , isFuture = process.argv.includes ('--future')
40
40
  , isOption = process.argv.includes ('--option')
41
- , shouldCreateRequestReport = process.argv.includes ('--report')
41
+ , shouldCreateRequestReport = process.argv.includes ('--report') || process.argv.includes ('--request')
42
42
  , shouldCreateResponseReport = process.argv.includes ('--response')
43
43
  , shouldCreateBoth = process.argv.includes ('--static')
44
44
  , raw = process.argv.includes ('--raw')
45
45
  , noKeys = process.argv.includes ('--no-keys')
46
46
 
47
+ let foundDescription = undefined;
48
+ for (let i = 0; i < process.argv.length; i++) {
49
+ if (process.argv[i] === '--name') {
50
+ foundDescription = process.argv[i + 1];
51
+ break;
52
+ }
53
+ }
47
54
  //-----------------------------------------------------------------------------
48
55
  if (!raw) {
49
56
  log ((new Date ()).toISOString())
@@ -154,6 +161,12 @@ function createRequestTemplate(exchange, methodName, args, result) {
154
161
  log.green('-------------------------------------------')
155
162
  log (JSON.stringify (final, null, 2))
156
163
  log.green('-------------------------------------------')
164
+
165
+ if (foundDescription !== undefined) {
166
+ final.description = foundDescription;
167
+ log.green('auto-saving static result');
168
+ add_static_result('request', exchange.id, methodName, final);
169
+ }
157
170
  }
158
171
 
159
172
  //-----------------------------------------------------------------------------
@@ -170,6 +183,12 @@ function createResponseTemplate(exchange, methodName, args, result) {
170
183
  log.green('-------------------------------------------')
171
184
  log (jsonStringify (final, 2))
172
185
  log.green('-------------------------------------------')
186
+
187
+ if (foundDescription !== undefined) {
188
+ final.description = foundDescription;
189
+ log.green('auto-saving static result');
190
+ add_static_result('response', exchange.id, methodName, final);
191
+ }
173
192
  }
174
193
 
175
194
  //-----------------------------------------------------------------------------
@@ -237,7 +256,8 @@ const printHumanReadable = (exchange, result) => {
237
256
  return String (x)
238
257
  }
239
258
  })
240
- log (result.length > 0 ? configuredAsTable (result.map (element => {
259
+ log (result.length > 0 ? configuredAsTable (result.map (rawElement => {
260
+ const element = Object.assign ({}, rawElement)
241
261
  let keys = Object.keys (element)
242
262
  delete element['info']
243
263
  keys.forEach (key => {
package/js/ccxt.d.ts CHANGED
@@ -4,7 +4,7 @@ import * as functions from './src/base/functions.js';
4
4
  import * as errors from './src/base/errors.js';
5
5
  import type { Int, int, Str, Strings, Num, Bool, IndexType, OrderSide, OrderType, MarketType, SubType, Dict, NullableDict, List, NullableList, Fee, OHLCV, OHLCVC, implicitReturnType, Market, Currency, Dictionary, MinMax, FeeInterface, TradingFeeInterface, MarketInterface, Trade, Order, OrderBook, Ticker, Transaction, Tickers, CurrencyInterface, Balance, BalanceAccount, Account, PartialBalances, Balances, DepositAddress, WithdrawalResponse, DepositAddressResponse, FundingRate, FundingRates, Position, BorrowInterest, LeverageTier, LedgerEntry, DepositWithdrawFeeNetwork, DepositWithdrawFee, TransferEntry, CrossBorrowRate, IsolatedBorrowRate, FundingRateHistory, OpenInterest, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarketMarginModes, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, LongShortRatio } from './src/base/types.js';
6
6
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError } from './src/base/errors.js';
7
- declare const version = "4.4.24";
7
+ declare const version = "4.4.26";
8
8
  import ace from './src/ace.js';
9
9
  import alpaca from './src/alpaca.js';
10
10
  import ascendex from './src/ascendex.js';
package/js/ccxt.js CHANGED
@@ -38,7 +38,7 @@ import * as errors from './src/base/errors.js';
38
38
  import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError } from './src/base/errors.js';
39
39
  //-----------------------------------------------------------------------------
40
40
  // this is updated by vss.js when building
41
- const version = '4.4.25';
41
+ const version = '4.4.27';
42
42
  Exchange.ccxtVersion = version;
43
43
  //-----------------------------------------------------------------------------
44
44
  import ace from './src/ace.js';
@@ -19,10 +19,13 @@ interface Exchange {
19
19
  traderPrivateGetV2AssetsSymbolOrAssetId(params?: {}): Promise<implicitReturnType>;
20
20
  traderPrivateGetV2CorporateActionsAnnouncementsId(params?: {}): Promise<implicitReturnType>;
21
21
  traderPrivateGetV2CorporateActionsAnnouncements(params?: {}): Promise<implicitReturnType>;
22
+ traderPrivateGetV2Wallets(params?: {}): Promise<implicitReturnType>;
23
+ traderPrivateGetV2WalletsTransfers(params?: {}): Promise<implicitReturnType>;
22
24
  traderPrivatePostV2Orders(params?: {}): Promise<implicitReturnType>;
23
25
  traderPrivatePostV2Watchlists(params?: {}): Promise<implicitReturnType>;
24
26
  traderPrivatePostV2WatchlistsWatchlistId(params?: {}): Promise<implicitReturnType>;
25
27
  traderPrivatePostV2WatchlistsByName(params?: {}): Promise<implicitReturnType>;
28
+ traderPrivatePostV2WalletsTransfers(params?: {}): Promise<implicitReturnType>;
26
29
  traderPrivatePutV2WatchlistsWatchlistId(params?: {}): Promise<implicitReturnType>;
27
30
  traderPrivatePutV2WatchlistsByName(params?: {}): Promise<implicitReturnType>;
28
31
  traderPrivatePatchV2OrdersOrderId(params?: {}): Promise<implicitReturnType>;
@@ -35,6 +35,7 @@ interface Exchange {
35
35
  swapV1PrivateGetMarketMarkPriceKlines(params?: {}): Promise<implicitReturnType>;
36
36
  swapV1PrivateGetTradeBatchCancelReplace(params?: {}): Promise<implicitReturnType>;
37
37
  swapV1PrivateGetTradeFullOrder(params?: {}): Promise<implicitReturnType>;
38
+ swapV1PrivateGetPositionMarginHistory(params?: {}): Promise<implicitReturnType>;
38
39
  swapV1PrivatePostTradeCancelReplace(params?: {}): Promise<implicitReturnType>;
39
40
  swapV1PrivatePostPositionSideDual(params?: {}): Promise<implicitReturnType>;
40
41
  swapV1PrivatePostTradeClosePosition(params?: {}): Promise<implicitReturnType>;
@@ -188,6 +188,7 @@ interface Exchange {
188
188
  privateGetFinanceStakingDefiOrdersHistory(params?: {}): Promise<implicitReturnType>;
189
189
  privateGetFinanceStakingDefiEthBalance(params?: {}): Promise<implicitReturnType>;
190
190
  privateGetFinanceStakingDefiEthPurchaseRedeemHistory(params?: {}): Promise<implicitReturnType>;
191
+ privateGetFinanceStakingDefiEthProductInfo(params?: {}): Promise<implicitReturnType>;
191
192
  privateGetCopytradingCurrentSubpositions(params?: {}): Promise<implicitReturnType>;
192
193
  privateGetCopytradingSubpositionsHistory(params?: {}): Promise<implicitReturnType>;
193
194
  privateGetCopytradingInstruments(params?: {}): Promise<implicitReturnType>;
@@ -23,6 +23,7 @@ interface Exchange {
23
23
  v1GetExchangePublicProducts(params?: {}): Promise<implicitReturnType>;
24
24
  v1GetApiDataPublicDataFundingRateHistory(params?: {}): Promise<implicitReturnType>;
25
25
  v2GetPublicProducts(params?: {}): Promise<implicitReturnType>;
26
+ v2GetPublicProductsPlus(params?: {}): Promise<implicitReturnType>;
26
27
  v2GetMdV2Orderbook(params?: {}): Promise<implicitReturnType>;
27
28
  v2GetMdV2Trade(params?: {}): Promise<implicitReturnType>;
28
29
  v2GetMdV2Ticker24hr(params?: {}): Promise<implicitReturnType>;
package/js/src/ace.js CHANGED
@@ -106,7 +106,7 @@ export default class ace extends Exchange {
106
106
  '1M': 31,
107
107
  },
108
108
  'urls': {
109
- 'logo': 'https://user-images.githubusercontent.com/1294454/216908003-fb314cf6-e66e-471c-b91d-1d86e4baaa90.jpg',
109
+ 'logo': 'https://github.com/user-attachments/assets/115f1e4a-0fd0-4b76-85d5-a49ebf64d1c8',
110
110
  'api': {
111
111
  'public': 'https://ace.io/polarisex',
112
112
  'private': 'https://ace.io/polarisex/open',
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/alpaca.js';
2
- import type { Dict, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Trade, int } from './base/types.js';
2
+ import type { Dict, Int, Market, Num, OHLCV, Order, OrderBook, OrderSide, OrderType, Str, Trade, int, Strings, Ticker, Tickers, Currency, DepositAddress, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class alpaca
5
5
  * @augments Exchange
@@ -13,6 +13,8 @@ export default class alpaca extends Exchange {
13
13
  fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
14
14
  fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
15
15
  parseOHLCV(ohlcv: any, market?: Market): OHLCV;
16
+ fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
17
+ fetchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
16
18
  createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: {}): Promise<Order>;
17
19
  cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
18
20
  cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
@@ -23,7 +25,18 @@ export default class alpaca extends Exchange {
23
25
  parseOrder(order: Dict, market?: Market): Order;
24
26
  parseOrderStatus(status: Str): string;
25
27
  parseTimeInForce(timeInForce: Str): string;
28
+ fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
26
29
  parseTrade(trade: Dict, market?: Market): Trade;
30
+ fetchDepositAddress(code: string, params?: {}): Promise<DepositAddress>;
31
+ parseDepositAddress(depositAddress: any, currency?: Currency): DepositAddress;
32
+ withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
33
+ fetchTransactionsHelper(type: any, code: any, since: any, limit: any, params: any): Promise<Transaction[]>;
34
+ fetchDepositsWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
35
+ fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
36
+ fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
37
+ parseTransaction(transaction: Dict, currency?: Currency): Transaction;
38
+ parseTransactionStatus(status: Str): string;
39
+ parseTransactionType(type: any): string;
27
40
  sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
28
41
  url: string;
29
42
  method: string;