ccxt 4.5.40 → 4.5.42
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.
- package/README.md +6 -5
- package/dist/ccxt.browser.min.js +18 -18
- package/dist/cjs/ccxt.js +6 -1
- package/dist/cjs/src/abstract/lighter.js +11 -0
- package/dist/cjs/src/ascendex.js +73 -1
- package/dist/cjs/src/base/Exchange.js +149 -17
- package/dist/cjs/src/base/functions/generic.js +1 -0
- package/dist/cjs/src/base/functions/io.js +160 -0
- package/dist/cjs/src/base/functions.js +6 -0
- package/dist/cjs/src/base/ws/Client.js +1 -0
- package/dist/cjs/src/base/ws/WsClient.js +1 -0
- package/dist/cjs/src/binance.js +1 -0
- package/dist/cjs/src/bingx.js +13 -3
- package/dist/cjs/src/bitmex.js +20 -0
- package/dist/cjs/src/blofin.js +2 -2
- package/dist/cjs/src/bybit.js +1 -1
- package/dist/cjs/src/coinspot.js +7 -2
- package/dist/cjs/src/delta.js +1 -1
- package/dist/cjs/src/gate.js +11 -4
- package/dist/cjs/src/gemini.js +76 -1
- package/dist/cjs/src/htx.js +2 -2
- package/dist/cjs/src/hyperliquid.js +20 -7
- package/dist/cjs/src/independentreserve.js +7 -7
- package/dist/cjs/src/kraken.js +1 -1
- package/dist/cjs/src/krakenfutures.js +96 -5
- package/dist/cjs/src/kucoin.js +3 -3
- package/dist/cjs/src/kucoinfutures.js +1 -1
- package/dist/cjs/src/lighter.js +2931 -0
- package/dist/cjs/src/mexc.js +0 -1
- package/dist/cjs/src/phemex.js +1 -1
- package/dist/cjs/src/pro/binance.js +2 -2
- package/dist/cjs/src/pro/bingx.js +215 -2
- package/dist/cjs/src/pro/bitget.js +1 -0
- package/dist/cjs/src/pro/defx.js +1 -1
- package/dist/cjs/src/pro/kucoinfutures.js +1 -1
- package/dist/cjs/src/pro/lighter.js +787 -0
- package/dist/cjs/src/pro/mexc.js +1 -1
- package/dist/cjs/src/pro/paradex.js +1 -1
- package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/address/address.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/address.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/array.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/number.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/fragments.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/index.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/interface.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/typed.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/index.js +1 -0
- package/dist/cjs/src/whitebit.js +118 -16
- package/dist/cjs/src/woo.js +1 -1
- package/js/ccxt.d.ts +8 -2
- package/js/ccxt.js +6 -2
- package/js/src/abstract/gemini.d.ts +27 -0
- package/js/src/abstract/lighter.d.ts +53 -0
- package/js/src/abstract/lighter.js +11 -0
- package/js/src/ascendex.d.ts +12 -1
- package/js/src/ascendex.js +73 -1
- package/js/src/base/Exchange.d.ts +18 -6
- package/js/src/base/Exchange.js +154 -21
- package/js/src/base/functions/generic.js +1 -0
- package/js/src/base/functions/io.d.ts +32 -0
- package/js/src/base/functions/io.js +137 -0
- package/js/src/base/functions.d.ts +1 -0
- package/js/src/base/functions.js +1 -0
- package/js/src/binance.d.ts +1 -0
- package/js/src/binance.js +1 -0
- package/js/src/bingx.js +13 -3
- package/js/src/bitmex.js +20 -0
- package/js/src/blofin.js +2 -2
- package/js/src/bybit.js +1 -1
- package/js/src/coinspot.js +7 -2
- package/js/src/delta.js +1 -1
- package/js/src/gate.d.ts +1 -0
- package/js/src/gate.js +11 -4
- package/js/src/gemini.d.ts +11 -0
- package/js/src/gemini.js +76 -1
- package/js/src/htx.js +2 -2
- package/js/src/hyperliquid.js +20 -7
- package/js/src/independentreserve.js +7 -7
- package/js/src/kraken.js +1 -1
- package/js/src/krakenfutures.d.ts +1 -1
- package/js/src/krakenfutures.js +96 -5
- package/js/src/kucoin.d.ts +3 -3
- package/js/src/kucoin.js +3 -3
- package/js/src/kucoinfutures.js +1 -1
- package/js/src/lighter.d.ts +424 -0
- package/js/src/lighter.js +2930 -0
- package/js/src/mexc.js +0 -1
- package/js/src/phemex.js +1 -1
- package/js/src/pro/binance.js +2 -2
- package/js/src/pro/bingx.d.ts +17 -1
- package/js/src/pro/bingx.js +216 -3
- package/js/src/pro/bitget.js +1 -0
- package/js/src/pro/defx.js +1 -1
- package/js/src/pro/kucoinfutures.js +1 -1
- package/js/src/pro/lighter.d.ts +161 -0
- package/js/src/pro/lighter.js +786 -0
- package/js/src/pro/mexc.js +1 -1
- package/js/src/pro/paradex.js +1 -1
- package/js/src/whitebit.d.ts +2 -1
- package/js/src/whitebit.js +118 -16
- package/js/src/woo.js +1 -1
- package/package.json +1 -1
package/js/src/pro/mexc.js
CHANGED
|
@@ -1546,7 +1546,7 @@ export default class mexc extends mexcRest {
|
|
|
1546
1546
|
// "frozenBalance": 0,
|
|
1547
1547
|
// "positionMargin": 1.36945756
|
|
1548
1548
|
// },
|
|
1549
|
-
// "ts":
|
|
1549
|
+
// "ts": 1680059188191
|
|
1550
1550
|
// }
|
|
1551
1551
|
//
|
|
1552
1552
|
const channel = this.safeString(message, 'channel');
|
package/js/src/pro/paradex.js
CHANGED
|
@@ -234,7 +234,7 @@ export default class paradex extends paradexRest {
|
|
|
234
234
|
}
|
|
235
235
|
const orderbook = this.orderbooks[symbol];
|
|
236
236
|
const snapshot = this.parseOrderBook(orderbookData, symbol, timestamp, 'bids', 'asks');
|
|
237
|
-
snapshot['nonce'] = this.
|
|
237
|
+
snapshot['nonce'] = this.safeInteger(data, 'seq_no');
|
|
238
238
|
orderbook.reset(snapshot);
|
|
239
239
|
const messageHash = this.safeString(params, 'channel');
|
|
240
240
|
client.resolve(orderbook, messageHash);
|
package/js/src/whitebit.d.ts
CHANGED
|
@@ -113,7 +113,8 @@ export default class whitebit extends Exchange {
|
|
|
113
113
|
* @see https://docs.whitebit.com/public/http-v4/#market-activity
|
|
114
114
|
* @param {string[]} [symbols] unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
|
115
115
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
116
|
-
* @param {string} [params.
|
|
116
|
+
* @param {string} [params.type] 'spot' or 'swap' - default is 'spot'. If type is 'swap', it will call v4PublicGetFutures
|
|
117
|
+
* @param {string} [params.method] either v2PublicGetTicker or v4PublicGetTicker or v4PublicGetFutures - default is v4PublicGetTicker for spot and mixed markets, and v4PublicGetFutures for swap
|
|
117
118
|
* @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/?id=ticker-structure}
|
|
118
119
|
*/
|
|
119
120
|
fetchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
|
package/js/src/whitebit.js
CHANGED
|
@@ -1313,7 +1313,40 @@ export default class whitebit extends Exchange {
|
|
|
1313
1313
|
// tradesEnabled: true
|
|
1314
1314
|
// }
|
|
1315
1315
|
//
|
|
1316
|
-
|
|
1316
|
+
// v4PublicGetFutures
|
|
1317
|
+
// {
|
|
1318
|
+
// "ticker_id": "0G_PERP",
|
|
1319
|
+
// "stock_currency": "0G",
|
|
1320
|
+
// "money_currency": "USDT",
|
|
1321
|
+
// "last_price": "0.6065",
|
|
1322
|
+
// "stock_volume": "2563218",
|
|
1323
|
+
// "money_volume": "1587952.6137",
|
|
1324
|
+
// "bid": "0.6065",
|
|
1325
|
+
// "ask": "0.6077",
|
|
1326
|
+
// "high": "0.6472",
|
|
1327
|
+
// "low": "0.6045",
|
|
1328
|
+
// "product_type": "Perpetual",
|
|
1329
|
+
// "open_interest": "3721488",
|
|
1330
|
+
// "index_price": "0.61",
|
|
1331
|
+
// "index_name": "0G future contract",
|
|
1332
|
+
// "index_currency": "0G",
|
|
1333
|
+
// "funding_rate": "-0.00000778",
|
|
1334
|
+
// "next_funding_rate_timestamp": "1772467200000",
|
|
1335
|
+
// "brackets": {
|
|
1336
|
+
// "1": 0,
|
|
1337
|
+
// "10": 0,
|
|
1338
|
+
// "100": 0,
|
|
1339
|
+
// "2": 0,
|
|
1340
|
+
// "20": 4000,
|
|
1341
|
+
// "3": 0,
|
|
1342
|
+
// "5": 0,
|
|
1343
|
+
// "50": 800
|
|
1344
|
+
// },
|
|
1345
|
+
// "max_leverage": 50,
|
|
1346
|
+
// "funding_interval_minutes": 240
|
|
1347
|
+
// }
|
|
1348
|
+
//
|
|
1349
|
+
const marketId = this.safeString2(ticker, 'tradingPairs', 'ticker_id');
|
|
1317
1350
|
market = this.safeMarket(marketId, market);
|
|
1318
1351
|
// last price is provided as "last" or "last_price"
|
|
1319
1352
|
const last = this.safeStringN(ticker, ['last', 'last_price', 'lastPrice']);
|
|
@@ -1337,8 +1370,9 @@ export default class whitebit extends Exchange {
|
|
|
1337
1370
|
'change': undefined,
|
|
1338
1371
|
'percentage': this.safeString(ticker, 'change'),
|
|
1339
1372
|
'average': undefined,
|
|
1340
|
-
'baseVolume': this.safeStringN(ticker, ['base_volume', 'volume', 'baseVolume24h']),
|
|
1341
|
-
'quoteVolume': this.safeStringN(ticker, ['quote_volume', 'deal', 'quoteVolume24h']),
|
|
1373
|
+
'baseVolume': this.safeStringN(ticker, ['base_volume', 'volume', 'baseVolume24h', 'stock_volume']),
|
|
1374
|
+
'quoteVolume': this.safeStringN(ticker, ['quote_volume', 'deal', 'quoteVolume24h', 'money_volume']),
|
|
1375
|
+
'indexPrice': this.safeString(ticker, 'index_price'),
|
|
1342
1376
|
'info': ticker,
|
|
1343
1377
|
}, market);
|
|
1344
1378
|
}
|
|
@@ -1424,32 +1458,100 @@ export default class whitebit extends Exchange {
|
|
|
1424
1458
|
* @see https://docs.whitebit.com/public/http-v4/#market-activity
|
|
1425
1459
|
* @param {string[]} [symbols] unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
|
1426
1460
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
1427
|
-
* @param {string} [params.
|
|
1461
|
+
* @param {string} [params.type] 'spot' or 'swap' - default is 'spot'. If type is 'swap', it will call v4PublicGetFutures
|
|
1462
|
+
* @param {string} [params.method] either v2PublicGetTicker or v4PublicGetTicker or v4PublicGetFutures - default is v4PublicGetTicker for spot and mixed markets, and v4PublicGetFutures for swap
|
|
1428
1463
|
* @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/?id=ticker-structure}
|
|
1429
1464
|
*/
|
|
1430
1465
|
async fetchTickers(symbols = undefined, params = {}) {
|
|
1431
1466
|
await this.loadMarkets();
|
|
1432
1467
|
symbols = this.marketSymbols(symbols);
|
|
1433
|
-
let
|
|
1468
|
+
let onlyContractSymbols = true;
|
|
1469
|
+
if (symbols !== undefined) {
|
|
1470
|
+
for (let i = 0; i < symbols.length; i++) {
|
|
1471
|
+
const symbol = symbols[i];
|
|
1472
|
+
const market = this.market(symbol);
|
|
1473
|
+
if (!(market['contract'])) {
|
|
1474
|
+
onlyContractSymbols = false;
|
|
1475
|
+
break;
|
|
1476
|
+
}
|
|
1477
|
+
}
|
|
1478
|
+
}
|
|
1479
|
+
else {
|
|
1480
|
+
onlyContractSymbols = false;
|
|
1481
|
+
}
|
|
1482
|
+
let marketType = undefined;
|
|
1483
|
+
[marketType, params] = this.handleMarketTypeAndParams('fetchTickers', undefined, params);
|
|
1484
|
+
let method = undefined;
|
|
1434
1485
|
[method, params] = this.handleOptionAndParams(params, 'fetchTickers', 'method', method);
|
|
1486
|
+
if (method === undefined) {
|
|
1487
|
+
// if the user did not specify a method, choose it based on market type and symbols
|
|
1488
|
+
if (onlyContractSymbols || (marketType === 'swap')) {
|
|
1489
|
+
method = 'v4PublicGetFutures';
|
|
1490
|
+
}
|
|
1491
|
+
else {
|
|
1492
|
+
method = 'v4PublicGetTicker';
|
|
1493
|
+
}
|
|
1494
|
+
}
|
|
1435
1495
|
let response = undefined;
|
|
1436
1496
|
if (method === 'v4PublicGetTicker') {
|
|
1497
|
+
//
|
|
1498
|
+
// "BCH_RUB": {
|
|
1499
|
+
// "base_id":1831,
|
|
1500
|
+
// "quote_id":0,
|
|
1501
|
+
// "last_price":"32830.21",
|
|
1502
|
+
// "quote_volume":"1494659.8024096",
|
|
1503
|
+
// "base_volume":"46.1083",
|
|
1504
|
+
// "isFrozen":false,
|
|
1505
|
+
// "change":"2.12"
|
|
1506
|
+
// },
|
|
1507
|
+
//
|
|
1437
1508
|
response = await this.v4PublicGetTicker(params);
|
|
1438
1509
|
}
|
|
1510
|
+
else if (method === 'v4PublicGetFutures') {
|
|
1511
|
+
//
|
|
1512
|
+
// {
|
|
1513
|
+
// "success": true,
|
|
1514
|
+
// "message": null,
|
|
1515
|
+
// "result": [
|
|
1516
|
+
// {
|
|
1517
|
+
// "ticker_id": "0G_PERP",
|
|
1518
|
+
// "stock_currency": "0G",
|
|
1519
|
+
// "money_currency": "USDT",
|
|
1520
|
+
// "last_price": "0.6065",
|
|
1521
|
+
// "stock_volume": "2563218",
|
|
1522
|
+
// "money_volume": "1587952.6137",
|
|
1523
|
+
// "bid": "0.6065",
|
|
1524
|
+
// "ask": "0.6077",
|
|
1525
|
+
// "high": "0.6472",
|
|
1526
|
+
// "low": "0.6045",
|
|
1527
|
+
// "product_type": "Perpetual",
|
|
1528
|
+
// "open_interest": "3721488",
|
|
1529
|
+
// "index_price": "0.61",
|
|
1530
|
+
// "index_name": "0G future contract",
|
|
1531
|
+
// "index_currency": "0G",
|
|
1532
|
+
// "funding_rate": "-0.00000778",
|
|
1533
|
+
// "next_funding_rate_timestamp": "1772467200000",
|
|
1534
|
+
// "brackets": {
|
|
1535
|
+
// "1": 0,
|
|
1536
|
+
// "10": 0,
|
|
1537
|
+
// "100": 0,
|
|
1538
|
+
// "2": 0,
|
|
1539
|
+
// "20": 4000,
|
|
1540
|
+
// "3": 0,
|
|
1541
|
+
// "5": 0,
|
|
1542
|
+
// "50": 800
|
|
1543
|
+
// },
|
|
1544
|
+
// "max_leverage": 50,
|
|
1545
|
+
// "funding_interval_minutes": 240
|
|
1546
|
+
// }
|
|
1547
|
+
// ]
|
|
1548
|
+
// }
|
|
1549
|
+
//
|
|
1550
|
+
response = await this.v4PublicGetFutures(params);
|
|
1551
|
+
}
|
|
1439
1552
|
else {
|
|
1440
1553
|
response = await this.v2PublicGetTicker(params);
|
|
1441
1554
|
}
|
|
1442
|
-
//
|
|
1443
|
-
// "BCH_RUB": {
|
|
1444
|
-
// "base_id":1831,
|
|
1445
|
-
// "quote_id":0,
|
|
1446
|
-
// "last_price":"32830.21",
|
|
1447
|
-
// "quote_volume":"1494659.8024096",
|
|
1448
|
-
// "base_volume":"46.1083",
|
|
1449
|
-
// "isFrozen":false,
|
|
1450
|
-
// "change":"2.12"
|
|
1451
|
-
// },
|
|
1452
|
-
//
|
|
1453
1555
|
const resultList = this.safeList(response, 'result');
|
|
1454
1556
|
if (resultList !== undefined) {
|
|
1455
1557
|
return this.parseTickers(resultList, symbols);
|
package/js/src/woo.js
CHANGED
|
@@ -96,10 +96,10 @@ export default class woo extends Exchange {
|
|
|
96
96
|
'fetchOrderTrades': true,
|
|
97
97
|
'fetchPosition': true,
|
|
98
98
|
'fetchPositionADLRank': true,
|
|
99
|
-
'fetchPositionsADLRank': true,
|
|
100
99
|
'fetchPositionHistory': false,
|
|
101
100
|
'fetchPositionMode': false,
|
|
102
101
|
'fetchPositions': true,
|
|
102
|
+
'fetchPositionsADLRank': true,
|
|
103
103
|
'fetchPositionsHistory': false,
|
|
104
104
|
'fetchPremiumIndexOHLCV': false,
|
|
105
105
|
'fetchStatus': true,
|
package/package.json
CHANGED