ccxt 4.1.14 → 4.1.16
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 +3 -3
- package/dist/ccxt.browser.js +244 -84
- package/dist/ccxt.browser.min.js +9 -9
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/base/Exchange.js +3 -0
- package/dist/cjs/src/bingx.js +1 -1
- package/dist/cjs/src/bitget.js +165 -63
- package/dist/cjs/src/bitmex.js +6 -3
- package/dist/cjs/src/bittrex.js +1 -0
- package/dist/cjs/src/btcalpha.js +2 -1
- package/dist/cjs/src/btcturk.js +3 -0
- package/dist/cjs/src/coinone.js +13 -4
- package/dist/cjs/src/digifinex.js +9 -8
- package/dist/cjs/src/huobi.js +8 -0
- package/dist/cjs/src/kraken.js +1 -0
- package/dist/cjs/src/kucoin.js +1 -0
- package/dist/cjs/src/kucoinfutures.js +1 -0
- package/dist/cjs/src/kuna.js +1 -0
- package/dist/cjs/src/lbank.js +1 -0
- package/dist/cjs/src/lbank2.js +2 -0
- package/dist/cjs/src/luno.js +1 -0
- package/dist/cjs/src/lykke.js +2 -1
- package/dist/cjs/src/mercado.js +1 -0
- package/dist/cjs/src/mexc.js +4 -1
- package/dist/cjs/src/ndax.js +1 -0
- package/dist/cjs/src/novadax.js +1 -0
- package/dist/cjs/src/oceanex.js +1 -0
- package/dist/cjs/src/phemex.js +2 -0
- package/dist/cjs/src/probit.js +1 -0
- package/dist/cjs/src/tidex.js +1 -0
- package/dist/cjs/src/timex.js +1 -0
- package/dist/cjs/src/tokocrypto.js +1 -0
- package/dist/cjs/src/upbit.js +1 -0
- package/dist/cjs/src/wavesexchange.js +1 -0
- package/dist/cjs/src/wazirx.js +2 -1
- package/dist/cjs/src/whitebit.js +1 -0
- package/dist/cjs/src/yobit.js +1 -0
- package/dist/cjs/src/zaif.js +1 -0
- package/dist/cjs/src/zonda.js +1 -0
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/abstract/btcturk.d.ts +3 -0
- package/js/src/base/Exchange.d.ts +1 -0
- package/js/src/base/Exchange.js +3 -0
- package/js/src/bingx.js +1 -1
- package/js/src/bitget.js +165 -63
- package/js/src/bitmex.js +6 -3
- package/js/src/bittrex.js +1 -0
- package/js/src/btcalpha.js +2 -1
- package/js/src/btcturk.js +3 -0
- package/js/src/coinone.js +13 -4
- package/js/src/digifinex.d.ts +3 -28
- package/js/src/digifinex.js +9 -8
- package/js/src/huobi.js +8 -0
- package/js/src/kraken.js +1 -0
- package/js/src/kucoin.js +1 -0
- package/js/src/kucoinfutures.js +1 -0
- package/js/src/kuna.js +1 -0
- package/js/src/lbank.js +1 -0
- package/js/src/lbank2.js +2 -0
- package/js/src/luno.js +1 -0
- package/js/src/lykke.js +2 -1
- package/js/src/mercado.js +1 -0
- package/js/src/mexc.js +4 -1
- package/js/src/ndax.js +1 -0
- package/js/src/novadax.js +1 -0
- package/js/src/oceanex.js +1 -0
- package/js/src/phemex.d.ts +2 -0
- package/js/src/phemex.js +2 -0
- package/js/src/probit.js +1 -0
- package/js/src/tidex.js +1 -0
- package/js/src/timex.d.ts +1 -0
- package/js/src/timex.js +1 -0
- package/js/src/tokocrypto.js +1 -0
- package/js/src/upbit.js +1 -0
- package/js/src/wavesexchange.js +1 -0
- package/js/src/wazirx.js +2 -1
- package/js/src/whitebit.js +1 -0
- package/js/src/yobit.js +1 -0
- package/js/src/zaif.js +1 -0
- package/js/src/zonda.js +1 -0
- package/package.json +1 -1
- package/skip-tests.json +108 -5
package/dist/ccxt.browser.js
CHANGED
|
@@ -7585,6 +7585,9 @@ class Exchange {
|
|
|
7585
7585
|
convertToBigInt(value) {
|
|
7586
7586
|
return BigInt(value); // used on XT
|
|
7587
7587
|
}
|
|
7588
|
+
stringToCharsArray(value) {
|
|
7589
|
+
return value.split('');
|
|
7590
|
+
}
|
|
7588
7591
|
valueIsDefined(value) {
|
|
7589
7592
|
return value !== undefined && value !== null;
|
|
7590
7593
|
}
|
|
@@ -27213,7 +27216,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
27213
27216
|
'info': position,
|
|
27214
27217
|
'id': this.safeString(position, 'positionId'),
|
|
27215
27218
|
'symbol': this.safeSymbol(marketId, market, '-', 'swap'),
|
|
27216
|
-
'notional': this.
|
|
27219
|
+
'notional': this.safeNumber(position, 'positionAmt'),
|
|
27217
27220
|
'marginMode': marginMode,
|
|
27218
27221
|
'liquidationPrice': undefined,
|
|
27219
27222
|
'entryPrice': this.safeNumber2(position, 'avgPrice', 'entryPrice'),
|
|
@@ -41220,18 +41223,20 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
41220
41223
|
* @description query for balance and get the amount of funds available for trading or funds locked in orders
|
|
41221
41224
|
* @see https://bitgetlimited.github.io/apidoc/en/spot/#get-account-assets
|
|
41222
41225
|
* @see https://bitgetlimited.github.io/apidoc/en/mix/#get-account-list
|
|
41226
|
+
* @see https://bitgetlimited.github.io/apidoc/en/margin/#get-cross-assets
|
|
41227
|
+
* @see https://bitgetlimited.github.io/apidoc/en/margin/#get-isolated-assets
|
|
41223
41228
|
* @param {object} [params] extra parameters specific to the bitget api endpoint
|
|
41224
41229
|
* @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
|
|
41225
41230
|
*/
|
|
41226
41231
|
const sandboxMode = this.safeValue(this.options, 'sandboxMode', false);
|
|
41227
41232
|
await this.loadMarkets();
|
|
41228
|
-
const [marketType, query] = this.handleMarketTypeAndParams('fetchBalance', undefined, params);
|
|
41229
|
-
const method = this.getSupportedMapping(marketType, {
|
|
41230
|
-
'spot': 'privateSpotGetAccountAssets',
|
|
41231
|
-
'swap': 'privateMixGetAccountAccounts',
|
|
41232
|
-
});
|
|
41233
41233
|
const request = {};
|
|
41234
|
-
|
|
41234
|
+
let marketType = undefined;
|
|
41235
|
+
let marginMode = undefined;
|
|
41236
|
+
let response = undefined;
|
|
41237
|
+
[marketType, params] = this.handleMarketTypeAndParams('fetchBalance', undefined, params);
|
|
41238
|
+
[marginMode, params] = this.handleMarginModeAndParams('fetchBalance', params);
|
|
41239
|
+
if ((marketType === 'swap') || (marketType === 'future')) {
|
|
41235
41240
|
let subType = undefined;
|
|
41236
41241
|
[subType, params] = this.handleSubTypeAndParams('fetchBalance', undefined, params);
|
|
41237
41242
|
let productType = (subType === 'linear') ? 'UMCBL' : 'DMCBL';
|
|
@@ -41239,45 +41244,106 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
41239
41244
|
productType = 'S' + productType;
|
|
41240
41245
|
}
|
|
41241
41246
|
request['productType'] = productType;
|
|
41247
|
+
response = await this.privateMixGetAccountAccounts(this.extend(request, params));
|
|
41248
|
+
}
|
|
41249
|
+
else if (marginMode === 'isolated') {
|
|
41250
|
+
response = await this.privateMarginGetIsolatedAccountAssets(this.extend(request, params));
|
|
41251
|
+
}
|
|
41252
|
+
else if (marginMode === 'cross') {
|
|
41253
|
+
response = await this.privateMarginGetCrossAccountAssets(this.extend(request, params));
|
|
41254
|
+
}
|
|
41255
|
+
else if (marketType === 'spot') {
|
|
41256
|
+
response = await this.privateSpotGetAccountAssets(this.extend(request, params));
|
|
41257
|
+
}
|
|
41258
|
+
else {
|
|
41259
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.NotSupported(this.id + ' fetchBalance() does not support ' + marketType + ' accounts');
|
|
41242
41260
|
}
|
|
41243
|
-
const response = await this[method](this.extend(request, query));
|
|
41244
41261
|
// spot
|
|
41262
|
+
//
|
|
41245
41263
|
// {
|
|
41246
|
-
//
|
|
41247
|
-
//
|
|
41248
|
-
//
|
|
41249
|
-
//
|
|
41250
|
-
//
|
|
41251
|
-
//
|
|
41252
|
-
//
|
|
41253
|
-
//
|
|
41254
|
-
//
|
|
41255
|
-
//
|
|
41256
|
-
//
|
|
41257
|
-
//
|
|
41258
|
-
//
|
|
41264
|
+
// "code": "00000",
|
|
41265
|
+
// "msg": "success",
|
|
41266
|
+
// "requestTime": 1697507299139,
|
|
41267
|
+
// "data": [
|
|
41268
|
+
// {
|
|
41269
|
+
// "coinId": 1,
|
|
41270
|
+
// "coinName": "BTC",
|
|
41271
|
+
// "available": "0.00000000",
|
|
41272
|
+
// "frozen": "0.00000000",
|
|
41273
|
+
// "lock": "0.00000000",
|
|
41274
|
+
// "uTime": "1697248128000"
|
|
41275
|
+
// },
|
|
41276
|
+
// ]
|
|
41259
41277
|
// }
|
|
41260
41278
|
//
|
|
41261
41279
|
// swap
|
|
41280
|
+
//
|
|
41262
41281
|
// {
|
|
41263
|
-
//
|
|
41264
|
-
//
|
|
41265
|
-
//
|
|
41266
|
-
//
|
|
41267
|
-
//
|
|
41268
|
-
//
|
|
41269
|
-
//
|
|
41270
|
-
//
|
|
41271
|
-
//
|
|
41272
|
-
//
|
|
41273
|
-
//
|
|
41274
|
-
//
|
|
41275
|
-
//
|
|
41276
|
-
//
|
|
41277
|
-
//
|
|
41278
|
-
//
|
|
41282
|
+
// "code": "00000",
|
|
41283
|
+
// "msg": "success",
|
|
41284
|
+
// "requestTime": 1697507505367,
|
|
41285
|
+
// "data": [
|
|
41286
|
+
// {
|
|
41287
|
+
// "marginCoin": "STETH",
|
|
41288
|
+
// "locked": "0",
|
|
41289
|
+
// "available": "0",
|
|
41290
|
+
// "crossMaxAvailable": "0",
|
|
41291
|
+
// "fixedMaxAvailable": "0",
|
|
41292
|
+
// "maxTransferOut": "0",
|
|
41293
|
+
// "equity": "0",
|
|
41294
|
+
// "usdtEquity": "0",
|
|
41295
|
+
// "btcEquity": "0",
|
|
41296
|
+
// "crossRiskRate": "0",
|
|
41297
|
+
// "unrealizedPL": "0",
|
|
41298
|
+
// "bonus": "0"
|
|
41299
|
+
// },
|
|
41300
|
+
// ]
|
|
41279
41301
|
// }
|
|
41280
|
-
|
|
41302
|
+
//
|
|
41303
|
+
// isolated margin
|
|
41304
|
+
//
|
|
41305
|
+
// {
|
|
41306
|
+
// "code": "00000",
|
|
41307
|
+
// "msg": "success",
|
|
41308
|
+
// "requestTime": 1697501436571,
|
|
41309
|
+
// "data": [
|
|
41310
|
+
// {
|
|
41311
|
+
// "symbol": "BTCUSDT",
|
|
41312
|
+
// "coin": "BTC",
|
|
41313
|
+
// "totalAmount": "0.00021654",
|
|
41314
|
+
// "available": "0.00021654",
|
|
41315
|
+
// "transferable": "0.00021654",
|
|
41316
|
+
// "frozen": "0",
|
|
41317
|
+
// "borrow": "0",
|
|
41318
|
+
// "interest": "0",
|
|
41319
|
+
// "net": "0.00021654",
|
|
41320
|
+
// "ctime": "1697248128071"
|
|
41321
|
+
// },
|
|
41322
|
+
// ]
|
|
41323
|
+
// }
|
|
41324
|
+
//
|
|
41325
|
+
// cross margin
|
|
41326
|
+
//
|
|
41327
|
+
// {
|
|
41328
|
+
// "code": "00000",
|
|
41329
|
+
// "msg": "success",
|
|
41330
|
+
// "requestTime": 1697515463804,
|
|
41331
|
+
// "data": [
|
|
41332
|
+
// {
|
|
41333
|
+
// "coin": "BTC",
|
|
41334
|
+
// "totalAmount": "0.00024996",
|
|
41335
|
+
// "available": "0.00024996",
|
|
41336
|
+
// "transferable": "0.00004994",
|
|
41337
|
+
// "frozen": "0",
|
|
41338
|
+
// "borrow": "0.0001",
|
|
41339
|
+
// "interest": "0.00000001",
|
|
41340
|
+
// "net": "0.00014995",
|
|
41341
|
+
// "ctime": "1697251265504"
|
|
41342
|
+
// },
|
|
41343
|
+
// ]
|
|
41344
|
+
// }
|
|
41345
|
+
//
|
|
41346
|
+
const data = this.safeValue(response, 'data', []);
|
|
41281
41347
|
return this.parseBalance(data);
|
|
41282
41348
|
}
|
|
41283
41349
|
parseBalance(balance) {
|
|
@@ -41286,42 +41352,81 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
41286
41352
|
// spot
|
|
41287
41353
|
//
|
|
41288
41354
|
// {
|
|
41289
|
-
// coinId:
|
|
41290
|
-
// coinName:
|
|
41291
|
-
// available:
|
|
41292
|
-
// frozen:
|
|
41293
|
-
// lock:
|
|
41294
|
-
// uTime:
|
|
41355
|
+
// "coinId": 1,
|
|
41356
|
+
// "coinName": "BTC",
|
|
41357
|
+
// "available": "0.00000000",
|
|
41358
|
+
// "frozen": "0.00000000",
|
|
41359
|
+
// "lock": "0.00000000",
|
|
41360
|
+
// "uTime": "1697248128000"
|
|
41295
41361
|
// }
|
|
41296
41362
|
//
|
|
41297
41363
|
// swap
|
|
41298
41364
|
//
|
|
41299
41365
|
// {
|
|
41300
|
-
// marginCoin:
|
|
41301
|
-
// locked:
|
|
41302
|
-
// available:
|
|
41303
|
-
// crossMaxAvailable:
|
|
41304
|
-
// fixedMaxAvailable:
|
|
41305
|
-
// maxTransferOut:
|
|
41306
|
-
// equity:
|
|
41307
|
-
// usdtEquity:
|
|
41308
|
-
// btcEquity:
|
|
41309
|
-
// crossRiskRate:
|
|
41310
|
-
// unrealizedPL:
|
|
41311
|
-
// bonus:
|
|
41366
|
+
// "marginCoin": "STETH",
|
|
41367
|
+
// "locked": "0",
|
|
41368
|
+
// "available": "0",
|
|
41369
|
+
// "crossMaxAvailable": "0",
|
|
41370
|
+
// "fixedMaxAvailable": "0",
|
|
41371
|
+
// "maxTransferOut": "0",
|
|
41372
|
+
// "equity": "0",
|
|
41373
|
+
// "usdtEquity": "0",
|
|
41374
|
+
// "btcEquity": "0",
|
|
41375
|
+
// "crossRiskRate": "0",
|
|
41376
|
+
// "unrealizedPL": "0",
|
|
41377
|
+
// "bonus": "0"
|
|
41378
|
+
// }
|
|
41379
|
+
//
|
|
41380
|
+
// isolated margin
|
|
41381
|
+
//
|
|
41382
|
+
// {
|
|
41383
|
+
// "symbol": "BTCUSDT",
|
|
41384
|
+
// "coin": "BTC",
|
|
41385
|
+
// "totalAmount": "0.00021654",
|
|
41386
|
+
// "available": "0.00021654",
|
|
41387
|
+
// "transferable": "0.00021654",
|
|
41388
|
+
// "frozen": "0",
|
|
41389
|
+
// "borrow": "0",
|
|
41390
|
+
// "interest": "0",
|
|
41391
|
+
// "net": "0.00021654",
|
|
41392
|
+
// "ctime": "1697248128071"
|
|
41393
|
+
// }
|
|
41394
|
+
//
|
|
41395
|
+
// cross margin
|
|
41396
|
+
//
|
|
41397
|
+
// {
|
|
41398
|
+
// "coin": "BTC",
|
|
41399
|
+
// "totalAmount": "0.00024995",
|
|
41400
|
+
// "available": "0.00024995",
|
|
41401
|
+
// "transferable": "0.00004993",
|
|
41402
|
+
// "frozen": "0",
|
|
41403
|
+
// "borrow": "0.0001",
|
|
41404
|
+
// "interest": "0.00000001",
|
|
41405
|
+
// "net": "0.00014994",
|
|
41406
|
+
// "ctime": "1697251265504"
|
|
41312
41407
|
// }
|
|
41313
41408
|
//
|
|
41314
41409
|
for (let i = 0; i < balance.length; i++) {
|
|
41315
41410
|
const entry = balance[i];
|
|
41316
|
-
const currencyId = this.safeString2(entry, 'coinName', 'marginCoin');
|
|
41317
|
-
const code = this.safeCurrencyCode(currencyId);
|
|
41318
41411
|
const account = this.account();
|
|
41319
|
-
const
|
|
41320
|
-
const
|
|
41321
|
-
|
|
41322
|
-
|
|
41323
|
-
|
|
41324
|
-
|
|
41412
|
+
const currencyId = this.safeStringN(entry, ['coinName', 'marginCoin', 'coin']);
|
|
41413
|
+
const code = this.safeCurrencyCode(currencyId);
|
|
41414
|
+
const borrow = this.safeString(entry, 'borrow');
|
|
41415
|
+
if (borrow !== undefined) {
|
|
41416
|
+
const interest = this.safeString(entry, 'interest');
|
|
41417
|
+
account['free'] = this.safeString(entry, 'transferable');
|
|
41418
|
+
account['total'] = this.safeString(entry, 'totalAmount');
|
|
41419
|
+
account['debt'] = _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringAdd */ .O.stringAdd(borrow, interest);
|
|
41420
|
+
}
|
|
41421
|
+
else {
|
|
41422
|
+
// Use transferable instead of available for swap and margin https://github.com/ccxt/ccxt/pull/19127
|
|
41423
|
+
const spotAccountFree = this.safeString(entry, 'available');
|
|
41424
|
+
const contractAccountFree = this.safeString(entry, 'maxTransferOut');
|
|
41425
|
+
account['free'] = (contractAccountFree !== undefined) ? contractAccountFree : spotAccountFree;
|
|
41426
|
+
const frozen = this.safeString(entry, 'frozen');
|
|
41427
|
+
const locked = this.safeString2(entry, 'lock', 'locked');
|
|
41428
|
+
account['used'] = _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringAdd */ .O.stringAdd(frozen, locked);
|
|
41429
|
+
}
|
|
41325
41430
|
result[code] = account;
|
|
41326
41431
|
}
|
|
41327
41432
|
return this.safeBalance(result);
|
|
@@ -49964,6 +50069,7 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
49964
50069
|
'max': positionIsQuote ? maxOrderQty : undefined,
|
|
49965
50070
|
},
|
|
49966
50071
|
},
|
|
50072
|
+
'created': this.parse8601(this.safeString(market, 'listing')),
|
|
49967
50073
|
'info': market,
|
|
49968
50074
|
});
|
|
49969
50075
|
}
|
|
@@ -50344,6 +50450,7 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
50344
50450
|
'Deposit': 'transaction',
|
|
50345
50451
|
'Transfer': 'transfer',
|
|
50346
50452
|
'AffiliatePayout': 'referral',
|
|
50453
|
+
'SpotTrade': 'trade',
|
|
50347
50454
|
};
|
|
50348
50455
|
return this.safeString(types, type, type);
|
|
50349
50456
|
}
|
|
@@ -50881,9 +50988,9 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
50881
50988
|
const feeCurrencyCode = this.safeCurrencyCode(currencyId);
|
|
50882
50989
|
const feeRateString = this.safeString(trade, 'commission');
|
|
50883
50990
|
fee = {
|
|
50884
|
-
'cost': feeCostString,
|
|
50991
|
+
'cost': _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringAbs */ .O.stringAbs(feeCostString),
|
|
50885
50992
|
'currency': feeCurrencyCode,
|
|
50886
|
-
'rate': feeRateString,
|
|
50993
|
+
'rate': _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringAbs */ .O.stringAbs(feeRateString),
|
|
50887
50994
|
};
|
|
50888
50995
|
}
|
|
50889
50996
|
// Trade or Funding
|
|
@@ -51411,7 +51518,8 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
51411
51518
|
// }
|
|
51412
51519
|
// ]
|
|
51413
51520
|
//
|
|
51414
|
-
|
|
51521
|
+
const results = this.parsePositions(response, symbols);
|
|
51522
|
+
return this.filterByArrayPositions(results, 'symbol', symbols, false);
|
|
51415
51523
|
}
|
|
51416
51524
|
parsePosition(position, market = undefined) {
|
|
51417
51525
|
//
|
|
@@ -62609,6 +62717,7 @@ class bittrex extends _abstract_bittrex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
62609
62717
|
'max': undefined,
|
|
62610
62718
|
},
|
|
62611
62719
|
},
|
|
62720
|
+
'created': this.parse8601(this.safeString(market, 'createdAt')),
|
|
62612
62721
|
'info': market,
|
|
62613
62722
|
});
|
|
62614
62723
|
}
|
|
@@ -68418,7 +68527,8 @@ class btcalpha extends _abstract_btcalpha_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
68418
68527
|
// sell: '22521.11'
|
|
68419
68528
|
// }
|
|
68420
68529
|
//
|
|
68421
|
-
const
|
|
68530
|
+
const timestampStr = this.safeString(ticker, 'timestamp');
|
|
68531
|
+
const timestamp = parseInt(_base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringMul */ .O.stringMul(timestampStr, '1000000'));
|
|
68422
68532
|
const marketId = this.safeString(ticker, 'pair');
|
|
68423
68533
|
market = this.safeMarket(marketId, market, '_');
|
|
68424
68534
|
const last = this.safeString(ticker, 'last');
|
|
@@ -71541,6 +71651,7 @@ class btcturk extends _abstract_btcturk_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
71541
71651
|
'orderbook': 1,
|
|
71542
71652
|
'ticker': 0.1,
|
|
71543
71653
|
'trades': 1,
|
|
71654
|
+
'ohlc': 1,
|
|
71544
71655
|
'server/exchangeinfo': 1,
|
|
71545
71656
|
},
|
|
71546
71657
|
},
|
|
@@ -71552,6 +71663,8 @@ class btcturk extends _abstract_btcturk_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
71552
71663
|
'users/transactions/trade': 1,
|
|
71553
71664
|
},
|
|
71554
71665
|
'post': {
|
|
71666
|
+
'users/transactions/crypto': 1,
|
|
71667
|
+
'users/transactions/fiat': 1,
|
|
71555
71668
|
'order': 1,
|
|
71556
71669
|
'cancelOrder': 1,
|
|
71557
71670
|
},
|
|
@@ -94879,10 +94992,19 @@ class coinone extends _abstract_coinone_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
94879
94992
|
const id = this.safeString(order, 'orderId');
|
|
94880
94993
|
const baseId = this.safeString(order, 'baseCurrency');
|
|
94881
94994
|
const quoteId = this.safeString(order, 'targetCurrency');
|
|
94882
|
-
|
|
94883
|
-
|
|
94884
|
-
|
|
94885
|
-
|
|
94995
|
+
let base = undefined;
|
|
94996
|
+
let quote = undefined;
|
|
94997
|
+
if (baseId !== undefined) {
|
|
94998
|
+
base = this.safeCurrencyCode(baseId, this.safeString(market, 'base'));
|
|
94999
|
+
}
|
|
95000
|
+
if (quoteId !== undefined) {
|
|
95001
|
+
quote = this.safeCurrencyCode(quoteId, this.safeString(market, 'quote'));
|
|
95002
|
+
}
|
|
95003
|
+
let symbol = undefined;
|
|
95004
|
+
if ((base !== undefined) && (quote !== undefined)) {
|
|
95005
|
+
symbol = base + '/' + quote;
|
|
95006
|
+
market = this.safeMarket(symbol, market, '/');
|
|
95007
|
+
}
|
|
94886
95008
|
const timestamp = this.safeTimestamp2(order, 'timestamp', 'updatedAt');
|
|
94887
95009
|
let side = this.safeString2(order, 'type', 'side');
|
|
94888
95010
|
if (side === 'ask') {
|
|
@@ -111751,14 +111873,16 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
111751
111873
|
// "leverage_ratio": 3
|
|
111752
111874
|
// }
|
|
111753
111875
|
//
|
|
111754
|
-
const
|
|
111876
|
+
const marketId = this.safeString(info, 'symbol');
|
|
111755
111877
|
const amountString = this.safeString(info, 'amount');
|
|
111756
111878
|
const leverageString = this.safeString(info, 'leverage_ratio');
|
|
111757
111879
|
const amountInvested = _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringDiv */ .O.stringDiv(amountString, leverageString);
|
|
111758
111880
|
const amountBorrowed = _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise.stringSub */ .O.stringSub(amountString, amountInvested);
|
|
111759
111881
|
const currency = (market === undefined) ? undefined : market['base'];
|
|
111882
|
+
const symbol = this.safeSymbol(marketId, market);
|
|
111760
111883
|
return {
|
|
111761
|
-
'account':
|
|
111884
|
+
'account': symbol,
|
|
111885
|
+
'symbol': symbol,
|
|
111762
111886
|
'currency': currency,
|
|
111763
111887
|
'interest': undefined,
|
|
111764
111888
|
'interestRate': 0.001,
|
|
@@ -112238,10 +112362,9 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
112238
112362
|
return position;
|
|
112239
112363
|
}
|
|
112240
112364
|
else {
|
|
112241
|
-
|
|
112242
|
-
|
|
112243
|
-
|
|
112244
|
-
});
|
|
112365
|
+
position['collateral'] = this.safeNumber(response, 'margin');
|
|
112366
|
+
position['marginRatio'] = this.safeNumber(response, 'margin_rate');
|
|
112367
|
+
return position;
|
|
112245
112368
|
}
|
|
112246
112369
|
}
|
|
112247
112370
|
parsePosition(position, market = undefined) {
|
|
@@ -112301,7 +112424,7 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
112301
112424
|
else if (side === 'go_short') {
|
|
112302
112425
|
side = 'short';
|
|
112303
112426
|
}
|
|
112304
|
-
return {
|
|
112427
|
+
return this.safePosition({
|
|
112305
112428
|
'info': position,
|
|
112306
112429
|
'id': undefined,
|
|
112307
112430
|
'symbol': symbol,
|
|
@@ -112327,7 +112450,7 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
112327
112450
|
'percentage': undefined,
|
|
112328
112451
|
'stopLossPrice': undefined,
|
|
112329
112452
|
'takeProfitPrice': undefined,
|
|
112330
|
-
};
|
|
112453
|
+
});
|
|
112331
112454
|
}
|
|
112332
112455
|
async setLeverage(leverage, symbol = undefined, params = {}) {
|
|
112333
112456
|
/**
|
|
@@ -130657,6 +130780,13 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
130657
130780
|
// 7 Settlement Completed
|
|
130658
130781
|
// 8 Delivered
|
|
130659
130782
|
// 9 Suspending of Trade
|
|
130783
|
+
let created = undefined;
|
|
130784
|
+
let createdDate = this.safeString(market, 'create_date'); // i.e 20230101
|
|
130785
|
+
if (createdDate !== undefined) {
|
|
130786
|
+
const createdArray = this.stringToCharsArray(createdDate);
|
|
130787
|
+
createdDate = createdArray[0] + createdArray[1] + createdArray[2] + createdArray[3] + '-' + createdArray[4] + createdArray[5] + '-' + createdArray[6] + createdArray[7] + ' 00:00:00';
|
|
130788
|
+
created = this.parse8601(createdDate);
|
|
130789
|
+
}
|
|
130660
130790
|
result.push({
|
|
130661
130791
|
'id': id,
|
|
130662
130792
|
'lowercaseId': lowercaseId,
|
|
@@ -130709,6 +130839,7 @@ class huobi extends _abstract_huobi_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
130709
130839
|
'max': undefined,
|
|
130710
130840
|
},
|
|
130711
130841
|
},
|
|
130842
|
+
'created': created,
|
|
130712
130843
|
'info': market,
|
|
130713
130844
|
});
|
|
130714
130845
|
}
|
|
@@ -143328,6 +143459,7 @@ class kraken extends _abstract_kraken_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
143328
143459
|
'max': undefined,
|
|
143329
143460
|
},
|
|
143330
143461
|
},
|
|
143462
|
+
'created': undefined,
|
|
143331
143463
|
'info': market,
|
|
143332
143464
|
});
|
|
143333
143465
|
}
|
|
@@ -148700,6 +148832,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
148700
148832
|
'max': this.safeNumber(market, 'quoteMaxSize'),
|
|
148701
148833
|
},
|
|
148702
148834
|
},
|
|
148835
|
+
'created': undefined,
|
|
148703
148836
|
'info': market,
|
|
148704
148837
|
});
|
|
148705
148838
|
}
|
|
@@ -152470,6 +152603,7 @@ class kucoinfutures extends _abstract_kucoinfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
152470
152603
|
'max': this.safeNumber(market, 'quoteMaxSize'),
|
|
152471
152604
|
},
|
|
152472
152605
|
},
|
|
152606
|
+
'created': this.safeInteger(market, 'firstOpenDate'),
|
|
152473
152607
|
'info': market,
|
|
152474
152608
|
});
|
|
152475
152609
|
}
|
|
@@ -154817,6 +154951,7 @@ class kuna extends _abstract_kuna_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
154817
154951
|
'max': undefined,
|
|
154818
154952
|
},
|
|
154819
154953
|
},
|
|
154954
|
+
'created': undefined,
|
|
154820
154955
|
'info': undefined,
|
|
154821
154956
|
});
|
|
154822
154957
|
}
|
|
@@ -157335,6 +157470,7 @@ class lbank extends _abstract_lbank_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
157335
157470
|
'max': undefined,
|
|
157336
157471
|
},
|
|
157337
157472
|
},
|
|
157473
|
+
'created': undefined,
|
|
157338
157474
|
'info': id,
|
|
157339
157475
|
});
|
|
157340
157476
|
}
|
|
@@ -158425,6 +158561,7 @@ class lbank2 extends _abstract_lbank2_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
158425
158561
|
'max': undefined,
|
|
158426
158562
|
},
|
|
158427
158563
|
},
|
|
158564
|
+
'created': undefined,
|
|
158428
158565
|
'info': market,
|
|
158429
158566
|
});
|
|
158430
158567
|
}
|
|
@@ -158521,6 +158658,7 @@ class lbank2 extends _abstract_lbank2_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
158521
158658
|
'max': undefined,
|
|
158522
158659
|
},
|
|
158523
158660
|
},
|
|
158661
|
+
'created': undefined,
|
|
158524
158662
|
'info': market,
|
|
158525
158663
|
});
|
|
158526
158664
|
}
|
|
@@ -161026,6 +161164,7 @@ class luno extends _abstract_luno_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
161026
161164
|
'max': undefined,
|
|
161027
161165
|
},
|
|
161028
161166
|
},
|
|
161167
|
+
'created': undefined,
|
|
161029
161168
|
'info': market,
|
|
161030
161169
|
});
|
|
161031
161170
|
}
|
|
@@ -162147,7 +162286,6 @@ class lykke extends _abstract_lykke_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
162147
162286
|
'option': false,
|
|
162148
162287
|
'contract': false,
|
|
162149
162288
|
'active': true,
|
|
162150
|
-
'info': market,
|
|
162151
162289
|
'linear': undefined,
|
|
162152
162290
|
'inverse': undefined,
|
|
162153
162291
|
'contractSize': undefined,
|
|
@@ -162177,6 +162315,8 @@ class lykke extends _abstract_lykke_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
162177
162315
|
'max': undefined,
|
|
162178
162316
|
},
|
|
162179
162317
|
},
|
|
162318
|
+
'created': undefined,
|
|
162319
|
+
'info': market,
|
|
162180
162320
|
});
|
|
162181
162321
|
}
|
|
162182
162322
|
return result;
|
|
@@ -163368,6 +163508,7 @@ class mercado extends _abstract_mercado_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
163368
163508
|
'max': undefined,
|
|
163369
163509
|
},
|
|
163370
163510
|
},
|
|
163511
|
+
'created': undefined,
|
|
163371
163512
|
'info': coin,
|
|
163372
163513
|
});
|
|
163373
163514
|
}
|
|
@@ -165198,6 +165339,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
165198
165339
|
'max': maxQuoteAmount,
|
|
165199
165340
|
},
|
|
165200
165341
|
},
|
|
165342
|
+
'created': undefined,
|
|
165201
165343
|
'info': market,
|
|
165202
165344
|
});
|
|
165203
165345
|
}
|
|
@@ -165309,6 +165451,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
165309
165451
|
'max': undefined,
|
|
165310
165452
|
},
|
|
165311
165453
|
},
|
|
165454
|
+
'created': undefined,
|
|
165312
165455
|
'info': market,
|
|
165313
165456
|
});
|
|
165314
165457
|
}
|
|
@@ -166771,7 +166914,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
166771
166914
|
}
|
|
166772
166915
|
const [marketType] = this.handleMarketTypeAndParams('fetchOrdersByState', market, params);
|
|
166773
166916
|
if (marketType === 'spot') {
|
|
166774
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
166917
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported(this.id + ' fetchOrdersByState() is not supported for ' + marketType);
|
|
166775
166918
|
}
|
|
166776
166919
|
else {
|
|
166777
166920
|
request['states'] = state;
|
|
@@ -168076,6 +168219,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
168076
168219
|
* @returns {object} a dictionary of [leverage tiers structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#leverage-tiers-structure}, indexed by market symbols
|
|
168077
168220
|
*/
|
|
168078
168221
|
await this.loadMarkets();
|
|
168222
|
+
symbols = this.marketSymbols(symbols, 'swap', true, true);
|
|
168079
168223
|
const response = await this.contractPublicGetDetail(params);
|
|
168080
168224
|
//
|
|
168081
168225
|
// {
|
|
@@ -169909,6 +170053,7 @@ class ndax extends _abstract_ndax_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
169909
170053
|
'max': undefined,
|
|
169910
170054
|
},
|
|
169911
170055
|
},
|
|
170056
|
+
'created': undefined,
|
|
169912
170057
|
'info': market,
|
|
169913
170058
|
});
|
|
169914
170059
|
}
|
|
@@ -172153,6 +172298,7 @@ class novadax extends _abstract_novadax_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
172153
172298
|
'max': undefined,
|
|
172154
172299
|
},
|
|
172155
172300
|
},
|
|
172301
|
+
'created': undefined,
|
|
172156
172302
|
'info': market,
|
|
172157
172303
|
});
|
|
172158
172304
|
}
|
|
@@ -173631,6 +173777,7 @@ class oceanex extends _abstract_oceanex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
173631
173777
|
'max': undefined,
|
|
173632
173778
|
},
|
|
173633
173779
|
},
|
|
173780
|
+
'created': undefined,
|
|
173634
173781
|
'info': market,
|
|
173635
173782
|
});
|
|
173636
173783
|
}
|
|
@@ -186418,6 +186565,7 @@ class phemex extends _abstract_phemex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
186418
186565
|
'max': this.parseNumber(this.safeString(market, 'maxOrderQty')),
|
|
186419
186566
|
},
|
|
186420
186567
|
},
|
|
186568
|
+
'created': undefined,
|
|
186421
186569
|
'info': market,
|
|
186422
186570
|
};
|
|
186423
186571
|
}
|
|
@@ -186516,6 +186664,7 @@ class phemex extends _abstract_phemex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
186516
186664
|
'max': this.parseSafeNumber(this.safeString(market, 'maxOrderValue')),
|
|
186517
186665
|
},
|
|
186518
186666
|
},
|
|
186667
|
+
'created': undefined,
|
|
186519
186668
|
'info': market,
|
|
186520
186669
|
};
|
|
186521
186670
|
}
|
|
@@ -242309,6 +242458,7 @@ class probit extends _abstract_probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
242309
242458
|
'max': this.safeNumber(market, 'max_cost'),
|
|
242310
242459
|
},
|
|
242311
242460
|
},
|
|
242461
|
+
'created': undefined,
|
|
242312
242462
|
'info': market,
|
|
242313
242463
|
});
|
|
242314
242464
|
}
|
|
@@ -253068,6 +253218,7 @@ class tidex extends _abstract_tidex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
253068
253218
|
'max': undefined,
|
|
253069
253219
|
},
|
|
253070
253220
|
},
|
|
253221
|
+
'created': undefined,
|
|
253071
253222
|
'info': market,
|
|
253072
253223
|
});
|
|
253073
253224
|
}
|
|
@@ -255041,6 +255192,7 @@ class timex extends _abstract_timex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
255041
255192
|
'max': undefined,
|
|
255042
255193
|
},
|
|
255043
255194
|
},
|
|
255195
|
+
'created': undefined,
|
|
255044
255196
|
'info': market,
|
|
255045
255197
|
};
|
|
255046
255198
|
}
|
|
@@ -256114,6 +256266,7 @@ class tokocrypto extends _abstract_tokocrypto_js__WEBPACK_IMPORTED_MODULE_0__/*
|
|
|
256114
256266
|
'max': undefined,
|
|
256115
256267
|
},
|
|
256116
256268
|
},
|
|
256269
|
+
'created': undefined,
|
|
256117
256270
|
'info': market,
|
|
256118
256271
|
};
|
|
256119
256272
|
if ('PRICE_FILTER' in filtersByType) {
|
|
@@ -258384,6 +258537,7 @@ class upbit extends _abstract_upbit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
258384
258537
|
'max': undefined,
|
|
258385
258538
|
},
|
|
258386
258539
|
},
|
|
258540
|
+
'created': undefined,
|
|
258387
258541
|
'info': market,
|
|
258388
258542
|
});
|
|
258389
258543
|
}
|
|
@@ -260334,6 +260488,7 @@ class wavesexchange extends _abstract_wavesexchange_js__WEBPACK_IMPORTED_MODULE_
|
|
|
260334
260488
|
'max': undefined,
|
|
260335
260489
|
},
|
|
260336
260490
|
},
|
|
260491
|
+
'created': undefined,
|
|
260337
260492
|
'info': entry,
|
|
260338
260493
|
});
|
|
260339
260494
|
}
|
|
@@ -262630,6 +262785,7 @@ class wazirx extends _abstract_wazirx_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
262630
262785
|
'max': undefined,
|
|
262631
262786
|
},
|
|
262632
262787
|
},
|
|
262788
|
+
'created': undefined,
|
|
262633
262789
|
'info': market,
|
|
262634
262790
|
});
|
|
262635
262791
|
}
|
|
@@ -262958,7 +263114,7 @@ class wazirx extends _abstract_wazirx_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
262958
263114
|
}, market);
|
|
262959
263115
|
}
|
|
262960
263116
|
parseBalance(response) {
|
|
262961
|
-
const result = {};
|
|
263117
|
+
const result = { 'info': response };
|
|
262962
263118
|
for (let i = 0; i < response.length; i++) {
|
|
262963
263119
|
const balance = response[i];
|
|
262964
263120
|
const id = this.safeString(balance, 'asset');
|
|
@@ -263686,6 +263842,7 @@ class whitebit extends _abstract_whitebit_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
263686
263842
|
'max': this.safeNumber(market, 'maxTotal'),
|
|
263687
263843
|
},
|
|
263688
263844
|
},
|
|
263845
|
+
'created': undefined,
|
|
263689
263846
|
'info': market,
|
|
263690
263847
|
};
|
|
263691
263848
|
result.push(entry);
|
|
@@ -268638,6 +268795,7 @@ class yobit extends _abstract_yobit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
268638
268795
|
'max': undefined,
|
|
268639
268796
|
},
|
|
268640
268797
|
},
|
|
268798
|
+
'created': undefined,
|
|
268641
268799
|
'info': market,
|
|
268642
268800
|
});
|
|
268643
268801
|
}
|
|
@@ -269767,6 +269925,7 @@ class zaif extends _abstract_zaif_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
269767
269925
|
'max': undefined,
|
|
269768
269926
|
},
|
|
269769
269927
|
},
|
|
269928
|
+
'created': undefined,
|
|
269770
269929
|
'info': market,
|
|
269771
269930
|
});
|
|
269772
269931
|
}
|
|
@@ -270675,6 +270834,7 @@ class zonda extends _abstract_zonda_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
270675
270834
|
'max': undefined,
|
|
270676
270835
|
},
|
|
270677
270836
|
},
|
|
270837
|
+
'created': undefined,
|
|
270678
270838
|
'info': item,
|
|
270679
270839
|
});
|
|
270680
270840
|
}
|
|
@@ -277735,7 +277895,7 @@ SOFTWARE.
|
|
|
277735
277895
|
|
|
277736
277896
|
//-----------------------------------------------------------------------------
|
|
277737
277897
|
// this is updated by vss.js when building
|
|
277738
|
-
const version = '4.1.
|
|
277898
|
+
const version = '4.1.16';
|
|
277739
277899
|
_src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange.ccxtVersion */ .e.ccxtVersion = version;
|
|
277740
277900
|
//-----------------------------------------------------------------------------
|
|
277741
277901
|
|