ccxt 4.4.25 → 4.4.26
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 +4 -4
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/alpaca.js +257 -11
- package/dist/cjs/src/base/Exchange.js +14 -1
- package/dist/cjs/src/binance.js +2 -3
- package/dist/cjs/src/bingx.js +7 -1
- package/dist/cjs/src/bitget.js +2 -2
- package/dist/cjs/src/bitmart.js +3 -3
- package/dist/cjs/src/bybit.js +3 -14
- package/dist/cjs/src/cex.js +40 -0
- package/dist/cjs/src/coinex.js +2 -4
- package/dist/cjs/src/digifinex.js +2 -2
- package/dist/cjs/src/exmo.js +1 -0
- package/dist/cjs/src/gate.js +3 -3
- package/dist/cjs/src/htx.js +2 -3
- package/dist/cjs/src/hyperliquid.js +14 -4
- package/dist/cjs/src/kucoin.js +2 -2
- package/dist/cjs/src/okx.js +3 -2
- package/dist/cjs/src/phemex.js +4 -2
- package/dist/cjs/src/pro/exmo.js +216 -3
- package/dist/cjs/src/whitebit.js +2 -2
- package/dist/cjs/src/xt.js +39 -27
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/abstract/alpaca.d.ts +1 -0
- package/js/src/abstract/bingx.d.ts +1 -0
- package/js/src/abstract/okx.d.ts +1 -0
- package/js/src/abstract/phemex.d.ts +1 -0
- package/js/src/alpaca.d.ts +6 -1
- package/js/src/alpaca.js +258 -12
- package/js/src/base/Exchange.d.ts +7 -6
- package/js/src/base/Exchange.js +14 -1
- package/js/src/base/types.d.ts +3 -3
- package/js/src/binance.d.ts +3 -14
- package/js/src/binance.js +2 -3
- package/js/src/bingx.js +7 -1
- package/js/src/bitget.d.ts +3 -13
- package/js/src/bitget.js +2 -2
- package/js/src/bitmart.d.ts +3 -13
- package/js/src/bitmart.js +3 -3
- package/js/src/bybit.d.ts +3 -14
- package/js/src/bybit.js +3 -14
- package/js/src/cex.d.ts +2 -0
- package/js/src/cex.js +40 -0
- package/js/src/coinex.d.ts +3 -15
- package/js/src/coinex.js +2 -4
- package/js/src/digifinex.d.ts +3 -13
- package/js/src/digifinex.js +2 -2
- package/js/src/exmo.js +1 -0
- package/js/src/gate.d.ts +3 -13
- package/js/src/gate.js +3 -3
- package/js/src/htx.d.ts +3 -14
- package/js/src/htx.js +2 -3
- package/js/src/hyperliquid.js +14 -4
- package/js/src/kucoin.d.ts +3 -13
- package/js/src/kucoin.js +2 -2
- package/js/src/okx.d.ts +3 -13
- package/js/src/okx.js +3 -2
- package/js/src/phemex.js +4 -2
- package/js/src/pro/exmo.d.ts +5 -1
- package/js/src/pro/exmo.js +216 -3
- package/js/src/whitebit.d.ts +3 -13
- package/js/src/whitebit.js +2 -2
- package/js/src/woo.d.ts +1 -1
- package/js/src/xt.js +39 -27
- package/package.json +1 -1
package/js/src/bybit.d.ts
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import Exchange from './abstract/bybit.js';
|
|
2
|
-
import type { Int, OrderSide, OrderType, Trade, Order, OHLCV, FundingRateHistory, OpenInterest, OrderRequest, Balances, Str, Transaction, Ticker, OrderBook, Tickers, Greeks, Strings, Market, Currency, MarketInterface, TransferEntry, Liquidation, Leverage, Num, FundingHistory, Option, OptionChain, TradingFeeInterface, Currencies, TradingFees, CancellationRequest, Position, CrossBorrowRate, Dict, LeverageTier, LeverageTiers, int, LedgerEntry, Conversion, FundingRate, FundingRates, DepositAddress, LongShortRatio } from './base/types.js';
|
|
2
|
+
import type { Int, OrderSide, OrderType, Trade, Order, OHLCV, FundingRateHistory, OpenInterest, OrderRequest, Balances, Str, Transaction, Ticker, OrderBook, Tickers, Greeks, Strings, Market, Currency, MarketInterface, TransferEntry, Liquidation, Leverage, Num, FundingHistory, Option, OptionChain, TradingFeeInterface, Currencies, TradingFees, CancellationRequest, Position, CrossBorrowRate, Dict, LeverageTier, LeverageTiers, int, LedgerEntry, Conversion, FundingRate, FundingRates, DepositAddress, LongShortRatio, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class bybit
|
|
5
5
|
* @augments Exchange
|
|
6
6
|
*/
|
|
7
7
|
export default class bybit extends Exchange {
|
|
8
8
|
describe(): any;
|
|
9
|
-
setSandboxMode(enable: boolean): void;
|
|
10
9
|
enableDemoTrading(enable: boolean): void;
|
|
11
10
|
nonce(): number;
|
|
12
11
|
addPaginationCursorToResult(response: any): any;
|
|
@@ -105,19 +104,9 @@ export default class bybit extends Exchange {
|
|
|
105
104
|
datetime: string;
|
|
106
105
|
info: any;
|
|
107
106
|
};
|
|
108
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
107
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
109
108
|
fetchBorrowRateHistory(code: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
|
|
110
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
111
|
-
symbol: any;
|
|
112
|
-
marginMode: string;
|
|
113
|
-
currency: string;
|
|
114
|
-
interest: number;
|
|
115
|
-
interestRate: any;
|
|
116
|
-
amountBorrowed: number;
|
|
117
|
-
timestamp: any;
|
|
118
|
-
datetime: any;
|
|
119
|
-
info: Dict;
|
|
120
|
-
};
|
|
109
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
121
110
|
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
122
111
|
fetchTransfers(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<TransferEntry[]>;
|
|
123
112
|
borrowCrossMargin(code: string, amount: number, params?: {}): Promise<any>;
|
package/js/src/bybit.js
CHANGED
|
@@ -1005,7 +1005,6 @@ export default class bybit extends Exchange {
|
|
|
1005
1005
|
'precisionMode': TICK_SIZE,
|
|
1006
1006
|
'options': {
|
|
1007
1007
|
'usePrivateInstrumentsInfo': false,
|
|
1008
|
-
'sandboxMode': false,
|
|
1009
1008
|
'enableDemoTrading': false,
|
|
1010
1009
|
'fetchMarkets': ['spot', 'linear', 'inverse', 'option'],
|
|
1011
1010
|
'createOrder': {
|
|
@@ -1091,16 +1090,6 @@ export default class bybit extends Exchange {
|
|
|
1091
1090
|
},
|
|
1092
1091
|
});
|
|
1093
1092
|
}
|
|
1094
|
-
setSandboxMode(enable) {
|
|
1095
|
-
/**
|
|
1096
|
-
* @method
|
|
1097
|
-
* @name bybit#setSandboxMode
|
|
1098
|
-
* @description enables or disables sandbox mode
|
|
1099
|
-
* @param {boolean} [enable] true if demo trading should be enabled, false otherwise
|
|
1100
|
-
*/
|
|
1101
|
-
super.setSandboxMode(enable);
|
|
1102
|
-
this.options['sandboxMode'] = enable;
|
|
1103
|
-
}
|
|
1104
1093
|
enableDemoTrading(enable) {
|
|
1105
1094
|
/**
|
|
1106
1095
|
* @method
|
|
@@ -1109,7 +1098,7 @@ export default class bybit extends Exchange {
|
|
|
1109
1098
|
* @see https://bybit-exchange.github.io/docs/v5/demo
|
|
1110
1099
|
* @param {boolean} [enable] true if demo trading should be enabled, false otherwise
|
|
1111
1100
|
*/
|
|
1112
|
-
if (this.
|
|
1101
|
+
if (this.isSandboxModeEnabled) {
|
|
1113
1102
|
throw new NotSupported(this.id + ' demo trading does not support in sandbox environment');
|
|
1114
1103
|
}
|
|
1115
1104
|
// enable demo trading in bybit, see: https://bybit-exchange.github.io/docs/v5/demo
|
|
@@ -7490,15 +7479,15 @@ export default class bybit extends Exchange {
|
|
|
7490
7479
|
// },
|
|
7491
7480
|
//
|
|
7492
7481
|
return {
|
|
7482
|
+
'info': info,
|
|
7493
7483
|
'symbol': undefined,
|
|
7494
|
-
'marginMode': 'cross',
|
|
7495
7484
|
'currency': this.safeCurrencyCode(this.safeString(info, 'tokenId')),
|
|
7496
7485
|
'interest': this.safeNumber(info, 'interest'),
|
|
7497
7486
|
'interestRate': undefined,
|
|
7498
7487
|
'amountBorrowed': this.safeNumber(info, 'loan'),
|
|
7488
|
+
'marginMode': 'cross',
|
|
7499
7489
|
'timestamp': undefined,
|
|
7500
7490
|
'datetime': undefined,
|
|
7501
|
-
'info': info,
|
|
7502
7491
|
};
|
|
7503
7492
|
}
|
|
7504
7493
|
async transfer(code, amount, fromAccount, toAccount, params = {}) {
|
package/js/src/cex.d.ts
CHANGED
|
@@ -29,6 +29,8 @@ export default class cex extends Exchange {
|
|
|
29
29
|
fetchOrdersByStatus(status: string, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
30
30
|
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
31
31
|
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
32
|
+
fetchOpenOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
33
|
+
fetchClosedOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
32
34
|
parseOrderStatus(status: Str): string;
|
|
33
35
|
parseOrder(order: Dict, market?: Market): Order;
|
|
34
36
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: Num, params?: {}): Promise<Order>;
|
package/js/src/cex.js
CHANGED
|
@@ -35,6 +35,7 @@ export default class cex extends Exchange {
|
|
|
35
35
|
'createOrder': true,
|
|
36
36
|
'fetchAccounts': true,
|
|
37
37
|
'fetchBalance': true,
|
|
38
|
+
'fetchClosedOrder': true,
|
|
38
39
|
'fetchClosedOrders': true,
|
|
39
40
|
'fetchCurrencies': true,
|
|
40
41
|
'fetchDepositAddress': true,
|
|
@@ -46,6 +47,7 @@ export default class cex extends Exchange {
|
|
|
46
47
|
'fetchLedger': true,
|
|
47
48
|
'fetchMarkets': true,
|
|
48
49
|
'fetchOHLCV': true,
|
|
50
|
+
'fetchOpenOrder': true,
|
|
49
51
|
'fetchOpenOrders': true,
|
|
50
52
|
'fetchOrderBook': true,
|
|
51
53
|
'fetchTicker': true,
|
|
@@ -943,6 +945,7 @@ export default class cex extends Exchange {
|
|
|
943
945
|
/**
|
|
944
946
|
* @method
|
|
945
947
|
* @name cex#fetchClosedOrders
|
|
948
|
+
* @see https://trade.cex.io/docs/#rest-private-api-calls-orders
|
|
946
949
|
* @description fetches information on multiple canceled orders made by the user
|
|
947
950
|
* @param {string} symbol unified market symbol of the market orders were made in
|
|
948
951
|
* @param {int} [since] timestamp in ms of the earliest order, default is undefined
|
|
@@ -956,6 +959,7 @@ export default class cex extends Exchange {
|
|
|
956
959
|
/**
|
|
957
960
|
* @method
|
|
958
961
|
* @name cex#fetchOpenOrders
|
|
962
|
+
* @see https://trade.cex.io/docs/#rest-private-api-calls-orders
|
|
959
963
|
* @description fetches information on multiple canceled orders made by the user
|
|
960
964
|
* @param {string} symbol unified market symbol of the market orders were made in
|
|
961
965
|
* @param {int} [since] timestamp in ms of the earliest order, default is undefined
|
|
@@ -965,6 +969,42 @@ export default class cex extends Exchange {
|
|
|
965
969
|
*/
|
|
966
970
|
return await this.fetchOrdersByStatus('open', symbol, since, limit, params);
|
|
967
971
|
}
|
|
972
|
+
async fetchOpenOrder(id, symbol = undefined, params = {}) {
|
|
973
|
+
/**
|
|
974
|
+
* @method
|
|
975
|
+
* @name cex#fetchOpenOrder
|
|
976
|
+
* @description fetches information on an open order made by the user
|
|
977
|
+
* @see https://trade.cex.io/docs/#rest-private-api-calls-orders
|
|
978
|
+
* @param {string} id order id
|
|
979
|
+
* @param {string} [symbol] unified symbol of the market the order was made in
|
|
980
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
981
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
982
|
+
*/
|
|
983
|
+
await this.loadMarkets();
|
|
984
|
+
const request = {
|
|
985
|
+
'orderId': parseInt(id),
|
|
986
|
+
};
|
|
987
|
+
const result = await this.fetchOpenOrders(symbol, undefined, undefined, this.extend(request, params));
|
|
988
|
+
return result[0];
|
|
989
|
+
}
|
|
990
|
+
async fetchClosedOrder(id, symbol = undefined, params = {}) {
|
|
991
|
+
/**
|
|
992
|
+
* @method
|
|
993
|
+
* @name cex#fetchClosedOrder
|
|
994
|
+
* @description fetches information on an closed order made by the user
|
|
995
|
+
* @see https://trade.cex.io/docs/#rest-private-api-calls-orders
|
|
996
|
+
* @param {string} id order id
|
|
997
|
+
* @param {string} [symbol] unified symbol of the market the order was made in
|
|
998
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
999
|
+
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1000
|
+
*/
|
|
1001
|
+
await this.loadMarkets();
|
|
1002
|
+
const request = {
|
|
1003
|
+
'orderId': parseInt(id),
|
|
1004
|
+
};
|
|
1005
|
+
const result = await this.fetchClosedOrders(symbol, undefined, undefined, this.extend(request, params));
|
|
1006
|
+
return result[0];
|
|
1007
|
+
}
|
|
968
1008
|
parseOrderStatus(status) {
|
|
969
1009
|
const statuses = {
|
|
970
1010
|
'FILLED': 'closed',
|
package/js/src/coinex.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/coinex.js';
|
|
2
|
-
import type { Balances, Currency, FundingHistory, FundingRateHistory, Int, Market, OHLCV, Order, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, OrderRequest, TransferEntry, Leverage, Num, MarginModification, TradingFeeInterface, Currencies, TradingFees, Position, IsolatedBorrowRate, Dict, LeverageTiers, LeverageTier, int, FundingRate, FundingRates, DepositAddress } from './base/types.js';
|
|
2
|
+
import type { Balances, Currency, FundingHistory, FundingRateHistory, Int, Market, OHLCV, Order, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, OrderRequest, TransferEntry, Leverage, Num, MarginModification, TradingFeeInterface, Currencies, TradingFees, Position, IsolatedBorrowRate, Dict, LeverageTiers, LeverageTier, int, FundingRate, FundingRates, DepositAddress, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class coinex
|
|
5
5
|
* @augments Exchange
|
|
@@ -74,20 +74,8 @@ export default class coinex extends Exchange {
|
|
|
74
74
|
fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
75
75
|
parseIsolatedBorrowRate(info: Dict, market?: Market): IsolatedBorrowRate;
|
|
76
76
|
fetchIsolatedBorrowRate(symbol: string, params?: {}): Promise<IsolatedBorrowRate>;
|
|
77
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
78
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
79
|
-
account: any;
|
|
80
|
-
symbol: string;
|
|
81
|
-
marginMode: string;
|
|
82
|
-
marginType: any;
|
|
83
|
-
currency: string;
|
|
84
|
-
interest: number;
|
|
85
|
-
interestRate: number;
|
|
86
|
-
amountBorrowed: number;
|
|
87
|
-
timestamp: number;
|
|
88
|
-
datetime: string;
|
|
89
|
-
info: Dict;
|
|
90
|
-
};
|
|
77
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
78
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
91
79
|
borrowIsolatedMargin(symbol: string, code: string, amount: number, params?: {}): Promise<any>;
|
|
92
80
|
repayIsolatedMargin(symbol: string, code: string, amount: any, params?: {}): Promise<any>;
|
|
93
81
|
parseMarginLoan(info: any, currency?: Currency): {
|
package/js/src/coinex.js
CHANGED
|
@@ -5342,17 +5342,15 @@ export default class coinex extends Exchange {
|
|
|
5342
5342
|
market = this.safeMarket(marketId, market, undefined, 'spot');
|
|
5343
5343
|
const timestamp = this.safeInteger(info, 'expired_at');
|
|
5344
5344
|
return {
|
|
5345
|
-
'
|
|
5345
|
+
'info': info,
|
|
5346
5346
|
'symbol': market['symbol'],
|
|
5347
|
-
'marginMode': 'isolated',
|
|
5348
|
-
'marginType': undefined,
|
|
5349
5347
|
'currency': this.safeCurrencyCode(this.safeString(info, 'ccy')),
|
|
5350
5348
|
'interest': this.safeNumber(info, 'to_repaied_amount'),
|
|
5351
5349
|
'interestRate': this.safeNumber(info, 'daily_interest_rate'),
|
|
5352
5350
|
'amountBorrowed': this.safeNumber(info, 'borrow_amount'),
|
|
5351
|
+
'marginMode': 'isolated',
|
|
5353
5352
|
'timestamp': timestamp,
|
|
5354
5353
|
'datetime': this.iso8601(timestamp),
|
|
5355
|
-
'info': info,
|
|
5356
5354
|
};
|
|
5357
5355
|
}
|
|
5358
5356
|
async borrowIsolatedMargin(symbol, code, amount, params = {}) {
|
package/js/src/digifinex.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/digifinex.js';
|
|
2
|
-
import type { FundingRateHistory, Int, OHLCV, Order, OrderSide, OrderType, OrderRequest, Trade, Balances, Str, Transaction, Ticker, OrderBook, Tickers, Strings, Market, Currency, TransferEntry, Num, MarginModification, TradingFeeInterface, Currencies, CrossBorrowRate, CrossBorrowRates, Dict, LeverageTier, LeverageTiers, int, LedgerEntry, FundingRate, DepositAddress } from './base/types.js';
|
|
2
|
+
import type { FundingRateHistory, Int, OHLCV, Order, OrderSide, OrderType, OrderRequest, Trade, Balances, Str, Transaction, Ticker, OrderBook, Tickers, Strings, Market, Currency, TransferEntry, Num, MarginModification, TradingFeeInterface, Currencies, CrossBorrowRate, CrossBorrowRates, Dict, LeverageTier, LeverageTiers, int, LedgerEntry, FundingRate, DepositAddress, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class digifinex
|
|
5
5
|
* @augments Exchange
|
|
@@ -55,18 +55,8 @@ export default class digifinex extends Exchange {
|
|
|
55
55
|
parseTransfer(transfer: Dict, currency?: Currency): TransferEntry;
|
|
56
56
|
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
57
57
|
withdraw(code: string, amount: number, address: string, tag?: any, params?: {}): Promise<Transaction>;
|
|
58
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
59
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
60
|
-
account: string;
|
|
61
|
-
symbol: string;
|
|
62
|
-
currency: string;
|
|
63
|
-
interest: any;
|
|
64
|
-
interestRate: number;
|
|
65
|
-
amountBorrowed: number;
|
|
66
|
-
timestamp: any;
|
|
67
|
-
datetime: any;
|
|
68
|
-
info: Dict;
|
|
69
|
-
};
|
|
58
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
59
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
70
60
|
fetchCrossBorrowRate(code: string, params?: {}): Promise<CrossBorrowRate>;
|
|
71
61
|
fetchCrossBorrowRates(params?: {}): Promise<CrossBorrowRates>;
|
|
72
62
|
parseBorrowRate(info: any, currency?: Currency): {
|
package/js/src/digifinex.js
CHANGED
|
@@ -3103,15 +3103,15 @@ export default class digifinex extends Exchange {
|
|
|
3103
3103
|
const currency = (market === undefined) ? undefined : market['base'];
|
|
3104
3104
|
const symbol = this.safeSymbol(marketId, market);
|
|
3105
3105
|
return {
|
|
3106
|
-
'
|
|
3106
|
+
'info': info,
|
|
3107
3107
|
'symbol': symbol,
|
|
3108
3108
|
'currency': currency,
|
|
3109
3109
|
'interest': undefined,
|
|
3110
3110
|
'interestRate': 0.001,
|
|
3111
3111
|
'amountBorrowed': this.parseNumber(amountBorrowed),
|
|
3112
|
+
'marginMode': undefined,
|
|
3112
3113
|
'timestamp': undefined,
|
|
3113
3114
|
'datetime': undefined,
|
|
3114
|
-
'info': info,
|
|
3115
3115
|
};
|
|
3116
3116
|
}
|
|
3117
3117
|
async fetchCrossBorrowRate(code, params = {}) {
|
package/js/src/exmo.js
CHANGED
package/js/src/gate.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/gate.js';
|
|
2
|
-
import type { Int, OrderSide, OrderType, OHLCV, Trade, FundingRateHistory, OpenInterest, Order, Balances, OrderRequest, FundingHistory, Str, Transaction, Ticker, OrderBook, Tickers, Greeks, Strings, Market, Currency, MarketInterface, TransferEntry, Leverage, Leverages, Num, OptionChain, Option, MarginModification, TradingFeeInterface, Currencies, TradingFees, Position, Dict, LeverageTier, LeverageTiers, int, CancellationRequest, LedgerEntry, FundingRate, FundingRates, DepositAddress } from './base/types.js';
|
|
2
|
+
import type { Int, OrderSide, OrderType, OHLCV, Trade, FundingRateHistory, OpenInterest, Order, Balances, OrderRequest, FundingHistory, Str, Transaction, Ticker, OrderBook, Tickers, Greeks, Strings, Market, Currency, MarketInterface, TransferEntry, Leverage, Leverages, Num, OptionChain, Option, MarginModification, TradingFeeInterface, Currencies, TradingFees, Position, Dict, LeverageTier, LeverageTiers, int, CancellationRequest, LedgerEntry, FundingRate, FundingRates, DepositAddress, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class gate
|
|
5
5
|
* @augments Exchange
|
|
@@ -198,18 +198,8 @@ export default class gate extends Exchange {
|
|
|
198
198
|
datetime: string;
|
|
199
199
|
info: any;
|
|
200
200
|
};
|
|
201
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
202
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
203
|
-
info: Dict;
|
|
204
|
-
timestamp: number;
|
|
205
|
-
datetime: string;
|
|
206
|
-
symbol: string;
|
|
207
|
-
currency: string;
|
|
208
|
-
marginMode: string;
|
|
209
|
-
interest: number;
|
|
210
|
-
interestRate: number;
|
|
211
|
-
amountBorrowed: any;
|
|
212
|
-
};
|
|
201
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
202
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
213
203
|
sign(path: any, api?: any[], method?: string, params?: {}, headers?: any, body?: any): {
|
|
214
204
|
url: any;
|
|
215
205
|
method: string;
|
package/js/src/gate.js
CHANGED
|
@@ -6491,14 +6491,14 @@ export default class gate extends Exchange {
|
|
|
6491
6491
|
const timestamp = this.safeInteger(info, 'create_time');
|
|
6492
6492
|
return {
|
|
6493
6493
|
'info': info,
|
|
6494
|
-
'timestamp': timestamp,
|
|
6495
|
-
'datetime': this.iso8601(timestamp),
|
|
6496
6494
|
'symbol': this.safeString(market, 'symbol'),
|
|
6497
6495
|
'currency': this.safeCurrencyCode(this.safeString(info, 'currency')),
|
|
6498
|
-
'marginMode': marginMode,
|
|
6499
6496
|
'interest': this.safeNumber(info, 'interest'),
|
|
6500
6497
|
'interestRate': this.safeNumber(info, 'actual_rate'),
|
|
6501
6498
|
'amountBorrowed': undefined,
|
|
6499
|
+
'marginMode': marginMode,
|
|
6500
|
+
'timestamp': timestamp,
|
|
6501
|
+
'datetime': this.iso8601(timestamp),
|
|
6502
6502
|
};
|
|
6503
6503
|
}
|
|
6504
6504
|
sign(path, api = [], method = 'GET', params = {}, headers = undefined, body = undefined) {
|
package/js/src/htx.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/htx.js';
|
|
2
|
-
import type { TransferEntry, Int, OrderSide, OrderType, Order, OHLCV, Trade, FundingRateHistory, Balances, Str, Dict, Transaction, Ticker, OrderBook, Tickers, OrderRequest, Strings, Market, Currency, Num, Account, TradingFeeInterface, Currencies, IsolatedBorrowRates, IsolatedBorrowRate, LeverageTiers, LeverageTier, int, LedgerEntry, FundingRate, FundingRates, DepositAddress } from './base/types.js';
|
|
2
|
+
import type { TransferEntry, Int, OrderSide, OrderType, Order, OHLCV, Trade, FundingRateHistory, Balances, Str, Dict, Transaction, Ticker, OrderBook, Tickers, OrderRequest, Strings, Market, Currency, Num, Account, TradingFeeInterface, Currencies, IsolatedBorrowRates, IsolatedBorrowRate, LeverageTiers, LeverageTier, int, LedgerEntry, FundingRate, FundingRates, DepositAddress, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class huobi
|
|
5
5
|
* @augments Exchange
|
|
@@ -119,19 +119,8 @@ export default class htx extends Exchange {
|
|
|
119
119
|
parseFundingInterval(interval: any): string;
|
|
120
120
|
fetchFundingRate(symbol: string, params?: {}): Promise<FundingRate>;
|
|
121
121
|
fetchFundingRates(symbols?: Strings, params?: {}): Promise<FundingRates>;
|
|
122
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
123
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
124
|
-
account: string;
|
|
125
|
-
symbol: string;
|
|
126
|
-
marginMode: string;
|
|
127
|
-
currency: string;
|
|
128
|
-
interest: number;
|
|
129
|
-
interestRate: number;
|
|
130
|
-
amountBorrowed: number;
|
|
131
|
-
timestamp: number;
|
|
132
|
-
datetime: string;
|
|
133
|
-
info: Dict;
|
|
134
|
-
};
|
|
122
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
123
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
135
124
|
sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
|
|
136
125
|
url: string;
|
|
137
126
|
method: string;
|
package/js/src/htx.js
CHANGED
|
@@ -7304,16 +7304,15 @@ export default class htx extends Exchange {
|
|
|
7304
7304
|
const symbol = this.safeString(market, 'symbol');
|
|
7305
7305
|
const timestamp = this.safeInteger(info, 'accrued-at');
|
|
7306
7306
|
return {
|
|
7307
|
-
'
|
|
7307
|
+
'info': info,
|
|
7308
7308
|
'symbol': symbol,
|
|
7309
|
-
'marginMode': marginMode,
|
|
7310
7309
|
'currency': this.safeCurrencyCode(this.safeString(info, 'currency')),
|
|
7311
7310
|
'interest': this.safeNumber(info, 'interest-amount'),
|
|
7312
7311
|
'interestRate': this.safeNumber(info, 'interest-rate'),
|
|
7313
7312
|
'amountBorrowed': this.safeNumber(info, 'loan-amount'),
|
|
7313
|
+
'marginMode': marginMode,
|
|
7314
7314
|
'timestamp': timestamp,
|
|
7315
7315
|
'datetime': this.iso8601(timestamp),
|
|
7316
|
-
'info': info,
|
|
7317
7316
|
};
|
|
7318
7317
|
}
|
|
7319
7318
|
sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
|
package/js/src/hyperliquid.js
CHANGED
|
@@ -785,9 +785,18 @@ export default class hyperliquid extends Exchange {
|
|
|
785
785
|
await this.loadMarkets();
|
|
786
786
|
const market = this.market(symbol);
|
|
787
787
|
const until = this.safeInteger(params, 'until', this.milliseconds());
|
|
788
|
-
|
|
788
|
+
let useTail = since === undefined;
|
|
789
|
+
const originalSince = since;
|
|
789
790
|
if (since === undefined) {
|
|
790
|
-
|
|
791
|
+
if (limit !== undefined) {
|
|
792
|
+
// optimization if limit is provided
|
|
793
|
+
const timeframeInMilliseconds = this.parseTimeframe(timeframe) * 1000;
|
|
794
|
+
since = this.sum(until, timeframeInMilliseconds * limit * -1);
|
|
795
|
+
useTail = false;
|
|
796
|
+
}
|
|
797
|
+
else {
|
|
798
|
+
since = 0;
|
|
799
|
+
}
|
|
791
800
|
}
|
|
792
801
|
params = this.omit(params, ['until']);
|
|
793
802
|
const request = {
|
|
@@ -816,7 +825,7 @@ export default class hyperliquid extends Exchange {
|
|
|
816
825
|
// }
|
|
817
826
|
// ]
|
|
818
827
|
//
|
|
819
|
-
return this.parseOHLCVs(response, market, timeframe,
|
|
828
|
+
return this.parseOHLCVs(response, market, timeframe, originalSince, limit, useTail);
|
|
820
829
|
}
|
|
821
830
|
parseOHLCV(ohlcv, market = undefined) {
|
|
822
831
|
//
|
|
@@ -1618,7 +1627,8 @@ export default class hyperliquid extends Exchange {
|
|
|
1618
1627
|
request['startTime'] = since;
|
|
1619
1628
|
}
|
|
1620
1629
|
else {
|
|
1621
|
-
|
|
1630
|
+
const maxLimit = (limit === undefined) ? 500 : limit;
|
|
1631
|
+
request['startTime'] = this.milliseconds() - maxLimit * 60 * 60 * 1000;
|
|
1622
1632
|
}
|
|
1623
1633
|
const until = this.safeInteger(params, 'until');
|
|
1624
1634
|
params = this.omit(params, 'until');
|
package/js/src/kucoin.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/kucoin.js';
|
|
2
|
-
import type { TransferEntry, Int, OrderSide, OrderType, Order, OHLCV, Trade, Balances, OrderRequest, Str, Transaction, Ticker, OrderBook, Tickers, Strings, Currency, Market, Num, Account, Dict, TradingFeeInterface, Currencies, int, LedgerEntry, DepositAddress } from './base/types.js';
|
|
2
|
+
import type { TransferEntry, Int, OrderSide, OrderType, Order, OHLCV, Trade, Balances, OrderRequest, Str, Transaction, Ticker, OrderBook, Tickers, Strings, Currency, Market, Num, Account, Dict, TradingFeeInterface, Currencies, int, LedgerEntry, DepositAddress, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class kucoin
|
|
5
5
|
* @augments Exchange
|
|
@@ -83,18 +83,8 @@ export default class kucoin extends Exchange {
|
|
|
83
83
|
datetime: string;
|
|
84
84
|
info: any;
|
|
85
85
|
};
|
|
86
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
87
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
88
|
-
symbol: string;
|
|
89
|
-
marginMode: string;
|
|
90
|
-
currency: string;
|
|
91
|
-
interest: any;
|
|
92
|
-
interestRate: number;
|
|
93
|
-
amountBorrowed: any;
|
|
94
|
-
timestamp: number;
|
|
95
|
-
datetime: string;
|
|
96
|
-
info: Dict;
|
|
97
|
-
};
|
|
86
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
87
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
98
88
|
fetchBorrowRateHistories(codes?: any, since?: Int, limit?: Int, params?: {}): Promise<Dict>;
|
|
99
89
|
fetchBorrowRateHistory(code: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
|
|
100
90
|
parseBorrowRateHistories(response: any, codes: any, since: any, limit: any): Dict;
|
package/js/src/kucoin.js
CHANGED
|
@@ -4593,15 +4593,15 @@ export default class kucoin extends Exchange {
|
|
|
4593
4593
|
currencyId = this.safeString(info, 'currency');
|
|
4594
4594
|
}
|
|
4595
4595
|
return {
|
|
4596
|
+
'info': info,
|
|
4596
4597
|
'symbol': symbol,
|
|
4597
|
-
'marginMode': marginMode,
|
|
4598
4598
|
'currency': this.safeCurrencyCode(currencyId),
|
|
4599
4599
|
'interest': interest,
|
|
4600
4600
|
'interestRate': this.safeNumber(info, 'dailyIntRate'),
|
|
4601
4601
|
'amountBorrowed': amountBorrowed,
|
|
4602
|
+
'marginMode': marginMode,
|
|
4602
4603
|
'timestamp': timestamp,
|
|
4603
4604
|
'datetime': this.iso8601(timestamp),
|
|
4604
|
-
'info': info,
|
|
4605
4605
|
};
|
|
4606
4606
|
}
|
|
4607
4607
|
async fetchBorrowRateHistories(codes = undefined, since = undefined, limit = undefined, params = {}) {
|
package/js/src/okx.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/okx.js';
|
|
2
|
-
import type { TransferEntry, Int, OrderSide, OrderType, Trade, OHLCV, Order, FundingRateHistory, OrderRequest, FundingHistory, Str, Transaction, Ticker, OrderBook, Balances, Tickers, Market, Greeks, Strings, MarketInterface, Currency, Leverage, Num, Account, OptionChain, Option, MarginModification, TradingFeeInterface, Currencies, Conversion, CancellationRequest, Dict, Position, CrossBorrowRate, CrossBorrowRates, LeverageTier, int, LedgerEntry, FundingRate, DepositAddress, LongShortRatio } from './base/types.js';
|
|
2
|
+
import type { TransferEntry, Int, OrderSide, OrderType, Trade, OHLCV, Order, FundingRateHistory, OrderRequest, FundingHistory, Str, Transaction, Ticker, OrderBook, Balances, Tickers, Market, Greeks, Strings, MarketInterface, Currency, Leverage, Num, Account, OptionChain, Option, MarginModification, TradingFeeInterface, Currencies, Conversion, CancellationRequest, Dict, Position, CrossBorrowRate, CrossBorrowRates, LeverageTier, int, LedgerEntry, FundingRate, DepositAddress, LongShortRatio, BorrowInterest } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class okx
|
|
5
5
|
* @augments Exchange
|
|
@@ -115,18 +115,8 @@ export default class okx extends Exchange {
|
|
|
115
115
|
addMargin(symbol: string, amount: number, params?: {}): Promise<MarginModification>;
|
|
116
116
|
fetchMarketLeverageTiers(symbol: string, params?: {}): Promise<LeverageTier[]>;
|
|
117
117
|
parseMarketLeverageTiers(info: any, market?: Market): LeverageTier[];
|
|
118
|
-
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<
|
|
119
|
-
parseBorrowInterest(info: Dict, market?: Market):
|
|
120
|
-
symbol: string;
|
|
121
|
-
marginMode: string;
|
|
122
|
-
currency: string;
|
|
123
|
-
interest: number;
|
|
124
|
-
interestRate: number;
|
|
125
|
-
amountBorrowed: number;
|
|
126
|
-
timestamp: number;
|
|
127
|
-
datetime: string;
|
|
128
|
-
info: Dict;
|
|
129
|
-
};
|
|
118
|
+
fetchBorrowInterest(code?: Str, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<BorrowInterest[]>;
|
|
119
|
+
parseBorrowInterest(info: Dict, market?: Market): BorrowInterest;
|
|
130
120
|
borrowCrossMargin(code: string, amount: number, params?: {}): Promise<{
|
|
131
121
|
id: any;
|
|
132
122
|
currency: string;
|
package/js/src/okx.js
CHANGED
|
@@ -398,6 +398,7 @@ export default class okx extends Exchange {
|
|
|
398
398
|
// eth staking
|
|
399
399
|
'finance/staking-defi/eth/balance': 5 / 3,
|
|
400
400
|
'finance/staking-defi/eth/purchase-redeem-history': 5 / 3,
|
|
401
|
+
'finance/staking-defi/eth/product-info': 3,
|
|
401
402
|
// copytrading
|
|
402
403
|
'copytrading/current-subpositions': 1,
|
|
403
404
|
'copytrading/subpositions-history': 1,
|
|
@@ -7076,15 +7077,15 @@ export default class okx extends Exchange {
|
|
|
7076
7077
|
}
|
|
7077
7078
|
const timestamp = this.safeInteger(info, 'ts');
|
|
7078
7079
|
return {
|
|
7080
|
+
'info': info,
|
|
7079
7081
|
'symbol': this.safeString(market, 'symbol'),
|
|
7080
|
-
'marginMode': this.safeString(info, 'mgnMode'),
|
|
7081
7082
|
'currency': this.safeCurrencyCode(this.safeString(info, 'ccy')),
|
|
7082
7083
|
'interest': this.safeNumber(info, 'interest'),
|
|
7083
7084
|
'interestRate': this.safeNumber(info, 'interestRate'),
|
|
7084
7085
|
'amountBorrowed': this.safeNumber(info, 'liab'),
|
|
7086
|
+
'marginMode': this.safeString(info, 'mgnMode'),
|
|
7085
7087
|
'timestamp': timestamp,
|
|
7086
7088
|
'datetime': this.iso8601(timestamp),
|
|
7087
|
-
'info': info,
|
|
7088
7089
|
};
|
|
7089
7090
|
}
|
|
7090
7091
|
async borrowCrossMargin(code, amount, params = {}) {
|
package/js/src/phemex.js
CHANGED
|
@@ -108,7 +108,7 @@ export default class phemex extends Exchange {
|
|
|
108
108
|
'private': 'https://{hostname}',
|
|
109
109
|
},
|
|
110
110
|
'www': 'https://phemex.com',
|
|
111
|
-
'doc': 'https://
|
|
111
|
+
'doc': 'https://phemex-docs.github.io/#overview',
|
|
112
112
|
'fees': 'https://phemex.com/fees-conditions',
|
|
113
113
|
'referral': {
|
|
114
114
|
'url': 'https://phemex.com/register?referralCode=EDNVJ',
|
|
@@ -166,6 +166,7 @@ export default class phemex extends Exchange {
|
|
|
166
166
|
'v2': {
|
|
167
167
|
'get': {
|
|
168
168
|
'public/products': 5,
|
|
169
|
+
'public/products-plus': 5,
|
|
169
170
|
'md/v2/orderbook': 5,
|
|
170
171
|
'md/v2/trade': 5,
|
|
171
172
|
'md/v2/ticker/24hr': 5,
|
|
@@ -738,7 +739,7 @@ export default class phemex extends Exchange {
|
|
|
738
739
|
'max': this.parseSafeNumber(this.safeString(market, 'maxOrderValue')),
|
|
739
740
|
},
|
|
740
741
|
},
|
|
741
|
-
'created':
|
|
742
|
+
'created': this.safeInteger(market, 'listTime'),
|
|
742
743
|
'info': market,
|
|
743
744
|
});
|
|
744
745
|
}
|
|
@@ -747,6 +748,7 @@ export default class phemex extends Exchange {
|
|
|
747
748
|
* @method
|
|
748
749
|
* @name phemex#fetchMarkets
|
|
749
750
|
* @description retrieves data on all markets for phemex
|
|
751
|
+
* @see https://phemex-docs.github.io/#query-product-information-3
|
|
750
752
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
751
753
|
* @returns {object[]} an array of objects representing market data
|
|
752
754
|
*/
|
package/js/src/pro/exmo.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import exmoRest from '../exmo.js';
|
|
2
|
-
import type { Int, Str, OrderBook, Trade, Ticker, Balances, Strings, Tickers } from '../base/types.js';
|
|
2
|
+
import type { Int, Str, OrderBook, Trade, Ticker, Balances, Market, Dict, Strings, Tickers, Order } from '../base/types.js';
|
|
3
3
|
import Client from '../base/ws/Client.js';
|
|
4
4
|
export default class exmo extends exmoRest {
|
|
5
5
|
describe(): any;
|
|
@@ -19,6 +19,10 @@ export default class exmo extends exmoRest {
|
|
|
19
19
|
handleOrderBook(client: Client, message: any): void;
|
|
20
20
|
handleDelta(bookside: any, delta: any): void;
|
|
21
21
|
handleDeltas(bookside: any, deltas: any): void;
|
|
22
|
+
watchOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
23
|
+
handleOrders(client: Client, message: any): void;
|
|
24
|
+
parseWsOrder(order: Dict, market?: Market): Order;
|
|
25
|
+
parseWsTrade(trade: Dict, market?: Market): Trade;
|
|
22
26
|
handleMessage(client: Client, message: any): void;
|
|
23
27
|
handleSubscribed(client: Client, message: any): any;
|
|
24
28
|
handleInfo(client: Client, message: any): any;
|