ccxt 4.1.34 → 4.1.36
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 +8 -3
- package/build.sh +4 -0
- package/dist/ccxt.browser.js +739 -437
- package/dist/ccxt.browser.min.js +2 -2
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/base/Exchange.js +12 -0
- package/dist/cjs/src/base/errors.js +15 -1
- package/dist/cjs/src/binance.js +1 -0
- package/dist/cjs/src/bingx.js +19 -18
- package/dist/cjs/src/bitget.js +1 -0
- package/dist/cjs/src/bitopro.js +1 -0
- package/dist/cjs/src/bitstamp.js +12 -0
- package/dist/cjs/src/bybit.js +112 -109
- package/dist/cjs/src/digifinex.js +109 -3
- package/dist/cjs/src/huobi.js +206 -39
- package/dist/cjs/src/kraken.js +15 -8
- package/dist/cjs/src/kucoin.js +233 -257
- package/dist/cjs/src/phemex.js +1 -0
- package/dist/cjs/src/pro/okx.js +1 -1
- package/examples2md.js +79 -0
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/abstract/binance.d.ts +1 -0
- package/js/src/abstract/binancecoinm.d.ts +1 -0
- package/js/src/abstract/binanceus.d.ts +1 -0
- package/js/src/abstract/binanceusdm.d.ts +1 -0
- package/js/src/abstract/bitopro.d.ts +1 -0
- package/js/src/abstract/bitstamp.d.ts +10 -0
- package/js/src/abstract/kucoin.d.ts +81 -83
- package/js/src/abstract/kucoinfutures.d.ts +90 -86
- package/js/src/base/Exchange.d.ts +4 -0
- package/js/src/base/Exchange.js +12 -0
- package/js/src/base/errorHierarchy.d.ts +1 -1
- package/js/src/base/errorHierarchy.js +1 -1
- package/js/src/base/errors.d.ts +9 -1
- package/js/src/base/errors.js +14 -2
- package/js/src/binance.js +1 -0
- package/js/src/bingx.js +19 -18
- package/js/src/bitget.js +1 -0
- package/js/src/bitopro.js +1 -0
- package/js/src/bitstamp.js +12 -0
- package/js/src/bybit.js +112 -109
- package/js/src/digifinex.d.ts +13 -0
- package/js/src/digifinex.js +109 -3
- package/js/src/huobi.js +206 -39
- package/js/src/kraken.js +15 -8
- package/js/src/kucoin.d.ts +0 -1
- package/js/src/kucoin.js +233 -257
- package/js/src/phemex.js +1 -0
- package/js/src/pro/okx.js +1 -1
- package/package.json +8 -4
package/dist/ccxt.browser.js
CHANGED
|
@@ -6679,6 +6679,9 @@ class Exchange {
|
|
|
6679
6679
|
this.last_json_response = undefined;
|
|
6680
6680
|
this.last_response_headers = undefined;
|
|
6681
6681
|
this.last_request_headers = undefined;
|
|
6682
|
+
this.last_request_body = undefined;
|
|
6683
|
+
this.last_request_url = undefined;
|
|
6684
|
+
this.last_request_path = undefined;
|
|
6682
6685
|
this.id = undefined;
|
|
6683
6686
|
this.markets = undefined;
|
|
6684
6687
|
this.status = undefined;
|
|
@@ -6873,6 +6876,9 @@ class Exchange {
|
|
|
6873
6876
|
this.last_json_response = undefined;
|
|
6874
6877
|
this.last_response_headers = undefined;
|
|
6875
6878
|
this.last_request_headers = undefined;
|
|
6879
|
+
this.last_request_body = undefined;
|
|
6880
|
+
this.last_request_url = undefined;
|
|
6881
|
+
this.last_request_path = undefined;
|
|
6876
6882
|
// camelCase and snake_notation support
|
|
6877
6883
|
const unCamelCaseProperties = (obj = this) => {
|
|
6878
6884
|
if (obj !== null) {
|
|
@@ -9443,6 +9449,8 @@ class Exchange {
|
|
|
9443
9449
|
this.lastRestRequestTimestamp = this.milliseconds();
|
|
9444
9450
|
const request = this.sign(path, api, method, params, headers, body);
|
|
9445
9451
|
this.last_request_headers = request['headers'];
|
|
9452
|
+
this.last_request_body = request['body'];
|
|
9453
|
+
this.last_request_url = request['url'];
|
|
9446
9454
|
return await this.fetch(request['url'], request['method'], request['headers'], request['body']);
|
|
9447
9455
|
}
|
|
9448
9456
|
async request(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined, config = {}) {
|
|
@@ -10280,6 +10288,10 @@ class Exchange {
|
|
|
10280
10288
|
filterByCurrencySinceLimit(array, code = undefined, since = undefined, limit = undefined, tail = false) {
|
|
10281
10289
|
return this.filterByValueSinceLimit(array, 'currency', code, since, limit, 'timestamp', tail);
|
|
10282
10290
|
}
|
|
10291
|
+
filterBySymbolsSinceLimit(array, symbols = undefined, since = undefined, limit = undefined, tail = false) {
|
|
10292
|
+
const result = this.filterByArray(array, 'symbol', symbols, false);
|
|
10293
|
+
return this.filterBySinceLimit(result, since, limit, 'timestamp', tail);
|
|
10294
|
+
}
|
|
10283
10295
|
parseLastPrices(pricesData, symbols = undefined, params = {}) {
|
|
10284
10296
|
//
|
|
10285
10297
|
// the value of tickers is either a dict or a list
|
|
@@ -11458,6 +11470,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
11458
11470
|
/* harmony export */ "NotSupported": () => (/* binding */ NotSupported),
|
|
11459
11471
|
/* harmony export */ "NullResponse": () => (/* binding */ NullResponse),
|
|
11460
11472
|
/* harmony export */ "OnMaintenance": () => (/* binding */ OnMaintenance),
|
|
11473
|
+
/* harmony export */ "OperationFailed": () => (/* binding */ OperationFailed),
|
|
11474
|
+
/* harmony export */ "OperationRejected": () => (/* binding */ OperationRejected),
|
|
11461
11475
|
/* harmony export */ "OrderImmediatelyFillable": () => (/* binding */ OrderImmediatelyFillable),
|
|
11462
11476
|
/* harmony export */ "OrderNotCached": () => (/* binding */ OrderNotCached),
|
|
11463
11477
|
/* harmony export */ "OrderNotFillable": () => (/* binding */ OrderNotFillable),
|
|
@@ -11511,6 +11525,12 @@ class ExchangeError extends Error {
|
|
|
11511
11525
|
this.name = 'ExchangeError';
|
|
11512
11526
|
}
|
|
11513
11527
|
}
|
|
11528
|
+
class OperationFailed extends ExchangeError {
|
|
11529
|
+
constructor(message) {
|
|
11530
|
+
super(message);
|
|
11531
|
+
this.name = 'OperationFailed';
|
|
11532
|
+
}
|
|
11533
|
+
}
|
|
11514
11534
|
class AuthenticationError extends ExchangeError {
|
|
11515
11535
|
constructor(message) {
|
|
11516
11536
|
super(message);
|
|
@@ -11547,6 +11567,12 @@ class BadRequest extends ExchangeError {
|
|
|
11547
11567
|
this.name = 'BadRequest';
|
|
11548
11568
|
}
|
|
11549
11569
|
}
|
|
11570
|
+
class OperationRejected extends BadRequest {
|
|
11571
|
+
constructor(message) {
|
|
11572
|
+
super(message);
|
|
11573
|
+
this.name = 'OperationRejected';
|
|
11574
|
+
}
|
|
11575
|
+
}
|
|
11550
11576
|
class BadSymbol extends BadRequest {
|
|
11551
11577
|
constructor(message) {
|
|
11552
11578
|
super(message);
|
|
@@ -11699,7 +11725,7 @@ class RequestTimeout extends NetworkError {
|
|
|
11699
11725
|
// // Derived class hierarchy
|
|
11700
11726
|
// errorHierarchy
|
|
11701
11727
|
// )
|
|
11702
|
-
const errors = { BaseError, ExchangeError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, MarginModeAlreadySet, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, NotSupported, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout, AuthenticationError, AddressPending, ContractUnavailable, NoChange };
|
|
11728
|
+
const errors = { BaseError, ExchangeError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, MarginModeAlreadySet, BadResponse, NullResponse, InsufficientFunds, InvalidAddress, InvalidOrder, OrderNotFound, OrderNotCached, CancelPending, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, NotSupported, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, RequestTimeout, AuthenticationError, AddressPending, ContractUnavailable, NoChange, OperationRejected, OperationFailed };
|
|
11703
11729
|
|
|
11704
11730
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (errors);
|
|
11705
11731
|
|
|
@@ -16971,6 +16997,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
16971
16997
|
'topLongShortPositionRatio': 1,
|
|
16972
16998
|
'globalLongShortAccountRatio': 1,
|
|
16973
16999
|
'takerlongshortRatio': 1,
|
|
17000
|
+
'basis': 1,
|
|
16974
17001
|
},
|
|
16975
17002
|
},
|
|
16976
17003
|
'fapiPrivate': {
|
|
@@ -26312,7 +26339,8 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
26312
26339
|
'PFUTURES': 'swap',
|
|
26313
26340
|
'SFUTURES': 'future',
|
|
26314
26341
|
},
|
|
26315
|
-
'recvWindow': 5 * 1000,
|
|
26342
|
+
'recvWindow': 5 * 1000,
|
|
26343
|
+
'broker': 'CCXT',
|
|
26316
26344
|
},
|
|
26317
26345
|
});
|
|
26318
26346
|
}
|
|
@@ -26596,7 +26624,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
26596
26624
|
* @see https://bingx-api.github.io/docs/#/spot/market-api.html#Query%20Symbols
|
|
26597
26625
|
* @see https://bingx-api.github.io/docs/#/swapV2/market-api.html#Contract%20Information
|
|
26598
26626
|
* @param {object} [params] extra parameters specific to the exchange api endpoint
|
|
26599
|
-
* @returns {[
|
|
26627
|
+
* @returns {object[]} an array of objects representing market data
|
|
26600
26628
|
*/
|
|
26601
26629
|
const requests = [this.fetchSpotMarkets(params), this.fetchSwapMarkets(params)];
|
|
26602
26630
|
const promises = await Promise.all(requests);
|
|
@@ -26619,7 +26647,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
26619
26647
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
26620
26648
|
* @param {int} [params.until] timestamp in ms of the latest candle to fetch
|
|
26621
26649
|
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
26622
|
-
* @returns {[[
|
|
26650
|
+
* @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
|
|
26623
26651
|
*/
|
|
26624
26652
|
await this.loadMarkets();
|
|
26625
26653
|
let paginate = false;
|
|
@@ -26725,7 +26753,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
26725
26753
|
* @param {int} [since] timestamp in ms of the earliest trade to fetch
|
|
26726
26754
|
* @param {int} [limit] the maximum amount of trades to fetch
|
|
26727
26755
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
26728
|
-
* @returns {[
|
|
26756
|
+
* @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
|
|
26729
26757
|
*/
|
|
26730
26758
|
await this.loadMarkets();
|
|
26731
26759
|
const market = this.market(symbol);
|
|
@@ -27055,7 +27083,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
27055
27083
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
27056
27084
|
* @param {int} [params.until] timestamp in ms of the latest funding rate to fetch
|
|
27057
27085
|
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
27058
|
-
* @returns {[
|
|
27086
|
+
* @returns {object[]} a list of [funding rate structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#funding-rate-history-structure}
|
|
27059
27087
|
*/
|
|
27060
27088
|
this.checkRequiredSymbol('fetchFundingRateHistory', symbol);
|
|
27061
27089
|
await this.loadMarkets();
|
|
@@ -27218,7 +27246,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
27218
27246
|
* @name bingx#fetchTickers
|
|
27219
27247
|
* @description fetches price tickers for multiple markets, statistical calculations with the information calculated over the past 24 hours each market
|
|
27220
27248
|
* @see https://bingx-api.github.io/docs/#/swapV2/market-api.html#Get%20Ticker
|
|
27221
|
-
* @param {[
|
|
27249
|
+
* @param {string[]|undefined} symbols unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
|
27222
27250
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
27223
27251
|
* @returns {object} a dictionary of [ticker structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
|
|
27224
27252
|
*/
|
|
@@ -27455,10 +27483,10 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
27455
27483
|
* @description fetch all open positions
|
|
27456
27484
|
* @see https://bingx-api.github.io/docs/#/swapV2/account-api.html#Perpetual%20Swap%20Positions
|
|
27457
27485
|
* @see https://bingx-api.github.io/docs/#/standard/contract-interface.html#Query%20standard%20contract%20balance
|
|
27458
|
-
* @param {[
|
|
27486
|
+
* @param {string[]|undefined} symbols list of unified market symbols
|
|
27459
27487
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
27460
27488
|
* @param {boolean} [params.standard] whether to fetch standard contract positions
|
|
27461
|
-
* @returns {[
|
|
27489
|
+
* @returns {object[]} a list of [position structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#position-structure}
|
|
27462
27490
|
*/
|
|
27463
27491
|
await this.loadMarkets();
|
|
27464
27492
|
symbols = this.marketSymbols(symbols);
|
|
@@ -27982,7 +28010,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
27982
28010
|
* @see https://bingx-api.github.io/docs/#/swapV2/trade-api.html#Cancel%20All%20Orders
|
|
27983
28011
|
* @param {string} [symbol] unified market symbol, only orders in the market of this symbol are cancelled when symbol is not undefined
|
|
27984
28012
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
27985
|
-
* @returns {[
|
|
28013
|
+
* @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
|
|
27986
28014
|
*/
|
|
27987
28015
|
this.checkRequiredSymbol('cancelAllOrders', symbol);
|
|
27988
28016
|
await this.loadMarkets();
|
|
@@ -28032,7 +28060,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28032
28060
|
* @description cancel multiple orders
|
|
28033
28061
|
* @see https://bingx-api.github.io/docs/#/swapV2/trade-api.html#Cancel%20a%20Batch%20of%20Orders
|
|
28034
28062
|
* @see https://bingx-api.github.io/docs/#/spot/trade-api.html#Cancel%20a%20Batch%20of%20Orders
|
|
28035
|
-
* @param {[
|
|
28063
|
+
* @param {string[]} ids order ids
|
|
28036
28064
|
* @param {string} symbol unified market symbol, default is undefined
|
|
28037
28065
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28038
28066
|
* @returns {object} an list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
|
|
@@ -28181,7 +28209,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28181
28209
|
* @param {int} [since] the earliest time in ms to fetch open orders for
|
|
28182
28210
|
* @param {int} [limit] the maximum number of open order structures to retrieve
|
|
28183
28211
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28184
|
-
* @returns {[
|
|
28212
|
+
* @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
|
|
28185
28213
|
*/
|
|
28186
28214
|
this.checkRequiredSymbol('fetchOrders', symbol);
|
|
28187
28215
|
await this.loadMarkets();
|
|
@@ -28270,7 +28298,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28270
28298
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28271
28299
|
* @param {int} [params.until] the latest time in ms to fetch orders for
|
|
28272
28300
|
* @param {boolean} [params.standard] whether to fetch standard contract orders
|
|
28273
|
-
* @returns {[
|
|
28301
|
+
* @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
|
|
28274
28302
|
*/
|
|
28275
28303
|
this.checkRequiredSymbol('fetchClosedOrders', symbol);
|
|
28276
28304
|
await this.loadMarkets();
|
|
@@ -28401,7 +28429,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28401
28429
|
* @param {int} [since] the earliest time in ms to fetch transfers for
|
|
28402
28430
|
* @param {int} [limit] the maximum number of transfers structures to retrieve
|
|
28403
28431
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28404
|
-
* @returns {[
|
|
28432
|
+
* @returns {object[]} a list of [transfer structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#transfer-structure}
|
|
28405
28433
|
*/
|
|
28406
28434
|
await this.loadMarkets();
|
|
28407
28435
|
let currency = undefined;
|
|
@@ -28546,7 +28574,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28546
28574
|
* @param {int} [since] the earliest time in ms to fetch deposits for
|
|
28547
28575
|
* @param {int} [limit] the maximum number of deposits structures to retrieve
|
|
28548
28576
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28549
|
-
* @returns {[
|
|
28577
|
+
* @returns {object[]} a list of [transaction structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
|
|
28550
28578
|
*/
|
|
28551
28579
|
await this.loadMarkets();
|
|
28552
28580
|
const request = {};
|
|
@@ -28591,7 +28619,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28591
28619
|
* @param {int} [since] the earliest time in ms to fetch withdrawals for
|
|
28592
28620
|
* @param {int} [limit] the maximum number of withdrawals structures to retrieve
|
|
28593
28621
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28594
|
-
* @returns {[
|
|
28622
|
+
* @returns {object[]} a list of [transaction structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
|
|
28595
28623
|
*/
|
|
28596
28624
|
await this.loadMarkets();
|
|
28597
28625
|
const request = {};
|
|
@@ -28864,7 +28892,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28864
28892
|
* @param {int} [limit] the maximum number of trades structures to retrieve
|
|
28865
28893
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28866
28894
|
* @param {string} params.trandingUnit COIN (directly represent assets such as BTC and ETH) or CONT (represents the number of contract sheets)
|
|
28867
|
-
* @returns {[
|
|
28895
|
+
* @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure}
|
|
28868
28896
|
*/
|
|
28869
28897
|
this.checkRequiredArgument('fetchMyTrades', symbol, 'symbol');
|
|
28870
28898
|
this.checkRequiredArgument('fetchMyTrades', since, 'since');
|
|
@@ -28974,7 +29002,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
28974
29002
|
* @name bingx#fetchDepositWithdrawFees
|
|
28975
29003
|
* @description fetch deposit and withdraw fees
|
|
28976
29004
|
* @see https://bingx-api.github.io/docs/#/common/account-api.html#All%20Coins'%20Information
|
|
28977
|
-
* @param {[
|
|
29005
|
+
* @param {string[]|undefined} codes list of unified currency codes
|
|
28978
29006
|
* @param {object} [params] extra parameters specific to the bingx api endpoint
|
|
28979
29007
|
* @returns {object} a list of [fee structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#fee-structure}
|
|
28980
29008
|
*/
|
|
@@ -29086,7 +29114,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
29086
29114
|
query += 'signature=' + signature;
|
|
29087
29115
|
headers = {
|
|
29088
29116
|
'X-BX-APIKEY': this.apiKey,
|
|
29089
|
-
'X-SOURCE-KEY': 'CCXT',
|
|
29117
|
+
'X-SOURCE-KEY': this.safeString(this.options, 'broker', 'CCXT'),
|
|
29090
29118
|
};
|
|
29091
29119
|
url += query;
|
|
29092
29120
|
}
|
|
@@ -39719,6 +39747,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
39719
39747
|
'40017': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
39720
39748
|
'40018': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.PermissionDenied,
|
|
39721
39749
|
'40019': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
39750
|
+
'40037': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.AuthenticationError,
|
|
39722
39751
|
'40102': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
39723
39752
|
'40103': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
39724
39753
|
'40104': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
@@ -53802,6 +53831,7 @@ class bitopro extends _abstract_bitopro_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
53802
53831
|
'provisioning/trading-pairs': 1,
|
|
53803
53832
|
'provisioning/limitations-and-fees': 1,
|
|
53804
53833
|
'trading-history/{pair}': 1,
|
|
53834
|
+
'price/otc/{currency}': 1,
|
|
53805
53835
|
},
|
|
53806
53836
|
},
|
|
53807
53837
|
'private': {
|
|
@@ -61391,9 +61421,16 @@ class bitstamp extends _abstract_bitstamp_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
61391
61421
|
'trading-pairs-info/': 1,
|
|
61392
61422
|
'currencies/': 1,
|
|
61393
61423
|
'eur_usd/': 1,
|
|
61424
|
+
'travel_rule/vasps/': 1,
|
|
61394
61425
|
},
|
|
61395
61426
|
},
|
|
61396
61427
|
'private': {
|
|
61428
|
+
'get': {
|
|
61429
|
+
'travel_rule/contacts/': 1,
|
|
61430
|
+
'contacts/{contact_uuid}/': 1,
|
|
61431
|
+
'earn/subscriptions/': 1,
|
|
61432
|
+
'earn/transactions/': 1,
|
|
61433
|
+
},
|
|
61397
61434
|
'post': {
|
|
61398
61435
|
'account_balances/': 1,
|
|
61399
61436
|
'account_balances/{currency}/': 1,
|
|
@@ -61420,6 +61457,7 @@ class bitstamp extends _abstract_bitstamp_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
61420
61457
|
'transfer-from-main/': 1,
|
|
61421
61458
|
'my_trading_pairs/': 1,
|
|
61422
61459
|
'fees/trading/': 1,
|
|
61460
|
+
'fees/trading/{pair}': 1,
|
|
61423
61461
|
'fees/withdrawal/': 1,
|
|
61424
61462
|
'fees/withdrawal/{currency}/': 1,
|
|
61425
61463
|
'withdrawal-requests/': 1,
|
|
@@ -61593,6 +61631,10 @@ class bitstamp extends _abstract_bitstamp_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
61593
61631
|
'dgld_address/': 1,
|
|
61594
61632
|
'ldo_withdrawal/': 1,
|
|
61595
61633
|
'ldo_address/': 1,
|
|
61634
|
+
'travel_rule/contacts/': 1,
|
|
61635
|
+
'earn/subscribe/': 1,
|
|
61636
|
+
'earn/subscriptions/setting/': 1,
|
|
61637
|
+
'earn/unsubscribe': 1,
|
|
61596
61638
|
},
|
|
61597
61639
|
},
|
|
61598
61640
|
},
|
|
@@ -74274,35 +74316,35 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74274
74316
|
'derivatives/v3/public/open-interest': 1,
|
|
74275
74317
|
'derivatives/v3/public/insurance': 1,
|
|
74276
74318
|
// v5
|
|
74277
|
-
'v5/announcements/index':
|
|
74319
|
+
'v5/announcements/index': 5,
|
|
74278
74320
|
// market
|
|
74279
|
-
'v5/market/time':
|
|
74280
|
-
'v5/market/kline':
|
|
74281
|
-
'v5/market/mark-price-kline':
|
|
74282
|
-
'v5/market/index-price-kline':
|
|
74283
|
-
'v5/market/premium-index-price-kline':
|
|
74284
|
-
'v5/market/instruments-info':
|
|
74285
|
-
'v5/market/orderbook':
|
|
74286
|
-
'v5/market/tickers':
|
|
74287
|
-
'v5/market/funding/history':
|
|
74288
|
-
'v5/market/recent-trade':
|
|
74289
|
-
'v5/market/open-interest':
|
|
74290
|
-
'v5/market/historical-volatility':
|
|
74291
|
-
'v5/market/insurance':
|
|
74292
|
-
'v5/market/risk-limit':
|
|
74293
|
-
'v5/market/delivery-price':
|
|
74294
|
-
'v5/market/account-ratio':
|
|
74321
|
+
'v5/market/time': 5,
|
|
74322
|
+
'v5/market/kline': 5,
|
|
74323
|
+
'v5/market/mark-price-kline': 5,
|
|
74324
|
+
'v5/market/index-price-kline': 5,
|
|
74325
|
+
'v5/market/premium-index-price-kline': 5,
|
|
74326
|
+
'v5/market/instruments-info': 5,
|
|
74327
|
+
'v5/market/orderbook': 5,
|
|
74328
|
+
'v5/market/tickers': 5,
|
|
74329
|
+
'v5/market/funding/history': 5,
|
|
74330
|
+
'v5/market/recent-trade': 5,
|
|
74331
|
+
'v5/market/open-interest': 5,
|
|
74332
|
+
'v5/market/historical-volatility': 5,
|
|
74333
|
+
'v5/market/insurance': 5,
|
|
74334
|
+
'v5/market/risk-limit': 5,
|
|
74335
|
+
'v5/market/delivery-price': 5,
|
|
74336
|
+
'v5/market/account-ratio': 5,
|
|
74295
74337
|
// spot leverage token
|
|
74296
|
-
'v5/spot-lever-token/info':
|
|
74297
|
-
'v5/spot-lever-token/reference':
|
|
74338
|
+
'v5/spot-lever-token/info': 5,
|
|
74339
|
+
'v5/spot-lever-token/reference': 5,
|
|
74298
74340
|
// spot margin trade
|
|
74299
|
-
'v5/spot-margin-trade/data':
|
|
74300
|
-
'v5/spot-cross-margin-trade/data':
|
|
74301
|
-
'v5/spot-cross-margin-trade/pledge-token':
|
|
74302
|
-
'v5/spot-cross-margin-trade/borrow-token':
|
|
74341
|
+
'v5/spot-margin-trade/data': 5,
|
|
74342
|
+
'v5/spot-cross-margin-trade/data': 5,
|
|
74343
|
+
'v5/spot-cross-margin-trade/pledge-token': 5,
|
|
74344
|
+
'v5/spot-cross-margin-trade/borrow-token': 5,
|
|
74303
74345
|
// institutional lending
|
|
74304
|
-
'v5/ins-loan/product-infos':
|
|
74305
|
-
'v5/ins-loan/ensure-tokens-convert':
|
|
74346
|
+
'v5/ins-loan/product-infos': 5,
|
|
74347
|
+
'v5/ins-loan/ensure-tokens-convert': 5,
|
|
74306
74348
|
},
|
|
74307
74349
|
},
|
|
74308
74350
|
'private': {
|
|
@@ -74371,11 +74413,11 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74371
74413
|
'spot/v3/private/margin-ltv': 10,
|
|
74372
74414
|
// account
|
|
74373
74415
|
'asset/v1/private/transfer/list': 50,
|
|
74374
|
-
'asset/v3/private/transfer/inter-transfer/list/query':
|
|
74416
|
+
'asset/v3/private/transfer/inter-transfer/list/query': 50,
|
|
74375
74417
|
'asset/v1/private/sub-member/transfer/list': 50,
|
|
74376
|
-
'asset/v3/private/transfer/sub-member/list/query':
|
|
74377
|
-
'asset/v3/private/transfer/sub-member-transfer/list/query':
|
|
74378
|
-
'asset/v3/private/transfer/universal-transfer/list/query':
|
|
74418
|
+
'asset/v3/private/transfer/sub-member/list/query': 50,
|
|
74419
|
+
'asset/v3/private/transfer/sub-member-transfer/list/query': 50,
|
|
74420
|
+
'asset/v3/private/transfer/universal-transfer/list/query': 25,
|
|
74379
74421
|
'asset/v1/private/sub-member/member-ids': 50,
|
|
74380
74422
|
'asset/v1/private/deposit/record/query': 50,
|
|
74381
74423
|
'asset/v1/private/withdraw/record/query': 25,
|
|
@@ -74383,11 +74425,11 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74383
74425
|
'asset/v3/private/coin-info/query': 25,
|
|
74384
74426
|
'asset/v1/private/asset-info/query': 50,
|
|
74385
74427
|
'asset/v1/private/deposit/address': 100,
|
|
74386
|
-
'asset/v3/private/deposit/address/query':
|
|
74428
|
+
'asset/v3/private/deposit/address/query': 10,
|
|
74387
74429
|
'asset/v1/private/universal/transfer/list': 50,
|
|
74388
|
-
'contract/v3/private/copytrading/order/list':
|
|
74389
|
-
'contract/v3/private/copytrading/position/list':
|
|
74390
|
-
'contract/v3/private/copytrading/wallet/balance':
|
|
74430
|
+
'contract/v3/private/copytrading/order/list': 30,
|
|
74431
|
+
'contract/v3/private/copytrading/position/list': 40,
|
|
74432
|
+
'contract/v3/private/copytrading/wallet/balance': 25,
|
|
74391
74433
|
'contract/v3/private/position/limit-info': 25,
|
|
74392
74434
|
'contract/v3/private/order/unfilled-orders': 1,
|
|
74393
74435
|
'contract/v3/private/order/list': 1,
|
|
@@ -74414,43 +74456,43 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74414
74456
|
'user/v3/private/query-sub-members': 5,
|
|
74415
74457
|
'user/v3/private/query-api': 5,
|
|
74416
74458
|
'user/v3/private/get-member-type': 1,
|
|
74417
|
-
'asset/v3/private/transfer/transfer-coin/list/query':
|
|
74418
|
-
'asset/v3/private/transfer/account-coin/balance/query':
|
|
74419
|
-
'asset/v3/private/transfer/account-coins/balance/query':
|
|
74420
|
-
'asset/v3/private/transfer/asset-info/query':
|
|
74459
|
+
'asset/v3/private/transfer/transfer-coin/list/query': 50,
|
|
74460
|
+
'asset/v3/private/transfer/account-coin/balance/query': 50,
|
|
74461
|
+
'asset/v3/private/transfer/account-coins/balance/query': 25,
|
|
74462
|
+
'asset/v3/private/transfer/asset-info/query': 50,
|
|
74421
74463
|
'asset/v3/public/deposit/allowed-deposit-list/query': 0.17,
|
|
74422
|
-
'asset/v3/private/deposit/record/query':
|
|
74423
|
-
'asset/v3/private/withdraw/record/query':
|
|
74464
|
+
'asset/v3/private/deposit/record/query': 10,
|
|
74465
|
+
'asset/v3/private/withdraw/record/query': 10,
|
|
74424
74466
|
// v5
|
|
74425
74467
|
// trade
|
|
74426
74468
|
'v5/order/realtime': 5,
|
|
74427
74469
|
'v5/order/history': 5,
|
|
74428
|
-
'v5/order/spot-borrow-check':
|
|
74470
|
+
'v5/order/spot-borrow-check': 1,
|
|
74429
74471
|
// position
|
|
74430
74472
|
'v5/position/list': 5,
|
|
74431
74473
|
'v5/execution/list': 5,
|
|
74432
74474
|
'v5/position/closed-pnl': 5,
|
|
74433
74475
|
// pre-upgrade
|
|
74434
|
-
'v5/pre-upgrade/order/history':
|
|
74435
|
-
'v5/pre-upgrade/execution/list':
|
|
74436
|
-
'v5/pre-upgrade/position/closed-pnl':
|
|
74437
|
-
'v5/pre-upgrade/account/transaction-log':
|
|
74438
|
-
'v5/pre-upgrade/asset/delivery-record':
|
|
74439
|
-
'v5/pre-upgrade/asset/settlement-record':
|
|
74476
|
+
'v5/pre-upgrade/order/history': 5,
|
|
74477
|
+
'v5/pre-upgrade/execution/list': 5,
|
|
74478
|
+
'v5/pre-upgrade/position/closed-pnl': 5,
|
|
74479
|
+
'v5/pre-upgrade/account/transaction-log': 5,
|
|
74480
|
+
'v5/pre-upgrade/asset/delivery-record': 5,
|
|
74481
|
+
'v5/pre-upgrade/asset/settlement-record': 5,
|
|
74440
74482
|
// account
|
|
74441
|
-
'v5/account/wallet-balance':
|
|
74442
|
-
'v5/account/borrow-history':
|
|
74443
|
-
'v5/account/set-collateral-switch':
|
|
74444
|
-
'v5/account/collateral-info':
|
|
74445
|
-
'v5/asset/coin-greeks':
|
|
74446
|
-
'v5/account/fee-rate':
|
|
74447
|
-
'v5/account/info':
|
|
74448
|
-
'v5/account/transaction-log':
|
|
74449
|
-
'v5/account/mmp-state':
|
|
74483
|
+
'v5/account/wallet-balance': 1,
|
|
74484
|
+
'v5/account/borrow-history': 1,
|
|
74485
|
+
'v5/account/set-collateral-switch': 5,
|
|
74486
|
+
'v5/account/collateral-info': 1,
|
|
74487
|
+
'v5/asset/coin-greeks': 1,
|
|
74488
|
+
'v5/account/fee-rate': 10,
|
|
74489
|
+
'v5/account/info': 5,
|
|
74490
|
+
'v5/account/transaction-log': 1,
|
|
74491
|
+
'v5/account/mmp-state': 5,
|
|
74450
74492
|
// asset
|
|
74451
74493
|
'v5/asset/exchange/order-record': 5,
|
|
74452
|
-
'v5/asset/delivery-record':
|
|
74453
|
-
'v5/asset/settlement-record':
|
|
74494
|
+
'v5/asset/delivery-record': 5,
|
|
74495
|
+
'v5/asset/settlement-record': 5,
|
|
74454
74496
|
'v5/asset/transfer/query-asset-info': 50,
|
|
74455
74497
|
'v5/asset/transfer/query-account-coins-balance': 25,
|
|
74456
74498
|
'v5/asset/transfer/query-account-coin-balance': 50,
|
|
@@ -74458,38 +74500,38 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74458
74500
|
'v5/asset/transfer/query-inter-transfer-list': 50,
|
|
74459
74501
|
'v5/asset/transfer/query-sub-member-list': 50,
|
|
74460
74502
|
'v5/asset/transfer/query-universal-transfer-list': 25,
|
|
74461
|
-
'v5/asset/deposit/query-allowed-list':
|
|
74503
|
+
'v5/asset/deposit/query-allowed-list': 5,
|
|
74462
74504
|
'v5/asset/deposit/query-record': 10,
|
|
74463
74505
|
'v5/asset/deposit/query-sub-member-record': 10,
|
|
74464
|
-
'v5/asset/deposit/query-internal-record':
|
|
74506
|
+
'v5/asset/deposit/query-internal-record': 5,
|
|
74465
74507
|
'v5/asset/deposit/query-address': 10,
|
|
74466
74508
|
'v5/asset/deposit/query-sub-member-address': 10,
|
|
74467
74509
|
'v5/asset/coin/query-info': 25,
|
|
74468
74510
|
'v5/asset/withdraw/query-record': 10,
|
|
74469
|
-
'v5/asset/withdraw/withdrawable-amount':
|
|
74511
|
+
'v5/asset/withdraw/withdrawable-amount': 5,
|
|
74470
74512
|
// user
|
|
74471
74513
|
'v5/user/query-sub-members': 5,
|
|
74472
74514
|
'v5/user/query-api': 5,
|
|
74473
|
-
'v5/user/get-member-type':
|
|
74474
|
-
'v5/user/aff-customer-info':
|
|
74515
|
+
'v5/user/get-member-type': 5,
|
|
74516
|
+
'v5/user/aff-customer-info': 5,
|
|
74475
74517
|
// spot leverage token
|
|
74476
74518
|
'v5/spot-lever-token/order-record': 1,
|
|
74477
74519
|
// spot margin trade
|
|
74478
|
-
'v5/spot-margin-trade/state':
|
|
74520
|
+
'v5/spot-margin-trade/state': 5,
|
|
74479
74521
|
'v5/spot-cross-margin-trade/loan-info': 1,
|
|
74480
74522
|
'v5/spot-cross-margin-trade/account': 1,
|
|
74481
74523
|
'v5/spot-cross-margin-trade/orders': 1,
|
|
74482
74524
|
'v5/spot-cross-margin-trade/repay-history': 1,
|
|
74483
74525
|
// institutional lending
|
|
74484
|
-
'v5/ins-loan/loan-order':
|
|
74485
|
-
'v5/ins-loan/repaid-history':
|
|
74486
|
-
'v5/ins-loan/ltv-convert':
|
|
74526
|
+
'v5/ins-loan/loan-order': 5,
|
|
74527
|
+
'v5/ins-loan/repaid-history': 5,
|
|
74528
|
+
'v5/ins-loan/ltv-convert': 5,
|
|
74487
74529
|
// c2c lending
|
|
74488
|
-
'v5/lending/info':
|
|
74489
|
-
'v5/lending/history-order':
|
|
74490
|
-
'v5/lending/account':
|
|
74530
|
+
'v5/lending/info': 5,
|
|
74531
|
+
'v5/lending/history-order': 5,
|
|
74532
|
+
'v5/lending/account': 5,
|
|
74491
74533
|
// broker
|
|
74492
|
-
'v5/broker/earning-record':
|
|
74534
|
+
'v5/broker/earning-record': 5,
|
|
74493
74535
|
},
|
|
74494
74536
|
'post': {
|
|
74495
74537
|
// inverse swap
|
|
@@ -74555,17 +74597,17 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74555
74597
|
'spot/v3/private/cross-margin-repay': 10,
|
|
74556
74598
|
// account
|
|
74557
74599
|
'asset/v1/private/transfer': 150,
|
|
74558
|
-
'asset/v3/private/transfer/inter-transfer':
|
|
74600
|
+
'asset/v3/private/transfer/inter-transfer': 150,
|
|
74559
74601
|
'asset/v1/private/sub-member/transfer': 150,
|
|
74560
74602
|
'asset/v1/private/withdraw': 50,
|
|
74561
|
-
'asset/v3/private/withdraw/create':
|
|
74603
|
+
'asset/v3/private/withdraw/create': 300,
|
|
74562
74604
|
'asset/v1/private/withdraw/cancel': 50,
|
|
74563
|
-
'asset/v3/private/withdraw/cancel':
|
|
74605
|
+
'asset/v3/private/withdraw/cancel': 50,
|
|
74564
74606
|
'asset/v1/private/transferable-subs/save': 3000,
|
|
74565
74607
|
'asset/v1/private/universal/transfer': 1500,
|
|
74566
|
-
'asset/v3/private/transfer/sub-member-transfer':
|
|
74567
|
-
'asset/v3/private/transfer/transfer-sub-member-save':
|
|
74568
|
-
'asset/v3/private/transfer/universal-transfer':
|
|
74608
|
+
'asset/v3/private/transfer/sub-member-transfer': 150,
|
|
74609
|
+
'asset/v3/private/transfer/transfer-sub-member-save': 150,
|
|
74610
|
+
'asset/v3/private/transfer/universal-transfer': 10,
|
|
74569
74611
|
'user/v3/private/create-sub-member': 10,
|
|
74570
74612
|
'user/v3/private/create-sub-api': 10,
|
|
74571
74613
|
'user/v3/private/update-api': 10,
|
|
@@ -74604,12 +74646,12 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74604
74646
|
'perpetual/usdc/openapi/public/v1/risk-limit/list': 2.5,
|
|
74605
74647
|
'perpetual/usdc/openapi/private/v1/position/set-risk-limit': 2.5,
|
|
74606
74648
|
'perpetual/usdc/openapi/private/v1/predicted-funding': 2.5,
|
|
74607
|
-
'contract/v3/private/copytrading/order/create':
|
|
74608
|
-
'contract/v3/private/copytrading/order/cancel':
|
|
74609
|
-
'contract/v3/private/copytrading/order/close':
|
|
74610
|
-
'contract/v3/private/copytrading/position/close':
|
|
74611
|
-
'contract/v3/private/copytrading/position/set-leverage':
|
|
74612
|
-
'contract/v3/private/copytrading/wallet/transfer':
|
|
74649
|
+
'contract/v3/private/copytrading/order/create': 30,
|
|
74650
|
+
'contract/v3/private/copytrading/order/cancel': 30,
|
|
74651
|
+
'contract/v3/private/copytrading/order/close': 30,
|
|
74652
|
+
'contract/v3/private/copytrading/position/close': 40,
|
|
74653
|
+
'contract/v3/private/copytrading/position/set-leverage': 40,
|
|
74654
|
+
'contract/v3/private/copytrading/wallet/transfer': 25,
|
|
74613
74655
|
'contract/v3/private/copytrading/order/trading-stop': 2.5,
|
|
74614
74656
|
'contract/v3/private/order/create': 1,
|
|
74615
74657
|
'contract/v3/private/order/cancel': 1,
|
|
@@ -74624,13 +74666,13 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74624
74666
|
'contract/v3/private/position/set-risk-limit': 1,
|
|
74625
74667
|
'contract/v3/private/account/setMarginMode': 1,
|
|
74626
74668
|
// derivative
|
|
74627
|
-
'unified/v3/private/order/create':
|
|
74628
|
-
'unified/v3/private/order/replace':
|
|
74629
|
-
'unified/v3/private/order/cancel':
|
|
74630
|
-
'unified/v3/private/order/create-batch':
|
|
74631
|
-
'unified/v3/private/order/replace-batch':
|
|
74632
|
-
'unified/v3/private/order/cancel-batch':
|
|
74633
|
-
'unified/v3/private/order/cancel-all':
|
|
74669
|
+
'unified/v3/private/order/create': 30,
|
|
74670
|
+
'unified/v3/private/order/replace': 30,
|
|
74671
|
+
'unified/v3/private/order/cancel': 30,
|
|
74672
|
+
'unified/v3/private/order/create-batch': 30,
|
|
74673
|
+
'unified/v3/private/order/replace-batch': 30,
|
|
74674
|
+
'unified/v3/private/order/cancel-batch': 30,
|
|
74675
|
+
'unified/v3/private/order/cancel-all': 30,
|
|
74634
74676
|
'unified/v3/private/position/set-leverage': 2.5,
|
|
74635
74677
|
'unified/v3/private/position/tpsl/switch-mode': 2.5,
|
|
74636
74678
|
'unified/v3/private/position/set-risk-limit': 2.5,
|
|
@@ -74644,34 +74686,34 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74644
74686
|
'fht/compliance/tax/v3/private/url': 50,
|
|
74645
74687
|
// v5
|
|
74646
74688
|
// trade
|
|
74647
|
-
'v5/order/create': 5,
|
|
74689
|
+
'v5/order/create': 2.5,
|
|
74648
74690
|
'v5/order/amend': 5,
|
|
74649
|
-
'v5/order/cancel': 5,
|
|
74650
|
-
'v5/order/cancel-all':
|
|
74691
|
+
'v5/order/cancel': 2.5,
|
|
74692
|
+
'v5/order/cancel-all': 50,
|
|
74651
74693
|
'v5/order/create-batch': 5,
|
|
74652
74694
|
'v5/order/amend-batch': 5,
|
|
74653
74695
|
'v5/order/cancel-batch': 5,
|
|
74654
|
-
'v5/order/disconnected-cancel-all':
|
|
74696
|
+
'v5/order/disconnected-cancel-all': 5,
|
|
74655
74697
|
// position
|
|
74656
74698
|
'v5/position/set-leverage': 5,
|
|
74657
|
-
'v5/position/switch-isolated':
|
|
74699
|
+
'v5/position/switch-isolated': 5,
|
|
74658
74700
|
'v5/position/set-tpsl-mode': 5,
|
|
74659
|
-
'v5/position/switch-mode':
|
|
74701
|
+
'v5/position/switch-mode': 5,
|
|
74660
74702
|
'v5/position/set-risk-limit': 5,
|
|
74661
74703
|
'v5/position/trading-stop': 5,
|
|
74662
|
-
'v5/position/set-auto-add-margin':
|
|
74663
|
-
'v5/position/add-margin':
|
|
74664
|
-
'v5/position/confirm-pending-mmr':
|
|
74704
|
+
'v5/position/set-auto-add-margin': 5,
|
|
74705
|
+
'v5/position/add-margin': 5,
|
|
74706
|
+
'v5/position/confirm-pending-mmr': 5,
|
|
74665
74707
|
// account
|
|
74666
|
-
'v5/account/upgrade-to-uta':
|
|
74667
|
-
'v5/account/set-margin-mode':
|
|
74668
|
-
'v5/account/mmp-modify':
|
|
74669
|
-
'v5/account/mmp-reset':
|
|
74708
|
+
'v5/account/upgrade-to-uta': 5,
|
|
74709
|
+
'v5/account/set-margin-mode': 5,
|
|
74710
|
+
'v5/account/mmp-modify': 5,
|
|
74711
|
+
'v5/account/mmp-reset': 5,
|
|
74670
74712
|
// asset
|
|
74671
74713
|
'v5/asset/transfer/inter-transfer': 150,
|
|
74672
74714
|
'v5/asset/transfer/save-transfer-sub-member': 150,
|
|
74673
74715
|
'v5/asset/transfer/universal-transfer': 10,
|
|
74674
|
-
'v5/asset/deposit/deposit-to-account':
|
|
74716
|
+
'v5/asset/deposit/deposit-to-account': 5,
|
|
74675
74717
|
'v5/asset/withdraw/create': 300,
|
|
74676
74718
|
'v5/asset/withdraw/cancel': 50,
|
|
74677
74719
|
// user
|
|
@@ -74686,15 +74728,15 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
74686
74728
|
'v5/spot-lever-token/purchase': 2.5,
|
|
74687
74729
|
'v5/spot-lever-token/redeem': 2.5,
|
|
74688
74730
|
// spot margin trade
|
|
74689
|
-
'v5/spot-margin-trade/switch-mode':
|
|
74690
|
-
'v5/spot-margin-trade/set-leverage':
|
|
74731
|
+
'v5/spot-margin-trade/switch-mode': 5,
|
|
74732
|
+
'v5/spot-margin-trade/set-leverage': 5,
|
|
74691
74733
|
'v5/spot-cross-margin-trade/loan': 2.5,
|
|
74692
74734
|
'v5/spot-cross-margin-trade/repay': 2.5,
|
|
74693
74735
|
'v5/spot-cross-margin-trade/switch': 2.5,
|
|
74694
74736
|
// c2c lending
|
|
74695
|
-
'v5/lending/purchase':
|
|
74696
|
-
'v5/lending/redeem':
|
|
74697
|
-
'v5/lending/redeem-cancel':
|
|
74737
|
+
'v5/lending/purchase': 5,
|
|
74738
|
+
'v5/lending/redeem': 5,
|
|
74739
|
+
'v5/lending/redeem-cancel': 5,
|
|
74698
74740
|
},
|
|
74699
74741
|
'delete': {
|
|
74700
74742
|
// spot
|
|
@@ -78233,7 +78275,10 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
78233
78275
|
// Valid for option only.
|
|
78234
78276
|
// 'orderIv': '0', // Implied volatility; parameters are passed according to the real value; for example, for 10%, 0.1 is passed
|
|
78235
78277
|
};
|
|
78236
|
-
if (market['
|
|
78278
|
+
if (market['spot']) {
|
|
78279
|
+
request['category'] = 'spot';
|
|
78280
|
+
}
|
|
78281
|
+
else if (market['linear']) {
|
|
78237
78282
|
request['category'] = 'linear';
|
|
78238
78283
|
}
|
|
78239
78284
|
else if (market['inverse']) {
|
|
@@ -111046,7 +111091,7 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
111046
111091
|
'swap': true,
|
|
111047
111092
|
'future': false,
|
|
111048
111093
|
'option': false,
|
|
111049
|
-
'addMargin':
|
|
111094
|
+
'addMargin': true,
|
|
111050
111095
|
'cancelOrder': true,
|
|
111051
111096
|
'cancelOrders': true,
|
|
111052
111097
|
'createOrder': true,
|
|
@@ -111098,10 +111143,10 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
111098
111143
|
'fetchTradingFees': false,
|
|
111099
111144
|
'fetchTransfers': true,
|
|
111100
111145
|
'fetchWithdrawals': true,
|
|
111101
|
-
'reduceMargin':
|
|
111146
|
+
'reduceMargin': true,
|
|
111102
111147
|
'setLeverage': true,
|
|
111103
111148
|
'setMargin': false,
|
|
111104
|
-
'setMarginMode':
|
|
111149
|
+
'setMarginMode': true,
|
|
111105
111150
|
'setPositionMode': false,
|
|
111106
111151
|
'transfer': true,
|
|
111107
111152
|
'withdraw': true,
|
|
@@ -114843,6 +114888,88 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
114843
114888
|
}
|
|
114844
114889
|
return depositWithdrawFees;
|
|
114845
114890
|
}
|
|
114891
|
+
async addMargin(symbol, amount, params = {}) {
|
|
114892
|
+
/**
|
|
114893
|
+
* @method
|
|
114894
|
+
* @name digifinex#addMargin
|
|
114895
|
+
* @description add margin to a position
|
|
114896
|
+
* @see https://docs.digifinex.com/en-ww/swap/v2/rest.html#positionmargin
|
|
114897
|
+
* @param {string} symbol unified market symbol
|
|
114898
|
+
* @param {float} amount amount of margin to add
|
|
114899
|
+
* @param {object} [params] extra parameters specific to the digifinex api endpoint
|
|
114900
|
+
* @param {string} params.side the position side: 'long' or 'short'
|
|
114901
|
+
* @returns {object} a [margin structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#margin-structure}
|
|
114902
|
+
*/
|
|
114903
|
+
const side = this.safeString(params, 'side');
|
|
114904
|
+
this.checkRequiredArgument('addMargin', side, 'side', ['long', 'short']);
|
|
114905
|
+
return await this.modifyMarginHelper(symbol, amount, 1, params);
|
|
114906
|
+
}
|
|
114907
|
+
async reduceMargin(symbol, amount, params = {}) {
|
|
114908
|
+
/**
|
|
114909
|
+
* @method
|
|
114910
|
+
* @name digifinex#reduceMargin
|
|
114911
|
+
* @description remove margin from a position
|
|
114912
|
+
* @see https://docs.digifinex.com/en-ww/swap/v2/rest.html#positionmargin
|
|
114913
|
+
* @param {string} symbol unified market symbol
|
|
114914
|
+
* @param {float} amount the amount of margin to remove
|
|
114915
|
+
* @param {object} [params] extra parameters specific to the digifinex api endpoint
|
|
114916
|
+
* @param {string} params.side the position side: 'long' or 'short'
|
|
114917
|
+
* @returns {object} a [margin structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#margin-structure}
|
|
114918
|
+
*/
|
|
114919
|
+
const side = this.safeString(params, 'side');
|
|
114920
|
+
this.checkRequiredArgument('reduceMargin', side, 'side', ['long', 'short']);
|
|
114921
|
+
return await this.modifyMarginHelper(symbol, amount, 2, params);
|
|
114922
|
+
}
|
|
114923
|
+
async modifyMarginHelper(symbol, amount, type, params = {}) {
|
|
114924
|
+
await this.loadMarkets();
|
|
114925
|
+
const side = this.safeString(params, 'side');
|
|
114926
|
+
const market = this.market(symbol);
|
|
114927
|
+
const request = {
|
|
114928
|
+
'instrument_id': market['id'],
|
|
114929
|
+
'amount': this.numberToString(amount),
|
|
114930
|
+
'type': type,
|
|
114931
|
+
'side': side,
|
|
114932
|
+
};
|
|
114933
|
+
const response = await this.privateSwapPostAccountPositionMargin(this.extend(request, params));
|
|
114934
|
+
//
|
|
114935
|
+
// {
|
|
114936
|
+
// "code": 0,
|
|
114937
|
+
// "data": {
|
|
114938
|
+
// "instrument_id": "BTCUSDTPERP",
|
|
114939
|
+
// "side": "long",
|
|
114940
|
+
// "type": 1,
|
|
114941
|
+
// "amount": "3.6834"
|
|
114942
|
+
// }
|
|
114943
|
+
// }
|
|
114944
|
+
//
|
|
114945
|
+
const code = this.safeInteger(response, 'code');
|
|
114946
|
+
const status = (code === 0) ? 'ok' : 'failed';
|
|
114947
|
+
const data = this.safeValue(response, 'data', {});
|
|
114948
|
+
return this.extend(this.parseMarginModification(data, market), {
|
|
114949
|
+
'status': status,
|
|
114950
|
+
});
|
|
114951
|
+
}
|
|
114952
|
+
parseMarginModification(data, market = undefined) {
|
|
114953
|
+
//
|
|
114954
|
+
// {
|
|
114955
|
+
// "instrument_id": "BTCUSDTPERP",
|
|
114956
|
+
// "side": "long",
|
|
114957
|
+
// "type": 1,
|
|
114958
|
+
// "amount": "3.6834"
|
|
114959
|
+
// }
|
|
114960
|
+
//
|
|
114961
|
+
const marketId = this.safeString(data, 'instrument_id');
|
|
114962
|
+
const rawType = this.safeInteger(data, 'type');
|
|
114963
|
+
return {
|
|
114964
|
+
'info': data,
|
|
114965
|
+
'type': (rawType === 1) ? 'add' : 'reduce',
|
|
114966
|
+
'amount': this.safeNumber(data, 'amount'),
|
|
114967
|
+
'total': undefined,
|
|
114968
|
+
'code': market['settle'],
|
|
114969
|
+
'symbol': this.safeSymbol(marketId, market, undefined, 'swap'),
|
|
114970
|
+
'status': undefined,
|
|
114971
|
+
};
|
|
114972
|
+
}
|
|
114846
114973
|
async fetchFundingHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
114847
114974
|
/**
|
|
114848
114975
|
* @method
|
|
@@ -114909,6 +115036,30 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
114909
115036
|
'amount': this.safeNumber(income, 'amount'),
|
|
114910
115037
|
};
|
|
114911
115038
|
}
|
|
115039
|
+
async setMarginMode(marginMode, symbol = undefined, params = {}) {
|
|
115040
|
+
/**
|
|
115041
|
+
* @method
|
|
115042
|
+
* @name digifinex#setMarginMode
|
|
115043
|
+
* @description set margin mode to 'cross' or 'isolated'
|
|
115044
|
+
* @see https://docs.digifinex.com/en-ww/swap/v2/rest.html#positionmode
|
|
115045
|
+
* @param {string} marginMode 'cross' or 'isolated'
|
|
115046
|
+
* @param {string} symbol unified market symbol
|
|
115047
|
+
* @param {object} [params] extra parameters specific to the digifinex api endpoint
|
|
115048
|
+
* @returns {object} response from the exchange
|
|
115049
|
+
*/
|
|
115050
|
+
this.checkRequiredSymbol('setMarginMode', symbol);
|
|
115051
|
+
await this.loadMarkets();
|
|
115052
|
+
const market = this.market(symbol);
|
|
115053
|
+
marginMode = marginMode.toLowerCase();
|
|
115054
|
+
if (marginMode === 'cross') {
|
|
115055
|
+
marginMode = 'crossed';
|
|
115056
|
+
}
|
|
115057
|
+
const request = {
|
|
115058
|
+
'instrument_id': market['id'],
|
|
115059
|
+
'margin_mode': marginMode,
|
|
115060
|
+
};
|
|
115061
|
+
return await this.privateSwapPostAccountPositionMode(this.extend(request, params));
|
|
115062
|
+
}
|
|
114912
115063
|
sign(path, api = [], method = 'GET', params = {}, headers = undefined, body = undefined) {
|
|
114913
115064
|
const signed = api[0] === 'private';
|
|
114914
115065
|
const endpoint = api[1];
|
|
@@ -132219,41 +132370,195 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
132219
132370
|
},
|
|
132220
132371
|
'networks': {
|
|
132221
132372
|
// by displaynames
|
|
132222
|
-
'
|
|
132223
|
-
'ALGORAND': 'ALGO',
|
|
132224
|
-
'BEP20': 'BEP20',
|
|
132225
|
-
'BSC': 'BEP20',
|
|
132226
|
-
'ERC20': 'ERC20',
|
|
132227
|
-
'ETH': 'ERC20',
|
|
132228
|
-
'AVALANCHE': 'AVAXCCHAIN',
|
|
132229
|
-
'AVAX': 'AVAXCCHAIN',
|
|
132230
|
-
'HRC20': 'HECO',
|
|
132231
|
-
'HECO': 'HECO',
|
|
132232
|
-
// 'HT': 'HECO', // HT is not acceptable networkcode for unification
|
|
132233
|
-
'TRC20': 'TRC20',
|
|
132234
|
-
'TRX': 'TRC20',
|
|
132235
|
-
'BTC': 'BTC',
|
|
132236
|
-
'BITCOIN': 'BTC',
|
|
132237
|
-
'ARBITRUM': 'ARB',
|
|
132238
|
-
'ARB': 'ARB',
|
|
132239
|
-
'SOLANA': 'SOL',
|
|
132240
|
-
'SOL': 'SOL',
|
|
132241
|
-
'SPL': 'SOL',
|
|
132242
|
-
'PRC20': 'PRC20',
|
|
132243
|
-
'POLYGON': 'PRC20',
|
|
132244
|
-
'MATIC': 'PRC20',
|
|
132245
|
-
},
|
|
132246
|
-
'networksById': {
|
|
132247
|
-
'ALGO': 'ALGO',
|
|
132248
|
-
'BEP20': 'BEP20',
|
|
132249
|
-
'ERC20': 'ERC20',
|
|
132250
|
-
'AVAXCCHAIN': 'AVALANCHE',
|
|
132251
|
-
'HECO': 'HRC20',
|
|
132252
|
-
'TRC20': 'TRC20',
|
|
132373
|
+
'TRC20': 'TRX',
|
|
132253
132374
|
'BTC': 'BTC',
|
|
132254
|
-
'
|
|
132375
|
+
'ERC20': 'ETH',
|
|
132255
132376
|
'SOL': 'SOLANA',
|
|
132256
|
-
'
|
|
132377
|
+
'HRC20': 'HECO',
|
|
132378
|
+
'BEP20': 'BSC',
|
|
132379
|
+
'XMR': 'XMR',
|
|
132380
|
+
'LTC': 'LTC',
|
|
132381
|
+
'XRP': 'XRP',
|
|
132382
|
+
'XLM': 'XLM',
|
|
132383
|
+
'CRONOS': 'CRO',
|
|
132384
|
+
'CRO': 'CRO',
|
|
132385
|
+
'GLMR': 'GLMR',
|
|
132386
|
+
'POLYGON': 'MATIC',
|
|
132387
|
+
'MATIC': 'MATIC',
|
|
132388
|
+
'BTT': 'BTT',
|
|
132389
|
+
'CUBE': 'CUBE',
|
|
132390
|
+
'IOST': 'IOST',
|
|
132391
|
+
'NEO': 'NEO',
|
|
132392
|
+
'KLAY': 'KLAY',
|
|
132393
|
+
'EOS': 'EOS',
|
|
132394
|
+
'THETA': 'THETA',
|
|
132395
|
+
'NAS': 'NAS',
|
|
132396
|
+
'NULS': 'NULS',
|
|
132397
|
+
'QTUM': 'QTUM',
|
|
132398
|
+
'FTM': 'FTM',
|
|
132399
|
+
'CELO': 'CELO',
|
|
132400
|
+
'DOGE': 'DOGE',
|
|
132401
|
+
'DOGECHAIN': 'DOGECHAIN',
|
|
132402
|
+
'NEAR': 'NEAR',
|
|
132403
|
+
'STEP': 'STEP',
|
|
132404
|
+
'BITCI': 'BITCI',
|
|
132405
|
+
'CARDANO': 'ADA',
|
|
132406
|
+
'ADA': 'ADA',
|
|
132407
|
+
'ETC': 'ETC',
|
|
132408
|
+
'LUK': 'LUK',
|
|
132409
|
+
'MINEPLEX': 'MINEPLEX',
|
|
132410
|
+
'DASH': 'DASH',
|
|
132411
|
+
'ZEC': 'ZEC',
|
|
132412
|
+
'IOTA': 'IOTA',
|
|
132413
|
+
'NEON3': 'NEON3',
|
|
132414
|
+
'XEM': 'XEM',
|
|
132415
|
+
'HC': 'HC',
|
|
132416
|
+
'LSK': 'LSK',
|
|
132417
|
+
'DCR': 'DCR',
|
|
132418
|
+
'BTG': 'BTG',
|
|
132419
|
+
'STEEM': 'STEEM',
|
|
132420
|
+
'BTS': 'BTS',
|
|
132421
|
+
'ICX': 'ICX',
|
|
132422
|
+
'WAVES': 'WAVES',
|
|
132423
|
+
'CMT': 'CMT',
|
|
132424
|
+
'BTM': 'BTM',
|
|
132425
|
+
'VET': 'VET',
|
|
132426
|
+
'XZC': 'XZC',
|
|
132427
|
+
'ACT': 'ACT',
|
|
132428
|
+
'SMT': 'SMT',
|
|
132429
|
+
'BCD': 'BCD',
|
|
132430
|
+
'WAX': 'WAX1',
|
|
132431
|
+
'WICC': 'WICC',
|
|
132432
|
+
'ELF': 'ELF',
|
|
132433
|
+
'ZIL': 'ZIL',
|
|
132434
|
+
'ELA': 'ELA',
|
|
132435
|
+
'BCX': 'BCX',
|
|
132436
|
+
'SBTC': 'SBTC',
|
|
132437
|
+
'BIFI': 'BIFI',
|
|
132438
|
+
'CTXC': 'CTXC',
|
|
132439
|
+
'WAN': 'WAN',
|
|
132440
|
+
'POLYX': 'POLYX',
|
|
132441
|
+
'PAI': 'PAI',
|
|
132442
|
+
'WTC': 'WTC',
|
|
132443
|
+
'DGB': 'DGB',
|
|
132444
|
+
'XVG': 'XVG',
|
|
132445
|
+
'AAC': 'AAC',
|
|
132446
|
+
'AE': 'AE',
|
|
132447
|
+
'SEELE': 'SEELE',
|
|
132448
|
+
'BCV': 'BCV',
|
|
132449
|
+
'GRS': 'GRS',
|
|
132450
|
+
'ARDR': 'ARDR',
|
|
132451
|
+
'NANO': 'NANO',
|
|
132452
|
+
'ZEN': 'ZEN',
|
|
132453
|
+
'RBTC': 'RBTC',
|
|
132454
|
+
'BSV': 'BSV',
|
|
132455
|
+
'GAS': 'GAS',
|
|
132456
|
+
'XTZ': 'XTZ',
|
|
132457
|
+
'LAMB': 'LAMB',
|
|
132458
|
+
'CVNT1': 'CVNT1',
|
|
132459
|
+
'DOCK': 'DOCK',
|
|
132460
|
+
'SC': 'SC',
|
|
132461
|
+
'KMD': 'KMD',
|
|
132462
|
+
'ETN': 'ETN',
|
|
132463
|
+
'TOP': 'TOP',
|
|
132464
|
+
'IRIS': 'IRIS',
|
|
132465
|
+
'UGAS': 'UGAS',
|
|
132466
|
+
'TT': 'TT',
|
|
132467
|
+
'NEWTON': 'NEWTON',
|
|
132468
|
+
'VSYS': 'VSYS',
|
|
132469
|
+
'FSN': 'FSN',
|
|
132470
|
+
'BHD': 'BHD',
|
|
132471
|
+
'ONE': 'ONE',
|
|
132472
|
+
'EM': 'EM',
|
|
132473
|
+
'CKB': 'CKB',
|
|
132474
|
+
'EOSS': 'EOSS',
|
|
132475
|
+
'HIVE': 'HIVE',
|
|
132476
|
+
'RVN': 'RVN',
|
|
132477
|
+
'DOT': 'DOT',
|
|
132478
|
+
'KSM': 'KSM',
|
|
132479
|
+
'BAND': 'BAND',
|
|
132480
|
+
'OEP4': 'OEP4',
|
|
132481
|
+
'NBS': 'NBS',
|
|
132482
|
+
'FIS': 'FIS',
|
|
132483
|
+
'AR': 'AR',
|
|
132484
|
+
'HBAR': 'HBAR',
|
|
132485
|
+
'FIL': 'FIL',
|
|
132486
|
+
'MASS': 'MASS',
|
|
132487
|
+
'KAVA': 'KAVA',
|
|
132488
|
+
'XYM': 'XYM',
|
|
132489
|
+
'ENJ': 'ENJ',
|
|
132490
|
+
'CRUST': 'CRUST',
|
|
132491
|
+
'ICP': 'ICP',
|
|
132492
|
+
'CSPR': 'CSPR',
|
|
132493
|
+
'FLOW': 'FLOW',
|
|
132494
|
+
'IOTX': 'IOTX',
|
|
132495
|
+
'LAT': 'LAT',
|
|
132496
|
+
'APT': 'APT',
|
|
132497
|
+
'XCH': 'XCH',
|
|
132498
|
+
'MINA': 'MINA',
|
|
132499
|
+
'XEC': 'ECASH',
|
|
132500
|
+
'XPRT': 'XPRT',
|
|
132501
|
+
'CCA': 'ACA',
|
|
132502
|
+
'AOTI': 'COTI',
|
|
132503
|
+
'AKT': 'AKT',
|
|
132504
|
+
'ARS': 'ARS',
|
|
132505
|
+
'ASTR': 'ASTR',
|
|
132506
|
+
'AZERO': 'AZERO',
|
|
132507
|
+
'BLD': 'BLD',
|
|
132508
|
+
'BRISE': 'BRISE',
|
|
132509
|
+
'CORE': 'CORE',
|
|
132510
|
+
'DESO': 'DESO',
|
|
132511
|
+
'DFI': 'DFI',
|
|
132512
|
+
'EGLD': 'EGLD',
|
|
132513
|
+
'ERG': 'ERG',
|
|
132514
|
+
'ETHF': 'ETHFAIR',
|
|
132515
|
+
'ETHW': 'ETHW',
|
|
132516
|
+
'EVMOS': 'EVMOS',
|
|
132517
|
+
'FIO': 'FIO',
|
|
132518
|
+
'FLR': 'FLR',
|
|
132519
|
+
'FINSCHIA': 'FINSCHIA',
|
|
132520
|
+
'KMA': 'KMA',
|
|
132521
|
+
'KYVE': 'KYVE',
|
|
132522
|
+
'MEV': 'MEV',
|
|
132523
|
+
'MOVR': 'MOVR',
|
|
132524
|
+
'NODL': 'NODL',
|
|
132525
|
+
'OAS': 'OAS',
|
|
132526
|
+
'OSMO': 'OSMO',
|
|
132527
|
+
'PAYCOIN': 'PAYCOIN',
|
|
132528
|
+
'POKT': 'POKT',
|
|
132529
|
+
'PYG': 'PYG',
|
|
132530
|
+
'REI': 'REI',
|
|
132531
|
+
'SCRT': 'SCRT',
|
|
132532
|
+
'SDN': 'SDN',
|
|
132533
|
+
'SEI': 'SEI',
|
|
132534
|
+
'SGB': 'SGB',
|
|
132535
|
+
'SUI': 'SUI',
|
|
132536
|
+
'SXP': 'SOLAR',
|
|
132537
|
+
'SYS': 'SYS',
|
|
132538
|
+
'TENET': 'TENET',
|
|
132539
|
+
'TON': 'TON',
|
|
132540
|
+
'UNQ': 'UNQ',
|
|
132541
|
+
'UYU': 'UYU',
|
|
132542
|
+
'WEMIX': 'WEMIX',
|
|
132543
|
+
'XDC': 'XDC',
|
|
132544
|
+
'XPLA': 'XPLA',
|
|
132545
|
+
// todo: below
|
|
132546
|
+
// 'LUNC': 'LUNC',
|
|
132547
|
+
// 'TERRA': 'TERRA', // tbd
|
|
132548
|
+
// 'LUNA': 'LUNA', tbd
|
|
132549
|
+
// 'FCT2': 'FCT2',
|
|
132550
|
+
// FIL-0X ?
|
|
132551
|
+
// 'COSMOS': 'ATOM1',
|
|
132552
|
+
// 'ATOM': 'ATOM1',
|
|
132553
|
+
// 'CRO': 'CRO',
|
|
132554
|
+
// 'OP': [ 'OPTIMISM', 'OPTIMISMETH' ]
|
|
132555
|
+
// 'ARB': ['ARB', 'ARBITRUMETH']
|
|
132556
|
+
// 'CHZ': [ 'CHZ', 'CZH' ],
|
|
132557
|
+
// todo: AVAXCCHAIN CCHAIN AVAX
|
|
132558
|
+
// 'ALGO': ['ALGO', 'ALGOUSDT']
|
|
132559
|
+
// 'ONT': [ 'ONT', 'ONTOLOGY' ],
|
|
132560
|
+
// 'BCC': 'BCC', BCH's somewhat chain
|
|
132561
|
+
// 'DBC1': 'DBC1',
|
|
132257
132562
|
},
|
|
132258
132563
|
// https://github.com/ccxt/ccxt/issues/5376
|
|
132259
132564
|
'fetchOrdersByStatesMethod': 'spot_private_get_v1_order_orders',
|
|
@@ -134204,10 +134509,10 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
134204
134509
|
for (let j = 0; j < chains.length; j++) {
|
|
134205
134510
|
const chainEntry = chains[j];
|
|
134206
134511
|
const uniqueChainId = this.safeString(chainEntry, 'chain'); // i.e. usdterc20, trc20usdt ...
|
|
134207
|
-
const title = this.
|
|
134512
|
+
const title = this.safeString2(chainEntry, 'baseChain', 'displayName'); // baseChain and baseChainProtocol are together existent or inexistent in entries, but baseChain is preferred. when they are both inexistent, then we use generic displayName
|
|
134208
134513
|
this.options['networkChainIdsByNames'][code][title] = uniqueChainId;
|
|
134209
134514
|
this.options['networkNamesByChainIds'][uniqueChainId] = title;
|
|
134210
|
-
const networkCode = this.networkIdToCode(
|
|
134515
|
+
const networkCode = this.networkIdToCode(uniqueChainId);
|
|
134211
134516
|
minWithdraw = this.safeNumber(chainEntry, 'minWithdrawAmt');
|
|
134212
134517
|
maxWithdraw = this.safeNumber(chainEntry, 'maxWithdrawAmt');
|
|
134213
134518
|
const withdrawStatus = this.safeString(chainEntry, 'withdrawStatus');
|
|
@@ -134227,6 +134532,10 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
134227
134532
|
'id': uniqueChainId,
|
|
134228
134533
|
'network': networkCode,
|
|
134229
134534
|
'limits': {
|
|
134535
|
+
'deposit': {
|
|
134536
|
+
'min': undefined,
|
|
134537
|
+
'max': undefined,
|
|
134538
|
+
},
|
|
134230
134539
|
'withdraw': {
|
|
134231
134540
|
'min': minWithdraw,
|
|
134232
134541
|
'max': maxWithdraw,
|
|
@@ -134257,6 +134566,10 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
134257
134566
|
'min': minWithdraw,
|
|
134258
134567
|
'max': maxWithdraw,
|
|
134259
134568
|
},
|
|
134569
|
+
'deposit': {
|
|
134570
|
+
'min': undefined,
|
|
134571
|
+
'max': undefined,
|
|
134572
|
+
},
|
|
134260
134573
|
},
|
|
134261
134574
|
'precision': this.parseNumber(minPrecision),
|
|
134262
134575
|
'networks': networks,
|
|
@@ -134284,8 +134597,13 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
134284
134597
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError(this.id + ' networkCodeToId() - markets need to be loaded at first');
|
|
134285
134598
|
}
|
|
134286
134599
|
const uniqueNetworkIds = this.safeValue(this.options['networkChainIdsByNames'], currencyCode, {});
|
|
134287
|
-
|
|
134288
|
-
|
|
134600
|
+
if (networkCode in uniqueNetworkIds) {
|
|
134601
|
+
return uniqueNetworkIds[networkCode];
|
|
134602
|
+
}
|
|
134603
|
+
else {
|
|
134604
|
+
const networkTitle = super.networkCodeToId(networkCode);
|
|
134605
|
+
return this.safeValue(uniqueNetworkIds, networkTitle, networkTitle);
|
|
134606
|
+
}
|
|
134289
134607
|
}
|
|
134290
134608
|
async fetchBalance(params = {}) {
|
|
134291
134609
|
/**
|
|
@@ -136724,7 +137042,7 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
136724
137042
|
'currency': code,
|
|
136725
137043
|
'address': address,
|
|
136726
137044
|
'tag': tag,
|
|
136727
|
-
'network': this.networkIdToCode(networkId
|
|
137045
|
+
'network': this.networkIdToCode(networkId),
|
|
136728
137046
|
'note': note,
|
|
136729
137047
|
'info': depositAddress,
|
|
136730
137048
|
};
|
|
@@ -136999,7 +137317,7 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
136999
137317
|
'txid': txHash,
|
|
137000
137318
|
'timestamp': timestamp,
|
|
137001
137319
|
'datetime': this.iso8601(timestamp),
|
|
137002
|
-
'network': this.networkIdToCode(networkId
|
|
137320
|
+
'network': this.networkIdToCode(networkId),
|
|
137003
137321
|
'address': this.safeString(transaction, 'address'),
|
|
137004
137322
|
'addressTo': undefined,
|
|
137005
137323
|
'addressFrom': undefined,
|
|
@@ -146386,8 +146704,10 @@ class kraken extends _abstract_kraken_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
146386
146704
|
for (let i = 0; i < currencyIds.length; i++) {
|
|
146387
146705
|
const currencyId = currencyIds[i];
|
|
146388
146706
|
const code = this.safeCurrencyCode(currencyId);
|
|
146707
|
+
const balance = this.safeValue(balances, currencyId, {});
|
|
146389
146708
|
const account = this.account();
|
|
146390
|
-
account['
|
|
146709
|
+
account['used'] = this.safeString(balance, 'hold_trade');
|
|
146710
|
+
account['total'] = this.safeString(balance, 'balance');
|
|
146391
146711
|
result[code] = account;
|
|
146392
146712
|
}
|
|
146393
146713
|
return this.safeBalance(result);
|
|
@@ -146397,19 +146717,24 @@ class kraken extends _abstract_kraken_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
146397
146717
|
* @method
|
|
146398
146718
|
* @name kraken#fetchBalance
|
|
146399
146719
|
* @description query for balance and get the amount of funds available for trading or funds locked in orders
|
|
146400
|
-
* @see https://docs.kraken.com/rest/#tag/Account-Data/operation/
|
|
146720
|
+
* @see https://docs.kraken.com/rest/#tag/Account-Data/operation/getExtendedBalance
|
|
146401
146721
|
* @param {object} [params] extra parameters specific to the kraken api endpoint
|
|
146402
146722
|
* @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
|
|
146403
146723
|
*/
|
|
146404
146724
|
await this.loadMarkets();
|
|
146405
|
-
const response = await this.
|
|
146725
|
+
const response = await this.privatePostBalanceEx(params);
|
|
146406
146726
|
//
|
|
146407
146727
|
// {
|
|
146408
|
-
// "error":[],
|
|
146409
|
-
// "result":{
|
|
146410
|
-
// "ZUSD":
|
|
146411
|
-
//
|
|
146412
|
-
//
|
|
146728
|
+
// "error": [],
|
|
146729
|
+
// "result": {
|
|
146730
|
+
// "ZUSD": {
|
|
146731
|
+
// "balance": 25435.21,
|
|
146732
|
+
// "hold_trade": 8249.76
|
|
146733
|
+
// },
|
|
146734
|
+
// "XXBT": {
|
|
146735
|
+
// "balance": 1.2435,
|
|
146736
|
+
// "hold_trade": 0.8423
|
|
146737
|
+
// }
|
|
146413
146738
|
// }
|
|
146414
146739
|
// }
|
|
146415
146740
|
//
|
|
@@ -150256,11 +150581,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150256
150581
|
'id': 'kucoin',
|
|
150257
150582
|
'name': 'KuCoin',
|
|
150258
150583
|
'countries': ['SC'],
|
|
150259
|
-
|
|
150260
|
-
// so I set the 'ratelimit' on those which supposedly 'arent ratelimited'
|
|
150261
|
-
// to the limit of the cheapest endpoint
|
|
150262
|
-
// 60 requests in 3 seconds = 20 requests per second => ( 1000ms / 20 ) = 50 ms between requests on average
|
|
150263
|
-
'rateLimit': 50,
|
|
150584
|
+
'rateLimit': 10,
|
|
150264
150585
|
'version': 'v2',
|
|
150265
150586
|
'certified': true,
|
|
150266
150587
|
'pro': true,
|
|
@@ -150289,7 +150610,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150289
150610
|
'fetchBorrowInterest': true,
|
|
150290
150611
|
'fetchBorrowRate': false,
|
|
150291
150612
|
'fetchBorrowRateHistories': false,
|
|
150292
|
-
'fetchBorrowRateHistory':
|
|
150613
|
+
'fetchBorrowRateHistory': false,
|
|
150293
150614
|
'fetchBorrowRates': false,
|
|
150294
150615
|
'fetchClosedOrders': true,
|
|
150295
150616
|
'fetchCurrencies': true,
|
|
@@ -150350,13 +150671,6 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150350
150671
|
'futuresPublic': 'https://api-futures.kucoin.com',
|
|
150351
150672
|
'webExchange': 'https://kucoin.com/_api',
|
|
150352
150673
|
},
|
|
150353
|
-
'test': {
|
|
150354
|
-
'public': 'https://openapi-sandbox.kucoin.com',
|
|
150355
|
-
'private': 'https://openapi-sandbox.kucoin.com',
|
|
150356
|
-
'futuresPrivate': 'https://api-sandbox-futures.kucoin.com',
|
|
150357
|
-
'futuresPublic': 'https://api-sandbox-futures.kucoin.com',
|
|
150358
|
-
'webExchange': 'https://kucoin.com/_api',
|
|
150359
|
-
},
|
|
150360
150674
|
'www': 'https://www.kucoin.com',
|
|
150361
150675
|
'doc': [
|
|
150362
150676
|
'https://docs.kucoin.com',
|
|
@@ -150368,205 +150682,229 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150368
150682
|
'password': true,
|
|
150369
150683
|
},
|
|
150370
150684
|
'api': {
|
|
150685
|
+
// level VIP0
|
|
150686
|
+
// Spot => 3000/30s => 100/s
|
|
150687
|
+
// Weight = x => 100/(100/x) = x
|
|
150688
|
+
// Futures Management Public => 2000/30s => 200/3/s
|
|
150689
|
+
// Weight = x => 100/(200/3/x) = x*1.5
|
|
150371
150690
|
'public': {
|
|
150372
150691
|
'get': {
|
|
150373
|
-
|
|
150374
|
-
'
|
|
150375
|
-
'
|
|
150376
|
-
'
|
|
150377
|
-
'market/
|
|
150378
|
-
'market/
|
|
150379
|
-
'market/
|
|
150380
|
-
'
|
|
150381
|
-
'market/
|
|
150382
|
-
'market/
|
|
150383
|
-
'market/
|
|
150384
|
-
'
|
|
150385
|
-
'
|
|
150386
|
-
'prices':
|
|
150387
|
-
'
|
|
150388
|
-
'
|
|
150389
|
-
|
|
150692
|
+
// spot trading
|
|
150693
|
+
'currencies': 4.5,
|
|
150694
|
+
'currencies/{currency}': 4.5,
|
|
150695
|
+
'symbols': 6,
|
|
150696
|
+
'market/orderbook/level1': 3,
|
|
150697
|
+
'market/allTickers': 22.5,
|
|
150698
|
+
'market/stats': 22.5,
|
|
150699
|
+
'markets': 4.5,
|
|
150700
|
+
'market/orderbook/level{level}_{limit}': 6,
|
|
150701
|
+
'market/orderbook/level2_20': 3,
|
|
150702
|
+
'market/orderbook/level2_100': 6,
|
|
150703
|
+
'market/histories': 4.5,
|
|
150704
|
+
'market/candles': 4.5,
|
|
150705
|
+
'prices': 4.5,
|
|
150706
|
+
'timestamp': 4.5,
|
|
150707
|
+
'status': 4.5,
|
|
150708
|
+
// margin trading
|
|
150709
|
+
'mark-price/{symbol}/current': 3,
|
|
150710
|
+
'margin/config': 25, // 25SW
|
|
150390
150711
|
},
|
|
150391
150712
|
'post': {
|
|
150392
|
-
|
|
150713
|
+
// ws
|
|
150714
|
+
'bullet-public': 15, // 10PW
|
|
150393
150715
|
},
|
|
150394
150716
|
},
|
|
150395
150717
|
'private': {
|
|
150396
150718
|
'get': {
|
|
150397
|
-
|
|
150398
|
-
'
|
|
150399
|
-
'
|
|
150400
|
-
'accounts':
|
|
150401
|
-
'accounts/
|
|
150402
|
-
|
|
150403
|
-
'
|
|
150404
|
-
'
|
|
150405
|
-
'
|
|
150406
|
-
'
|
|
150407
|
-
'sub
|
|
150408
|
-
'
|
|
150409
|
-
|
|
150410
|
-
'
|
|
150411
|
-
'
|
|
150412
|
-
'
|
|
150413
|
-
'
|
|
150414
|
-
'
|
|
150415
|
-
|
|
150416
|
-
'
|
|
150417
|
-
'withdrawals':
|
|
150418
|
-
'withdrawals/quotas':
|
|
150419
|
-
'
|
|
150420
|
-
'
|
|
150421
|
-
'
|
|
150422
|
-
'
|
|
150423
|
-
|
|
150424
|
-
'
|
|
150425
|
-
'
|
|
150426
|
-
'
|
|
150427
|
-
'isolated/borrow/outstanding': 2,
|
|
150428
|
-
'isolated/borrow/repaid': 2,
|
|
150429
|
-
'isolated/symbols': 2,
|
|
150430
|
-
'margin/account': 1,
|
|
150431
|
-
'margin/borrow': 1,
|
|
150432
|
-
'margin/borrow/outstanding': 1,
|
|
150433
|
-
'margin/borrow/repaid': 1,
|
|
150434
|
-
'margin/lend/active': 1,
|
|
150435
|
-
'margin/lend/done': 1,
|
|
150436
|
-
'margin/lend/trade/unsettled': 1,
|
|
150437
|
-
'margin/lend/trade/settled': 1,
|
|
150438
|
-
'margin/lend/assets': 1,
|
|
150439
|
-
'margin/market': 1,
|
|
150440
|
-
'stop-order/{orderId}': 1,
|
|
150441
|
-
'stop-order': 1,
|
|
150442
|
-
'stop-order/queryOrderByClientOid': 1,
|
|
150443
|
-
'trade-fees': 1.3333,
|
|
150444
|
-
'hf/accounts/ledgers': 3.33,
|
|
150719
|
+
// account
|
|
150720
|
+
'user-info': 30,
|
|
150721
|
+
'accounts': 7.5,
|
|
150722
|
+
'accounts/{accountId}': 7.5,
|
|
150723
|
+
'accounts/ledgers': 3,
|
|
150724
|
+
'hf/accounts/ledgers': 2,
|
|
150725
|
+
'hf/margin/account/ledgers': 2,
|
|
150726
|
+
'transaction-history': 3,
|
|
150727
|
+
'sub/user': 30,
|
|
150728
|
+
'sub-accounts/{subUserId}': 22.5,
|
|
150729
|
+
'sub-accounts': 30,
|
|
150730
|
+
'sub/api-key': 30,
|
|
150731
|
+
// funding
|
|
150732
|
+
'margin/account': 40,
|
|
150733
|
+
'margin/accounts': 15,
|
|
150734
|
+
'isolated/accounts': 15,
|
|
150735
|
+
'deposit-addresses': 7.5,
|
|
150736
|
+
'deposits': 7.5,
|
|
150737
|
+
'hist-deposits': 7.5,
|
|
150738
|
+
'withdrawals': 30,
|
|
150739
|
+
'hist-withdrawals': 30,
|
|
150740
|
+
'withdrawals/quotas': 30,
|
|
150741
|
+
'accounts/transferable': 30,
|
|
150742
|
+
'transfer-list': 30,
|
|
150743
|
+
'base-fee': 3,
|
|
150744
|
+
'trade-fees': 3,
|
|
150745
|
+
// spot trading
|
|
150746
|
+
'market/orderbook/level{level}': 3,
|
|
150747
|
+
'market/orderbook/level2': 3,
|
|
150748
|
+
'market/orderbook/level3': 3,
|
|
150445
150749
|
'hf/orders/active': 2,
|
|
150446
|
-
'hf/orders/active/symbols':
|
|
150750
|
+
'hf/orders/active/symbols': 2,
|
|
150447
150751
|
'hf/orders/done': 2,
|
|
150448
|
-
'hf/orders/{orderId}':
|
|
150752
|
+
'hf/orders/{orderId}': 2,
|
|
150449
150753
|
'hf/orders/client-order/{clientOid}': 2,
|
|
150450
|
-
'hf/
|
|
150451
|
-
'
|
|
150452
|
-
'
|
|
150453
|
-
'
|
|
150454
|
-
'
|
|
150455
|
-
'
|
|
150754
|
+
'hf/orders/dead-cancel-all/query': 2,
|
|
150755
|
+
'hf/fills': 2,
|
|
150756
|
+
'orders': 2,
|
|
150757
|
+
'limit/orders': 3,
|
|
150758
|
+
'orders/{orderId}': 2,
|
|
150759
|
+
'order/client-order/{clientOid}': 3,
|
|
150760
|
+
'fills': 10,
|
|
150761
|
+
'limit/fills': 20,
|
|
150762
|
+
'stop-order': 8,
|
|
150763
|
+
'stop-order/{orderId}': 3,
|
|
150764
|
+
'stop-order/queryOrderByClientOid': 3,
|
|
150765
|
+
// margin trading
|
|
150766
|
+
'hf/margin/orders/active': 4,
|
|
150767
|
+
'hf/margin/orders/done': 10,
|
|
150768
|
+
'hf/margin/orders/{orderId}': 4,
|
|
150769
|
+
'hf/margin/orders/client-order/{clientOid}': 5,
|
|
150770
|
+
'hf/margin/fills': 5,
|
|
150771
|
+
'etf/info': 25,
|
|
150772
|
+
'risk/limit/strategy': 20,
|
|
150773
|
+
'isolated/symbols': 20,
|
|
150774
|
+
'isolated/account/{symbol}': 50,
|
|
150775
|
+
'margin/borrow': 15,
|
|
150776
|
+
'margin/repay': 15,
|
|
150777
|
+
'project/list': 10,
|
|
150778
|
+
'project/marketInterestRate': 7.5,
|
|
150779
|
+
'redeem/orders': 10,
|
|
150780
|
+
'purchase/orders': 10, // 10SW
|
|
150456
150781
|
},
|
|
150457
150782
|
'post': {
|
|
150458
|
-
|
|
150459
|
-
'
|
|
150460
|
-
'
|
|
150461
|
-
'
|
|
150462
|
-
|
|
150463
|
-
'
|
|
150464
|
-
'
|
|
150465
|
-
'
|
|
150466
|
-
'
|
|
150467
|
-
'
|
|
150468
|
-
'
|
|
150469
|
-
'
|
|
150470
|
-
|
|
150471
|
-
'
|
|
150472
|
-
'
|
|
150473
|
-
'
|
|
150474
|
-
'
|
|
150475
|
-
'
|
|
150476
|
-
'
|
|
150477
|
-
'
|
|
150478
|
-
'
|
|
150479
|
-
'
|
|
150480
|
-
'
|
|
150481
|
-
'
|
|
150482
|
-
|
|
150483
|
-
'hf/
|
|
150484
|
-
'hf/
|
|
150485
|
-
'
|
|
150486
|
-
'margin/
|
|
150487
|
-
'
|
|
150488
|
-
'
|
|
150489
|
-
'
|
|
150783
|
+
// account
|
|
150784
|
+
'sub/user/created': 22.5,
|
|
150785
|
+
'sub/api-key': 30,
|
|
150786
|
+
'sub/api-key/update': 45,
|
|
150787
|
+
// funding
|
|
150788
|
+
'deposit-addresses': 30,
|
|
150789
|
+
'withdrawals': 7.5,
|
|
150790
|
+
'accounts/universal-transfer': 6,
|
|
150791
|
+
'accounts/sub-transfer': 45,
|
|
150792
|
+
'accounts/inner-transfer': 15,
|
|
150793
|
+
'transfer-out': 30,
|
|
150794
|
+
'transfer-in': 30,
|
|
150795
|
+
// spot trading
|
|
150796
|
+
'hf/orders': 1,
|
|
150797
|
+
'hf/orders/test': 1,
|
|
150798
|
+
'hf/orders/sync': 1,
|
|
150799
|
+
'hf/orders/multi': 1,
|
|
150800
|
+
'hf/orders/multi/sync': 1,
|
|
150801
|
+
'hf/orders/alter': 3,
|
|
150802
|
+
'hf/orders/dead-cancel-all': 2,
|
|
150803
|
+
'orders': 2,
|
|
150804
|
+
'orders/test': 2,
|
|
150805
|
+
'orders/multi': 3,
|
|
150806
|
+
'stop-order': 2,
|
|
150807
|
+
// margin trading
|
|
150808
|
+
'hf/margin/order': 5,
|
|
150809
|
+
'hf/margin/order/test': 5,
|
|
150810
|
+
'margin/order': 5,
|
|
150811
|
+
'margin/order/test': 5,
|
|
150812
|
+
'margin/borrow': 15,
|
|
150813
|
+
'margin/repay': 10,
|
|
150814
|
+
'purchase': 15,
|
|
150815
|
+
'redeem': 15,
|
|
150816
|
+
'lend/purchase/update': 10,
|
|
150817
|
+
// ws
|
|
150818
|
+
'bullet-private': 10, // 10SW
|
|
150490
150819
|
},
|
|
150491
150820
|
'delete': {
|
|
150492
|
-
|
|
150821
|
+
// account
|
|
150822
|
+
'sub/api-key': 45,
|
|
150823
|
+
// funding
|
|
150824
|
+
'withdrawals/{withdrawalId}': 30,
|
|
150825
|
+
// spot trading
|
|
150826
|
+
'hf/orders/{orderId}': 1,
|
|
150827
|
+
'hf/orders/sync/{orderId}': 1,
|
|
150828
|
+
'hf/orders/client-order/{clientOid}': 1,
|
|
150829
|
+
'hf/orders/sync/client-order/{clientOid}': 1,
|
|
150830
|
+
'hf/orders/cancel/{orderId}': 2,
|
|
150831
|
+
'hf/orders': 2,
|
|
150832
|
+
'orders/{orderId}': 3,
|
|
150833
|
+
'order/client-order/{clientOid}': 5,
|
|
150493
150834
|
'orders': 20,
|
|
150494
|
-
'
|
|
150495
|
-
'
|
|
150496
|
-
'
|
|
150497
|
-
|
|
150498
|
-
'
|
|
150499
|
-
'
|
|
150500
|
-
'
|
|
150501
|
-
'hf/orders/{orderId}': 0.4,
|
|
150502
|
-
'hf/orders/sync/{orderId}': 0.4,
|
|
150503
|
-
'hf/orders/client-order/{clientOid}': 0.4,
|
|
150504
|
-
'hf/orders/sync/client-order/{clientOid}': 0.4,
|
|
150505
|
-
'hf/orders/cancel/{orderId}': 1,
|
|
150506
|
-
'hf/orders': 20, // 3 times/3s = 1/s => cost = 20 / 1 = 20
|
|
150835
|
+
'stop-order/{orderId}': 3,
|
|
150836
|
+
'stop-order/cancelOrderByClientOid': 5,
|
|
150837
|
+
'stop-order/cancel': 3,
|
|
150838
|
+
// margin trading
|
|
150839
|
+
'hf/margin/orders/{orderId}': 5,
|
|
150840
|
+
'hf/margin/orders/client-order/{clientOid}': 5,
|
|
150841
|
+
'hf/margin/orders': 10, // 10SW
|
|
150507
150842
|
},
|
|
150508
150843
|
},
|
|
150509
150844
|
'futuresPublic': {
|
|
150510
|
-
// cheapest futures 'limited' endpoint is 40 requests per 3 seconds = 14.333 per second => cost = 20/14.333 = 1.3953
|
|
150511
150845
|
'get': {
|
|
150512
|
-
'contracts/active':
|
|
150513
|
-
'contracts/{symbol}':
|
|
150514
|
-
'ticker':
|
|
150515
|
-
'level2/snapshot':
|
|
150516
|
-
'level2/depth20':
|
|
150517
|
-
'level2/depth100':
|
|
150846
|
+
'contracts/active': 4.5,
|
|
150847
|
+
'contracts/{symbol}': 4.5,
|
|
150848
|
+
'ticker': 3,
|
|
150849
|
+
'level2/snapshot': 4.5,
|
|
150850
|
+
'level2/depth20': 7.5,
|
|
150851
|
+
'level2/depth100': 15,
|
|
150852
|
+
'trade/history': 7.5,
|
|
150853
|
+
'kline/query': 4.5,
|
|
150854
|
+
'interest/query': 7.5,
|
|
150855
|
+
'index/query': 3,
|
|
150856
|
+
'mark-price/{symbol}/current': 4.5,
|
|
150857
|
+
'premium/query': 4.5,
|
|
150858
|
+
'funding-rate/{symbol}/current': 3,
|
|
150859
|
+
'timestamp': 3,
|
|
150860
|
+
'status': 6,
|
|
150861
|
+
// ?
|
|
150518
150862
|
'level2/message/query': 1.3953,
|
|
150519
|
-
'level3/message/query': 1.3953,
|
|
150520
|
-
'level3/snapshot': 1.3953,
|
|
150521
|
-
'trade/history': 1.3953,
|
|
150522
|
-
'interest/query': 1.3953,
|
|
150523
|
-
'index/query': 1.3953,
|
|
150524
|
-
'mark-price/{symbol}/current': 1.3953,
|
|
150525
|
-
'premium/query': 1.3953,
|
|
150526
|
-
'funding-rate/{symbol}/current': 1.3953,
|
|
150527
|
-
'timestamp': 1.3953,
|
|
150528
|
-
'status': 1.3953,
|
|
150529
|
-
'kline/query': 1.3953,
|
|
150530
150863
|
},
|
|
150531
150864
|
'post': {
|
|
150532
|
-
|
|
150865
|
+
// ws
|
|
150866
|
+
'bullet-public': 15, // 10PW
|
|
150533
150867
|
},
|
|
150534
150868
|
},
|
|
150535
150869
|
'futuresPrivate': {
|
|
150536
150870
|
'get': {
|
|
150537
|
-
|
|
150538
|
-
'transaction-history':
|
|
150539
|
-
|
|
150540
|
-
'
|
|
150541
|
-
'
|
|
150542
|
-
'
|
|
150543
|
-
|
|
150544
|
-
'orders':
|
|
150545
|
-
'stopOrders':
|
|
150546
|
-
'recentDoneOrders':
|
|
150547
|
-
'orders/{orderId}':
|
|
150548
|
-
'orders/byClientOid':
|
|
150549
|
-
'fills':
|
|
150550
|
-
'recentFills':
|
|
150551
|
-
'openOrderStatistics':
|
|
150552
|
-
'position':
|
|
150553
|
-
'positions':
|
|
150554
|
-
'
|
|
150871
|
+
// account
|
|
150872
|
+
'transaction-history': 3,
|
|
150873
|
+
// funding
|
|
150874
|
+
'account-overview': 7.5,
|
|
150875
|
+
'account-overview-all': 9,
|
|
150876
|
+
'transfer-list': 30,
|
|
150877
|
+
// futures
|
|
150878
|
+
'orders': 3,
|
|
150879
|
+
'stopOrders': 9,
|
|
150880
|
+
'recentDoneOrders': 7.5,
|
|
150881
|
+
'orders/{orderId}': 7.5,
|
|
150882
|
+
'orders/byClientOid': 7.5,
|
|
150883
|
+
'fills': 7.5,
|
|
150884
|
+
'recentFills': 4.5,
|
|
150885
|
+
'openOrderStatistics': 15,
|
|
150886
|
+
'position': 3,
|
|
150887
|
+
'positions': 3,
|
|
150888
|
+
'contracts/risk-limit/{symbol}': 7.5,
|
|
150889
|
+
'funding-history': 7.5, // 5FW
|
|
150555
150890
|
},
|
|
150556
150891
|
'post': {
|
|
150557
|
-
|
|
150558
|
-
'transfer-out':
|
|
150559
|
-
'
|
|
150560
|
-
|
|
150561
|
-
'
|
|
150562
|
-
'
|
|
150892
|
+
// funding
|
|
150893
|
+
'transfer-out': 30,
|
|
150894
|
+
'transfer-in': 30,
|
|
150895
|
+
// futures
|
|
150896
|
+
'orders': 3,
|
|
150897
|
+
'orders/test': 3,
|
|
150898
|
+
'position/margin/auto-deposit-status': 6,
|
|
150899
|
+
'position/margin/deposit-margin': 6,
|
|
150900
|
+
'position/risk-limit-level/change': 6,
|
|
150901
|
+
// ws
|
|
150902
|
+
'bullet-private': 15, // 10FW
|
|
150563
150903
|
},
|
|
150564
150904
|
'delete': {
|
|
150565
|
-
'
|
|
150566
|
-
'
|
|
150567
|
-
'
|
|
150568
|
-
'orders': 6.666,
|
|
150569
|
-
'stopOrders': 1.3953,
|
|
150905
|
+
'orders/{orderId}': 1.5,
|
|
150906
|
+
'orders': 45,
|
|
150907
|
+
'stopOrders': 22.5, // 15FW
|
|
150570
150908
|
},
|
|
150571
150909
|
},
|
|
150572
150910
|
'webExchange': {
|
|
@@ -150733,27 +151071,35 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150733
151071
|
'versions': {
|
|
150734
151072
|
'public': {
|
|
150735
151073
|
'GET': {
|
|
151074
|
+
// spot trading
|
|
150736
151075
|
'currencies': 'v3',
|
|
150737
|
-
'currencies/{currency}': '
|
|
150738
|
-
'
|
|
150739
|
-
'market/orderbook/level2_20': 'v1',
|
|
150740
|
-
'market/orderbook/level2_100': 'v1',
|
|
150741
|
-
'market/orderbook/level{level}_{limit}': 'v1',
|
|
151076
|
+
'currencies/{currency}': 'v3',
|
|
151077
|
+
'symbols': 'v2',
|
|
150742
151078
|
},
|
|
150743
151079
|
},
|
|
150744
151080
|
'private': {
|
|
150745
151081
|
'GET': {
|
|
151082
|
+
// account
|
|
151083
|
+
'user-info': 'v2',
|
|
151084
|
+
'hf/margin/account/ledgers': 'v3',
|
|
151085
|
+
'sub/user': 'v2',
|
|
151086
|
+
'sub-accounts': 'v2',
|
|
151087
|
+
// funding
|
|
151088
|
+
'margin/accounts': 'v3',
|
|
151089
|
+
'isolated/accounts': 'v3',
|
|
151090
|
+
// 'deposit-addresses': 'v2',
|
|
151091
|
+
'deposit-addresses': 'v1',
|
|
151092
|
+
// spot trading
|
|
150746
151093
|
'market/orderbook/level2': 'v3',
|
|
150747
151094
|
'market/orderbook/level3': 'v3',
|
|
150748
151095
|
'market/orderbook/level{level}': 'v3',
|
|
150749
|
-
|
|
150750
|
-
'hf/
|
|
150751
|
-
'hf/orders/
|
|
150752
|
-
'hf/orders/
|
|
150753
|
-
'hf/orders/
|
|
150754
|
-
'hf/
|
|
150755
|
-
'
|
|
150756
|
-
'hf/fills': 'v1',
|
|
151096
|
+
// margin trading
|
|
151097
|
+
'hf/margin/orders/active': 'v3',
|
|
151098
|
+
'hf/margin/orders/done': 'v3',
|
|
151099
|
+
'hf/margin/orders/{orderId}': 'v3',
|
|
151100
|
+
'hf/margin/orders/client-order/{clientOid}': 'v3',
|
|
151101
|
+
'hf/margin/fills': 'v3',
|
|
151102
|
+
'etf/info': 'v3',
|
|
150757
151103
|
'margin/borrow': 'v3',
|
|
150758
151104
|
'margin/repay': 'v3',
|
|
150759
151105
|
'project/list': 'v3',
|
|
@@ -150762,14 +151108,17 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150762
151108
|
'purchase/orders': 'v3',
|
|
150763
151109
|
},
|
|
150764
151110
|
'POST': {
|
|
150765
|
-
|
|
151111
|
+
// account
|
|
151112
|
+
'sub/user/created': 'v2',
|
|
151113
|
+
// funding
|
|
151114
|
+
'accounts/universal-transfer': 'v3',
|
|
150766
151115
|
'accounts/sub-transfer': 'v2',
|
|
150767
|
-
'accounts': '
|
|
150768
|
-
'
|
|
150769
|
-
|
|
150770
|
-
|
|
150771
|
-
'hf/
|
|
150772
|
-
'hf/
|
|
151116
|
+
'accounts/inner-transfer': 'v2',
|
|
151117
|
+
'transfer-out': 'v3',
|
|
151118
|
+
// spot trading
|
|
151119
|
+
// margin trading
|
|
151120
|
+
'hf/margin/order': 'v3',
|
|
151121
|
+
'hf/margin/order/test': 'v3',
|
|
150773
151122
|
'margin/borrow': 'v3',
|
|
150774
151123
|
'margin/repay': 'v3',
|
|
150775
151124
|
'purchase': 'v3',
|
|
@@ -150777,26 +151126,18 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
150777
151126
|
'lend/purchase/update': 'v3',
|
|
150778
151127
|
},
|
|
150779
151128
|
'DELETE': {
|
|
150780
|
-
|
|
150781
|
-
|
|
150782
|
-
|
|
150783
|
-
'hf/orders/
|
|
150784
|
-
'hf/orders/
|
|
150785
|
-
'hf/orders': '
|
|
151129
|
+
// account
|
|
151130
|
+
// funding
|
|
151131
|
+
// spot trading
|
|
151132
|
+
'hf/margin/orders/{orderId}': 'v3',
|
|
151133
|
+
'hf/margin/orders/client-order/{clientOid}': 'v3',
|
|
151134
|
+
'hf/margin/orders': 'v3',
|
|
151135
|
+
// margin trading
|
|
150786
151136
|
},
|
|
150787
151137
|
},
|
|
150788
151138
|
'futuresPrivate': {
|
|
150789
|
-
'GET': {
|
|
150790
|
-
'account-overview': 'v1',
|
|
150791
|
-
'positions': 'v1',
|
|
150792
|
-
},
|
|
150793
151139
|
'POST': {
|
|
150794
|
-
'transfer-out': '
|
|
150795
|
-
},
|
|
150796
|
-
},
|
|
150797
|
-
'futuresPublic': {
|
|
150798
|
-
'GET': {
|
|
150799
|
-
'level3/snapshot': 'v2',
|
|
151140
|
+
'transfer-out': 'v3',
|
|
150800
151141
|
},
|
|
150801
151142
|
},
|
|
150802
151143
|
},
|
|
@@ -154114,42 +154455,6 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
154114
154455
|
}
|
|
154115
154456
|
return this.safeValue(config, 'cost', 1);
|
|
154116
154457
|
}
|
|
154117
|
-
async fetchBorrowRateHistory(code, since = undefined, limit = undefined, params = {}) {
|
|
154118
|
-
/**
|
|
154119
|
-
* @method
|
|
154120
|
-
* @name kucoin#fetchBorrowRateHistory
|
|
154121
|
-
* @description retrieves a history of a currencies borrow interest rate at specific time slots
|
|
154122
|
-
* @see https://docs.kucoin.com/#margin-trade-data
|
|
154123
|
-
* @param {string} code unified currency code
|
|
154124
|
-
* @param {int} [since] timestamp for the earliest borrow rate
|
|
154125
|
-
* @param {int} [limit] the maximum number of [borrow rate structures]
|
|
154126
|
-
* @param {object} [params] extra parameters specific to the kucoin api endpoint
|
|
154127
|
-
* @returns {object[]} an array of [borrow rate structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#borrow-rate-structure}
|
|
154128
|
-
*/
|
|
154129
|
-
await this.loadMarkets();
|
|
154130
|
-
const currency = this.currency(code);
|
|
154131
|
-
const request = {
|
|
154132
|
-
'currency': currency['id'],
|
|
154133
|
-
};
|
|
154134
|
-
const response = await this.publicGetMarginTradeLast(this.extend(request, params));
|
|
154135
|
-
//
|
|
154136
|
-
// {
|
|
154137
|
-
// "code": "200000",
|
|
154138
|
-
// "data": [
|
|
154139
|
-
// {
|
|
154140
|
-
// "tradeId": "62db2dcaff219600012b56cd",
|
|
154141
|
-
// "currency": "USDT",
|
|
154142
|
-
// "size": "10",
|
|
154143
|
-
// "dailyIntRate": "0.00003",
|
|
154144
|
-
// "term": 7,
|
|
154145
|
-
// "timestamp": 1658531274508488480
|
|
154146
|
-
// },
|
|
154147
|
-
// ]
|
|
154148
|
-
// }
|
|
154149
|
-
//
|
|
154150
|
-
const data = this.safeValue(response, 'data', {});
|
|
154151
|
-
return this.parseBorrowRateHistory(data, code, since, limit);
|
|
154152
|
-
}
|
|
154153
154458
|
parseBorrowRateHistory(response, code, since, limit) {
|
|
154154
154459
|
const result = [];
|
|
154155
154460
|
for (let i = 0; i < response.length; i++) {
|
|
@@ -154530,10 +154835,6 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
154530
154835
|
let endpart = '';
|
|
154531
154836
|
headers = (headers !== undefined) ? headers : {};
|
|
154532
154837
|
let url = this.urls['api'][api];
|
|
154533
|
-
const isSandbox = url.indexOf('sandbox') >= 0;
|
|
154534
|
-
if (path === 'symbols' && !isSandbox) {
|
|
154535
|
-
endpoint = '/api/v2/' + this.implodeParams(path, params);
|
|
154536
|
-
}
|
|
154537
154838
|
if (Object.keys(query).length) {
|
|
154538
154839
|
if ((method === 'GET') || (method === 'DELETE')) {
|
|
154539
154840
|
endpoint += '?' + this.rawencode(query);
|
|
@@ -188113,6 +188414,7 @@ class phemex extends _abstract_phemex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
188113
188414
|
'exceptions': {
|
|
188114
188415
|
'exact': {
|
|
188115
188416
|
// not documented
|
|
188417
|
+
'401': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
188116
188418
|
'412': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
188117
188419
|
'6001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
188118
188420
|
// documented
|
|
@@ -236623,7 +236925,7 @@ class okx extends _okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
|
236623
236925
|
const request = {
|
|
236624
236926
|
'instType': uppercaseType,
|
|
236625
236927
|
};
|
|
236626
|
-
const orders = await this.subscribe('private', messageHash, channel,
|
|
236928
|
+
const orders = await this.subscribe('private', messageHash, channel, undefined, this.extend(request, params));
|
|
236627
236929
|
if (this.newUpdates) {
|
|
236628
236930
|
limit = orders.getLimit(symbol, limit);
|
|
236629
236931
|
}
|
|
@@ -279954,7 +280256,7 @@ SOFTWARE.
|
|
|
279954
280256
|
|
|
279955
280257
|
//-----------------------------------------------------------------------------
|
|
279956
280258
|
// this is updated by vss.js when building
|
|
279957
|
-
const version = '4.1.
|
|
280259
|
+
const version = '4.1.36';
|
|
279958
280260
|
_src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange.ccxtVersion */ .e.ccxtVersion = version;
|
|
279959
280261
|
//-----------------------------------------------------------------------------
|
|
279960
280262
|
|