ccxt 4.3.18 → 4.3.19
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 +7 -5
- package/dist/cjs/ccxt.js +6 -1
- package/dist/cjs/src/abstract/woofipro.js +9 -0
- package/dist/cjs/src/ascendex.js +3 -4
- package/dist/cjs/src/base/Exchange.js +42 -2
- package/dist/cjs/src/base/functions/crypto.js +10 -3
- package/dist/cjs/src/base/functions/encode.js +6 -3
- package/dist/cjs/src/base/functions/number.js +8 -5
- package/dist/cjs/src/base/functions/rsa.js +5 -5
- package/dist/cjs/src/bigone.js +1 -1
- package/dist/cjs/src/bitfinex.js +25 -1
- package/dist/cjs/src/bitfinex2.js +59 -51
- package/dist/cjs/src/bitget.js +1 -5
- package/dist/cjs/src/bitmart.js +3 -3
- package/dist/cjs/src/bitstamp.js +1 -3
- package/dist/cjs/src/bybit.js +1 -0
- package/dist/cjs/src/coinex.js +321 -537
- package/dist/cjs/src/coinlist.js +1 -2
- package/dist/cjs/src/deribit.js +1 -1
- package/dist/cjs/src/hollaex.js +3 -3
- package/dist/cjs/src/indodax.js +1 -1
- package/dist/cjs/src/latoken.js +1 -1
- package/dist/cjs/src/mexc.js +1 -1
- package/dist/cjs/src/novadax.js +0 -1
- package/dist/cjs/src/okx.js +17 -0
- package/dist/cjs/src/poloniex.js +1 -2
- package/dist/cjs/src/pro/bitget.js +136 -192
- package/dist/cjs/src/pro/coinbaseinternational.js +9 -1
- package/dist/cjs/src/pro/okx.js +85 -0
- package/dist/cjs/src/pro/woofipro.js +1263 -0
- package/dist/cjs/src/wavesexchange.js +2 -2
- package/dist/cjs/src/woo.js +17 -3
- package/dist/cjs/src/woofipro.js +2698 -0
- package/js/ccxt.d.ts +8 -2
- package/js/ccxt.js +6 -2
- package/js/src/abstract/bybit.d.ts +1 -0
- package/js/src/abstract/okx.d.ts +1 -0
- package/js/src/abstract/woofipro.d.ts +122 -0
- package/js/src/abstract/woofipro.js +11 -0
- package/js/src/ace.d.ts +2 -2
- package/js/src/ascendex.d.ts +5 -15
- package/js/src/ascendex.js +3 -4
- package/js/src/base/Exchange.d.ts +26 -17
- package/js/src/base/Exchange.js +42 -2
- package/js/src/base/functions/crypto.d.ts +1 -1
- package/js/src/base/functions/crypto.js +10 -3
- package/js/src/base/functions/encode.d.ts +1 -1
- package/js/src/base/functions/encode.js +6 -3
- package/js/src/base/functions/number.d.ts +1 -1
- package/js/src/base/functions/number.js +8 -5
- package/js/src/base/functions/rsa.js +6 -6
- package/js/src/base/types.d.ts +4 -0
- package/js/src/bigone.d.ts +4 -14
- package/js/src/bigone.js +1 -1
- package/js/src/binance.d.ts +13 -71
- package/js/src/binancecoinm.d.ts +2 -22
- package/js/src/binanceusdm.d.ts +2 -22
- package/js/src/bingx.d.ts +4 -14
- package/js/src/bit2c.d.ts +2 -2
- package/js/src/bitbank.d.ts +2 -2
- package/js/src/bitbns.d.ts +2 -2
- package/js/src/bitfinex.d.ts +6 -16
- package/js/src/bitfinex.js +25 -1
- package/js/src/bitfinex2.d.ts +6 -16
- package/js/src/bitfinex2.js +59 -51
- package/js/src/bitflyer.d.ts +2 -2
- package/js/src/bitget.d.ts +7 -17
- package/js/src/bitget.js +1 -5
- package/js/src/bithumb.d.ts +3 -3
- package/js/src/bitmart.d.ts +5 -14
- package/js/src/bitmart.js +3 -3
- package/js/src/bitmex.d.ts +4 -4
- package/js/src/bitopro.d.ts +2 -2
- package/js/src/bitrue.d.ts +5 -5
- package/js/src/bitso.d.ts +2 -2
- package/js/src/bitstamp.d.ts +3 -3
- package/js/src/bitstamp.js +1 -3
- package/js/src/bitteam.d.ts +2 -2
- package/js/src/bitvavo.d.ts +5 -5
- package/js/src/bl3p.d.ts +2 -2
- package/js/src/blockchaincom.d.ts +2 -2
- package/js/src/blofin.d.ts +4 -14
- package/js/src/btcalpha.d.ts +2 -2
- package/js/src/btcbox.d.ts +2 -2
- package/js/src/btcmarkets.d.ts +2 -2
- package/js/src/btcturk.d.ts +2 -2
- package/js/src/bybit.d.ts +8 -56
- package/js/src/bybit.js +1 -0
- package/js/src/cex.d.ts +2 -2
- package/js/src/coinbase.d.ts +4 -4
- package/js/src/coinbasepro.d.ts +3 -3
- package/js/src/coincheck.d.ts +2 -2
- package/js/src/coinex.d.ts +6 -16
- package/js/src/coinex.js +321 -537
- package/js/src/coinlist.d.ts +5 -15
- package/js/src/coinlist.js +1 -2
- package/js/src/coinmate.d.ts +2 -2
- package/js/src/coinmetro.d.ts +3 -3
- package/js/src/coinone.d.ts +2 -2
- package/js/src/coinsph.d.ts +2 -2
- package/js/src/coinspot.d.ts +2 -2
- package/js/src/cryptocom.d.ts +2 -2
- package/js/src/currencycom.d.ts +3 -3
- package/js/src/delta.d.ts +5 -43
- package/js/src/deribit.d.ts +7 -55
- package/js/src/deribit.js +1 -1
- package/js/src/digifinex.d.ts +5 -15
- package/js/src/exmo.d.ts +2 -2
- package/js/src/gate.d.ts +6 -54
- package/js/src/gemini.d.ts +2 -2
- package/js/src/hitbtc.d.ts +4 -14
- package/js/src/hollaex.d.ts +3 -3
- package/js/src/hollaex.js +3 -3
- package/js/src/htx.d.ts +4 -14
- package/js/src/huobijp.d.ts +4 -4
- package/js/src/hyperliquid.d.ts +1 -1
- package/js/src/idex.d.ts +3 -3
- package/js/src/independentreserve.d.ts +2 -2
- package/js/src/indodax.d.ts +2 -2
- package/js/src/indodax.js +1 -1
- package/js/src/kraken.d.ts +4 -14
- package/js/src/krakenfutures.d.ts +4 -14
- package/js/src/kucoin.d.ts +5 -15
- package/js/src/kucoinfutures.d.ts +4 -14
- package/js/src/kuna.d.ts +2 -2
- package/js/src/latoken.d.ts +5 -15
- package/js/src/latoken.js +1 -1
- package/js/src/lbank.d.ts +2 -2
- package/js/src/luno.d.ts +2 -2
- package/js/src/lykke.d.ts +2 -2
- package/js/src/mercado.d.ts +2 -2
- package/js/src/mexc.d.ts +8 -28
- package/js/src/mexc.js +1 -1
- package/js/src/ndax.d.ts +2 -2
- package/js/src/novadax.d.ts +4 -15
- package/js/src/novadax.js +0 -1
- package/js/src/okcoin.d.ts +4 -14
- package/js/src/okx.d.ts +10 -68
- package/js/src/okx.js +17 -0
- package/js/src/onetrading.d.ts +2 -2
- package/js/src/paymium.d.ts +4 -14
- package/js/src/phemex.d.ts +5 -15
- package/js/src/poloniex.d.ts +3 -13
- package/js/src/poloniex.js +1 -2
- package/js/src/poloniexfutures.d.ts +2 -2
- package/js/src/pro/bitget.js +137 -193
- package/js/src/pro/coinbaseinternational.d.ts +3 -3
- package/js/src/pro/coinbaseinternational.js +9 -1
- package/js/src/pro/okx.d.ts +4 -1
- package/js/src/pro/okx.js +85 -0
- package/js/src/pro/woofipro.d.ts +47 -0
- package/js/src/pro/woofipro.js +1264 -0
- package/js/src/probit.d.ts +3 -3
- package/js/src/timex.d.ts +2 -2
- package/js/src/tokocrypto.d.ts +3 -3
- package/js/src/upbit.d.ts +2 -2
- package/js/src/wavesexchange.d.ts +3 -3
- package/js/src/wavesexchange.js +2 -2
- package/js/src/wazirx.d.ts +2 -2
- package/js/src/whitebit.d.ts +3 -13
- package/js/src/woo.d.ts +7 -17
- package/js/src/woo.js +17 -3
- package/js/src/woofipro.d.ts +131 -0
- package/js/src/woofipro.js +2699 -0
- package/js/src/yobit.d.ts +2 -2
- package/js/src/zaif.d.ts +2 -2
- package/js/src/zonda.d.ts +4 -14
- package/package.json +1 -1
package/dist/cjs/src/pro/okx.js
CHANGED
|
@@ -24,6 +24,8 @@ class okx extends okx$1 {
|
|
|
24
24
|
'watchOrders': true,
|
|
25
25
|
'watchMyTrades': true,
|
|
26
26
|
'watchPositions': true,
|
|
27
|
+
'watchFundingRate': true,
|
|
28
|
+
'watchFundingRates': true,
|
|
27
29
|
'createOrderWs': true,
|
|
28
30
|
'editOrderWs': true,
|
|
29
31
|
'cancelOrderWs': true,
|
|
@@ -245,6 +247,88 @@ class okx extends okx$1 {
|
|
|
245
247
|
client.resolve(stored, messageHash);
|
|
246
248
|
}
|
|
247
249
|
}
|
|
250
|
+
async watchFundingRate(symbol, params = {}) {
|
|
251
|
+
/**
|
|
252
|
+
* @method
|
|
253
|
+
* @name okx#watchFundingRate
|
|
254
|
+
* @description watch the current funding rate
|
|
255
|
+
* @see https://www.okx.com/docs-v5/en/#public-data-websocket-funding-rate-channel
|
|
256
|
+
* @param {string} symbol unified market symbol
|
|
257
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
258
|
+
* @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/#/?id=funding-rate-structure}
|
|
259
|
+
*/
|
|
260
|
+
symbol = this.symbol(symbol);
|
|
261
|
+
const fr = await this.watchFundingRates([symbol], params);
|
|
262
|
+
return fr[symbol];
|
|
263
|
+
}
|
|
264
|
+
async watchFundingRates(symbols, params = {}) {
|
|
265
|
+
/**
|
|
266
|
+
* @method
|
|
267
|
+
* @name coinbaseinternational#watchFundingRates
|
|
268
|
+
* @description watch the funding rate for multiple markets
|
|
269
|
+
* @see https://www.okx.com/docs-v5/en/#public-data-websocket-funding-rate-channel
|
|
270
|
+
* @param {string[]} symbols list of unified market symbols
|
|
271
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
272
|
+
* @returns {object} a dictionary of [funding rates structures]{@link https://docs.ccxt.com/#/?id=funding-rates-structure}, indexe by market symbols
|
|
273
|
+
*/
|
|
274
|
+
await this.loadMarkets();
|
|
275
|
+
symbols = this.marketSymbols(symbols);
|
|
276
|
+
const channel = 'funding-rate';
|
|
277
|
+
const topics = [];
|
|
278
|
+
const messageHashes = [];
|
|
279
|
+
for (let i = 0; i < symbols.length; i++) {
|
|
280
|
+
const symbol = symbols[i];
|
|
281
|
+
messageHashes.push(channel + ':' + symbol);
|
|
282
|
+
const marketId = this.marketId(symbol);
|
|
283
|
+
const topic = {
|
|
284
|
+
'channel': channel,
|
|
285
|
+
'instId': marketId,
|
|
286
|
+
};
|
|
287
|
+
topics.push(topic);
|
|
288
|
+
}
|
|
289
|
+
const request = {
|
|
290
|
+
'op': 'subscribe',
|
|
291
|
+
'args': topics,
|
|
292
|
+
};
|
|
293
|
+
const url = this.getUrl(channel, 'public');
|
|
294
|
+
const fundingRate = await this.watchMultiple(url, messageHashes, request, messageHashes);
|
|
295
|
+
if (this.newUpdates) {
|
|
296
|
+
const symbol = this.safeString(fundingRate, 'symbol');
|
|
297
|
+
const result = {};
|
|
298
|
+
result[symbol] = fundingRate;
|
|
299
|
+
return result;
|
|
300
|
+
}
|
|
301
|
+
return this.filterByArray(this.fundingRates, 'symbol', symbols);
|
|
302
|
+
}
|
|
303
|
+
handleFundingRate(client, message) {
|
|
304
|
+
//
|
|
305
|
+
// "data":[
|
|
306
|
+
// {
|
|
307
|
+
// "fundingRate":"0.0001875391284828",
|
|
308
|
+
// "fundingTime":"1700726400000",
|
|
309
|
+
// "instId":"BTC-USD-SWAP",
|
|
310
|
+
// "instType":"SWAP",
|
|
311
|
+
// "method": "next_period",
|
|
312
|
+
// "maxFundingRate":"0.00375",
|
|
313
|
+
// "minFundingRate":"-0.00375",
|
|
314
|
+
// "nextFundingRate":"0.0002608059239328",
|
|
315
|
+
// "nextFundingTime":"1700755200000",
|
|
316
|
+
// "premium": "0.0001233824646391",
|
|
317
|
+
// "settFundingRate":"0.0001699799259033",
|
|
318
|
+
// "settState":"settled",
|
|
319
|
+
// "ts":"1700724675402"
|
|
320
|
+
// }
|
|
321
|
+
// ]
|
|
322
|
+
//
|
|
323
|
+
const data = this.safeList(message, 'data', []);
|
|
324
|
+
for (let i = 0; i < data.length; i++) {
|
|
325
|
+
const rawfr = data[i];
|
|
326
|
+
const fundingRate = this.parseFundingRate(rawfr);
|
|
327
|
+
const symbol = fundingRate['symbol'];
|
|
328
|
+
this.fundingRates[symbol] = fundingRate;
|
|
329
|
+
client.resolve(fundingRate, 'funding-rate' + ':' + fundingRate['symbol']);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
248
332
|
async watchTicker(symbol, params = {}) {
|
|
249
333
|
/**
|
|
250
334
|
* @method
|
|
@@ -1633,6 +1717,7 @@ class okx extends okx$1 {
|
|
|
1633
1717
|
'block-tickers': this.handleTicker,
|
|
1634
1718
|
'trades': this.handleTrades,
|
|
1635
1719
|
'account': this.handleBalance,
|
|
1720
|
+
'funding-rate': this.handleFundingRate,
|
|
1636
1721
|
// 'margin_account': this.handleBalance,
|
|
1637
1722
|
'orders': this.handleOrders,
|
|
1638
1723
|
'orders-algo': this.handleOrders,
|