ccxt 4.2.28 → 4.2.30
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/CONTRIBUTING.md +4 -1
- package/README.md +6 -6
- package/dist/ccxt.browser.js +1865 -558
- package/dist/ccxt.browser.min.js +7 -7
- package/dist/cjs/ccxt.js +3 -1
- package/dist/cjs/src/ascendex.js +5 -5
- package/dist/cjs/src/base/Exchange.js +114 -21
- package/dist/cjs/src/base/errors.js +3 -3
- package/dist/cjs/src/base/functions/type.js +12 -0
- package/dist/cjs/src/bigone.js +2 -2
- package/dist/cjs/src/binance.js +896 -217
- package/dist/cjs/src/bingx.js +1 -1
- package/dist/cjs/src/bitfinex.js +1 -1
- package/dist/cjs/src/bitfinex2.js +52 -62
- package/dist/cjs/src/bitget.js +8 -4
- package/dist/cjs/src/bitmart.js +3 -3
- package/dist/cjs/src/bitmex.js +9 -6
- package/dist/cjs/src/bitrue.js +1 -1
- package/dist/cjs/src/bitso.js +1 -1
- package/dist/cjs/src/bitteam.js +2 -2
- package/dist/cjs/src/btcalpha.js +1 -1
- package/dist/cjs/src/bybit.js +28 -12
- package/dist/cjs/src/coinbase.js +12 -5
- package/dist/cjs/src/coincheck.js +1 -1
- package/dist/cjs/src/coinex.js +2 -2
- package/dist/cjs/src/coinlist.js +1 -1
- package/dist/cjs/src/coinmate.js +1 -1
- package/dist/cjs/src/coinmetro.js +12 -6
- package/dist/cjs/src/coinsph.js +1 -1
- package/dist/cjs/src/cryptocom.js +3 -3
- package/dist/cjs/src/digifinex.js +6 -4
- package/dist/cjs/src/exmo.js +2 -2
- package/dist/cjs/src/gate.js +5 -5
- package/dist/cjs/src/gemini.js +3 -3
- package/dist/cjs/src/hitbtc.js +14 -20
- package/dist/cjs/src/hollaex.js +2 -2
- package/dist/cjs/src/htx.js +5 -5
- package/dist/cjs/src/huobijp.js +1 -1
- package/dist/cjs/src/krakenfutures.js +1 -1
- package/dist/cjs/src/kucoin.js +17 -17
- package/dist/cjs/src/kucoinfutures.js +3 -3
- package/dist/cjs/src/lbank.js +1 -1
- package/dist/cjs/src/mexc.js +7 -7
- package/dist/cjs/src/novadax.js +1 -1
- package/dist/cjs/src/okcoin.js +2 -2
- package/dist/cjs/src/okx.js +24 -10
- package/dist/cjs/src/p2b.js +1 -0
- package/dist/cjs/src/phemex.js +3 -3
- package/dist/cjs/src/poloniexfutures.js +3 -3
- package/dist/cjs/src/pro/alpaca.js +1 -1
- package/dist/cjs/src/pro/binance.js +4 -4
- package/dist/cjs/src/pro/bitget.js +1 -1
- package/dist/cjs/src/pro/bitmart.js +1 -1
- package/dist/cjs/src/pro/bitmex.js +49 -6
- package/dist/cjs/src/pro/bitvavo.js +1 -1
- package/dist/cjs/src/pro/bybit.js +2 -2
- package/dist/cjs/src/pro/cex.js +2 -2
- package/dist/cjs/src/pro/coinbase.js +1 -1
- package/dist/cjs/src/pro/independentreserve.js +1 -1
- package/dist/cjs/src/pro/okx.js +1 -1
- package/dist/cjs/src/pro/onetrading.js +2 -2
- package/dist/cjs/src/pro/p2b.js +432 -0
- package/dist/cjs/src/pro/probit.js +5 -5
- package/dist/cjs/src/pro/whitebit.js +1 -1
- package/dist/cjs/src/probit.js +1 -1
- package/dist/cjs/src/timex.js +1 -1
- package/dist/cjs/src/tokocrypto.js +3 -3
- package/dist/cjs/src/wavesexchange.js +2 -2
- package/dist/cjs/src/whitebit.js +2 -2
- package/dist/cjs/src/woo.js +3 -3
- package/dist/cjs/src/yobit.js +1 -1
- package/dist/cjs/src/zaif.js +1 -1
- package/dist/cjs/src/zonda.js +3 -3
- package/js/ccxt.d.ts +4 -1
- package/js/ccxt.js +3 -1
- package/js/src/abstract/bybit.d.ts +2 -2
- package/js/src/abstract/okx.d.ts +1 -0
- package/js/src/ascendex.js +5 -5
- package/js/src/base/Exchange.d.ts +10 -1
- package/js/src/base/Exchange.js +114 -21
- package/js/src/base/errorHierarchy.d.ts +7 -6
- package/js/src/base/errorHierarchy.js +7 -6
- package/js/src/base/errors.d.ts +3 -3
- package/js/src/base/errors.js +3 -3
- package/js/src/base/functions/type.js +12 -0
- package/js/src/bigone.js +2 -2
- package/js/src/binance.d.ts +1 -0
- package/js/src/binance.js +897 -218
- package/js/src/bingx.js +1 -1
- package/js/src/bitfinex.js +1 -1
- package/js/src/bitfinex2.js +52 -62
- package/js/src/bitget.js +8 -4
- package/js/src/bitmart.js +3 -3
- package/js/src/bitmex.js +9 -6
- package/js/src/bitrue.js +1 -1
- package/js/src/bitso.d.ts +1 -1
- package/js/src/bitso.js +1 -1
- package/js/src/bitteam.js +2 -2
- package/js/src/btcalpha.js +1 -1
- package/js/src/bybit.js +28 -12
- package/js/src/coinbase.js +12 -5
- package/js/src/coincheck.js +1 -1
- package/js/src/coinex.js +2 -2
- package/js/src/coinlist.js +1 -1
- package/js/src/coinmate.js +1 -1
- package/js/src/coinmetro.d.ts +1 -1
- package/js/src/coinmetro.js +12 -6
- package/js/src/coinsph.js +1 -1
- package/js/src/cryptocom.js +3 -3
- package/js/src/digifinex.js +6 -4
- package/js/src/exmo.js +2 -2
- package/js/src/gate.js +5 -5
- package/js/src/gemini.d.ts +1 -1
- package/js/src/gemini.js +3 -3
- package/js/src/hitbtc.js +14 -20
- package/js/src/hollaex.js +2 -2
- package/js/src/htx.js +5 -5
- package/js/src/huobijp.js +1 -1
- package/js/src/krakenfutures.js +1 -1
- package/js/src/kucoin.js +17 -17
- package/js/src/kucoinfutures.js +3 -3
- package/js/src/lbank.js +1 -1
- package/js/src/mexc.js +7 -7
- package/js/src/novadax.js +1 -1
- package/js/src/okcoin.js +2 -2
- package/js/src/okx.js +24 -10
- package/js/src/p2b.js +1 -0
- package/js/src/phemex.js +3 -3
- package/js/src/poloniexfutures.js +3 -3
- package/js/src/pro/alpaca.js +1 -1
- package/js/src/pro/binance.js +4 -4
- package/js/src/pro/bitget.js +1 -1
- package/js/src/pro/bitmart.js +1 -1
- package/js/src/pro/bitmex.d.ts +2 -1
- package/js/src/pro/bitmex.js +49 -6
- package/js/src/pro/bitvavo.js +1 -1
- package/js/src/pro/bybit.js +2 -2
- package/js/src/pro/cex.js +2 -2
- package/js/src/pro/coinbase.js +2 -2
- package/js/src/pro/independentreserve.js +1 -1
- package/js/src/pro/okx.js +1 -1
- package/js/src/pro/onetrading.js +2 -2
- package/js/src/pro/p2b.d.ts +23 -0
- package/js/src/pro/p2b.js +433 -0
- package/js/src/pro/probit.js +5 -5
- package/js/src/pro/whitebit.js +1 -1
- package/js/src/probit.js +1 -1
- package/js/src/timex.js +1 -1
- package/js/src/tokocrypto.js +3 -3
- package/js/src/wavesexchange.js +2 -2
- package/js/src/whitebit.js +2 -2
- package/js/src/woo.js +3 -3
- package/js/src/yobit.js +1 -1
- package/js/src/zaif.js +1 -1
- package/js/src/zonda.d.ts +1 -1
- package/js/src/zonda.js +3 -3
- package/package.json +1 -1
- package/skip-tests.json +3 -10
package/dist/ccxt.browser.js
CHANGED
|
@@ -4256,7 +4256,7 @@ class ascendex extends _abstract_ascendex_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
4256
4256
|
symbol = base + '/' + quote + ':' + settle;
|
|
4257
4257
|
}
|
|
4258
4258
|
const fee = this.safeNumber(market, 'commissionReserveRate');
|
|
4259
|
-
const marginTradable = this.
|
|
4259
|
+
const marginTradable = this.safeBool(market, 'marginTradable', false);
|
|
4260
4260
|
result.push({
|
|
4261
4261
|
'id': id,
|
|
4262
4262
|
'symbol': symbol,
|
|
@@ -4451,7 +4451,7 @@ class ascendex extends _abstract_ascendex_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
4451
4451
|
let marginMode = undefined;
|
|
4452
4452
|
[marketType, params] = this.handleMarketTypeAndParams('fetchBalance', undefined, params);
|
|
4453
4453
|
[marginMode, params] = this.handleMarginModeAndParams('fetchBalance', params);
|
|
4454
|
-
const isMargin = this.
|
|
4454
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
4455
4455
|
const isCross = marginMode === 'cross';
|
|
4456
4456
|
marketType = (isMargin || isCross) ? 'margin' : marketType;
|
|
4457
4457
|
params = this.omit(params, 'margin');
|
|
@@ -4811,7 +4811,7 @@ class ascendex extends _abstract_ascendex_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
4811
4811
|
const timestamp = this.safeInteger(trade, 'ts');
|
|
4812
4812
|
const priceString = this.safeString2(trade, 'price', 'p');
|
|
4813
4813
|
const amountString = this.safeString(trade, 'q');
|
|
4814
|
-
const buyerIsMaker = this.
|
|
4814
|
+
const buyerIsMaker = this.safeBool(trade, 'bm', false);
|
|
4815
4815
|
const side = buyerIsMaker ? 'sell' : 'buy';
|
|
4816
4816
|
market = this.safeMarket(undefined, market);
|
|
4817
4817
|
return this.safeTrade({
|
|
@@ -5155,7 +5155,7 @@ class ascendex extends _abstract_ascendex_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
5155
5155
|
const isLimitOrder = ((type === 'limit') || (type === 'stop_limit'));
|
|
5156
5156
|
const timeInForce = this.safeString(params, 'timeInForce');
|
|
5157
5157
|
const postOnly = this.isPostOnly(isMarketOrder, false, params);
|
|
5158
|
-
const reduceOnly = this.
|
|
5158
|
+
const reduceOnly = this.safeBool(params, 'reduceOnly', false);
|
|
5159
5159
|
const stopPrice = this.safeValue2(params, 'triggerPrice', 'stopPrice');
|
|
5160
5160
|
if (isLimitOrder) {
|
|
5161
5161
|
request['orderPrice'] = this.priceToPrecision(symbol, price);
|
|
@@ -6798,7 +6798,7 @@ class ascendex extends _abstract_ascendex_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
6798
6798
|
// { "code": "0" }
|
|
6799
6799
|
//
|
|
6800
6800
|
const transferOptions = this.safeValue(this.options, 'transfer', {});
|
|
6801
|
-
const fillResponseFromRequest = this.
|
|
6801
|
+
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
6802
6802
|
const transfer = this.parseTransfer(response, currency);
|
|
6803
6803
|
if (fillResponseFromRequest) {
|
|
6804
6804
|
transfer['fromAccount'] = fromAccount;
|
|
@@ -8419,6 +8419,99 @@ class Exchange {
|
|
|
8419
8419
|
// ########################################################################
|
|
8420
8420
|
// ------------------------------------------------------------------------
|
|
8421
8421
|
// METHODS BELOW THIS LINE ARE TRANSPILED FROM JAVASCRIPT TO PYTHON AND PHP
|
|
8422
|
+
safeBoolN(dictionaryOrList, keys, defaultValue = undefined) {
|
|
8423
|
+
/**
|
|
8424
|
+
* @ignore
|
|
8425
|
+
* @method
|
|
8426
|
+
* @description safely extract boolean value from dictionary or list
|
|
8427
|
+
* @returns {bool | undefined}
|
|
8428
|
+
*/
|
|
8429
|
+
const value = this.safeValueN(dictionaryOrList, keys, defaultValue);
|
|
8430
|
+
if (typeof value === 'boolean') {
|
|
8431
|
+
return value;
|
|
8432
|
+
}
|
|
8433
|
+
return defaultValue;
|
|
8434
|
+
}
|
|
8435
|
+
safeBool2(dictionary, key1, key2, defaultValue = undefined) {
|
|
8436
|
+
/**
|
|
8437
|
+
* @ignore
|
|
8438
|
+
* @method
|
|
8439
|
+
* @description safely extract boolean value from dictionary or list
|
|
8440
|
+
* @returns {bool | undefined}
|
|
8441
|
+
*/
|
|
8442
|
+
return this.safeBoolN(dictionary, [key1, key2], defaultValue);
|
|
8443
|
+
}
|
|
8444
|
+
safeBool(dictionary, key, defaultValue = undefined) {
|
|
8445
|
+
/**
|
|
8446
|
+
* @ignore
|
|
8447
|
+
* @method
|
|
8448
|
+
* @description safely extract boolean value from dictionary or list
|
|
8449
|
+
* @returns {bool | undefined}
|
|
8450
|
+
*/
|
|
8451
|
+
return this.safeBoolN(dictionary, [key], defaultValue);
|
|
8452
|
+
}
|
|
8453
|
+
safeDictN(dictionaryOrList, keys, defaultValue = undefined) {
|
|
8454
|
+
/**
|
|
8455
|
+
* @ignore
|
|
8456
|
+
* @method
|
|
8457
|
+
* @description safely extract a dictionary from dictionary or list
|
|
8458
|
+
* @returns {object | undefined}
|
|
8459
|
+
*/
|
|
8460
|
+
const value = this.safeValueN(dictionaryOrList, keys, defaultValue);
|
|
8461
|
+
if (typeof value === 'object') {
|
|
8462
|
+
return value;
|
|
8463
|
+
}
|
|
8464
|
+
return defaultValue;
|
|
8465
|
+
}
|
|
8466
|
+
safeDict(dictionary, key, defaultValue = undefined) {
|
|
8467
|
+
/**
|
|
8468
|
+
* @ignore
|
|
8469
|
+
* @method
|
|
8470
|
+
* @description safely extract a dictionary from dictionary or list
|
|
8471
|
+
* @returns {object | undefined}
|
|
8472
|
+
*/
|
|
8473
|
+
return this.safeDictN(dictionary, [key], defaultValue);
|
|
8474
|
+
}
|
|
8475
|
+
safeDict2(dictionary, key1, key2, defaultValue = undefined) {
|
|
8476
|
+
/**
|
|
8477
|
+
* @ignore
|
|
8478
|
+
* @method
|
|
8479
|
+
* @description safely extract a dictionary from dictionary or list
|
|
8480
|
+
* @returns {object | undefined}
|
|
8481
|
+
*/
|
|
8482
|
+
return this.safeDictN(dictionary, [key1, key2], defaultValue);
|
|
8483
|
+
}
|
|
8484
|
+
safeListN(dictionaryOrList, keys, defaultValue = undefined) {
|
|
8485
|
+
/**
|
|
8486
|
+
* @ignore
|
|
8487
|
+
* @method
|
|
8488
|
+
* @description safely extract an Array from dictionary or list
|
|
8489
|
+
* @returns {Array | undefined}
|
|
8490
|
+
*/
|
|
8491
|
+
const value = this.safeValueN(dictionaryOrList, keys, defaultValue);
|
|
8492
|
+
if (Array.isArray(value)) {
|
|
8493
|
+
return value;
|
|
8494
|
+
}
|
|
8495
|
+
return defaultValue;
|
|
8496
|
+
}
|
|
8497
|
+
safeList2(dictionaryOrList, key1, key2, defaultValue = undefined) {
|
|
8498
|
+
/**
|
|
8499
|
+
* @ignore
|
|
8500
|
+
* @method
|
|
8501
|
+
* @description safely extract an Array from dictionary or list
|
|
8502
|
+
* @returns {Array | undefined}
|
|
8503
|
+
*/
|
|
8504
|
+
return this.safeListN(dictionaryOrList, [key1, key2], defaultValue);
|
|
8505
|
+
}
|
|
8506
|
+
safeList(dictionaryOrList, key, defaultValue = undefined) {
|
|
8507
|
+
/**
|
|
8508
|
+
* @ignore
|
|
8509
|
+
* @method
|
|
8510
|
+
* @description safely extract an Array from dictionary or list
|
|
8511
|
+
* @returns {Array | undefined}
|
|
8512
|
+
*/
|
|
8513
|
+
return this.safeListN(dictionaryOrList, [key], defaultValue);
|
|
8514
|
+
}
|
|
8422
8515
|
handleDeltas(orderbook, deltas) {
|
|
8423
8516
|
for (let i = 0; i < deltas.length; i++) {
|
|
8424
8517
|
this.handleDelta(orderbook, deltas[i]);
|
|
@@ -8903,7 +8996,7 @@ class Exchange {
|
|
|
8903
8996
|
fee['cost'] = this.safeNumber(fee, 'cost');
|
|
8904
8997
|
}
|
|
8905
8998
|
const timestamp = this.safeInteger(entry, 'timestamp');
|
|
8906
|
-
const info = this.
|
|
8999
|
+
const info = this.safeDict(entry, 'info', {});
|
|
8907
9000
|
return {
|
|
8908
9001
|
'id': this.safeString(entry, 'id'),
|
|
8909
9002
|
'timestamp': timestamp,
|
|
@@ -9075,7 +9168,7 @@ class Exchange {
|
|
|
9075
9168
|
for (let i = 0; i < values.length; i++) {
|
|
9076
9169
|
const market = values[i];
|
|
9077
9170
|
const defaultCurrencyPrecision = (this.precisionMode === DECIMAL_PLACES) ? 8 : this.parseNumber('1e-8');
|
|
9078
|
-
const marketPrecision = this.
|
|
9171
|
+
const marketPrecision = this.safeDict(market, 'precision', {});
|
|
9079
9172
|
if ('base' in market) {
|
|
9080
9173
|
const currency = this.safeCurrencyStructure({
|
|
9081
9174
|
'id': this.safeString2(market, 'baseId', 'base'),
|
|
@@ -9105,7 +9198,7 @@ class Exchange {
|
|
|
9105
9198
|
const resultingCurrencies = [];
|
|
9106
9199
|
for (let i = 0; i < codes.length; i++) {
|
|
9107
9200
|
const code = codes[i];
|
|
9108
|
-
const groupedCurrenciesCode = this.
|
|
9201
|
+
const groupedCurrenciesCode = this.safeList(groupedCurrencies, code, []);
|
|
9109
9202
|
let highestPrecisionCurrency = this.safeValue(groupedCurrenciesCode, 0);
|
|
9110
9203
|
for (let j = 1; j < groupedCurrenciesCode.length; j++) {
|
|
9111
9204
|
const currentCurrency = groupedCurrenciesCode[j];
|
|
@@ -9188,7 +9281,7 @@ class Exchange {
|
|
|
9188
9281
|
const parseSymbol = symbol === undefined;
|
|
9189
9282
|
const parseSide = side === undefined;
|
|
9190
9283
|
const shouldParseFees = parseFee || parseFees;
|
|
9191
|
-
const fees = this.
|
|
9284
|
+
const fees = this.safeList(order, 'fees', []);
|
|
9192
9285
|
let trades = [];
|
|
9193
9286
|
if (parseFilled || parseCost || shouldParseFees) {
|
|
9194
9287
|
const rawTrades = this.safeValue(order, 'trades', trades);
|
|
@@ -9322,7 +9415,7 @@ class Exchange {
|
|
|
9322
9415
|
}
|
|
9323
9416
|
}
|
|
9324
9417
|
// ensure that the average field is calculated correctly
|
|
9325
|
-
const inverse = this.
|
|
9418
|
+
const inverse = this.safeBool(market, 'inverse', false);
|
|
9326
9419
|
const contractSize = this.numberToString(this.safeValue(market, 'contractSize', 1));
|
|
9327
9420
|
// inverse
|
|
9328
9421
|
// price = filled * contract size / cost
|
|
@@ -9376,12 +9469,12 @@ class Exchange {
|
|
|
9376
9469
|
entry['amount'] = this.safeNumber(entry, 'amount');
|
|
9377
9470
|
entry['price'] = this.safeNumber(entry, 'price');
|
|
9378
9471
|
entry['cost'] = this.safeNumber(entry, 'cost');
|
|
9379
|
-
const tradeFee = this.
|
|
9472
|
+
const tradeFee = this.safeDict(entry, 'fee', {});
|
|
9380
9473
|
tradeFee['cost'] = this.safeNumber(tradeFee, 'cost');
|
|
9381
9474
|
if ('rate' in tradeFee) {
|
|
9382
9475
|
tradeFee['rate'] = this.safeNumber(tradeFee, 'rate');
|
|
9383
9476
|
}
|
|
9384
|
-
const entryFees = this.
|
|
9477
|
+
const entryFees = this.safeList(entry, 'fees', []);
|
|
9385
9478
|
for (let j = 0; j < entryFees.length; j++) {
|
|
9386
9479
|
entryFees[j]['cost'] = this.safeNumber(entryFees[j], 'cost');
|
|
9387
9480
|
}
|
|
@@ -9556,7 +9649,7 @@ class Exchange {
|
|
|
9556
9649
|
const contractSize = this.safeString(market, 'contractSize');
|
|
9557
9650
|
let multiplyPrice = price;
|
|
9558
9651
|
if (contractSize !== undefined) {
|
|
9559
|
-
const inverse = this.
|
|
9652
|
+
const inverse = this.safeBool(market, 'inverse', false);
|
|
9560
9653
|
if (inverse) {
|
|
9561
9654
|
multiplyPrice = _Precise_js__WEBPACK_IMPORTED_MODULE_8__/* .Precise */ .O.stringDiv('1', price);
|
|
9562
9655
|
}
|
|
@@ -9799,12 +9892,12 @@ class Exchange {
|
|
|
9799
9892
|
}
|
|
9800
9893
|
convertTradingViewToOHLCV(ohlcvs, timestamp = 't', open = 'o', high = 'h', low = 'l', close = 'c', volume = 'v', ms = false) {
|
|
9801
9894
|
const result = [];
|
|
9802
|
-
const timestamps = this.
|
|
9803
|
-
const opens = this.
|
|
9804
|
-
const highs = this.
|
|
9805
|
-
const lows = this.
|
|
9806
|
-
const closes = this.
|
|
9807
|
-
const volumes = this.
|
|
9895
|
+
const timestamps = this.safeList(ohlcvs, timestamp, []);
|
|
9896
|
+
const opens = this.safeList(ohlcvs, open, []);
|
|
9897
|
+
const highs = this.safeList(ohlcvs, high, []);
|
|
9898
|
+
const lows = this.safeList(ohlcvs, low, []);
|
|
9899
|
+
const closes = this.safeList(ohlcvs, close, []);
|
|
9900
|
+
const volumes = this.safeList(ohlcvs, volume, []);
|
|
9808
9901
|
for (let i = 0; i < timestamps.length; i++) {
|
|
9809
9902
|
result.push([
|
|
9810
9903
|
ms ? this.safeInteger(timestamps, i) : this.safeTimestamp(timestamps, i),
|
|
@@ -9839,10 +9932,10 @@ class Exchange {
|
|
|
9839
9932
|
async fetchWebEndpoint(method, endpointMethod, returnAsJson, startRegex = undefined, endRegex = undefined) {
|
|
9840
9933
|
let errorMessage = '';
|
|
9841
9934
|
const options = this.safeValue(this.options, method, {});
|
|
9842
|
-
const muteOnFailure = this.
|
|
9935
|
+
const muteOnFailure = this.safeBool(options, 'webApiMuteFailure', true);
|
|
9843
9936
|
try {
|
|
9844
9937
|
// if it was not explicitly disabled, then don't fetch
|
|
9845
|
-
if (this.
|
|
9938
|
+
if (this.safeBool(options, 'webApiEnable', true) !== true) {
|
|
9846
9939
|
return undefined;
|
|
9847
9940
|
}
|
|
9848
9941
|
const maxRetries = this.safeValue(options, 'webApiRetries', 10);
|
|
@@ -10053,7 +10146,7 @@ class Exchange {
|
|
|
10053
10146
|
if (currencyCode !== undefined) {
|
|
10054
10147
|
const defaultNetworkCodeReplacements = this.safeValue(this.options, 'defaultNetworkCodeReplacements', {});
|
|
10055
10148
|
if (currencyCode in defaultNetworkCodeReplacements) {
|
|
10056
|
-
const replacementObject = this.
|
|
10149
|
+
const replacementObject = this.safeDict(defaultNetworkCodeReplacements, currencyCode, {});
|
|
10057
10150
|
networkCode = this.safeString(replacementObject, networkCode, networkCode);
|
|
10058
10151
|
}
|
|
10059
10152
|
}
|
|
@@ -10155,7 +10248,7 @@ class Exchange {
|
|
|
10155
10248
|
const id = this.safeString(item, marketIdKey);
|
|
10156
10249
|
const market = this.safeMarket(id, undefined, undefined, 'swap');
|
|
10157
10250
|
const symbol = market['symbol'];
|
|
10158
|
-
const contract = this.
|
|
10251
|
+
const contract = this.safeBool(market, 'contract', false);
|
|
10159
10252
|
if (contract && ((symbols === undefined) || this.inArray(symbol, symbols))) {
|
|
10160
10253
|
tiers[symbol] = this.parseMarketLeverageTiers(item, market);
|
|
10161
10254
|
}
|
|
@@ -11326,8 +11419,8 @@ class Exchange {
|
|
|
11326
11419
|
const currency = this.currencies[code];
|
|
11327
11420
|
let precision = this.safeValue(currency, 'precision');
|
|
11328
11421
|
if (networkCode !== undefined) {
|
|
11329
|
-
const networks = this.
|
|
11330
|
-
const networkItem = this.
|
|
11422
|
+
const networks = this.safeDict(currency, 'networks', {});
|
|
11423
|
+
const networkItem = this.safeDict(networks, networkCode, {});
|
|
11331
11424
|
precision = this.safeValue(networkItem, 'precision', precision);
|
|
11332
11425
|
}
|
|
11333
11426
|
if (precision === undefined) {
|
|
@@ -11629,7 +11722,7 @@ class Exchange {
|
|
|
11629
11722
|
* @returns {Array}
|
|
11630
11723
|
*/
|
|
11631
11724
|
const timeInForce = this.safeStringUpper(params, 'timeInForce');
|
|
11632
|
-
let postOnly = this.
|
|
11725
|
+
let postOnly = this.safeBool(params, 'postOnly', false);
|
|
11633
11726
|
const ioc = timeInForce === 'IOC';
|
|
11634
11727
|
const fok = timeInForce === 'FOK';
|
|
11635
11728
|
const po = timeInForce === 'PO';
|
|
@@ -12712,7 +12805,7 @@ class BadRequest extends ExchangeError {
|
|
|
12712
12805
|
this.name = 'BadRequest';
|
|
12713
12806
|
}
|
|
12714
12807
|
}
|
|
12715
|
-
class OperationRejected extends
|
|
12808
|
+
class OperationRejected extends ExchangeError {
|
|
12716
12809
|
constructor(message) {
|
|
12717
12810
|
super(message);
|
|
12718
12811
|
this.name = 'OperationRejected';
|
|
@@ -12724,7 +12817,7 @@ class BadSymbol extends BadRequest {
|
|
|
12724
12817
|
this.name = 'BadSymbol';
|
|
12725
12818
|
}
|
|
12726
12819
|
}
|
|
12727
|
-
class NoChange extends
|
|
12820
|
+
class NoChange extends OperationRejected {
|
|
12728
12821
|
constructor(message) {
|
|
12729
12822
|
super(message);
|
|
12730
12823
|
this.name = 'NoChange';
|
|
@@ -12845,7 +12938,7 @@ class DDoSProtection extends NetworkError {
|
|
|
12845
12938
|
this.name = 'DDoSProtection';
|
|
12846
12939
|
}
|
|
12847
12940
|
}
|
|
12848
|
-
class RateLimitExceeded extends
|
|
12941
|
+
class RateLimitExceeded extends NetworkError {
|
|
12849
12942
|
constructor(message) {
|
|
12850
12943
|
super(message);
|
|
12851
12944
|
this.name = 'RateLimitExceeded';
|
|
@@ -14363,6 +14456,9 @@ const safeFloatN = (o, k, $default) => {
|
|
|
14363
14456
|
return isNumber(n) ? n : $default;
|
|
14364
14457
|
};
|
|
14365
14458
|
const safeIntegerN = (o, k, $default) => {
|
|
14459
|
+
if (o === undefined) {
|
|
14460
|
+
return $default;
|
|
14461
|
+
}
|
|
14366
14462
|
const n = asInteger(getValueFromKeysInArray(o, k));
|
|
14367
14463
|
return isNumber(n) ? n : $default;
|
|
14368
14464
|
};
|
|
@@ -14375,14 +14471,23 @@ const safeTimestampN = (o, k, $default) => {
|
|
|
14375
14471
|
return isNumber(n) ? parseInt(n * 1000) : $default;
|
|
14376
14472
|
};
|
|
14377
14473
|
const safeValueN = (o, k, $default) => {
|
|
14474
|
+
if (o === undefined) {
|
|
14475
|
+
return $default;
|
|
14476
|
+
}
|
|
14378
14477
|
const x = getValueFromKeysInArray(o, k);
|
|
14379
14478
|
return hasProps(x) ? x : $default;
|
|
14380
14479
|
};
|
|
14381
14480
|
const safeStringN = (o, k, $default) => {
|
|
14481
|
+
if (o === undefined) {
|
|
14482
|
+
return $default;
|
|
14483
|
+
}
|
|
14382
14484
|
const x = getValueFromKeysInArray(o, k);
|
|
14383
14485
|
return isStringCoercible(x) ? String(x) : $default;
|
|
14384
14486
|
};
|
|
14385
14487
|
const safeStringLowerN = (o, k, $default) => {
|
|
14488
|
+
if (o === undefined) {
|
|
14489
|
+
return $default;
|
|
14490
|
+
}
|
|
14386
14491
|
const x = getValueFromKeysInArray(o, k);
|
|
14387
14492
|
return isStringCoercible(x) ? String(x).toLowerCase() : $default;
|
|
14388
14493
|
};
|
|
@@ -17019,7 +17124,7 @@ class bigone extends _abstract_bigone_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
17019
17124
|
const requestSide = isBuy ? 'BID' : 'ASK';
|
|
17020
17125
|
let uppercaseType = type.toUpperCase();
|
|
17021
17126
|
const isLimit = uppercaseType === 'LIMIT';
|
|
17022
|
-
const exchangeSpecificParam = this.
|
|
17127
|
+
const exchangeSpecificParam = this.safeBool(params, 'post_only', false);
|
|
17023
17128
|
let postOnly = undefined;
|
|
17024
17129
|
[postOnly, params] = this.handlePostOnly((uppercaseType === 'MARKET'), exchangeSpecificParam, params);
|
|
17025
17130
|
const triggerPrice = this.safeStringN(params, ['triggerPrice', 'stopPrice', 'stop_price']);
|
|
@@ -17651,7 +17756,7 @@ class bigone extends _abstract_bigone_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
17651
17756
|
//
|
|
17652
17757
|
const transfer = this.parseTransfer(response, currency);
|
|
17653
17758
|
const transferOptions = this.safeValue(this.options, 'transfer', {});
|
|
17654
|
-
const fillResponseFromRequest = this.
|
|
17759
|
+
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
17655
17760
|
if (fillResponseFromRequest) {
|
|
17656
17761
|
transfer['fromAccount'] = fromAccount;
|
|
17657
17762
|
transfer['toAccount'] = toAccount;
|
|
@@ -19209,234 +19314,885 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
19209
19314
|
'BUSD': 'USD',
|
|
19210
19315
|
},
|
|
19211
19316
|
},
|
|
19212
|
-
// https://binance-docs.github.io/apidocs/spot/en/#error-codes-2
|
|
19213
19317
|
'exceptions': {
|
|
19318
|
+
'spot': {
|
|
19319
|
+
// https://binance-docs.github.io/apidocs/spot/en/#error-codes
|
|
19320
|
+
'exact': {
|
|
19321
|
+
'-1000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19322
|
+
'-1001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19323
|
+
'-1002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19324
|
+
'-1003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19325
|
+
'-1004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19326
|
+
'-1006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19327
|
+
'-1007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RequestTimeout,
|
|
19328
|
+
'-1008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19329
|
+
'-1010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19330
|
+
'-1013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19331
|
+
'-1014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19332
|
+
'-1015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19333
|
+
'-1016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19334
|
+
'-1020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19335
|
+
'-1021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidNonce,
|
|
19336
|
+
'-1022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19337
|
+
'-1099': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19338
|
+
'-1100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19339
|
+
'-1101': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19340
|
+
'-1102': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19341
|
+
'-1103': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19342
|
+
'-1104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19343
|
+
'-1105': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19344
|
+
'-1106': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19345
|
+
'-1108': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19346
|
+
'-1111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19347
|
+
'-1112': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19348
|
+
'-1114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19349
|
+
'-1115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19350
|
+
'-1116': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19351
|
+
'-1117': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19352
|
+
'-1118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19353
|
+
'-1119': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19354
|
+
'-1120': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19355
|
+
'-1121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19356
|
+
'-1125': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19357
|
+
'-1127': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19358
|
+
'-1128': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19359
|
+
'-1130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19360
|
+
'-1131': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19361
|
+
'-1134': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19362
|
+
'-1135': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19363
|
+
'-1145': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19364
|
+
'-1151': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19365
|
+
'-2008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19366
|
+
'-2010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19367
|
+
'-2011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19368
|
+
'-2013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19369
|
+
'-2014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19370
|
+
'-2015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19371
|
+
'-2016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19372
|
+
'-2021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19373
|
+
'-2022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19374
|
+
'-2026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19375
|
+
// 3xxx errors are available only for spot
|
|
19376
|
+
'-3000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19377
|
+
'-3001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19378
|
+
'-3002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19379
|
+
'-3003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19380
|
+
'-3004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19381
|
+
'-3005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19382
|
+
'-3006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19383
|
+
'-3007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19384
|
+
'-3008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19385
|
+
'-3009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19386
|
+
'-3010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19387
|
+
'-3011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19388
|
+
'-3012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19389
|
+
'-3013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19390
|
+
'-3014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19391
|
+
'-3015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19392
|
+
'-3016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19393
|
+
'-3017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19394
|
+
'-3018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19395
|
+
'-3019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19396
|
+
'-3020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19397
|
+
'-3021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19398
|
+
'-3022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19399
|
+
'-3023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19400
|
+
'-3024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19401
|
+
'-3025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19402
|
+
'-3026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19403
|
+
'-3027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19404
|
+
'-3028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19405
|
+
'-3029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19406
|
+
'-3036': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19407
|
+
'-3037': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19408
|
+
'-3038': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19409
|
+
'-3041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19410
|
+
'-3042': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19411
|
+
'-3043': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19412
|
+
'-3044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19413
|
+
'-3045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19414
|
+
'-3999': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19415
|
+
'-4001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19416
|
+
'-4002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19417
|
+
'-4003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19418
|
+
'-4004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19419
|
+
'-4005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19420
|
+
'-4006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19421
|
+
'-4007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19422
|
+
'-4008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19423
|
+
'-4009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19424
|
+
'-4010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19425
|
+
'-4011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19426
|
+
'-4012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19427
|
+
'-4013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19428
|
+
'-4014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19429
|
+
'-4015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19430
|
+
'-4016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19431
|
+
'-4017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19432
|
+
'-4018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19433
|
+
'-4019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19434
|
+
'-4021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19435
|
+
'-4022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19436
|
+
'-4023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19437
|
+
'-4024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19438
|
+
'-4025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19439
|
+
'-4026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19440
|
+
'-4027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19441
|
+
'-4028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19442
|
+
'-4029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19443
|
+
'-4030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19444
|
+
'-4031': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19445
|
+
'-4032': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19446
|
+
'-4033': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19447
|
+
'-4034': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19448
|
+
'-4035': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19449
|
+
'-4036': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19450
|
+
'-4037': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19451
|
+
'-4038': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19452
|
+
'-4039': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19453
|
+
'-4040': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19454
|
+
'-4041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19455
|
+
'-4042': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19456
|
+
'-4043': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19457
|
+
'-4044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19458
|
+
'-4045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19459
|
+
'-4046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19460
|
+
'-4047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19461
|
+
'-4060': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19462
|
+
'-5001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19463
|
+
'-5002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19464
|
+
'-5003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19465
|
+
'-5004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19466
|
+
'-5005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19467
|
+
'-5006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19468
|
+
'-5007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19469
|
+
'-5008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19470
|
+
'-5009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19471
|
+
'-5010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19472
|
+
'-5011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19473
|
+
'-5012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19474
|
+
'-5013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19475
|
+
'-5021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19476
|
+
'-5022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19477
|
+
'-6001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19478
|
+
'-6003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19479
|
+
'-6004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19480
|
+
'-6005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19481
|
+
'-6006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19482
|
+
'-6007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19483
|
+
'-6008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19484
|
+
'-6009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19485
|
+
'-6011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19486
|
+
'-6012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19487
|
+
'-6013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19488
|
+
'-6014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19489
|
+
'-6015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19490
|
+
'-6016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19491
|
+
'-6017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19492
|
+
'-6018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19493
|
+
'-6019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19494
|
+
'-6020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19495
|
+
'-7001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19496
|
+
'-7002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19497
|
+
'-10001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19498
|
+
'-10002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19499
|
+
'-10005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19500
|
+
'-10007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19501
|
+
'-10008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19502
|
+
'-10009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19503
|
+
'-10010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19504
|
+
'-10011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19505
|
+
'-10012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19506
|
+
'-10013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19507
|
+
'-10015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19508
|
+
'-10016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19509
|
+
'-10017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19510
|
+
'-10018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19511
|
+
'-10019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19512
|
+
'-10020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19513
|
+
'-10021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19514
|
+
'-10022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19515
|
+
'-10023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19516
|
+
'-10024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19517
|
+
'-10025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19518
|
+
'-10026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19519
|
+
'-10028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19520
|
+
'-10029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19521
|
+
'-10030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19522
|
+
'-10031': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19523
|
+
'-10032': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19524
|
+
'-10034': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19525
|
+
'-10039': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19526
|
+
'-10040': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19527
|
+
'-10041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19528
|
+
'-10042': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19529
|
+
'-10043': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19530
|
+
'-10044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19531
|
+
'-10045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19532
|
+
'-10046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19533
|
+
'-10047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19534
|
+
'-11008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19535
|
+
'-12014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19536
|
+
// BLVT
|
|
19537
|
+
'-13000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19538
|
+
'-13001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19539
|
+
'-13002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19540
|
+
'-13003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19541
|
+
'-13004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19542
|
+
'-13005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19543
|
+
'-13006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19544
|
+
'-13007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19545
|
+
// 18xxx - BINANCE CODE
|
|
19546
|
+
'-18002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19547
|
+
'-18003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19548
|
+
'-18004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19549
|
+
'-18005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19550
|
+
'-18006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19551
|
+
'-18007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19552
|
+
// spot & futures algo (TBD for OPTIONS & PORTFOLIO MARGIN)
|
|
19553
|
+
'-20121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19554
|
+
'-20124': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19555
|
+
'-20130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19556
|
+
'-20132': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19557
|
+
'-20194': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19558
|
+
'-20195': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19559
|
+
'-20196': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19560
|
+
'-20198': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19561
|
+
'-20204': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19562
|
+
// 21xxx - PORTFOLIO MARGIN
|
|
19563
|
+
'-21001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19564
|
+
'-21002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19565
|
+
'-21003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19566
|
+
'-21004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19567
|
+
'-21005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19568
|
+
'-21006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19569
|
+
'-21007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19570
|
+
'-32603': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19571
|
+
'400002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19572
|
+
'100001003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19573
|
+
'200003903': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError, // undocumented, {"code":200003903,"msg":"Your identity verification has been rejected. Please complete identity verification again."}
|
|
19574
|
+
},
|
|
19575
|
+
},
|
|
19576
|
+
'linear': {
|
|
19577
|
+
// https://binance-docs.github.io/apidocs/futures/en/#error-codes
|
|
19578
|
+
'exact': {
|
|
19579
|
+
'-1000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19580
|
+
'-1001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19581
|
+
'-1002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19582
|
+
'-1003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19583
|
+
'-1004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19584
|
+
'-1005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19585
|
+
'-1006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19586
|
+
'-1007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RequestTimeout,
|
|
19587
|
+
'-1008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19588
|
+
'-1010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19589
|
+
'-1011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19590
|
+
'-1013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19591
|
+
'-1014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19592
|
+
'-1015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19593
|
+
'-1016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19594
|
+
'-1020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19595
|
+
'-1021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidNonce,
|
|
19596
|
+
'-1022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19597
|
+
'-1023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19598
|
+
'-1099': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19599
|
+
'-1100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19600
|
+
'-1101': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19601
|
+
'-1102': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19602
|
+
'-1103': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19603
|
+
'-1104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19604
|
+
'-1105': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19605
|
+
'-1106': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19606
|
+
'-1108': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19607
|
+
'-1109': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19608
|
+
'-1110': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19609
|
+
'-1111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19610
|
+
'-1112': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19611
|
+
'-1113': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19612
|
+
'-1114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19613
|
+
'-1115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19614
|
+
'-1116': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19615
|
+
'-1117': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19616
|
+
'-1118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19617
|
+
'-1119': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19618
|
+
'-1120': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19619
|
+
'-1121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19620
|
+
'-1122': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19621
|
+
'-1125': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19622
|
+
'-1126': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19623
|
+
'-1127': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19624
|
+
'-1128': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19625
|
+
'-1130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19626
|
+
'-1136': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19627
|
+
'-2010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19628
|
+
'-2011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19629
|
+
'-2012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19630
|
+
'-2013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19631
|
+
'-2014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19632
|
+
'-2015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19633
|
+
'-2016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19634
|
+
'-2017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19635
|
+
'-2018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19636
|
+
'-2019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19637
|
+
'-2020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19638
|
+
'-2021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19639
|
+
'-2022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19640
|
+
'-2023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19641
|
+
'-2024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19642
|
+
'-2025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19643
|
+
'-2026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19644
|
+
'-2027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19645
|
+
'-2028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19646
|
+
'-4000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19647
|
+
'-4001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19648
|
+
'-4002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19649
|
+
'-4003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19650
|
+
'-4004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19651
|
+
'-4005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19652
|
+
'-4006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19653
|
+
'-4007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19654
|
+
'-4008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19655
|
+
'-4009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19656
|
+
'-4010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19657
|
+
'-4011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19658
|
+
'-4012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19659
|
+
'-4013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19660
|
+
'-4014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19661
|
+
'-4015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19662
|
+
'-4016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19663
|
+
'-4017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19664
|
+
'-4018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19665
|
+
'-4019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19666
|
+
'-4020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19667
|
+
'-4021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19668
|
+
'-4022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19669
|
+
'-4023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19670
|
+
'-4024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19671
|
+
'-4025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19672
|
+
'-4026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19673
|
+
'-4027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19674
|
+
'-4028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19675
|
+
'-4029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19676
|
+
'-4030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19677
|
+
'-4031': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19678
|
+
'-4032': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19679
|
+
'-4033': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19680
|
+
'-4044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19681
|
+
'-4045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19682
|
+
'-4046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19683
|
+
'-4047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19684
|
+
'-4048': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19685
|
+
'-4049': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19686
|
+
'-4050': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19687
|
+
'-4051': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19688
|
+
'-4052': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19689
|
+
'-4053': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19690
|
+
'-4054': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19691
|
+
'-4055': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19692
|
+
'-4056': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19693
|
+
'-4057': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19694
|
+
'-4058': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19695
|
+
'-4059': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19696
|
+
'-4060': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19697
|
+
'-4061': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19698
|
+
'-4062': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19699
|
+
'-4063': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19700
|
+
'-4064': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19701
|
+
'-4065': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19702
|
+
'-4066': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19703
|
+
'-4067': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19704
|
+
'-4068': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19705
|
+
'-4069': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19706
|
+
'-4070': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19707
|
+
'-4071': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19708
|
+
'-4072': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19709
|
+
'-4073': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19710
|
+
'-4074': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19711
|
+
'-4075': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19712
|
+
'-4076': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19713
|
+
'-4077': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19714
|
+
'-4078': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19715
|
+
'-4079': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19716
|
+
'-4080': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19717
|
+
'-4081': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19718
|
+
'-4082': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19719
|
+
'-4083': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19720
|
+
'-4084': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19721
|
+
'-4085': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19722
|
+
'-4086': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19723
|
+
'-4087': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19724
|
+
'-4088': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19725
|
+
'-4104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19726
|
+
'-4114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19727
|
+
'-4115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19728
|
+
'-4118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19729
|
+
'-4131': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19730
|
+
'-4135': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19731
|
+
'-4137': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19732
|
+
'-4138': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19733
|
+
'-4139': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19734
|
+
'-4140': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19735
|
+
'-4141': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19736
|
+
'-4142': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19737
|
+
'-4144': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19738
|
+
'-4164': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19739
|
+
'-4165': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19740
|
+
'-4167': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19741
|
+
'-4168': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19742
|
+
'-4169': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19743
|
+
'-4170': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19744
|
+
'-4171': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19745
|
+
'-4172 ': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19746
|
+
'-4183': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19747
|
+
'-4184': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19748
|
+
'-4192': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19749
|
+
'-4202': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19750
|
+
'-4203': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19751
|
+
'-4205': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19752
|
+
'-4206': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19753
|
+
'-4208': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19754
|
+
'-4209': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19755
|
+
'-4210': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19756
|
+
'-4211': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19757
|
+
'-4400': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19758
|
+
'-4401': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19759
|
+
'-4402': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19760
|
+
'-4403': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19761
|
+
'-5021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFillable,
|
|
19762
|
+
'-5022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFillable,
|
|
19763
|
+
'-5024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19764
|
+
'-5025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19765
|
+
'-5026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19766
|
+
'-5027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19767
|
+
'-5028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19768
|
+
'-5037': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19769
|
+
'-5038': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19770
|
+
'-5039': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19771
|
+
'-5040': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19772
|
+
'-5041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19773
|
+
//
|
|
19774
|
+
// spot & futures algo (TBD for OPTIONS & PORTFOLIO MARGIN)
|
|
19775
|
+
//
|
|
19776
|
+
'-20121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19777
|
+
'-20124': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19778
|
+
'-20130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19779
|
+
'-20132': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19780
|
+
'-20194': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19781
|
+
'-20195': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19782
|
+
'-20196': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19783
|
+
'-20198': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19784
|
+
'-20204': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest, // The notional of USD is less or more than the limit.
|
|
19785
|
+
},
|
|
19786
|
+
},
|
|
19787
|
+
'inverse': {
|
|
19788
|
+
// https://binance-docs.github.io/apidocs/delivery/en/#error-codes
|
|
19789
|
+
'exact': {
|
|
19790
|
+
'-1000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19791
|
+
'-1001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19792
|
+
'-1002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19793
|
+
'-1003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19794
|
+
'-1004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19795
|
+
'-1005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19796
|
+
'-1006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19797
|
+
'-1007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RequestTimeout,
|
|
19798
|
+
'-1010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19799
|
+
'-1011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19800
|
+
'-1013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19801
|
+
'-1014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19802
|
+
'-1015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19803
|
+
'-1016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19804
|
+
'-1020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19805
|
+
'-1021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidNonce,
|
|
19806
|
+
'-1022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19807
|
+
'-1023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19808
|
+
'-1100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19809
|
+
'-1101': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19810
|
+
'-1102': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19811
|
+
'-1103': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19812
|
+
'-1104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19813
|
+
'-1105': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19814
|
+
'-1106': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19815
|
+
'-1108': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19816
|
+
'-1109': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19817
|
+
'-1110': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19818
|
+
'-1111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19819
|
+
'-1112': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19820
|
+
'-1113': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19821
|
+
'-1114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19822
|
+
'-1115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19823
|
+
'-1116': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19824
|
+
'-1117': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19825
|
+
'-1118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19826
|
+
'-1119': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19827
|
+
'-1120': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19828
|
+
'-1121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19829
|
+
'-1125': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19830
|
+
'-1127': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19831
|
+
'-1128': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19832
|
+
'-1130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19833
|
+
'-1136': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19834
|
+
'-2010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19835
|
+
'-2011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19836
|
+
'-2013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19837
|
+
'-2014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19838
|
+
'-2015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19839
|
+
'-2016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19840
|
+
'-2018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19841
|
+
'-2019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19842
|
+
'-2020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19843
|
+
'-2021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19844
|
+
'-2022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19845
|
+
'-2023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19846
|
+
'-2024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19847
|
+
'-2025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19848
|
+
'-2026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19849
|
+
'-2027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19850
|
+
'-2028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19851
|
+
'-4000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19852
|
+
'-4001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19853
|
+
'-4002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19854
|
+
'-4003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19855
|
+
'-4004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19856
|
+
'-4005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19857
|
+
'-4006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19858
|
+
'-4007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19859
|
+
'-4008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19860
|
+
'-4009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19861
|
+
'-4010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19862
|
+
'-4011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19863
|
+
'-4012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19864
|
+
'-4013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19865
|
+
'-4014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19866
|
+
'-4015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19867
|
+
'-4016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19868
|
+
'-4017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19869
|
+
'-4018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19870
|
+
'-4019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19871
|
+
'-4020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19872
|
+
'-4021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19873
|
+
'-4022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19874
|
+
'-4023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19875
|
+
'-4024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19876
|
+
'-4025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19877
|
+
'-4026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19878
|
+
'-4027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19879
|
+
'-4028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19880
|
+
'-4029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19881
|
+
'-4030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19882
|
+
'-4031': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19883
|
+
'-4032': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19884
|
+
'-4033': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19885
|
+
'-4044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19886
|
+
'-4045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19887
|
+
'-4046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19888
|
+
'-4047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19889
|
+
'-4048': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19890
|
+
'-4049': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19891
|
+
'-4050': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19892
|
+
'-4051': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19893
|
+
'-4052': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19894
|
+
'-4053': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19895
|
+
'-4054': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19896
|
+
'-4055': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19897
|
+
'-4056': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19898
|
+
'-4057': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19899
|
+
'-4058': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19900
|
+
'-4059': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19901
|
+
'-4060': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19902
|
+
'-4061': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19903
|
+
'-4062': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19904
|
+
//
|
|
19905
|
+
'-4067': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19906
|
+
'-4068': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19907
|
+
'-4082': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19908
|
+
'-4083': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19909
|
+
'-4084': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19910
|
+
'-4086': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19911
|
+
'-4087': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19912
|
+
'-4088': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19913
|
+
'-4089': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19914
|
+
'-4090': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19915
|
+
'-4104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19916
|
+
'-4110': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19917
|
+
'-4111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19918
|
+
'-4112': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19919
|
+
'-4113': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19920
|
+
'-4135': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19921
|
+
'-4137': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19922
|
+
'-4138': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19923
|
+
'-4139': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19924
|
+
'-4142': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19925
|
+
'-4150': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19926
|
+
'-4151': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19927
|
+
'-4152': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19928
|
+
'-4154': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19929
|
+
'-4155': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19930
|
+
'-4178': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19931
|
+
'-4192': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19932
|
+
'-4194': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19933
|
+
'-4195': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19934
|
+
'-4196': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19935
|
+
'-4197': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19936
|
+
'-4198': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19937
|
+
'-4199': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19938
|
+
'-4200': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19939
|
+
'-4201': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19940
|
+
'-4202': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19941
|
+
'-4188': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19942
|
+
//
|
|
19943
|
+
// spot & futures algo
|
|
19944
|
+
//
|
|
19945
|
+
'-20121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19946
|
+
'-20124': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19947
|
+
'-20130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19948
|
+
'-20132': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19949
|
+
'-20194': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19950
|
+
'-20195': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19951
|
+
'-20196': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19952
|
+
'-20198': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19953
|
+
'-20204': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest, // The notional of USD is less or more than the limit.
|
|
19954
|
+
},
|
|
19955
|
+
},
|
|
19956
|
+
'option': {
|
|
19957
|
+
// https://binance-docs.github.io/apidocs/voptions/en/#error-codes
|
|
19958
|
+
'exact': {
|
|
19959
|
+
'-1000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19960
|
+
'-1001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19961
|
+
'-1002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19962
|
+
'-1008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19963
|
+
'-1014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19964
|
+
'-1015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19965
|
+
'-1016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19966
|
+
'-1020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19967
|
+
'-1021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidNonce,
|
|
19968
|
+
'-1022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19969
|
+
'-1100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19970
|
+
'-1101': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19971
|
+
'-1102': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19972
|
+
'-1103': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19973
|
+
'-1104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19974
|
+
'-1105': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19975
|
+
'-1106': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19976
|
+
'-1111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19977
|
+
'-1115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19978
|
+
'-1116': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19979
|
+
'-1117': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19980
|
+
'-1118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19981
|
+
'-1119': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19982
|
+
'-1120': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19983
|
+
'-1121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19984
|
+
'-1125': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19985
|
+
'-1127': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19986
|
+
'-1128': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19987
|
+
'-1129': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19988
|
+
'-1130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19989
|
+
'-1131': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19990
|
+
'-2010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19991
|
+
'-2013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19992
|
+
'-2014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19993
|
+
'-2015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19994
|
+
'-2018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19995
|
+
'-2027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19996
|
+
'-3029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19997
|
+
'-4001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19998
|
+
'-4002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19999
|
+
'-4003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20000
|
+
'-4004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20001
|
+
'-4005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20002
|
+
'-4013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20003
|
+
'-4029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20004
|
+
'-4030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20005
|
+
'-4055': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest, // AMOUNT_MUST_BE_POSITIVE
|
|
20006
|
+
},
|
|
20007
|
+
},
|
|
20008
|
+
'portfolioMargin': {
|
|
20009
|
+
'exact': {
|
|
20010
|
+
'-1000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20011
|
+
'-1001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20012
|
+
'-1002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20013
|
+
'-1003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
20014
|
+
'-1004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20015
|
+
'-1005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
20016
|
+
'-1006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20017
|
+
'-1007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RequestTimeout,
|
|
20018
|
+
'-1010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20019
|
+
'-1011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
20020
|
+
'-1013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20021
|
+
'-1014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
20022
|
+
'-1015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
20023
|
+
'-1016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20024
|
+
'-1020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20025
|
+
'-1021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidNonce,
|
|
20026
|
+
'-1022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20027
|
+
'-1023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20028
|
+
'-1100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20029
|
+
'-1101': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20030
|
+
'-1102': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20031
|
+
'-1103': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20032
|
+
'-1104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20033
|
+
'-1105': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20034
|
+
'-1106': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20035
|
+
'-1108': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
20036
|
+
'-1109': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20037
|
+
'-1110': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
20038
|
+
'-1111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20039
|
+
'-1112': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20040
|
+
'-1113': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20041
|
+
'-1114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20042
|
+
'-1115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20043
|
+
'-1116': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20044
|
+
'-1117': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20045
|
+
'-1118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20046
|
+
'-1119': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20047
|
+
'-1120': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20048
|
+
'-1121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
20049
|
+
'-1125': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20050
|
+
'-1127': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20051
|
+
'-1128': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20052
|
+
'-1130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20053
|
+
'-1136': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20054
|
+
'-2010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
20055
|
+
'-2011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
20056
|
+
'-2013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
20057
|
+
'-2014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20058
|
+
'-2015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20059
|
+
'-2016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20060
|
+
'-2018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
20061
|
+
'-2019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
20062
|
+
'-2020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFillable,
|
|
20063
|
+
'-2021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
20064
|
+
'-2022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
20065
|
+
'-2023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20066
|
+
'-2024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20067
|
+
'-2025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20068
|
+
'-2026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
20069
|
+
'-2027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20070
|
+
'-2028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20071
|
+
'-4000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
20072
|
+
'-4001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20073
|
+
'-4002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20074
|
+
'-4003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20075
|
+
'-4004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20076
|
+
'-4005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20077
|
+
'-4006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20078
|
+
'-4007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20079
|
+
'-4008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20080
|
+
'-4009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20081
|
+
'-4010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20082
|
+
'-4011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20083
|
+
'-4012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20084
|
+
'-4013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20085
|
+
'-4014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20086
|
+
'-4015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20087
|
+
'-4016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20088
|
+
'-4017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20089
|
+
'-4018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20090
|
+
'-4019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20091
|
+
'-4020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20092
|
+
'-4021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20093
|
+
'-4022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20094
|
+
'-4023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20095
|
+
'-4024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20096
|
+
'-4025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20097
|
+
'-4026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20098
|
+
'-4027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20099
|
+
'-4028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20100
|
+
'-4029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20101
|
+
'-4030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20102
|
+
'-4031': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20103
|
+
'-4032': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20104
|
+
'-4033': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20105
|
+
'-4044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20106
|
+
'-4045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20107
|
+
'-4046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20108
|
+
'-4047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20109
|
+
'-4048': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20110
|
+
'-4049': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20111
|
+
'-4050': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
20112
|
+
'-4051': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
20113
|
+
'-4052': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20114
|
+
'-4053': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20115
|
+
'-4054': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20116
|
+
'-4055': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20117
|
+
'-4056': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20118
|
+
'-4057': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
20119
|
+
'-4058': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20120
|
+
'-4059': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20121
|
+
'-4060': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20122
|
+
'-4061': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20123
|
+
'-4062': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20124
|
+
'-4063': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20125
|
+
'-4064': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20126
|
+
'-4065': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20127
|
+
'-4066': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20128
|
+
'-4067': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20129
|
+
'-4068': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20130
|
+
'-4069': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20131
|
+
'-4070': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20132
|
+
'-4071': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20133
|
+
'-4072': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20134
|
+
'-4073': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20135
|
+
'-4074': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20136
|
+
'-4075': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20137
|
+
'-4076': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20138
|
+
'-4077': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20139
|
+
'-4078': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20140
|
+
'-4079': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20141
|
+
'-4080': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
20142
|
+
'-4081': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20143
|
+
'-4082': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20144
|
+
'-4083': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
20145
|
+
'-4084': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20146
|
+
'-4085': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20147
|
+
'-4086': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20148
|
+
'-4087': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
20149
|
+
'-4088': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
20150
|
+
'-4104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20151
|
+
'-4114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20152
|
+
'-4115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20153
|
+
'-4118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20154
|
+
'-4131': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20155
|
+
'-4135': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20156
|
+
'-4137': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20157
|
+
'-4138': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20158
|
+
'-4139': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20159
|
+
'-4140': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20160
|
+
'-4141': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20161
|
+
'-4142': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
20162
|
+
'-4144': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
20163
|
+
'-4161': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20164
|
+
'-4164': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20165
|
+
'-4165': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20166
|
+
'-4183': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20167
|
+
'-4184': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
20168
|
+
'-5021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFillable,
|
|
20169
|
+
'-5022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFillable, // Due to the order could not be executed as maker, the Post Only order will be rejected.
|
|
20170
|
+
},
|
|
20171
|
+
},
|
|
19214
20172
|
'exact': {
|
|
19215
20173
|
'System is under maintenance.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OnMaintenance,
|
|
19216
|
-
'System abnormality': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
20174
|
+
'System abnormality': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationFailed,
|
|
19217
20175
|
'You are not authorized to execute this request.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19218
20176
|
'API key does not exist': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19219
20177
|
'Order would trigger immediately.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19220
20178
|
'Stop price would trigger immediately.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19221
20179
|
'Order would immediately match and take.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19222
20180
|
'Account has insufficient balance for requested action.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19223
|
-
'Rest API trading is not enabled.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
19224
|
-
'This account may not place or cancel orders.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
20181
|
+
'Rest API trading is not enabled.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
20182
|
+
'This account may not place or cancel orders.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19225
20183
|
"You don't have permission.": _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19226
|
-
'Market is closed.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
19227
|
-
'Too many requests. Please try again later.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
20184
|
+
'Market is closed.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
20185
|
+
'Too many requests. Please try again later.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19228
20186
|
'This action is disabled on this account.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19229
20187
|
'Limit orders require GTC for this phase.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19230
20188
|
'This order type is not possible in this trading phase.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19231
|
-
'This type of sub-account exceeds the maximum number limit': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
20189
|
+
'This type of sub-account exceeds the maximum number limit': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OperationRejected,
|
|
19232
20190
|
'This symbol is restricted for this account.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19233
|
-
'This symbol is not permitted for this account.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19234
|
-
'-1000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeNotAvailable,
|
|
19235
|
-
'-1001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeNotAvailable,
|
|
19236
|
-
'-1002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19237
|
-
'-1003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19238
|
-
'-1004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.DDoSProtection,
|
|
19239
|
-
'-1005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19240
|
-
'-1006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19241
|
-
'-1007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RequestTimeout,
|
|
19242
|
-
'-1010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadResponse,
|
|
19243
|
-
'-1011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19244
|
-
'-1013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19245
|
-
'-1014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19246
|
-
'-1015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19247
|
-
'-1016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeNotAvailable,
|
|
19248
|
-
'-1020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19249
|
-
'-1021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidNonce,
|
|
19250
|
-
'-1022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19251
|
-
'-1023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19252
|
-
'-1099': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19253
|
-
'-1100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19254
|
-
'-1101': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19255
|
-
'-1102': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19256
|
-
'-1103': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19257
|
-
'-1104': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19258
|
-
'-1105': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19259
|
-
'-1106': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19260
|
-
'-1108': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19261
|
-
'-1109': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19262
|
-
'-1110': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19263
|
-
'-1111': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19264
|
-
'-1112': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19265
|
-
'-1113': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19266
|
-
'-1114': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19267
|
-
'-1115': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19268
|
-
'-1116': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19269
|
-
'-1117': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19270
|
-
'-1118': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19271
|
-
'-1119': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19272
|
-
'-1120': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19273
|
-
'-1121': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19274
|
-
'-1125': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19275
|
-
'-1127': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19276
|
-
'-1128': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19277
|
-
'-1130': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19278
|
-
'-1131': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19279
|
-
'-1135': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19280
|
-
'-1136': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19281
|
-
'-2008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19282
|
-
'-2010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19283
|
-
'-2011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19284
|
-
'-2013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
19285
|
-
'-2014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19286
|
-
'-2015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19287
|
-
'-2016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19288
|
-
'-2018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19289
|
-
'-2019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19290
|
-
'-2020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFillable,
|
|
19291
|
-
'-2021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderImmediatelyFillable,
|
|
19292
|
-
'-2022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19293
|
-
'-2023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19294
|
-
'-2024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19295
|
-
'-2025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19296
|
-
'-2026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19297
|
-
'-2027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19298
|
-
'-2028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19299
|
-
'-3000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19300
|
-
'-3001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19301
|
-
'-3002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19302
|
-
'-3003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19303
|
-
'-3004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19304
|
-
'-3005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19305
|
-
'-3006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19306
|
-
'-3007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19307
|
-
'-3008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19308
|
-
'-3009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19309
|
-
'-3010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19310
|
-
'-3011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19311
|
-
'-3012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19312
|
-
'-3013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19313
|
-
'-3014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19314
|
-
'-3015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19315
|
-
'-3016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19316
|
-
'-3017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19317
|
-
'-3018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19318
|
-
'-3019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19319
|
-
'-3020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19320
|
-
'-3021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19321
|
-
'-3022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19322
|
-
'-3023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19323
|
-
'-3024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19324
|
-
'-3025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19325
|
-
'-3026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19326
|
-
'-3027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19327
|
-
'-3028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19328
|
-
'-3029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19329
|
-
'-3036': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
19330
|
-
'-3037': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19331
|
-
'-3038': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19332
|
-
'-3041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19333
|
-
'-3042': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19334
|
-
'-3043': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19335
|
-
'-3044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.DDoSProtection,
|
|
19336
|
-
'-3045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19337
|
-
'-3999': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19338
|
-
'-4001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19339
|
-
'-4002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19340
|
-
'-4003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19341
|
-
'-4004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19342
|
-
'-4005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19343
|
-
'-4006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19344
|
-
'-4007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19345
|
-
'-4008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19346
|
-
'-4010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19347
|
-
'-4011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19348
|
-
'-4012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19349
|
-
'-4013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19350
|
-
'-4014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19351
|
-
'-4015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19352
|
-
'-4016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19353
|
-
'-4017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19354
|
-
'-4018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19355
|
-
'-4019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
19356
|
-
'-4021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19357
|
-
'-4022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19358
|
-
'-4023': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19359
|
-
'-4024': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19360
|
-
'-4025': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19361
|
-
'-4026': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19362
|
-
'-4027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19363
|
-
'-4028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19364
|
-
'-4029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19365
|
-
'-4030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19366
|
-
'-4031': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19367
|
-
'-4032': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19368
|
-
'-4033': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19369
|
-
'-4034': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19370
|
-
'-4035': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19371
|
-
'-4036': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19372
|
-
'-4037': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19373
|
-
'-4038': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19374
|
-
'-4039': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19375
|
-
'-4040': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19376
|
-
'-4041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19377
|
-
'-4042': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19378
|
-
'-4043': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19379
|
-
'-4044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19380
|
-
'-4045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19381
|
-
'-4046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19382
|
-
'-4047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19383
|
-
'-4054': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19384
|
-
'-4164': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19385
|
-
'-5001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19386
|
-
'-5002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19387
|
-
'-5003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19388
|
-
'-5004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19389
|
-
'-5005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19390
|
-
'-5006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19391
|
-
'-5007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19392
|
-
'-5008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19393
|
-
'-5009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19394
|
-
'-5010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19395
|
-
'-5011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19396
|
-
'-5012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19397
|
-
'-5013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19398
|
-
'-5021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19399
|
-
'-6001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19400
|
-
'-6003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19401
|
-
'-6004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19402
|
-
'-6005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19403
|
-
'-6006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19404
|
-
'-6007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19405
|
-
'-6008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19406
|
-
'-6009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19407
|
-
'-6011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19408
|
-
'-6012': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19409
|
-
'-6013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
19410
|
-
'-6014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19411
|
-
'-6015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19412
|
-
'-6016': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19413
|
-
'-6017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19414
|
-
'-6018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19415
|
-
'-6019': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19416
|
-
'-6020': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19417
|
-
'-7001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19418
|
-
'-7002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19419
|
-
'-9000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19420
|
-
'-10017': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19421
|
-
'-11008': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
19422
|
-
'-12014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.RateLimitExceeded,
|
|
19423
|
-
'-13000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19424
|
-
'-13001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19425
|
-
'-13002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19426
|
-
'-13003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19427
|
-
'-13004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19428
|
-
'-13005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19429
|
-
'-13006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
19430
|
-
'-13007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19431
|
-
'-21001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19432
|
-
'-21002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19433
|
-
'-21003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
19434
|
-
'100001003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
19435
|
-
'200003903': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError, // {"code":200003903,"msg":"Your identity verification has been rejected. Please complete identity verification again."}
|
|
20191
|
+
'This symbol is not permitted for this account.': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied, // {"code":-2010,"msg":"This symbol is not permitted for this account."}
|
|
19436
20192
|
},
|
|
19437
20193
|
'broad': {
|
|
19438
20194
|
'has no operation privilege': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
19439
|
-
'MAX_POSITION': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.
|
|
20195
|
+
'MAX_POSITION': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest, // {"code":-2010,"msg":"Filter failure: MAX_POSITION"}
|
|
19440
20196
|
},
|
|
19441
20197
|
},
|
|
19442
20198
|
});
|
|
@@ -20149,7 +20905,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
20149
20905
|
}
|
|
20150
20906
|
}
|
|
20151
20907
|
}
|
|
20152
|
-
const isMarginTradingAllowed = this.
|
|
20908
|
+
const isMarginTradingAllowed = this.safeBool(market, 'isMarginTradingAllowed', false);
|
|
20153
20909
|
let unifiedType = undefined;
|
|
20154
20910
|
if (spot) {
|
|
20155
20911
|
unifiedType = 'spot';
|
|
@@ -20888,7 +21644,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
20888
21644
|
response = await this.dapiPublicGetTicker24hr(this.extend(request, params));
|
|
20889
21645
|
}
|
|
20890
21646
|
else {
|
|
20891
|
-
const rolling = this.
|
|
21647
|
+
const rolling = this.safeBool(params, 'rolling', false);
|
|
20892
21648
|
params = this.omit(params, 'rolling');
|
|
20893
21649
|
if (rolling) {
|
|
20894
21650
|
response = await this.publicGetTicker(this.extend(request, params));
|
|
@@ -22341,7 +23097,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
22341
23097
|
}
|
|
22342
23098
|
// support for testing orders
|
|
22343
23099
|
if (market['spot'] || marketType === 'margin') {
|
|
22344
|
-
const test = this.
|
|
23100
|
+
const test = this.safeBool(query, 'test', false);
|
|
22345
23101
|
if (test) {
|
|
22346
23102
|
method += 'Test';
|
|
22347
23103
|
}
|
|
@@ -23523,7 +24279,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23523
24279
|
let response = undefined;
|
|
23524
24280
|
const request = {};
|
|
23525
24281
|
const legalMoney = this.safeValue(this.options, 'legalMoney', {});
|
|
23526
|
-
const fiatOnly = this.
|
|
24282
|
+
const fiatOnly = this.safeBool(params, 'fiat', false);
|
|
23527
24283
|
params = this.omit(params, 'fiatOnly');
|
|
23528
24284
|
const until = this.safeInteger(params, 'until');
|
|
23529
24285
|
params = this.omit(params, 'until');
|
|
@@ -23635,7 +24391,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23635
24391
|
return await this.fetchPaginatedCallDynamic('fetchWithdrawals', code, since, limit, params);
|
|
23636
24392
|
}
|
|
23637
24393
|
const legalMoney = this.safeValue(this.options, 'legalMoney', {});
|
|
23638
|
-
const fiatOnly = this.
|
|
24394
|
+
const fiatOnly = this.safeBool(params, 'fiat', false);
|
|
23639
24395
|
params = this.omit(params, 'fiatOnly');
|
|
23640
24396
|
const request = {};
|
|
23641
24397
|
const until = this.safeInteger(params, 'until');
|
|
@@ -26574,6 +27330,30 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26574
27330
|
}
|
|
26575
27331
|
return { 'url': url, 'method': method, 'body': body, 'headers': headers };
|
|
26576
27332
|
}
|
|
27333
|
+
getExceptionsByUrl(url, exactOrBroad) {
|
|
27334
|
+
let marketType = undefined;
|
|
27335
|
+
const hostname = (this.hostname !== undefined) ? this.hostname : 'binance.com';
|
|
27336
|
+
if (url.startsWith('https://api.' + hostname + '/')) {
|
|
27337
|
+
marketType = 'spot';
|
|
27338
|
+
}
|
|
27339
|
+
else if (url.startsWith('https://dapi.' + hostname + '/')) {
|
|
27340
|
+
marketType = 'inverse';
|
|
27341
|
+
}
|
|
27342
|
+
else if (url.startsWith('https://fapi.' + hostname + '/')) {
|
|
27343
|
+
marketType = 'linear';
|
|
27344
|
+
}
|
|
27345
|
+
else if (url.startsWith('https://eapi.' + hostname + '/')) {
|
|
27346
|
+
marketType = 'option';
|
|
27347
|
+
}
|
|
27348
|
+
else if (url.startsWith('https://papi.' + hostname + '/')) {
|
|
27349
|
+
marketType = 'portfoliomargin';
|
|
27350
|
+
}
|
|
27351
|
+
if (marketType !== undefined) {
|
|
27352
|
+
const exceptionsForMarketType = this.safeValue(this.exceptions, marketType, {});
|
|
27353
|
+
return this.safeValue(exceptionsForMarketType, exactOrBroad, {});
|
|
27354
|
+
}
|
|
27355
|
+
return {};
|
|
27356
|
+
}
|
|
26577
27357
|
handleErrors(code, reason, url, method, headers, body, response, requestHeaders, requestBody) {
|
|
26578
27358
|
if ((code === 418) || (code === 429)) {
|
|
26579
27359
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.DDoSProtection(this.id + ' ' + code.toString() + ' ' + reason + ' ' + body);
|
|
@@ -26596,7 +27376,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26596
27376
|
return undefined; // fallback to default error handler
|
|
26597
27377
|
}
|
|
26598
27378
|
// response in format {'msg': 'The coin does not exist.', 'success': true/false}
|
|
26599
|
-
const success = this.
|
|
27379
|
+
const success = this.safeBool(response, 'success', true);
|
|
26600
27380
|
if (!success) {
|
|
26601
27381
|
const messageNew = this.safeString(response, 'msg');
|
|
26602
27382
|
let parsedMessage = undefined;
|
|
@@ -26615,7 +27395,9 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26615
27395
|
}
|
|
26616
27396
|
const message = this.safeString(response, 'msg');
|
|
26617
27397
|
if (message !== undefined) {
|
|
27398
|
+
this.throwExactlyMatchedException(this.getExceptionsByUrl(url, 'exact'), message, this.id + ' ' + message);
|
|
26618
27399
|
this.throwExactlyMatchedException(this.exceptions['exact'], message, this.id + ' ' + message);
|
|
27400
|
+
this.throwBroadlyMatchedException(this.getExceptionsByUrl(url, 'broad'), message, this.id + ' ' + message);
|
|
26619
27401
|
this.throwBroadlyMatchedException(this.exceptions['broad'], message, this.id + ' ' + message);
|
|
26620
27402
|
}
|
|
26621
27403
|
// checks against error codes
|
|
@@ -26641,6 +27423,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26641
27423
|
// binanceusdm {"code":-4046,"msg":"No need to change margin type."}
|
|
26642
27424
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.MarginModeAlreadySet(feedback);
|
|
26643
27425
|
}
|
|
27426
|
+
this.throwExactlyMatchedException(this.getExceptionsByUrl(url, 'exact'), error, feedback);
|
|
26644
27427
|
this.throwExactlyMatchedException(this.exceptions['exact'], error, feedback);
|
|
26645
27428
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(feedback);
|
|
26646
27429
|
}
|
|
@@ -26654,6 +27437,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26654
27437
|
const element = response[0];
|
|
26655
27438
|
const errorCode = this.safeString(element, 'code');
|
|
26656
27439
|
if (errorCode !== undefined) {
|
|
27440
|
+
this.throwExactlyMatchedException(this.getExceptionsByUrl(url, 'exact'), errorCode, this.id + ' ' + body);
|
|
26657
27441
|
this.throwExactlyMatchedException(this.exceptions['exact'], errorCode, this.id + ' ' + body);
|
|
26658
27442
|
}
|
|
26659
27443
|
}
|
|
@@ -29825,7 +30609,7 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
29825
30609
|
if (((type === 'LIMIT') || (type === 'TRIGGER_LIMIT') || (type === 'STOP') || (type === 'TAKE_PROFIT')) && !isTrailing) {
|
|
29826
30610
|
request['price'] = this.parseToNumeric(this.priceToPrecision(symbol, price));
|
|
29827
30611
|
}
|
|
29828
|
-
let reduceOnly = this.
|
|
30612
|
+
let reduceOnly = this.safeBool(params, 'reduceOnly', false);
|
|
29829
30613
|
if (isTriggerOrder) {
|
|
29830
30614
|
request['stopPrice'] = this.parseToNumeric(this.priceToPrecision(symbol, triggerPrice));
|
|
29831
30615
|
if (isMarketOrder || (type === 'TRIGGER_MARKET')) {
|
|
@@ -36178,7 +36962,7 @@ class bitfinex extends _abstract_bitfinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
36178
36962
|
*/
|
|
36179
36963
|
await this.loadMarkets();
|
|
36180
36964
|
const market = this.market(symbol);
|
|
36181
|
-
const postOnly = this.
|
|
36965
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
36182
36966
|
type = type.toLowerCase();
|
|
36183
36967
|
params = this.omit(params, ['postOnly']);
|
|
36184
36968
|
if (market['spot']) {
|
|
@@ -36839,9 +37623,13 @@ class bitfinex2 extends _abstract_bitfinex2_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
36839
37623
|
'createLimitOrder': true,
|
|
36840
37624
|
'createMarketOrder': true,
|
|
36841
37625
|
'createOrder': true,
|
|
37626
|
+
'createReduceOnlyOrder': true,
|
|
36842
37627
|
'createStopLimitOrder': true,
|
|
36843
37628
|
'createStopMarketOrder': true,
|
|
36844
37629
|
'createStopOrder': true,
|
|
37630
|
+
'createTriggerOrder': true,
|
|
37631
|
+
'createTrailingAmountOrder': true,
|
|
37632
|
+
'createTrailingPercentOrder': false,
|
|
36845
37633
|
'editOrder': false,
|
|
36846
37634
|
'fetchBalance': true,
|
|
36847
37635
|
'fetchClosedOrder': true,
|
|
@@ -38296,94 +39084,81 @@ class bitfinex2 extends _abstract_bitfinex2_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
38296
39084
|
/**
|
|
38297
39085
|
* @method
|
|
38298
39086
|
* @name bitfinex2#createOrder
|
|
38299
|
-
* @description
|
|
39087
|
+
* @description create an order on the exchange
|
|
38300
39088
|
* @see https://docs.bitfinex.com/reference/rest-auth-submit-order
|
|
38301
|
-
* @param {string} symbol
|
|
39089
|
+
* @param {string} symbol unified CCXT market symbol
|
|
38302
39090
|
* @param {string} type 'limit' or 'market'
|
|
38303
39091
|
* @param {string} side 'buy' or 'sell'
|
|
38304
39092
|
* @param {float} amount the amount of currency to trade
|
|
38305
|
-
* @param {float} [price] price of order
|
|
38306
|
-
* @param {object} [params]
|
|
38307
|
-
* @param {float} [params.stopPrice]
|
|
39093
|
+
* @param {float} [price] price of the order
|
|
39094
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
39095
|
+
* @param {float} [params.stopPrice] the price that triggers a trigger order
|
|
38308
39096
|
* @param {string} [params.timeInForce] "GTC", "IOC", "FOK", or "PO"
|
|
38309
|
-
* @param {
|
|
38310
|
-
* @param {
|
|
39097
|
+
* @param {boolean} [params.postOnly] set to true if you want to make a post only order
|
|
39098
|
+
* @param {boolean} [params.reduceOnly] indicates that the order is to reduce the size of a position
|
|
38311
39099
|
* @param {int} [params.flags] additional order parameters: 4096 (Post Only), 1024 (Reduce Only), 16384 (OCO), 64 (Hidden), 512 (Close), 524288 (No Var Rates)
|
|
38312
39100
|
* @param {int} [params.lev] leverage for a derivative order, supported by derivative symbol orders only. The value should be between 1 and 100 inclusive.
|
|
38313
|
-
* @param {string} [params.
|
|
38314
|
-
* @param {string} [params.price_aux_limit] Order price for stop limit orders
|
|
39101
|
+
* @param {string} [params.price_aux_limit] order price for stop limit orders
|
|
38315
39102
|
* @param {string} [params.price_oco_stop] OCO stop price
|
|
39103
|
+
* @param {string} [params.trailingAmount] *swap only* the quote amount to trail away from the current market price
|
|
38316
39104
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
38317
39105
|
*/
|
|
38318
39106
|
await this.loadMarkets();
|
|
38319
39107
|
const market = this.market(symbol);
|
|
38320
|
-
// order types "limit" and "market" immediatley parsed "EXCHANGE LIMIT" and "EXCHANGE MARKET"
|
|
38321
|
-
// note: same order types exist for margin orders without the EXCHANGE prefix
|
|
38322
|
-
const orderTypes = this.safeValue(this.options, 'orderTypes', {});
|
|
38323
|
-
let orderType = type.toUpperCase();
|
|
38324
|
-
if (market['spot']) {
|
|
38325
|
-
// although they claim that type needs to be 'exchange limit' or 'exchange market'
|
|
38326
|
-
// in fact that's not the case for swap markets
|
|
38327
|
-
orderType = this.safeStringUpper(orderTypes, type, type);
|
|
38328
|
-
}
|
|
38329
|
-
const stopPrice = this.safeString2(params, 'stopPrice', 'triggerPrice');
|
|
38330
|
-
const timeInForce = this.safeString(params, 'timeInForce');
|
|
38331
|
-
const postOnlyParam = this.safeValue(params, 'postOnly', false);
|
|
38332
|
-
const reduceOnly = this.safeValue(params, 'reduceOnly', false);
|
|
38333
|
-
const clientOrderId = this.safeValue2(params, 'cid', 'clientOrderId');
|
|
38334
|
-
params = this.omit(params, ['triggerPrice', 'stopPrice', 'timeInForce', 'postOnly', 'reduceOnly', 'price_aux_limit']);
|
|
38335
39108
|
let amountString = this.amountToPrecision(symbol, amount);
|
|
38336
39109
|
amountString = (side === 'buy') ? amountString : _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise */ .O.stringNeg(amountString);
|
|
38337
39110
|
const request = {
|
|
38338
|
-
// 'gid': 0123456789, // int32, optional group id for the order
|
|
38339
|
-
// 'cid': 0123456789, // int32 client order id
|
|
38340
|
-
'type': orderType,
|
|
38341
39111
|
'symbol': market['id'],
|
|
38342
|
-
// 'price': this.numberToString (price),
|
|
38343
39112
|
'amount': amountString,
|
|
38344
|
-
// 'flags': 0, // int32, https://docs.bitfinex.com/v2/docs/flag-values
|
|
38345
|
-
// 'lev': 10, // leverage for a derivative orders, the value should be between 1 and 100 inclusive, optional, 10 by default
|
|
38346
|
-
// 'price_trailing': this.numberToString (priceTrailing),
|
|
38347
|
-
// 'price_aux_limit': this.numberToString (stopPrice),
|
|
38348
|
-
// 'price_oco_stop': this.numberToString (ocoStopPrice),
|
|
38349
|
-
// 'tif': '2020-01-01 10:45:23', // datetime for automatic order cancellation
|
|
38350
|
-
// 'meta': {
|
|
38351
|
-
// 'aff_code': 'AFF_CODE_HERE'
|
|
38352
|
-
// },
|
|
38353
39113
|
};
|
|
38354
|
-
const
|
|
38355
|
-
const
|
|
38356
|
-
const
|
|
38357
|
-
const
|
|
38358
|
-
const
|
|
38359
|
-
const
|
|
39114
|
+
const stopPrice = this.safeString2(params, 'stopPrice', 'triggerPrice');
|
|
39115
|
+
const trailingAmount = this.safeString(params, 'trailingAmount');
|
|
39116
|
+
const timeInForce = this.safeString(params, 'timeInForce');
|
|
39117
|
+
const postOnlyParam = this.safeBool(params, 'postOnly', false);
|
|
39118
|
+
const reduceOnly = this.safeBool(params, 'reduceOnly', false);
|
|
39119
|
+
const clientOrderId = this.safeValue2(params, 'cid', 'clientOrderId');
|
|
39120
|
+
params = this.omit(params, ['triggerPrice', 'stopPrice', 'timeInForce', 'postOnly', 'reduceOnly', 'trailingAmount', 'clientOrderId']);
|
|
39121
|
+
let orderType = type.toUpperCase();
|
|
39122
|
+
if (trailingAmount !== undefined) {
|
|
39123
|
+
orderType = 'TRAILING STOP';
|
|
39124
|
+
request['price_trailing'] = trailingAmount;
|
|
39125
|
+
}
|
|
39126
|
+
else if (stopPrice !== undefined) {
|
|
39127
|
+
// request['price'] is taken as stopPrice for stop orders
|
|
39128
|
+
request['price'] = this.priceToPrecision(symbol, stopPrice);
|
|
39129
|
+
if (type === 'limit') {
|
|
39130
|
+
orderType = 'STOP LIMIT';
|
|
39131
|
+
request['price_aux_limit'] = this.priceToPrecision(symbol, price);
|
|
39132
|
+
}
|
|
39133
|
+
else {
|
|
39134
|
+
orderType = 'STOP';
|
|
39135
|
+
}
|
|
39136
|
+
}
|
|
39137
|
+
const ioc = (timeInForce === 'IOC');
|
|
39138
|
+
const fok = (timeInForce === 'FOK');
|
|
38360
39139
|
const postOnly = (postOnlyParam || (timeInForce === 'PO'));
|
|
38361
39140
|
if ((ioc || fok) && (price === undefined)) {
|
|
38362
39141
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder(this.id + ' createOrder() requires a price argument with IOC and FOK orders');
|
|
38363
39142
|
}
|
|
38364
|
-
if ((ioc || fok) &&
|
|
39143
|
+
if ((ioc || fok) && (type === 'market')) {
|
|
38365
39144
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder(this.id + ' createOrder() does not allow market IOC and FOK orders');
|
|
38366
39145
|
}
|
|
38367
|
-
if ((
|
|
39146
|
+
if ((type !== 'market') && (stopPrice === undefined)) {
|
|
38368
39147
|
request['price'] = this.priceToPrecision(symbol, price);
|
|
38369
39148
|
}
|
|
38370
|
-
if (stopLimit || stopMarket) {
|
|
38371
|
-
// request['price'] is taken as stopPrice for stop orders
|
|
38372
|
-
request['price'] = this.priceToPrecision(symbol, stopPrice);
|
|
38373
|
-
if (stopMarket) {
|
|
38374
|
-
request['type'] = 'EXCHANGE STOP';
|
|
38375
|
-
}
|
|
38376
|
-
else if (stopLimit) {
|
|
38377
|
-
request['type'] = 'EXCHANGE STOP LIMIT';
|
|
38378
|
-
request['price_aux_limit'] = this.priceToPrecision(symbol, price);
|
|
38379
|
-
}
|
|
38380
|
-
}
|
|
38381
39149
|
if (ioc) {
|
|
38382
|
-
|
|
39150
|
+
orderType = 'IOC';
|
|
38383
39151
|
}
|
|
38384
39152
|
else if (fok) {
|
|
38385
|
-
|
|
39153
|
+
orderType = 'FOK';
|
|
38386
39154
|
}
|
|
39155
|
+
let marginMode = undefined;
|
|
39156
|
+
[marginMode, params] = this.handleMarginModeAndParams('createOrder', params);
|
|
39157
|
+
if (market['spot'] && (marginMode === undefined)) {
|
|
39158
|
+
// The EXCHANGE prefix is only required for non margin spot markets
|
|
39159
|
+
orderType = 'EXCHANGE ' + orderType;
|
|
39160
|
+
}
|
|
39161
|
+
request['type'] = orderType;
|
|
38387
39162
|
// flag values may be summed to combine flags
|
|
38388
39163
|
let flags = 0;
|
|
38389
39164
|
if (postOnly) {
|
|
@@ -38397,7 +39172,6 @@ class bitfinex2 extends _abstract_bitfinex2_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
38397
39172
|
}
|
|
38398
39173
|
if (clientOrderId !== undefined) {
|
|
38399
39174
|
request['cid'] = clientOrderId;
|
|
38400
|
-
params = this.omit(params, ['cid', 'clientOrderId']);
|
|
38401
39175
|
}
|
|
38402
39176
|
const response = await this.privatePostAuthWOrderSubmit(this.extend(request, params));
|
|
38403
39177
|
//
|
|
@@ -38453,8 +39227,8 @@ class bitfinex2 extends _abstract_bitfinex2_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
38453
39227
|
const errorText = response[7];
|
|
38454
39228
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(this.id + ' ' + response[6] + ': ' + errorText + ' (#' + errorCode + ')');
|
|
38455
39229
|
}
|
|
38456
|
-
const orders = this.
|
|
38457
|
-
const order = this.
|
|
39230
|
+
const orders = this.safeList(response, 4, []);
|
|
39231
|
+
const order = this.safeList(orders, 0);
|
|
38458
39232
|
return this.parseOrder(order, market);
|
|
38459
39233
|
}
|
|
38460
39234
|
async cancelAllOrders(symbol = undefined, params = {}) {
|
|
@@ -39202,7 +39976,7 @@ class bitfinex2 extends _abstract_bitfinex2_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
39202
39976
|
request['payment_id'] = tag;
|
|
39203
39977
|
}
|
|
39204
39978
|
const withdrawOptions = this.safeValue(this.options, 'withdraw', {});
|
|
39205
|
-
const includeFee = this.
|
|
39979
|
+
const includeFee = this.safeBool(withdrawOptions, 'includeFee', false);
|
|
39206
39980
|
if (includeFee) {
|
|
39207
39981
|
request['fee_deduct'] = 1;
|
|
39208
39982
|
}
|
|
@@ -42141,6 +42915,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
42141
42915
|
'fetchCrossBorrowRate': true,
|
|
42142
42916
|
'fetchCrossBorrowRates': false,
|
|
42143
42917
|
'fetchCurrencies': true,
|
|
42918
|
+
'fetchDeposit': false,
|
|
42144
42919
|
'fetchDepositAddress': true,
|
|
42145
42920
|
'fetchDepositAddresses': false,
|
|
42146
42921
|
'fetchDeposits': true,
|
|
@@ -42170,6 +42945,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
42170
42945
|
'fetchOpenOrders': true,
|
|
42171
42946
|
'fetchOrder': true,
|
|
42172
42947
|
'fetchOrderBook': true,
|
|
42948
|
+
'fetchOrderBooks': false,
|
|
42173
42949
|
'fetchOrders': false,
|
|
42174
42950
|
'fetchOrderTrades': false,
|
|
42175
42951
|
'fetchPosition': true,
|
|
@@ -42177,6 +42953,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
42177
42953
|
'fetchPositions': true,
|
|
42178
42954
|
'fetchPositionsRisk': false,
|
|
42179
42955
|
'fetchPremiumIndexOHLCV': false,
|
|
42956
|
+
'fetchStatus': false,
|
|
42180
42957
|
'fetchTicker': true,
|
|
42181
42958
|
'fetchTickers': true,
|
|
42182
42959
|
'fetchTime': true,
|
|
@@ -42193,6 +42970,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
42193
42970
|
'repayCrossMargin': true,
|
|
42194
42971
|
'repayIsolatedMargin': true,
|
|
42195
42972
|
'setLeverage': true,
|
|
42973
|
+
'setMargin': false,
|
|
42196
42974
|
'setMarginMode': true,
|
|
42197
42975
|
'setPositionMode': true,
|
|
42198
42976
|
'signIn': false,
|
|
@@ -44310,7 +45088,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
44310
45088
|
'fee': undefined,
|
|
44311
45089
|
};
|
|
44312
45090
|
const withdrawOptions = this.safeValue(this.options, 'withdraw', {});
|
|
44313
|
-
const fillResponseFromRequest = this.
|
|
45091
|
+
const fillResponseFromRequest = this.safeBool(withdrawOptions, 'fillResponseFromRequest', true);
|
|
44314
45092
|
if (fillResponseFromRequest) {
|
|
44315
45093
|
result['currency'] = code;
|
|
44316
45094
|
result['timestamp'] = this.milliseconds();
|
|
@@ -45195,7 +45973,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
45195
45973
|
[marginMode, params] = this.handleMarginModeAndParams('fetchTradingFees', params);
|
|
45196
45974
|
[marketType, params] = this.handleMarketTypeAndParams('fetchTradingFees', undefined, params);
|
|
45197
45975
|
if (marketType === 'spot') {
|
|
45198
|
-
const margin = this.
|
|
45976
|
+
const margin = this.safeBool(params, 'margin', false);
|
|
45199
45977
|
params = this.omit(params, 'margin');
|
|
45200
45978
|
if ((marginMode !== undefined) || margin) {
|
|
45201
45979
|
response = await this.publicMarginGetV2MarginCurrencies(params);
|
|
@@ -46216,7 +46994,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
46216
46994
|
request['price'] = this.priceToPrecision(symbol, price);
|
|
46217
46995
|
}
|
|
46218
46996
|
const triggerType = this.safeString(params, 'triggerType', 'mark_price');
|
|
46219
|
-
const reduceOnly = this.
|
|
46997
|
+
const reduceOnly = this.safeBool(params, 'reduceOnly', false);
|
|
46220
46998
|
const clientOrderId = this.safeString2(params, 'clientOid', 'clientOrderId');
|
|
46221
46999
|
const exchangeSpecificTifParam = this.safeString2(params, 'force', 'timeInForce');
|
|
46222
47000
|
let postOnly = undefined;
|
|
@@ -46312,7 +47090,7 @@ class bitget extends _abstract_bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
46312
47090
|
}
|
|
46313
47091
|
const marginModeRequest = (marginMode === 'cross') ? 'crossed' : 'isolated';
|
|
46314
47092
|
request['marginMode'] = marginModeRequest;
|
|
46315
|
-
const oneWayMode = this.
|
|
47093
|
+
const oneWayMode = this.safeBool(params, 'oneWayMode', false);
|
|
46316
47094
|
params = this.omit(params, 'oneWayMode');
|
|
46317
47095
|
let requestSide = side;
|
|
46318
47096
|
if (reduceOnly) {
|
|
@@ -53439,7 +54217,7 @@ class bitmart extends _abstract_bitmart_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
53439
54217
|
let marketType = undefined;
|
|
53440
54218
|
[marketType, params] = this.handleMarketTypeAndParams('fetchBalance', undefined, params);
|
|
53441
54219
|
const marginMode = this.safeString(params, 'marginMode');
|
|
53442
|
-
const isMargin = this.
|
|
54220
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
53443
54221
|
params = this.omit(params, ['margin', 'marginMode']);
|
|
53444
54222
|
if (marginMode !== undefined || isMargin) {
|
|
53445
54223
|
marketType = 'margin';
|
|
@@ -54313,7 +55091,7 @@ class bitmart extends _abstract_bitmart_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
54313
55091
|
response = await this.privateGetContractPrivateCurrentPlanOrder(this.extend(request, params));
|
|
54314
55092
|
}
|
|
54315
55093
|
else {
|
|
54316
|
-
const trailing = this.
|
|
55094
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
54317
55095
|
let orderType = this.safeString(params, 'orderType');
|
|
54318
55096
|
params = this.omit(params, ['orderType', 'trailing']);
|
|
54319
55097
|
if (trailing) {
|
|
@@ -54493,7 +55271,7 @@ class bitmart extends _abstract_bitmart_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
54493
55271
|
if (symbol === undefined) {
|
|
54494
55272
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' fetchOrder() requires a symbol argument');
|
|
54495
55273
|
}
|
|
54496
|
-
const trailing = this.
|
|
55274
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
54497
55275
|
let orderType = this.safeString(params, 'orderType');
|
|
54498
55276
|
params = this.omit(params, ['orderType', 'trailing']);
|
|
54499
55277
|
if (trailing) {
|
|
@@ -56068,7 +56846,7 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
56068
56846
|
'public': 'https://testnet.bitmex.com',
|
|
56069
56847
|
'private': 'https://testnet.bitmex.com',
|
|
56070
56848
|
},
|
|
56071
|
-
'logo': 'https://
|
|
56849
|
+
'logo': 'https://github.com/ccxt/ccxt/assets/43336371/cea9cfe5-c57e-4b84-b2ac-77b960b04445',
|
|
56072
56850
|
'api': {
|
|
56073
56851
|
'public': 'https://www.bitmex.com',
|
|
56074
56852
|
'private': 'https://www.bitmex.com',
|
|
@@ -56079,7 +56857,10 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
56079
56857
|
'https://github.com/BitMEX/api-connectors/tree/master/official-http',
|
|
56080
56858
|
],
|
|
56081
56859
|
'fees': 'https://www.bitmex.com/app/fees',
|
|
56082
|
-
'referral':
|
|
56860
|
+
'referral': {
|
|
56861
|
+
'url': 'https://www.bitmex.com/app/register/NZTR1q',
|
|
56862
|
+
'discount': 0.1,
|
|
56863
|
+
},
|
|
56083
56864
|
},
|
|
56084
56865
|
'api': {
|
|
56085
56866
|
'public': {
|
|
@@ -56303,8 +57084,8 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
56303
57084
|
const network = this.networkIdToCode(networkId);
|
|
56304
57085
|
const withdrawalFeeRaw = this.safeString(chain, 'withdrawalFee');
|
|
56305
57086
|
const withdrawalFee = this.parseNumber(_base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise */ .O.stringMul(withdrawalFeeRaw, precisionString));
|
|
56306
|
-
const isDepositEnabled = this.
|
|
56307
|
-
const isWithdrawEnabled = this.
|
|
57087
|
+
const isDepositEnabled = this.safeBool(chain, 'depositEnabled', false);
|
|
57088
|
+
const isWithdrawEnabled = this.safeBool(chain, 'withdrawalEnabled', false);
|
|
56308
57089
|
const active = (isDepositEnabled && isWithdrawEnabled);
|
|
56309
57090
|
if (isDepositEnabled) {
|
|
56310
57091
|
depositEnabled = true;
|
|
@@ -57680,7 +58461,7 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
57680
58461
|
isInverse = (defaultSubType === 'inverse');
|
|
57681
58462
|
}
|
|
57682
58463
|
else {
|
|
57683
|
-
isInverse = this.
|
|
58464
|
+
isInverse = this.safeBool(market, 'inverse', false);
|
|
57684
58465
|
}
|
|
57685
58466
|
if (isInverse) {
|
|
57686
58467
|
cost = this.convertFromRawQuantity(symbol, qty);
|
|
@@ -58387,7 +59168,7 @@ class bitmex extends _abstract_bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
58387
59168
|
const item = response[i];
|
|
58388
59169
|
const marketId = this.safeString(item, 'symbol');
|
|
58389
59170
|
const market = this.safeMarket(marketId);
|
|
58390
|
-
const swap = this.
|
|
59171
|
+
const swap = this.safeBool(market, 'swap', false);
|
|
58391
59172
|
if (swap) {
|
|
58392
59173
|
filteredResponse.push(item);
|
|
58393
59174
|
}
|
|
@@ -63802,7 +64583,7 @@ class bitrue extends _abstract_bitrue_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
63802
64583
|
}
|
|
63803
64584
|
// check success value for wapi endpoints
|
|
63804
64585
|
// response in format {'msg': 'The coin does not exist.', 'success': true/false}
|
|
63805
|
-
const success = this.
|
|
64586
|
+
const success = this.safeBool(response, 'success', true);
|
|
63806
64587
|
if (!success) {
|
|
63807
64588
|
const messageInner = this.safeString(response, 'msg');
|
|
63808
64589
|
let parsedMessage = undefined;
|
|
@@ -65604,7 +66385,7 @@ class bitso extends _abstract_bitso_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
65604
66385
|
//
|
|
65605
66386
|
// {"success":false,"error":{"code":104,"message":"Cannot perform request - nonce must be higher than 1520307203724237"}}
|
|
65606
66387
|
//
|
|
65607
|
-
let success = this.
|
|
66388
|
+
let success = this.safeBool(response, 'success', false);
|
|
65608
66389
|
if (typeof success === 'string') {
|
|
65609
66390
|
if ((success === 'true') || (success === '1')) {
|
|
65610
66391
|
success = true;
|
|
@@ -68199,7 +68980,7 @@ class bitteam extends _abstract_bitteam_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
68199
68980
|
const created = this.parse8601(timeStart);
|
|
68200
68981
|
let minCost = undefined;
|
|
68201
68982
|
const currenciesValuedInUsd = this.safeValue(this.options, 'currenciesValuedInUsd', {});
|
|
68202
|
-
const quoteInUsd = this.
|
|
68983
|
+
const quoteInUsd = this.safeBool(currenciesValuedInUsd, quote, false);
|
|
68203
68984
|
if (quoteInUsd) {
|
|
68204
68985
|
const settings = this.safeValue(market, 'settings', {});
|
|
68205
68986
|
minCost = this.safeNumber(settings, 'limit_usd');
|
|
@@ -68386,7 +69167,7 @@ class bitteam extends _abstract_bitteam_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
68386
69167
|
const id = this.safeString(currency, 'symbol');
|
|
68387
69168
|
const numericId = this.safeInteger(currency, 'id');
|
|
68388
69169
|
const code = this.safeCurrencyCode(id);
|
|
68389
|
-
const active = this.
|
|
69170
|
+
const active = this.safeBool(currency, 'active', false);
|
|
68390
69171
|
const precision = this.safeInteger(currency, 'precision');
|
|
68391
69172
|
const txLimits = this.safeValue(currency, 'txLimits', {});
|
|
68392
69173
|
const minWithdraw = this.safeString(txLimits, 'minWithdraw');
|
|
@@ -74546,7 +75327,7 @@ class btcalpha extends _abstract_btcalpha_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
74546
75327
|
const marketId = this.safeString(order, 'pair');
|
|
74547
75328
|
market = this.safeMarket(marketId, market, '_');
|
|
74548
75329
|
const symbol = market['symbol'];
|
|
74549
|
-
const success = this.
|
|
75330
|
+
const success = this.safeBool(order, 'success', false);
|
|
74550
75331
|
let timestamp = undefined;
|
|
74551
75332
|
if (success) {
|
|
74552
75333
|
timestamp = this.safeTimestamp(order, 'date');
|
|
@@ -77866,8 +78647,6 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
77866
78647
|
// account
|
|
77867
78648
|
'v5/account/wallet-balance': 1,
|
|
77868
78649
|
'v5/account/borrow-history': 1,
|
|
77869
|
-
'v5/account/set-collateral-switch': 5,
|
|
77870
|
-
'v5/account/set-collateral-switch-batch': 5,
|
|
77871
78650
|
'v5/account/collateral-info': 1,
|
|
77872
78651
|
'v5/asset/coin-greeks': 1,
|
|
77873
78652
|
'v5/account/fee-rate': 10,
|
|
@@ -78060,6 +78839,8 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
78060
78839
|
'v5/lending/purchase': 5,
|
|
78061
78840
|
'v5/lending/redeem': 5,
|
|
78062
78841
|
'v5/lending/redeem-cancel': 5,
|
|
78842
|
+
'v5/account/set-collateral-switch': 5,
|
|
78843
|
+
'v5/account/set-collateral-switch-batch': 5,
|
|
78063
78844
|
},
|
|
78064
78845
|
},
|
|
78065
78846
|
},
|
|
@@ -78424,6 +79205,7 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
78424
79205
|
'181003': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
78425
79206
|
'181004': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
78426
79207
|
'182000': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
79208
|
+
'181017': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
78427
79209
|
'20001': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.OrderNotFound,
|
|
78428
79210
|
'20003': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
78429
79211
|
'20004': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
@@ -80916,16 +81698,31 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
80916
81698
|
let fee = undefined;
|
|
80917
81699
|
const feeCostString = this.safeString(order, 'cumExecFee');
|
|
80918
81700
|
if (feeCostString !== undefined) {
|
|
80919
|
-
let
|
|
81701
|
+
let feeCurrencyCode = undefined;
|
|
80920
81702
|
if (market['spot']) {
|
|
80921
|
-
|
|
81703
|
+
if (_base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise */ .O.stringGt(feeCostString, '0')) {
|
|
81704
|
+
if (side === 'buy') {
|
|
81705
|
+
feeCurrencyCode = market['base'];
|
|
81706
|
+
}
|
|
81707
|
+
else {
|
|
81708
|
+
feeCurrencyCode = market['quote'];
|
|
81709
|
+
}
|
|
81710
|
+
}
|
|
81711
|
+
else {
|
|
81712
|
+
if (side === 'buy') {
|
|
81713
|
+
feeCurrencyCode = market['quote'];
|
|
81714
|
+
}
|
|
81715
|
+
else {
|
|
81716
|
+
feeCurrencyCode = market['base'];
|
|
81717
|
+
}
|
|
81718
|
+
}
|
|
80922
81719
|
}
|
|
80923
81720
|
else {
|
|
80924
|
-
|
|
81721
|
+
feeCurrencyCode = market['inverse'] ? market['base'] : market['settle'];
|
|
80925
81722
|
}
|
|
80926
81723
|
fee = {
|
|
80927
81724
|
'cost': feeCostString,
|
|
80928
|
-
'currency':
|
|
81725
|
+
'currency': feeCurrencyCode,
|
|
80929
81726
|
};
|
|
80930
81727
|
}
|
|
80931
81728
|
let clientOrderId = this.safeString(order, 'orderLinkId');
|
|
@@ -81013,7 +81810,7 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
81013
81810
|
const result = await this.fetchOrders(symbol, undefined, undefined, this.extend(request, params));
|
|
81014
81811
|
const length = result.length;
|
|
81015
81812
|
if (length === 0) {
|
|
81016
|
-
const isTrigger = this.
|
|
81813
|
+
const isTrigger = this.safeBoolN(params, ['trigger', 'stop'], false);
|
|
81017
81814
|
const extra = isTrigger ? '' : 'If you are trying to fetch SL/TP conditional order, you might try setting params["trigger"] = true';
|
|
81018
81815
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.OrderNotFound('Order ' + id.toString() + ' was not found.' + extra);
|
|
81019
81816
|
}
|
|
@@ -82085,7 +82882,7 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
82085
82882
|
return await this.fetchUsdcOrders(symbol, since, limit, params);
|
|
82086
82883
|
}
|
|
82087
82884
|
request['category'] = type;
|
|
82088
|
-
const isStop = this.
|
|
82885
|
+
const isStop = this.safeBoolN(params, ['trigger', 'stop'], false);
|
|
82089
82886
|
params = this.omit(params, ['trigger', 'stop']);
|
|
82090
82887
|
if (isStop) {
|
|
82091
82888
|
request['orderFilter'] = 'StopOrder';
|
|
@@ -83243,10 +84040,10 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
83243
84040
|
// "time": 1672280219169
|
|
83244
84041
|
// }
|
|
83245
84042
|
//
|
|
83246
|
-
const result = this.
|
|
83247
|
-
const positions = this.
|
|
84043
|
+
const result = this.safeDict(response, 'result', {});
|
|
84044
|
+
const positions = this.safeList2(result, 'list', 'dataList', []);
|
|
83248
84045
|
const timestamp = this.safeInteger(response, 'time');
|
|
83249
|
-
const first = this.
|
|
84046
|
+
const first = this.safeDict(positions, 0, {});
|
|
83250
84047
|
const position = this.parsePosition(first, market);
|
|
83251
84048
|
position['timestamp'] = timestamp;
|
|
83252
84049
|
position['datetime'] = this.iso8601(timestamp);
|
|
@@ -83992,7 +84789,7 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
83992
84789
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + 'fetchOpenInterestHistory cannot use the 1m timeframe');
|
|
83993
84790
|
}
|
|
83994
84791
|
await this.loadMarkets();
|
|
83995
|
-
const paginate = this.
|
|
84792
|
+
const paginate = this.safeBool(params, 'paginate');
|
|
83996
84793
|
if (paginate) {
|
|
83997
84794
|
params = this.omit(params, 'paginate');
|
|
83998
84795
|
return await this.fetchPaginatedCallDeterministic('fetchOpenInterestHistory', symbol, since, limit, timeframe, params, 500);
|
|
@@ -88292,7 +89089,11 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
88292
89089
|
async fetchTickersV3(symbols = undefined, params = {}) {
|
|
88293
89090
|
await this.loadMarkets();
|
|
88294
89091
|
symbols = this.marketSymbols(symbols);
|
|
88295
|
-
const
|
|
89092
|
+
const request = {};
|
|
89093
|
+
if (symbols !== undefined) {
|
|
89094
|
+
request['product_ids'] = this.marketIds(symbols);
|
|
89095
|
+
}
|
|
89096
|
+
const response = await this.v3PrivateGetBrokerageProducts(this.extend(request, params));
|
|
88296
89097
|
//
|
|
88297
89098
|
// {
|
|
88298
89099
|
// "products": [
|
|
@@ -88610,7 +89411,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
88610
89411
|
'limit': 250,
|
|
88611
89412
|
};
|
|
88612
89413
|
let response = undefined;
|
|
88613
|
-
const isV3 = this.
|
|
89414
|
+
const isV3 = this.safeBool(params, 'v3', false);
|
|
88614
89415
|
params = this.omit(params, 'v3');
|
|
88615
89416
|
const method = this.safeString(this.options, 'fetchBalance', 'v3PrivateGetBrokerageAccounts');
|
|
88616
89417
|
if ((isV3) || (method === 'v3PrivateGetBrokerageAccounts')) {
|
|
@@ -90126,8 +90927,11 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
90126
90927
|
*/
|
|
90127
90928
|
await this.loadMarkets();
|
|
90128
90929
|
symbols = this.marketSymbols(symbols);
|
|
90129
|
-
|
|
90130
|
-
|
|
90930
|
+
const request = {};
|
|
90931
|
+
if (symbols !== undefined) {
|
|
90932
|
+
request['product_ids'] = this.marketIds(symbols);
|
|
90933
|
+
}
|
|
90934
|
+
const response = await this.v3PrivateGetBrokerageBestBidAsk(this.extend(request, params));
|
|
90131
90935
|
//
|
|
90132
90936
|
// {
|
|
90133
90937
|
// "pricebooks": [
|
|
@@ -90256,7 +91060,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
90256
91060
|
const savedPath = fullPath;
|
|
90257
91061
|
if (method === 'GET') {
|
|
90258
91062
|
if (Object.keys(query).length) {
|
|
90259
|
-
fullPath += '?' + this.
|
|
91063
|
+
fullPath += '?' + this.urlencodeWithArrayRepeat(query);
|
|
90260
91064
|
}
|
|
90261
91065
|
}
|
|
90262
91066
|
const url = this.urls['api']['rest'] + fullPath;
|
|
@@ -93075,7 +93879,7 @@ class coincheck extends _abstract_coincheck_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
93075
93879
|
// {"success":false,"error":"disabled API Key"}'
|
|
93076
93880
|
// {"success":false,"error":"invalid authentication"}
|
|
93077
93881
|
//
|
|
93078
|
-
const success = this.
|
|
93882
|
+
const success = this.safeBool(response, 'success', true);
|
|
93079
93883
|
if (!success) {
|
|
93080
93884
|
const error = this.safeString(response, 'error');
|
|
93081
93885
|
const feedback = this.id + ' ' + this.json(response);
|
|
@@ -96425,7 +97229,7 @@ class coinex extends _abstract_coinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
96425
97229
|
const data = this.safeValue(response, 'data', {});
|
|
96426
97230
|
const depositAddress = this.parseDepositAddress(data, currency);
|
|
96427
97231
|
const options = this.safeValue(this.options, 'fetchDepositAddress', {});
|
|
96428
|
-
const fillResponseFromRequest = this.
|
|
97232
|
+
const fillResponseFromRequest = this.safeBool(options, 'fillResponseFromRequest', true);
|
|
96429
97233
|
if (fillResponseFromRequest) {
|
|
96430
97234
|
depositAddress['network'] = this.safeNetworkCode(network, currency);
|
|
96431
97235
|
}
|
|
@@ -98452,7 +99256,7 @@ class coinex extends _abstract_coinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
98452
99256
|
* @returns {Array} the marginMode in lowercase
|
|
98453
99257
|
*/
|
|
98454
99258
|
const defaultType = this.safeString(this.options, 'defaultType');
|
|
98455
|
-
const isMargin = this.
|
|
99259
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
98456
99260
|
let marginMode = undefined;
|
|
98457
99261
|
[marginMode, params] = super.handleMarginModeAndParams(methodName, params, defaultValue);
|
|
98458
99262
|
if (marginMode === undefined) {
|
|
@@ -98935,7 +99739,7 @@ class coinlist extends _abstract_coinlist_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
98935
99739
|
const currency = currencies[i];
|
|
98936
99740
|
const id = this.safeString(currency, 'asset');
|
|
98937
99741
|
const code = this.safeCurrencyCode(id);
|
|
98938
|
-
const isTransferable = this.
|
|
99742
|
+
const isTransferable = this.safeBool(currency, 'is_transferable', false);
|
|
98939
99743
|
const withdrawEnabled = isTransferable;
|
|
98940
99744
|
const depositEnabled = isTransferable;
|
|
98941
99745
|
const active = isTransferable;
|
|
@@ -101462,7 +102266,7 @@ class coinmate extends _abstract_coinmate_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
101462
102266
|
//
|
|
101463
102267
|
const data = this.safeValue(response, 'data');
|
|
101464
102268
|
const transaction = this.parseTransaction(data, currency);
|
|
101465
|
-
const fillResponseFromRequest = this.
|
|
102269
|
+
const fillResponseFromRequest = this.safeBool(withdrawOptions, 'fillResponseFromRequest', true);
|
|
101466
102270
|
if (fillResponseFromRequest) {
|
|
101467
102271
|
transaction['amount'] = amount;
|
|
101468
102272
|
transaction['currency'] = code;
|
|
@@ -102054,7 +102858,7 @@ class coinmetro extends _abstract_coinmetro_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
102054
102858
|
'private': 'https://api.coinmetro.com',
|
|
102055
102859
|
},
|
|
102056
102860
|
'test': {
|
|
102057
|
-
'public': 'https://api.coinmetro.com',
|
|
102861
|
+
'public': 'https://api.coinmetro.com/open',
|
|
102058
102862
|
'private': 'https://api.coinmetro.com/open',
|
|
102059
102863
|
},
|
|
102060
102864
|
'www': 'https://coinmetro.com/',
|
|
@@ -102296,7 +103100,7 @@ class coinmetro extends _abstract_coinmetro_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
102296
103100
|
const quote = this.safeCurrencyCode(quoteId);
|
|
102297
103101
|
const basePrecisionAndLimits = this.parseMarketPrecisionAndLimits(baseId);
|
|
102298
103102
|
const quotePrecisionAndLimits = this.parseMarketPrecisionAndLimits(quoteId);
|
|
102299
|
-
const margin = this.
|
|
103103
|
+
const margin = this.safeBool(market, 'margin', false);
|
|
102300
103104
|
const tradingFees = this.safeValue(this.fees, 'trading', {});
|
|
102301
103105
|
return this.safeMarketStructure({
|
|
102302
103106
|
'id': id,
|
|
@@ -103255,7 +104059,7 @@ class coinmetro extends _abstract_coinmetro_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
103255
104059
|
};
|
|
103256
104060
|
const marginMode = undefined;
|
|
103257
104061
|
[params, params] = this.handleMarginModeAndParams('cancelOrder', params);
|
|
103258
|
-
const isMargin = this.
|
|
104062
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
103259
104063
|
params = this.omit(params, 'margin');
|
|
103260
104064
|
let response = undefined;
|
|
103261
104065
|
if (isMargin || (marginMode !== undefined)) {
|
|
@@ -103773,11 +104577,17 @@ class coinmetro extends _abstract_coinmetro_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
103773
104577
|
const endpoint = '/' + this.implodeParams(path, params);
|
|
103774
104578
|
let url = this.urls['api'][api] + endpoint;
|
|
103775
104579
|
const query = this.urlencode(request);
|
|
104580
|
+
if (headers === undefined) {
|
|
104581
|
+
headers = {};
|
|
104582
|
+
}
|
|
104583
|
+
headers['CCXT'] = 'true';
|
|
103776
104584
|
if (api === 'private') {
|
|
103777
|
-
if (
|
|
103778
|
-
|
|
104585
|
+
if ((this.uid === undefined) && (this.apiKey !== undefined)) {
|
|
104586
|
+
this.uid = this.apiKey;
|
|
104587
|
+
}
|
|
104588
|
+
if ((this.token === undefined) && (this.secret !== undefined)) {
|
|
104589
|
+
this.token = this.secret;
|
|
103779
104590
|
}
|
|
103780
|
-
headers['CCXT'] = true;
|
|
103781
104591
|
if (url === 'https://api.coinmetro.com/jwt') { // handle with headers for login endpoint
|
|
103782
104592
|
headers['X-Device-Id'] = 'bypass';
|
|
103783
104593
|
if (this.twofa !== undefined) {
|
|
@@ -106592,7 +107402,7 @@ class coinsph extends _abstract_coinsph_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
106592
107402
|
* @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
|
|
106593
107403
|
*/
|
|
106594
107404
|
const options = this.safeValue(this.options, 'withdraw');
|
|
106595
|
-
const warning = this.
|
|
107405
|
+
const warning = this.safeBool(options, 'warning', true);
|
|
106596
107406
|
if (warning) {
|
|
106597
107407
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidAddress(this.id + " withdraw() makes a withdrawals only to coins_ph account, add .options['withdraw']['warning'] = false to make a withdrawal to your coins_ph account");
|
|
106598
107408
|
}
|
|
@@ -108588,7 +109398,7 @@ class cryptocom extends _abstract_cryptocom_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
108588
109398
|
request['time_in_force'] = timeInForce;
|
|
108589
109399
|
}
|
|
108590
109400
|
}
|
|
108591
|
-
const postOnly = this.
|
|
109401
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
108592
109402
|
if ((postOnly) || (timeInForce === 'PO')) {
|
|
108593
109403
|
request['exec_inst'] = ['POST_ONLY'];
|
|
108594
109404
|
request['time_in_force'] = 'GOOD_TILL_CANCEL';
|
|
@@ -108809,7 +109619,7 @@ class cryptocom extends _abstract_cryptocom_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
108809
109619
|
request['time_in_force'] = timeInForce;
|
|
108810
109620
|
}
|
|
108811
109621
|
}
|
|
108812
|
-
const postOnly = this.
|
|
109622
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
108813
109623
|
if ((postOnly) || (timeInForce === 'PO')) {
|
|
108814
109624
|
request['exec_inst'] = ['POST_ONLY'];
|
|
108815
109625
|
request['time_in_force'] = 'GOOD_TILL_CANCEL';
|
|
@@ -109780,7 +110590,7 @@ class cryptocom extends _abstract_cryptocom_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
109780
110590
|
* @returns {Array} the marginMode in lowercase
|
|
109781
110591
|
*/
|
|
109782
110592
|
const defaultType = this.safeString(this.options, 'defaultType');
|
|
109783
|
-
const isMargin = this.
|
|
110593
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
109784
110594
|
params = this.omit(params, 'margin');
|
|
109785
110595
|
let marginMode = undefined;
|
|
109786
110596
|
[marginMode, params] = this.handleMarginModeAndParams(methodName, params);
|
|
@@ -120482,9 +121292,11 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
120482
121292
|
// "timestamp": 1663221614998
|
|
120483
121293
|
// }
|
|
120484
121294
|
//
|
|
121295
|
+
const indexPrice = this.safeNumber(ticker, 'index_price');
|
|
121296
|
+
const marketType = (indexPrice !== undefined) ? 'contract' : 'spot';
|
|
120485
121297
|
const marketId = this.safeStringUpper2(ticker, 'symbol', 'instrument_id');
|
|
120486
|
-
const symbol = this.safeSymbol(marketId, market);
|
|
120487
|
-
market = this.safeMarket(marketId);
|
|
121298
|
+
const symbol = this.safeSymbol(marketId, market, undefined, marketType);
|
|
121299
|
+
market = this.safeMarket(marketId, market, undefined, marketType);
|
|
120488
121300
|
let timestamp = this.safeTimestamp(ticker, 'date');
|
|
120489
121301
|
if (market['swap']) {
|
|
120490
121302
|
timestamp = this.safeInteger(ticker, 'timestamp');
|
|
@@ -121071,7 +121883,7 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
121071
121883
|
let postOnly = this.isPostOnly(isMarketOrder, false, params);
|
|
121072
121884
|
let postOnlyParsed = undefined;
|
|
121073
121885
|
if (swap) {
|
|
121074
|
-
const reduceOnly = this.
|
|
121886
|
+
const reduceOnly = this.safeBool(params, 'reduceOnly', false);
|
|
121075
121887
|
const timeInForce = this.safeString(params, 'timeInForce');
|
|
121076
121888
|
let orderType = undefined;
|
|
121077
121889
|
if (side === 'buy') {
|
|
@@ -123271,7 +124083,7 @@ class digifinex extends _abstract_digifinex_js__WEBPACK_IMPORTED_MODULE_0__/* ["
|
|
|
123271
124083
|
* @returns {Array} the marginMode in lowercase
|
|
123272
124084
|
*/
|
|
123273
124085
|
const defaultType = this.safeString(this.options, 'defaultType');
|
|
123274
|
-
const isMargin = this.
|
|
124086
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
123275
124087
|
let marginMode = undefined;
|
|
123276
124088
|
[marginMode, params] = super.handleMarginModeAndParams(methodName, params, defaultValue);
|
|
123277
124089
|
if (marginMode !== undefined) {
|
|
@@ -123916,7 +124728,7 @@ class exmo extends _abstract_exmo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
123916
124728
|
//
|
|
123917
124729
|
const margin = this.parseMarginModification(response, market);
|
|
123918
124730
|
const options = this.safeValue(this.options, 'margin', {});
|
|
123919
|
-
const fillResponseFromRequest = this.
|
|
124731
|
+
const fillResponseFromRequest = this.safeBool(options, 'fillResponseFromRequest', true);
|
|
123920
124732
|
if (fillResponseFromRequest) {
|
|
123921
124733
|
margin['type'] = type;
|
|
123922
124734
|
margin['amount'] = amount;
|
|
@@ -126280,7 +127092,7 @@ class exmo extends _abstract_exmo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
126280
127092
|
// {"result":false,"error":"Error 50052: Insufficient funds"}
|
|
126281
127093
|
// {"s":"error","errmsg":"strconv.ParseInt: parsing \"\": invalid syntax"}
|
|
126282
127094
|
//
|
|
126283
|
-
let success = this.
|
|
127095
|
+
let success = this.safeBool(response, 'result', false);
|
|
126284
127096
|
if (typeof success === 'string') {
|
|
126285
127097
|
if ((success === 'true') || (success === '1')) {
|
|
126286
127098
|
success = true;
|
|
@@ -127951,9 +128763,9 @@ class gate extends _abstract_gate_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
127951
128763
|
const networkId = this.safeString(entry, 'chain');
|
|
127952
128764
|
const networkCode = this.networkIdToCode(networkId, code);
|
|
127953
128765
|
const delisted = this.safeValue(entry, 'delisted');
|
|
127954
|
-
const withdrawDisabled = this.
|
|
127955
|
-
const depositDisabled = this.
|
|
127956
|
-
const tradeDisabled = this.
|
|
128766
|
+
const withdrawDisabled = this.safeBool(entry, 'withdraw_disabled', false);
|
|
128767
|
+
const depositDisabled = this.safeBool(entry, 'deposit_disabled', false);
|
|
128768
|
+
const tradeDisabled = this.safeBool(entry, 'trade_disabled', false);
|
|
127957
128769
|
const withdrawEnabled = !withdrawDisabled;
|
|
127958
128770
|
const depositEnabled = !depositDisabled;
|
|
127959
128771
|
const tradeEnabled = !tradeDisabled;
|
|
@@ -130410,7 +131222,7 @@ class gate extends _abstract_gate_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
130410
131222
|
}
|
|
130411
131223
|
}
|
|
130412
131224
|
let clientOrderId = this.safeString2(params, 'text', 'clientOrderId');
|
|
130413
|
-
const textIsRequired = this.
|
|
131225
|
+
const textIsRequired = this.safeBool(params, 'textIsRequired', false);
|
|
130414
131226
|
if (clientOrderId !== undefined) {
|
|
130415
131227
|
// user-defined, must follow the rules if not empty
|
|
130416
131228
|
// prefixed with t-
|
|
@@ -130782,7 +131594,7 @@ class gate extends _abstract_gate_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
130782
131594
|
// "message": "Not enough balance"
|
|
130783
131595
|
// }
|
|
130784
131596
|
//
|
|
130785
|
-
const succeeded = this.
|
|
131597
|
+
const succeeded = this.safeBool(order, 'succeeded', true);
|
|
130786
131598
|
if (!succeeded) {
|
|
130787
131599
|
// cancelOrders response
|
|
130788
131600
|
return this.safeOrder({
|
|
@@ -133929,7 +134741,7 @@ class gemini extends _abstract_gemini_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
133929
134741
|
'post_only': true,
|
|
133930
134742
|
'limit_only': true,
|
|
133931
134743
|
};
|
|
133932
|
-
return this.
|
|
134744
|
+
return this.safeBool(statuses, status, true);
|
|
133933
134745
|
}
|
|
133934
134746
|
async fetchUSDTMarkets(params = {}) {
|
|
133935
134747
|
// these markets can't be scrapped and fetchMarketsFrom api does an extra call
|
|
@@ -133968,7 +134780,7 @@ class gemini extends _abstract_gemini_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
133968
134780
|
result[marketId] = this.parseMarket(market);
|
|
133969
134781
|
}
|
|
133970
134782
|
const options = this.safeValue(this.options, 'fetchMarketsFromAPI', {});
|
|
133971
|
-
const fetchDetailsForAllSymbols = this.
|
|
134783
|
+
const fetchDetailsForAllSymbols = this.safeBool(options, 'fetchDetailsForAllSymbols', false);
|
|
133972
134784
|
const fetchDetailsForMarketIds = this.safeValue(options, 'fetchDetailsForMarketIds', []);
|
|
133973
134785
|
let promises = [];
|
|
133974
134786
|
let marketIds = [];
|
|
@@ -134785,7 +135597,7 @@ class gemini extends _abstract_gemini_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
134785
135597
|
request['options'] = ['maker-or-cancel'];
|
|
134786
135598
|
}
|
|
134787
135599
|
}
|
|
134788
|
-
const postOnly = this.
|
|
135600
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
134789
135601
|
params = this.omit(params, 'postOnly');
|
|
134790
135602
|
if (postOnly) {
|
|
134791
135603
|
request['options'] = ['maker-or-cancel'];
|
|
@@ -135918,7 +136730,7 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
135918
136730
|
const expiry = this.safeInteger(market, 'expiry');
|
|
135919
136731
|
const contract = (marketType === 'futures');
|
|
135920
136732
|
const spot = (marketType === 'spot');
|
|
135921
|
-
const marginTrading = this.
|
|
136733
|
+
const marginTrading = this.safeBool(market, 'margin_trading', false);
|
|
135922
136734
|
const margin = spot && marginTrading;
|
|
135923
136735
|
const future = (expiry !== undefined);
|
|
135924
136736
|
const swap = (contract && !future);
|
|
@@ -136053,9 +136865,9 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
136053
136865
|
const entry = response[currencyId];
|
|
136054
136866
|
const name = this.safeString(entry, 'full_name');
|
|
136055
136867
|
const precision = this.safeNumber(entry, 'precision_transfer');
|
|
136056
|
-
const payinEnabled = this.
|
|
136057
|
-
const payoutEnabled = this.
|
|
136058
|
-
const transferEnabled = this.
|
|
136868
|
+
const payinEnabled = this.safeBool(entry, 'payin_enabled', false);
|
|
136869
|
+
const payoutEnabled = this.safeBool(entry, 'payout_enabled', false);
|
|
136870
|
+
const transferEnabled = this.safeBool(entry, 'transfer_enabled', false);
|
|
136059
136871
|
const active = payinEnabled && payoutEnabled && transferEnabled;
|
|
136060
136872
|
const rawNetworks = this.safeValue(entry, 'networks', []);
|
|
136061
136873
|
const networks = {};
|
|
@@ -136068,8 +136880,8 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
136068
136880
|
const network = this.safeNetwork(networkId);
|
|
136069
136881
|
fee = this.safeNumber(rawNetwork, 'payout_fee');
|
|
136070
136882
|
const networkPrecision = this.safeNumber(rawNetwork, 'precision_payout');
|
|
136071
|
-
const payinEnabledNetwork = this.
|
|
136072
|
-
const payoutEnabledNetwork = this.
|
|
136883
|
+
const payinEnabledNetwork = this.safeBool(entry, 'payin_enabled', false);
|
|
136884
|
+
const payoutEnabledNetwork = this.safeBool(entry, 'payout_enabled', false);
|
|
136073
136885
|
const activeNetwork = payinEnabledNetwork && payoutEnabledNetwork;
|
|
136074
136886
|
if (payinEnabledNetwork && !depositEnabled) {
|
|
136075
136887
|
depositEnabled = true;
|
|
@@ -137933,7 +138745,7 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
137933
138745
|
params = this.omit(params, 'network');
|
|
137934
138746
|
}
|
|
137935
138747
|
const withdrawOptions = this.safeValue(this.options, 'withdraw', {});
|
|
137936
|
-
const includeFee = this.
|
|
138748
|
+
const includeFee = this.safeBool(withdrawOptions, 'includeFee', false);
|
|
137937
138749
|
if (includeFee) {
|
|
137938
138750
|
request['include_fee'] = true;
|
|
137939
138751
|
}
|
|
@@ -138455,7 +139267,7 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
138455
139267
|
await this.loadMarkets();
|
|
138456
139268
|
const market = this.market(symbol);
|
|
138457
139269
|
const leverage = this.safeString(params, 'leverage');
|
|
138458
|
-
if (market['
|
|
139270
|
+
if (market['swap']) {
|
|
138459
139271
|
if (leverage === undefined) {
|
|
138460
139272
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' modifyMarginHelper() requires a leverage parameter for swap markets');
|
|
138461
139273
|
}
|
|
@@ -138479,21 +139291,15 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
138479
139291
|
let marginMode = undefined;
|
|
138480
139292
|
[marketType, params] = this.handleMarketTypeAndParams('modifyMarginHelper', market, params);
|
|
138481
139293
|
[marginMode, params] = this.handleMarginModeAndParams('modifyMarginHelper', params);
|
|
138482
|
-
params = this.omit(params, ['marginMode', 'margin']);
|
|
138483
139294
|
let response = undefined;
|
|
138484
|
-
if (
|
|
139295
|
+
if (marketType === 'swap') {
|
|
139296
|
+
response = await this.privatePutFuturesAccountIsolatedSymbol(this.extend(request, params));
|
|
139297
|
+
}
|
|
139298
|
+
else if ((marketType === 'margin') || (marketType === 'spot') || (marginMode === 'isolated')) {
|
|
138485
139299
|
response = await this.privatePutMarginAccountIsolatedSymbol(this.extend(request, params));
|
|
138486
139300
|
}
|
|
138487
139301
|
else {
|
|
138488
|
-
|
|
138489
|
-
response = await this.privatePutFuturesAccountIsolatedSymbol(this.extend(request, params));
|
|
138490
|
-
}
|
|
138491
|
-
else if (marketType === 'margin') {
|
|
138492
|
-
response = await this.privatePutMarginAccountIsolatedSymbol(this.extend(request, params));
|
|
138493
|
-
}
|
|
138494
|
-
else {
|
|
138495
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported(this.id + ' modifyMarginHelper() not support this market type');
|
|
138496
|
-
}
|
|
139302
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported(this.id + ' modifyMarginHelper() not support this market type');
|
|
138497
139303
|
}
|
|
138498
139304
|
//
|
|
138499
139305
|
// {
|
|
@@ -138805,7 +139611,7 @@ class hitbtc extends _abstract_hitbtc_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
138805
139611
|
* @returns {Array} the marginMode in lowercase
|
|
138806
139612
|
*/
|
|
138807
139613
|
const defaultType = this.safeString(this.options, 'defaultType');
|
|
138808
|
-
const isMargin = this.
|
|
139614
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
138809
139615
|
let marginMode = undefined;
|
|
138810
139616
|
[marginMode, params] = super.handleMarginModeAndParams(methodName, params, defaultValue);
|
|
138811
139617
|
if (marginMode === undefined) {
|
|
@@ -140014,7 +140820,7 @@ class hollaex extends _abstract_hollaex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
140014
140820
|
const filled = this.safeString(order, 'filled');
|
|
140015
140821
|
const status = this.parseOrderStatus(this.safeString(order, 'status'));
|
|
140016
140822
|
const meta = this.safeValue(order, 'meta', {});
|
|
140017
|
-
const postOnly = this.
|
|
140823
|
+
const postOnly = this.safeBool(meta, 'post_only', false);
|
|
140018
140824
|
return this.safeOrder({
|
|
140019
140825
|
'id': id,
|
|
140020
140826
|
'clientOrderId': undefined,
|
|
@@ -140068,7 +140874,7 @@ class hollaex extends _abstract_hollaex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
140068
140874
|
};
|
|
140069
140875
|
const stopPrice = this.safeNumberN(params, ['triggerPrice', 'stopPrice', 'stop']);
|
|
140070
140876
|
const meta = this.safeValue(params, 'meta', {});
|
|
140071
|
-
const exchangeSpecificParam = this.
|
|
140877
|
+
const exchangeSpecificParam = this.safeBool(meta, 'post_only', false);
|
|
140072
140878
|
const isMarketOrder = type === 'market';
|
|
140073
140879
|
const postOnly = this.isPostOnly(isMarketOrder, exchangeSpecificParam, params);
|
|
140074
140880
|
if (!isMarketOrder) {
|
|
@@ -144796,7 +145602,7 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
144796
145602
|
let response = undefined;
|
|
144797
145603
|
const stop = this.safeValue(params, 'stop');
|
|
144798
145604
|
const stopLossTakeProfit = this.safeValue(params, 'stopLossTakeProfit');
|
|
144799
|
-
const trailing = this.
|
|
145605
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
144800
145606
|
params = this.omit(params, ['stop', 'stopLossTakeProfit', 'trailing']);
|
|
144801
145607
|
if (stop || stopLossTakeProfit || trailing) {
|
|
144802
145608
|
if (limit !== undefined) {
|
|
@@ -145171,7 +145977,7 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
145171
145977
|
request['contract_code'] = market['id'];
|
|
145172
145978
|
const stop = this.safeValue(params, 'stop');
|
|
145173
145979
|
const stopLossTakeProfit = this.safeValue(params, 'stopLossTakeProfit');
|
|
145174
|
-
const trailing = this.
|
|
145980
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
145175
145981
|
params = this.omit(params, ['stop', 'stopLossTakeProfit', 'trailing']);
|
|
145176
145982
|
if (market['linear']) {
|
|
145177
145983
|
let marginMode = undefined;
|
|
@@ -146550,7 +147356,7 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
146550
147356
|
}
|
|
146551
147357
|
const stop = this.safeValue(params, 'stop');
|
|
146552
147358
|
const stopLossTakeProfit = this.safeValue(params, 'stopLossTakeProfit');
|
|
146553
|
-
const trailing = this.
|
|
147359
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
146554
147360
|
params = this.omit(params, ['stop', 'stopLossTakeProfit', 'trailing']);
|
|
146555
147361
|
if (market['linear']) {
|
|
146556
147362
|
let marginMode = undefined;
|
|
@@ -146875,7 +147681,7 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
146875
147681
|
request['contract_code'] = market['id'];
|
|
146876
147682
|
const stop = this.safeValue(params, 'stop');
|
|
146877
147683
|
const stopLossTakeProfit = this.safeValue(params, 'stopLossTakeProfit');
|
|
146878
|
-
const trailing = this.
|
|
147684
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
146879
147685
|
params = this.omit(params, ['stop', 'stopLossTakeProfit', 'trailing']);
|
|
146880
147686
|
if (market['linear']) {
|
|
146881
147687
|
let marginMode = undefined;
|
|
@@ -147341,7 +148147,7 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
147341
148147
|
}
|
|
147342
148148
|
amount = parseFloat(this.currencyToPrecision(code, amount, networkCode));
|
|
147343
148149
|
const withdrawOptions = this.safeValue(this.options, 'withdraw', {});
|
|
147344
|
-
if (this.
|
|
148150
|
+
if (this.safeBool(withdrawOptions, 'includeFee', false)) {
|
|
147345
148151
|
let fee = this.safeNumber(params, 'fee');
|
|
147346
148152
|
if (fee === undefined) {
|
|
147347
148153
|
const currencies = await this.fetchCurrencies();
|
|
@@ -151067,7 +151873,7 @@ class huobijp extends _abstract_huobijp_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
151067
151873
|
const depositEnabled = this.safeValue(currency, 'deposit-enabled');
|
|
151068
151874
|
const withdrawEnabled = this.safeValue(currency, 'withdraw-enabled');
|
|
151069
151875
|
const countryDisabled = this.safeValue(currency, 'country-disabled');
|
|
151070
|
-
const visible = this.
|
|
151876
|
+
const visible = this.safeBool(currency, 'visible', false);
|
|
151071
151877
|
const state = this.safeString(currency, 'state');
|
|
151072
151878
|
const active = visible && depositEnabled && withdrawEnabled && (state === 'online') && !countryDisabled;
|
|
151073
151879
|
const name = this.safeString(currency, 'display-name');
|
|
@@ -159032,7 +159838,7 @@ class krakenfutures extends _abstract_krakenfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
159032
159838
|
const volume = this.safeString(ticker, 'vol24h');
|
|
159033
159839
|
let baseVolume = undefined;
|
|
159034
159840
|
let quoteVolume = undefined;
|
|
159035
|
-
const isIndex = this.
|
|
159841
|
+
const isIndex = this.safeBool(market, 'index', false);
|
|
159036
159842
|
if (!isIndex) {
|
|
159037
159843
|
if (market['linear']) {
|
|
159038
159844
|
baseVolume = volume;
|
|
@@ -161844,7 +162650,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
161844
162650
|
//
|
|
161845
162651
|
const data = this.safeValue(response, 'data');
|
|
161846
162652
|
const options = this.safeValue(this.options, 'fetchMarkets', {});
|
|
161847
|
-
const fetchTickersFees = this.
|
|
162653
|
+
const fetchTickersFees = this.safeBool(options, 'fetchTickersFees', true);
|
|
161848
162654
|
let tickersResponse = {};
|
|
161849
162655
|
if (fetchTickersFees) {
|
|
161850
162656
|
tickersResponse = await this.publicGetMarketAllTickers(params);
|
|
@@ -162052,14 +162858,14 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
162052
162858
|
const chain = chains[j];
|
|
162053
162859
|
const chainId = this.safeString(chain, 'chainId');
|
|
162054
162860
|
const networkCode = this.networkIdToCode(chainId);
|
|
162055
|
-
const chainWithdrawEnabled = this.
|
|
162861
|
+
const chainWithdrawEnabled = this.safeBool(chain, 'isWithdrawEnabled', false);
|
|
162056
162862
|
if (isWithdrawEnabled === undefined) {
|
|
162057
162863
|
isWithdrawEnabled = chainWithdrawEnabled;
|
|
162058
162864
|
}
|
|
162059
162865
|
else {
|
|
162060
162866
|
isWithdrawEnabled = isWithdrawEnabled || chainWithdrawEnabled;
|
|
162061
162867
|
}
|
|
162062
|
-
const chainDepositEnabled = this.
|
|
162868
|
+
const chainDepositEnabled = this.safeBool(chain, 'isDepositEnabled', false);
|
|
162063
162869
|
if (isDepositEnabled === undefined) {
|
|
162064
162870
|
isDepositEnabled = chainDepositEnabled;
|
|
162065
162871
|
}
|
|
@@ -162817,9 +163623,9 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
162817
163623
|
*/
|
|
162818
163624
|
await this.loadMarkets();
|
|
162819
163625
|
const market = this.market(symbol);
|
|
162820
|
-
const testOrder = this.
|
|
163626
|
+
const testOrder = this.safeBool(params, 'test', false);
|
|
162821
163627
|
params = this.omit(params, 'test');
|
|
162822
|
-
const isHf = this.
|
|
163628
|
+
const isHf = this.safeBool(params, 'hf', false);
|
|
162823
163629
|
const [triggerPrice, stopLossPrice, takeProfitPrice] = this.handleTriggerPrices(params);
|
|
162824
163630
|
const tradeType = this.safeString(params, 'tradeType'); // keep it for backward compatibility
|
|
162825
163631
|
const isTriggerOrder = (triggerPrice || stopLossPrice || takeProfitPrice);
|
|
@@ -162946,7 +163752,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
162946
163752
|
'symbol': market['id'],
|
|
162947
163753
|
'orderList': ordersRequests,
|
|
162948
163754
|
};
|
|
162949
|
-
const hf = this.
|
|
163755
|
+
const hf = this.safeBool(params, 'hf', false);
|
|
162950
163756
|
params = this.omit(params, 'hf');
|
|
162951
163757
|
let response = undefined;
|
|
162952
163758
|
if (hf) {
|
|
@@ -163128,7 +163934,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
163128
163934
|
const request = {};
|
|
163129
163935
|
const clientOrderId = this.safeString2(params, 'clientOid', 'clientOrderId');
|
|
163130
163936
|
const stop = this.safeValue2(params, 'stop', 'trigger', false);
|
|
163131
|
-
const hf = this.
|
|
163937
|
+
const hf = this.safeBool(params, 'hf', false);
|
|
163132
163938
|
if (hf) {
|
|
163133
163939
|
if (symbol === undefined) {
|
|
163134
163940
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' cancelOrder() requires a symbol parameter for hf orders');
|
|
@@ -163183,8 +163989,8 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
163183
163989
|
*/
|
|
163184
163990
|
await this.loadMarkets();
|
|
163185
163991
|
const request = {};
|
|
163186
|
-
const stop = this.
|
|
163187
|
-
const hf = this.
|
|
163992
|
+
const stop = this.safeBool(params, 'stop', false);
|
|
163993
|
+
const hf = this.safeBool(params, 'hf', false);
|
|
163188
163994
|
params = this.omit(params, ['stop', 'hf']);
|
|
163189
163995
|
const [marginMode, query] = this.handleMarginModeAndParams('cancelAllOrders', params);
|
|
163190
163996
|
if (symbol !== undefined) {
|
|
@@ -163241,8 +164047,8 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
163241
164047
|
await this.loadMarkets();
|
|
163242
164048
|
let lowercaseStatus = status.toLowerCase();
|
|
163243
164049
|
const until = this.safeInteger2(params, 'until', 'till');
|
|
163244
|
-
const stop = this.
|
|
163245
|
-
const hf = this.
|
|
164050
|
+
const stop = this.safeBool(params, 'stop', false);
|
|
164051
|
+
const hf = this.safeBool(params, 'hf', false);
|
|
163246
164052
|
params = this.omit(params, ['stop', 'hf', 'till', 'until']);
|
|
163247
164053
|
const [marginMode, query] = this.handleMarginModeAndParams('fetchOrdersByStatus', params);
|
|
163248
164054
|
if (lowercaseStatus === 'open') {
|
|
@@ -163416,8 +164222,8 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
163416
164222
|
await this.loadMarkets();
|
|
163417
164223
|
const request = {};
|
|
163418
164224
|
const clientOrderId = this.safeString2(params, 'clientOid', 'clientOrderId');
|
|
163419
|
-
const stop = this.
|
|
163420
|
-
const hf = this.
|
|
164225
|
+
const stop = this.safeBool(params, 'stop', false);
|
|
164226
|
+
const hf = this.safeBool(params, 'hf', false);
|
|
163421
164227
|
let market = undefined;
|
|
163422
164228
|
if (symbol !== undefined) {
|
|
163423
164229
|
market = this.market(symbol);
|
|
@@ -163594,10 +164400,10 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
163594
164400
|
const marketId = this.safeString(order, 'symbol');
|
|
163595
164401
|
const timestamp = this.safeInteger(order, 'createdAt');
|
|
163596
164402
|
const feeCurrencyId = this.safeString(order, 'feeCurrency');
|
|
163597
|
-
const cancelExist = this.
|
|
164403
|
+
const cancelExist = this.safeBool(order, 'cancelExist', false);
|
|
163598
164404
|
const responseStop = this.safeString(order, 'stop');
|
|
163599
164405
|
const stop = responseStop !== undefined;
|
|
163600
|
-
const stopTriggered = this.
|
|
164406
|
+
const stopTriggered = this.safeBool(order, 'stopTriggered', false);
|
|
163601
164407
|
const isActive = this.safeValue2(order, 'isActive', 'active');
|
|
163602
164408
|
const responseStatus = this.safeString(order, 'status');
|
|
163603
164409
|
let status = undefined;
|
|
@@ -163694,7 +164500,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
163694
164500
|
return await this.fetchPaginatedCallDynamic('fetchMyTrades', symbol, since, limit, params);
|
|
163695
164501
|
}
|
|
163696
164502
|
let request = {};
|
|
163697
|
-
const hf = this.
|
|
164503
|
+
const hf = this.safeBool(params, 'hf', false);
|
|
163698
164504
|
if (hf && symbol === undefined) {
|
|
163699
164505
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' fetchMyTrades() requires a symbol parameter for hf orders');
|
|
163700
164506
|
}
|
|
@@ -164373,7 +165179,7 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
164373
165179
|
const accountsByType = this.safeValue(this.options, 'accountsByType');
|
|
164374
165180
|
let type = this.safeString(accountsByType, requestedType, requestedType);
|
|
164375
165181
|
params = this.omit(params, 'type');
|
|
164376
|
-
const isHf = this.
|
|
165182
|
+
const isHf = this.safeBool(params, 'hf', false);
|
|
164377
165183
|
if (isHf) {
|
|
164378
165184
|
type = 'trade_hf';
|
|
164379
165185
|
}
|
|
@@ -166528,7 +167334,7 @@ class kucoinfutures extends _abstract_kucoinfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
166528
167334
|
*/
|
|
166529
167335
|
await this.loadMarkets();
|
|
166530
167336
|
const market = this.market(symbol);
|
|
166531
|
-
const testOrder = this.
|
|
167337
|
+
const testOrder = this.safeBool(params, 'test', false);
|
|
166532
167338
|
params = this.omit(params, 'test');
|
|
166533
167339
|
const orderRequest = this.createContractOrderRequest(symbol, type, side, amount, price, params);
|
|
166534
167340
|
let response = undefined;
|
|
@@ -167191,7 +167997,7 @@ class kucoinfutures extends _abstract_kucoinfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
167191
167997
|
// const average = Precise.stringDiv (cost, Precise.stringMul (filled, market['contractSize']));
|
|
167192
167998
|
// bool
|
|
167193
167999
|
const isActive = this.safeValue(order, 'isActive');
|
|
167194
|
-
const cancelExist = this.
|
|
168000
|
+
const cancelExist = this.safeBool(order, 'cancelExist', false);
|
|
167195
168001
|
let status = undefined;
|
|
167196
168002
|
if (isActive !== undefined) {
|
|
167197
168003
|
status = isActive ? 'open' : 'closed';
|
|
@@ -167915,7 +168721,7 @@ class kucoinfutures extends _abstract_kucoinfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
167915
168721
|
await this.loadMarkets();
|
|
167916
168722
|
const market = this.market(symbol);
|
|
167917
168723
|
let clientOrderId = this.safeString(params, 'clientOrderId');
|
|
167918
|
-
const testOrder = this.
|
|
168724
|
+
const testOrder = this.safeBool(params, 'test', false);
|
|
167919
168725
|
params = this.omit(params, ['test', 'clientOrderId']);
|
|
167920
168726
|
if (clientOrderId === undefined) {
|
|
167921
168727
|
clientOrderId = this.numberToString(this.nonce());
|
|
@@ -172962,7 +173768,7 @@ class lbank extends _abstract_lbank_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
172962
173768
|
await this.loadMarkets();
|
|
172963
173769
|
const market = this.market(symbol);
|
|
172964
173770
|
const clientOrderId = this.safeString2(params, 'custom_id', 'clientOrderId');
|
|
172965
|
-
const postOnly = this.
|
|
173771
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
172966
173772
|
const timeInForce = this.safeStringUpper(params, 'timeInForce');
|
|
172967
173773
|
params = this.omit(params, ['custom_id', 'clientOrderId', 'timeInForce', 'postOnly']);
|
|
172968
173774
|
const request = {
|
|
@@ -178820,8 +179626,8 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
178820
179626
|
const chain = chains[j];
|
|
178821
179627
|
const networkId = this.safeString(chain, 'network');
|
|
178822
179628
|
const network = this.safeNetwork(networkId);
|
|
178823
|
-
const isDepositEnabled = this.
|
|
178824
|
-
const isWithdrawEnabled = this.
|
|
179629
|
+
const isDepositEnabled = this.safeBool(chain, 'depositEnable', false);
|
|
179630
|
+
const isWithdrawEnabled = this.safeBool(chain, 'withdrawEnable', false);
|
|
178825
179631
|
const active = (isDepositEnabled && isWithdrawEnabled);
|
|
178826
179632
|
currencyActive = active || currencyActive;
|
|
178827
179633
|
const withdrawMin = this.safeString(chain, 'withdrawMin');
|
|
@@ -180080,7 +180886,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
180080
180886
|
await this.loadMarkets();
|
|
180081
180887
|
const symbol = market['symbol'];
|
|
180082
180888
|
const unavailableContracts = this.safeValue(this.options, 'unavailableContracts', {});
|
|
180083
|
-
const isContractUnavaiable = this.
|
|
180889
|
+
const isContractUnavaiable = this.safeBool(unavailableContracts, symbol, false);
|
|
180084
180890
|
if (isContractUnavaiable) {
|
|
180085
180891
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported(this.id + ' createSwapOrder() does not support yet this symbol:' + symbol);
|
|
180086
180892
|
}
|
|
@@ -180148,7 +180954,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
180148
180954
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' createSwapOrder() requires a leverage parameter for isolated margin orders');
|
|
180149
180955
|
}
|
|
180150
180956
|
}
|
|
180151
|
-
const reduceOnly = this.
|
|
180957
|
+
const reduceOnly = this.safeBool(params, 'reduceOnly', false);
|
|
180152
180958
|
if (reduceOnly) {
|
|
180153
180959
|
request['side'] = (side === 'buy') ? 2 : 4;
|
|
180154
180960
|
}
|
|
@@ -181484,7 +182290,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
181484
182290
|
const request = {};
|
|
181485
182291
|
[marketType, params] = this.handleMarketTypeAndParams('fetchBalance', undefined, params);
|
|
181486
182292
|
const marginMode = this.safeString(params, 'marginMode');
|
|
181487
|
-
const isMargin = this.
|
|
182293
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
181488
182294
|
params = this.omit(params, ['margin', 'marginMode']);
|
|
181489
182295
|
let response = undefined;
|
|
181490
182296
|
if ((marginMode !== undefined) || (isMargin) || (marketType === 'margin')) {
|
|
@@ -183162,7 +183968,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
183162
183968
|
* @returns {Array} the marginMode in lowercase
|
|
183163
183969
|
*/
|
|
183164
183970
|
const defaultType = this.safeString(this.options, 'defaultType');
|
|
183165
|
-
const isMargin = this.
|
|
183971
|
+
const isMargin = this.safeBool(params, 'margin', false);
|
|
183166
183972
|
let marginMode = undefined;
|
|
183167
183973
|
[marginMode, params] = super.handleMarginModeAndParams(methodName, params, defaultValue);
|
|
183168
183974
|
if ((defaultType === 'margin') || (isMargin === true)) {
|
|
@@ -183254,7 +184060,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
183254
184060
|
// {"code":10216,"msg":"No available deposit address"}
|
|
183255
184061
|
// {"success":true, "code":0, "data":1634095541710}
|
|
183256
184062
|
//
|
|
183257
|
-
const success = this.
|
|
184063
|
+
const success = this.safeBool(response, 'success', false); // v1
|
|
183258
184064
|
if (success === true) {
|
|
183259
184065
|
return undefined;
|
|
183260
184066
|
}
|
|
@@ -186906,7 +187712,7 @@ class novadax extends _abstract_novadax_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
186906
187712
|
//
|
|
186907
187713
|
const transfer = this.parseTransfer(response, currency);
|
|
186908
187714
|
const transferOptions = this.safeValue(this.options, 'transfer', {});
|
|
186909
|
-
const fillResponseFromRequest = this.
|
|
187715
|
+
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
186910
187716
|
if (fillResponseFromRequest) {
|
|
186911
187717
|
transfer['fromAccount'] = fromAccount;
|
|
186912
187718
|
transfer['toAccount'] = toAccount;
|
|
@@ -189145,7 +189951,7 @@ class okcoin extends _abstract_okcoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
189145
189951
|
const symbol = market['symbol'];
|
|
189146
189952
|
const last = this.safeString(ticker, 'last');
|
|
189147
189953
|
const open = this.safeString(ticker, 'open24h');
|
|
189148
|
-
const spot = this.
|
|
189954
|
+
const spot = this.safeBool(market, 'spot', false);
|
|
189149
189955
|
const quoteVolume = spot ? this.safeString(ticker, 'volCcy24h') : undefined;
|
|
189150
189956
|
const baseVolume = this.safeString(ticker, 'vol24h');
|
|
189151
189957
|
const high = this.safeString(ticker, 'high24h');
|
|
@@ -189689,7 +190495,7 @@ class okcoin extends _abstract_okcoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
189689
190495
|
}
|
|
189690
190496
|
else {
|
|
189691
190497
|
marginMode = defaultMarginMode;
|
|
189692
|
-
margin = this.
|
|
190498
|
+
margin = this.safeBool(params, 'margin', false);
|
|
189693
190499
|
}
|
|
189694
190500
|
if (margin) {
|
|
189695
190501
|
const defaultCurrency = (side === 'buy') ? market['quote'] : market['base'];
|
|
@@ -191588,6 +192394,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
191588
192394
|
'api': {
|
|
191589
192395
|
'public': {
|
|
191590
192396
|
'get': {
|
|
192397
|
+
'market/books-full': 2,
|
|
191591
192398
|
'market/tickers': 1,
|
|
191592
192399
|
'market/ticker': 1,
|
|
191593
192400
|
'market/index-tickers': 1,
|
|
@@ -193086,6 +193893,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
193086
193893
|
* @param {string} symbol unified symbol of the market to fetch the order book for
|
|
193087
193894
|
* @param {int} [limit] the maximum amount of order book entries to return
|
|
193088
193895
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
193896
|
+
* @param {string} [params.method] 'publicGetMarketBooksFull' or 'publicGetMarketBooks' default is 'publicGetMarketBooks'
|
|
193089
193897
|
* @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
|
|
193090
193898
|
*/
|
|
193091
193899
|
await this.loadMarkets();
|
|
@@ -193093,11 +193901,22 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
193093
193901
|
const request = {
|
|
193094
193902
|
'instId': market['id'],
|
|
193095
193903
|
};
|
|
193096
|
-
|
|
193904
|
+
let method = undefined;
|
|
193905
|
+
[method, params] = this.handleOptionAndParams(params, 'fetchOrderBook', 'method', 'publicGetMarketBooks');
|
|
193906
|
+
if (method === 'publicGetMarketBooksFull' && limit === undefined) {
|
|
193907
|
+
limit = 5000;
|
|
193908
|
+
}
|
|
193909
|
+
limit = (limit === undefined) ? 100 : limit;
|
|
193097
193910
|
if (limit !== undefined) {
|
|
193098
193911
|
request['sz'] = limit; // max 400
|
|
193099
193912
|
}
|
|
193100
|
-
|
|
193913
|
+
let response = undefined;
|
|
193914
|
+
if ((method === 'publicGetMarketBooksFull') || (limit > 400)) {
|
|
193915
|
+
response = await this.publicGetMarketBooksFull(this.extend(request, params));
|
|
193916
|
+
}
|
|
193917
|
+
else {
|
|
193918
|
+
response = await this.publicGetMarketBooks(this.extend(request, params));
|
|
193919
|
+
}
|
|
193101
193920
|
//
|
|
193102
193921
|
// {
|
|
193103
193922
|
// "code": "0",
|
|
@@ -193151,7 +193970,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
193151
193970
|
const symbol = market['symbol'];
|
|
193152
193971
|
const last = this.safeString(ticker, 'last');
|
|
193153
193972
|
const open = this.safeString(ticker, 'open24h');
|
|
193154
|
-
const spot = this.
|
|
193973
|
+
const spot = this.safeBool(market, 'spot', false);
|
|
193155
193974
|
const quoteVolume = spot ? this.safeString(ticker, 'volCcy24h') : undefined;
|
|
193156
193975
|
const baseVolume = this.safeString(ticker, 'vol24h');
|
|
193157
193976
|
const high = this.safeString(ticker, 'high24h');
|
|
@@ -193541,7 +194360,8 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
193541
194360
|
if (since < historyBorder) {
|
|
193542
194361
|
defaultType = 'HistoryCandles';
|
|
193543
194362
|
}
|
|
193544
|
-
|
|
194363
|
+
const startTime = Math.max(since - 1, 0);
|
|
194364
|
+
request['before'] = startTime;
|
|
193545
194365
|
request['after'] = this.sum(since, durationInMilliseconds * limit);
|
|
193546
194366
|
}
|
|
193547
194367
|
const until = this.safeInteger(params, 'until');
|
|
@@ -194007,7 +194827,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
194007
194827
|
}
|
|
194008
194828
|
else {
|
|
194009
194829
|
marginMode = defaultMarginMode;
|
|
194010
|
-
margin = this.
|
|
194830
|
+
margin = this.safeBool(params, 'margin', false);
|
|
194011
194831
|
}
|
|
194012
194832
|
if (spot) {
|
|
194013
194833
|
if (margin) {
|
|
@@ -194506,7 +195326,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
194506
195326
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ArgumentsRequired(this.id + ' cancelOrder() requires a symbol argument');
|
|
194507
195327
|
}
|
|
194508
195328
|
const stop = this.safeValue2(params, 'stop', 'trigger');
|
|
194509
|
-
const trailing = this.
|
|
195329
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
194510
195330
|
if (stop || trailing) {
|
|
194511
195331
|
const orderInner = await this.cancelOrders([id], symbol, params);
|
|
194512
195332
|
return this.safeValue(orderInner, 0);
|
|
@@ -194574,7 +195394,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
194574
195394
|
const clientOrderIds = this.parseIds(this.safeValue2(params, 'clOrdId', 'clientOrderId'));
|
|
194575
195395
|
const algoIds = this.parseIds(this.safeValue(params, 'algoId'));
|
|
194576
195396
|
const stop = this.safeValue2(params, 'stop', 'trigger');
|
|
194577
|
-
const trailing = this.
|
|
195397
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
194578
195398
|
if (stop || trailing) {
|
|
194579
195399
|
method = 'privatePostTradeCancelAlgos';
|
|
194580
195400
|
}
|
|
@@ -195073,7 +195893,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
195073
195893
|
let method = this.safeString(params, 'method', defaultMethod);
|
|
195074
195894
|
const ordType = this.safeString(params, 'ordType');
|
|
195075
195895
|
const stop = this.safeValue2(params, 'stop', 'trigger');
|
|
195076
|
-
const trailing = this.
|
|
195896
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
195077
195897
|
if (trailing || stop || (ordType in algoOrderTypes)) {
|
|
195078
195898
|
method = 'privateGetTradeOrdersAlgoPending';
|
|
195079
195899
|
}
|
|
@@ -195242,7 +196062,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
195242
196062
|
let method = this.safeString(params, 'method', defaultMethod);
|
|
195243
196063
|
const ordType = this.safeString(params, 'ordType');
|
|
195244
196064
|
const stop = this.safeValue2(params, 'stop', 'trigger');
|
|
195245
|
-
const trailing = this.
|
|
196065
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
195246
196066
|
if (trailing) {
|
|
195247
196067
|
method = 'privateGetTradeOrdersAlgoHistory';
|
|
195248
196068
|
request['ordType'] = 'move_order_stop';
|
|
@@ -195436,7 +196256,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
195436
196256
|
let method = this.safeString(params, 'method', defaultMethod);
|
|
195437
196257
|
const ordType = this.safeString(params, 'ordType');
|
|
195438
196258
|
const stop = this.safeValue2(params, 'stop', 'trigger');
|
|
195439
|
-
const trailing = this.
|
|
196259
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
195440
196260
|
if (trailing || stop || (ordType in algoOrderTypes)) {
|
|
195441
196261
|
method = 'privateGetTradeOrdersAlgoHistory';
|
|
195442
196262
|
request['state'] = 'effective';
|
|
@@ -200818,6 +201638,7 @@ class p2b extends _abstract_p2b_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
200818
201638
|
'countries': ['LT'],
|
|
200819
201639
|
'rateLimit': 100,
|
|
200820
201640
|
'version': 'v2',
|
|
201641
|
+
'pro': true,
|
|
200821
201642
|
'has': {
|
|
200822
201643
|
'CORS': undefined,
|
|
200823
201644
|
'spot': true,
|
|
@@ -205076,7 +205897,7 @@ class phemex extends _abstract_phemex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
205076
205897
|
});
|
|
205077
205898
|
}
|
|
205078
205899
|
parseOrder(order, market = undefined) {
|
|
205079
|
-
const isSwap = this.
|
|
205900
|
+
const isSwap = this.safeBool(market, 'swap', false);
|
|
205080
205901
|
const hasPnl = ('closedPnl' in order);
|
|
205081
205902
|
if (isSwap || hasPnl) {
|
|
205082
205903
|
return this.parseSwapOrder(order, market);
|
|
@@ -206988,7 +207809,7 @@ class phemex extends _abstract_phemex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
206988
207809
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest(this.id + ' setLeverage() leverage should be between -100 and 100');
|
|
206989
207810
|
}
|
|
206990
207811
|
await this.loadMarkets();
|
|
206991
|
-
const isHedged = this.
|
|
207812
|
+
const isHedged = this.safeBool(params, 'hedged', false);
|
|
206992
207813
|
const longLeverageRr = this.safeInteger(params, 'longLeverageRr');
|
|
206993
207814
|
const shortLeverageRr = this.safeInteger(params, 'shortLeverageRr');
|
|
206994
207815
|
const market = this.market(symbol);
|
|
@@ -207084,7 +207905,7 @@ class phemex extends _abstract_phemex_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
207084
207905
|
transfer = this.parseTransfer(response);
|
|
207085
207906
|
}
|
|
207086
207907
|
const transferOptions = this.safeValue(this.options, 'transfer', {});
|
|
207087
|
-
const fillResponseFromRequest = this.
|
|
207908
|
+
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
207088
207909
|
if (fillResponseFromRequest) {
|
|
207089
207910
|
if (transfer['fromAccount'] === undefined) {
|
|
207090
207911
|
transfer['fromAccount'] = fromAccount;
|
|
@@ -210635,7 +211456,7 @@ class poloniexfutures extends _abstract_poloniexfutures_js__WEBPACK_IMPORTED_MOD
|
|
|
210635
211456
|
request['timeInForce'] = timeInForce;
|
|
210636
211457
|
}
|
|
210637
211458
|
}
|
|
210638
|
-
const postOnly = this.
|
|
211459
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
210639
211460
|
const hidden = this.safeValue(params, 'hidden');
|
|
210640
211461
|
if (postOnly && (hidden !== undefined)) {
|
|
210641
211462
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest(this.id + ' createOrder() does not support the postOnly parameter together with a hidden parameter');
|
|
@@ -211326,8 +212147,8 @@ class poloniexfutures extends _abstract_poloniexfutures_js__WEBPACK_IMPORTED_MOD
|
|
|
211326
212147
|
// precision reported by their api is 8 d.p.
|
|
211327
212148
|
// const average = Precise.stringDiv (rawCost, Precise.stringMul (filled, market['contractSize']));
|
|
211328
212149
|
// bool
|
|
211329
|
-
const isActive = this.
|
|
211330
|
-
const cancelExist = this.
|
|
212150
|
+
const isActive = this.safeBool(order, 'isActive', false);
|
|
212151
|
+
const cancelExist = this.safeBool(order, 'cancelExist', false);
|
|
211331
212152
|
const status = isActive ? 'open' : 'closed';
|
|
211332
212153
|
let id = this.safeString(order, 'id');
|
|
211333
212154
|
if ('cancelledOrderIds' in order) {
|
|
@@ -211801,7 +212622,7 @@ class alpaca extends _alpaca_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
211801
212622
|
const symbol = this.safeSymbol(marketId);
|
|
211802
212623
|
const datetime = this.safeString(message, 't');
|
|
211803
212624
|
const timestamp = this.parse8601(datetime);
|
|
211804
|
-
const isSnapshot = this.
|
|
212625
|
+
const isSnapshot = this.safeBool(message, 'r', false);
|
|
211805
212626
|
let orderbook = this.safeValue(this.orderbooks, symbol);
|
|
211806
212627
|
if (orderbook === undefined) {
|
|
211807
212628
|
orderbook = this.orderBook();
|
|
@@ -214585,7 +215406,7 @@ class binance extends _binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
214585
215406
|
return undefined;
|
|
214586
215407
|
}
|
|
214587
215408
|
const options = this.safeValue(this.options, 'watchBalance');
|
|
214588
|
-
const fetchBalanceSnapshot = this.
|
|
215409
|
+
const fetchBalanceSnapshot = this.safeBool(options, 'fetchBalanceSnapshot', false);
|
|
214589
215410
|
if (fetchBalanceSnapshot) {
|
|
214590
215411
|
const messageHash = type + ':fetchBalanceSnapshot';
|
|
214591
215412
|
if (!(messageHash in client.futures)) {
|
|
@@ -214711,8 +215532,8 @@ class binance extends _binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
214711
215532
|
this.setBalanceCache(client, type);
|
|
214712
215533
|
this.setPositionsCache(client, type);
|
|
214713
215534
|
const options = this.safeValue(this.options, 'watchBalance');
|
|
214714
|
-
const fetchBalanceSnapshot = this.
|
|
214715
|
-
const awaitBalanceSnapshot = this.
|
|
215535
|
+
const fetchBalanceSnapshot = this.safeBool(options, 'fetchBalanceSnapshot', false);
|
|
215536
|
+
const awaitBalanceSnapshot = this.safeBool(options, 'awaitBalanceSnapshot', true);
|
|
214716
215537
|
if (fetchBalanceSnapshot && awaitBalanceSnapshot) {
|
|
214717
215538
|
await client.future(type + ':fetchBalanceSnapshot');
|
|
214718
215539
|
}
|
|
@@ -214873,7 +215694,7 @@ class binance extends _binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
214873
215694
|
let returnRateLimits = false;
|
|
214874
215695
|
[returnRateLimits, params] = this.handleOptionAndParams(params, 'createOrderWs', 'returnRateLimits', false);
|
|
214875
215696
|
payload['returnRateLimits'] = returnRateLimits;
|
|
214876
|
-
const test = this.
|
|
215697
|
+
const test = this.safeBool(params, 'test', false);
|
|
214877
215698
|
params = this.omit(params, 'test');
|
|
214878
215699
|
const message = {
|
|
214879
215700
|
'id': messageHash,
|
|
@@ -220157,7 +220978,7 @@ class bitget extends _bitget_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
220157
220978
|
await this.loadMarkets();
|
|
220158
220979
|
let market = undefined;
|
|
220159
220980
|
let marketId = undefined;
|
|
220160
|
-
const isStop = this.
|
|
220981
|
+
const isStop = this.safeBool(params, 'stop', false);
|
|
220161
220982
|
params = this.omit(params, 'stop');
|
|
220162
220983
|
let messageHash = (isStop) ? 'triggerOrder' : 'order';
|
|
220163
220984
|
let subscriptionHash = 'order:trades';
|
|
@@ -221151,7 +221972,7 @@ class bitmart extends _bitmart_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
221151
221972
|
return;
|
|
221152
221973
|
}
|
|
221153
221974
|
const options = this.safeValue(this.options, 'watchBalance');
|
|
221154
|
-
const snapshot = this.
|
|
221975
|
+
const snapshot = this.safeBool(options, 'fetchBalanceSnapshot', true);
|
|
221155
221976
|
if (snapshot) {
|
|
221156
221977
|
const messageHash = type + ':' + 'fetchBalanceSnapshot';
|
|
221157
221978
|
if (!(messageHash in client.futures)) {
|
|
@@ -222523,7 +223344,7 @@ class bitmex extends _bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
222523
223344
|
'watchOrders': true,
|
|
222524
223345
|
'watchPostions': true,
|
|
222525
223346
|
'watchTicker': true,
|
|
222526
|
-
'watchTickers':
|
|
223347
|
+
'watchTickers': true,
|
|
222527
223348
|
'watchTrades': true,
|
|
222528
223349
|
'watchTradesForSymbols': true,
|
|
222529
223350
|
},
|
|
@@ -222575,6 +223396,46 @@ class bitmex extends _bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
222575
223396
|
};
|
|
222576
223397
|
return await this.watch(url, messageHash, this.extend(request, params), messageHash);
|
|
222577
223398
|
}
|
|
223399
|
+
async watchTickers(symbols = undefined, params = {}) {
|
|
223400
|
+
/**
|
|
223401
|
+
* @method
|
|
223402
|
+
* @name bitmex#watchTickers
|
|
223403
|
+
* @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for all markets of a specific list
|
|
223404
|
+
* @param {string[]} symbols unified symbol of the market to fetch the ticker for
|
|
223405
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
223406
|
+
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
223407
|
+
*/
|
|
223408
|
+
await this.loadMarkets();
|
|
223409
|
+
symbols = this.marketSymbols(symbols, undefined, true);
|
|
223410
|
+
const name = 'instrument';
|
|
223411
|
+
const url = this.urls['api']['ws'];
|
|
223412
|
+
const messageHashes = [];
|
|
223413
|
+
if (symbols !== undefined) {
|
|
223414
|
+
for (let i = 0; i < symbols.length; i++) {
|
|
223415
|
+
const symbol = symbols[i];
|
|
223416
|
+
const market = this.market(symbol);
|
|
223417
|
+
const hash = name + ':' + market['id'];
|
|
223418
|
+
messageHashes.push(hash);
|
|
223419
|
+
}
|
|
223420
|
+
}
|
|
223421
|
+
else {
|
|
223422
|
+
messageHashes.push(name);
|
|
223423
|
+
}
|
|
223424
|
+
const request = {
|
|
223425
|
+
'op': 'subscribe',
|
|
223426
|
+
'args': messageHashes,
|
|
223427
|
+
};
|
|
223428
|
+
const ticker = await this.watchMultiple(url, messageHashes, this.extend(request, params), messageHashes);
|
|
223429
|
+
if (this.newUpdates) {
|
|
223430
|
+
if (symbols === undefined) {
|
|
223431
|
+
return ticker;
|
|
223432
|
+
}
|
|
223433
|
+
const result = {};
|
|
223434
|
+
result[ticker['symbol']] = ticker;
|
|
223435
|
+
return result;
|
|
223436
|
+
}
|
|
223437
|
+
return this.filterByArray(this.tickers, 'symbol', symbols);
|
|
223438
|
+
}
|
|
222578
223439
|
handleTicker(client, message) {
|
|
222579
223440
|
//
|
|
222580
223441
|
// {
|
|
@@ -222803,19 +223664,22 @@ class bitmex extends _bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
222803
223664
|
// }
|
|
222804
223665
|
//
|
|
222805
223666
|
const table = this.safeString(message, 'table');
|
|
222806
|
-
const data = this.
|
|
223667
|
+
const data = this.safeList(message, 'data', []);
|
|
223668
|
+
const tickers = {};
|
|
222807
223669
|
for (let i = 0; i < data.length; i++) {
|
|
222808
223670
|
const update = data[i];
|
|
222809
|
-
const marketId = this.
|
|
223671
|
+
const marketId = this.safeString(update, 'symbol');
|
|
222810
223672
|
const market = this.safeMarket(marketId);
|
|
222811
223673
|
const symbol = market['symbol'];
|
|
222812
223674
|
const messageHash = table + ':' + marketId;
|
|
222813
|
-
let ticker = this.
|
|
222814
|
-
const info = this.
|
|
223675
|
+
let ticker = this.safeDict(this.tickers, symbol, {});
|
|
223676
|
+
const info = this.safeDict(ticker, 'info', {});
|
|
222815
223677
|
ticker = this.parseTicker(this.extend(info, update), market);
|
|
223678
|
+
tickers[symbol] = ticker;
|
|
222816
223679
|
this.tickers[symbol] = ticker;
|
|
222817
223680
|
client.resolve(ticker, messageHash);
|
|
222818
223681
|
}
|
|
223682
|
+
client.resolve(tickers, 'instrument');
|
|
222819
223683
|
return message;
|
|
222820
223684
|
}
|
|
222821
223685
|
async watchBalance(params = {}) {
|
|
@@ -223079,7 +223943,7 @@ class bitmex extends _bitmex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
223079
223943
|
return future;
|
|
223080
223944
|
}
|
|
223081
223945
|
handleAuthenticationMessage(client, message) {
|
|
223082
|
-
const authenticated = this.
|
|
223946
|
+
const authenticated = this.safeBool(message, 'success', false);
|
|
223083
223947
|
const messageHash = 'authenticated';
|
|
223084
223948
|
if (authenticated) {
|
|
223085
223949
|
// we resolve the future here permanently so authentication only happens once
|
|
@@ -226849,7 +227713,7 @@ class bitvavo extends _bitvavo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
226849
227713
|
// }
|
|
226850
227714
|
//
|
|
226851
227715
|
const messageHash = 'authenticated';
|
|
226852
|
-
const authenticated = this.
|
|
227716
|
+
const authenticated = this.safeBool(message, 'authenticated', false);
|
|
226853
227717
|
if (authenticated) {
|
|
226854
227718
|
// we resolve the future here permanently so authentication only happens once
|
|
226855
227719
|
client.resolve(message, messageHash);
|
|
@@ -229127,8 +229991,8 @@ class bybit extends _bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
|
229127
229991
|
let subType = undefined;
|
|
229128
229992
|
[subType, params] = this.handleSubTypeAndParams('watchBalance', undefined, params);
|
|
229129
229993
|
const unified = await this.isUnifiedEnabled();
|
|
229130
|
-
const isUnifiedMargin = this.
|
|
229131
|
-
const isUnifiedAccount = this.
|
|
229994
|
+
const isUnifiedMargin = this.safeBool(unified, 0, false);
|
|
229995
|
+
const isUnifiedAccount = this.safeBool(unified, 1, false);
|
|
229132
229996
|
const url = this.getUrlByMarketType(undefined, true, method, params);
|
|
229133
229997
|
await this.authenticate(url);
|
|
229134
229998
|
const topicByMarket = {
|
|
@@ -230355,7 +231219,7 @@ class cex extends _cex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
|
230355
231219
|
order = this.parseWsOrderUpdate(data, market);
|
|
230356
231220
|
}
|
|
230357
231221
|
order['remaining'] = remains;
|
|
230358
|
-
const canceled = this.
|
|
231222
|
+
const canceled = this.safeBool(data, 'cancel', false);
|
|
230359
231223
|
if (canceled) {
|
|
230360
231224
|
order['status'] = 'canceled';
|
|
230361
231225
|
}
|
|
@@ -230444,7 +231308,7 @@ class cex extends _cex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
|
230444
231308
|
if (isTransaction) {
|
|
230445
231309
|
timestamp = this.parse8601(time);
|
|
230446
231310
|
}
|
|
230447
|
-
const canceled = this.
|
|
231311
|
+
const canceled = this.safeBool(order, 'cancel', false);
|
|
230448
231312
|
let status = 'open';
|
|
230449
231313
|
if (canceled) {
|
|
230450
231314
|
status = 'canceled';
|
|
@@ -231155,8 +232019,8 @@ class cex extends _cex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
|
231155
232019
|
/* harmony export */ Z: () => (/* binding */ coinbase)
|
|
231156
232020
|
/* harmony export */ });
|
|
231157
232021
|
/* harmony import */ var _coinbase_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(437);
|
|
231158
|
-
/* harmony import */ var
|
|
231159
|
-
/* harmony import */ var
|
|
232022
|
+
/* harmony import */ var _base_errors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6689);
|
|
232023
|
+
/* harmony import */ var _base_ws_Cache_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3020);
|
|
231160
232024
|
/* harmony import */ var _static_dependencies_noble_hashes_sha256_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1372);
|
|
231161
232025
|
// ---------------------------------------------------------------------------
|
|
231162
232026
|
|
|
@@ -231267,7 +232131,7 @@ class coinbase extends _coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] *
|
|
|
231267
232131
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
231268
232132
|
*/
|
|
231269
232133
|
if (symbols === undefined) {
|
|
231270
|
-
|
|
232134
|
+
symbols = this.symbols;
|
|
231271
232135
|
}
|
|
231272
232136
|
const name = 'ticker_batch';
|
|
231273
232137
|
const tickers = await this.subscribe(name, symbols, params);
|
|
@@ -231491,7 +232355,7 @@ class coinbase extends _coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] *
|
|
|
231491
232355
|
let tradesArray = this.safeValue(this.trades, symbol);
|
|
231492
232356
|
if (tradesArray === undefined) {
|
|
231493
232357
|
const tradesLimit = this.safeInteger(this.options, 'tradesLimit', 1000);
|
|
231494
|
-
tradesArray = new
|
|
232358
|
+
tradesArray = new _base_ws_Cache_js__WEBPACK_IMPORTED_MODULE_2__/* .ArrayCacheBySymbolById */ .hl(tradesLimit);
|
|
231495
232359
|
this.trades[symbol] = tradesArray;
|
|
231496
232360
|
}
|
|
231497
232361
|
for (let i = 0; i < events.length; i++) {
|
|
@@ -231538,7 +232402,7 @@ class coinbase extends _coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] *
|
|
|
231538
232402
|
const marketIds = [];
|
|
231539
232403
|
if (this.orders === undefined) {
|
|
231540
232404
|
const limit = this.safeInteger(this.options, 'ordersLimit', 1000);
|
|
231541
|
-
this.orders = new
|
|
232405
|
+
this.orders = new _base_ws_Cache_js__WEBPACK_IMPORTED_MODULE_2__/* .ArrayCacheBySymbolById */ .hl(limit);
|
|
231542
232406
|
}
|
|
231543
232407
|
for (let i = 0; i < events.length; i++) {
|
|
231544
232408
|
const event = events[i];
|
|
@@ -231708,7 +232572,7 @@ class coinbase extends _coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] *
|
|
|
231708
232572
|
const type = this.safeString(message, 'type');
|
|
231709
232573
|
if (type === 'error') {
|
|
231710
232574
|
const errorMessage = this.safeString(message, 'message');
|
|
231711
|
-
throw new
|
|
232575
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_3__.ExchangeError(errorMessage);
|
|
231712
232576
|
}
|
|
231713
232577
|
const method = this.safeValue(methods, channel);
|
|
231714
232578
|
return method.call(this, client, message);
|
|
@@ -245400,7 +246264,7 @@ class independentreserve extends _independentreserve_js__WEBPACK_IMPORTED_MODULE
|
|
|
245400
246264
|
const orderBook = this.safeValue(message, 'Data', {});
|
|
245401
246265
|
const messageHash = 'orderbook:' + symbol + ':' + depth;
|
|
245402
246266
|
const subscription = this.safeValue(client.subscriptions, messageHash, {});
|
|
245403
|
-
const receivedSnapshot = this.
|
|
246267
|
+
const receivedSnapshot = this.safeBool(subscription, 'receivedSnapshot', false);
|
|
245404
246268
|
const timestamp = this.safeInteger(message, 'Time');
|
|
245405
246269
|
let storedOrderBook = this.safeValue(this.orderbooks, symbol);
|
|
245406
246270
|
if (storedOrderBook === undefined) {
|
|
@@ -255052,7 +255916,7 @@ class okx extends _okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
|
255052
255916
|
// By default, receive order updates from any instrument type
|
|
255053
255917
|
let type = undefined;
|
|
255054
255918
|
[type, params] = this.handleOptionAndParams(params, 'watchMyTrades', 'type', 'ANY');
|
|
255055
|
-
const isStop = this.
|
|
255919
|
+
const isStop = this.safeBool(params, 'stop', false);
|
|
255056
255920
|
params = this.omit(params, ['stop']);
|
|
255057
255921
|
await this.loadMarkets();
|
|
255058
255922
|
await this.authenticate({ 'access': isStop ? 'business' : 'private' });
|
|
@@ -256879,7 +257743,7 @@ class onetrading extends _onetrading_js__WEBPACK_IMPORTED_MODULE_0__/* ["default
|
|
|
256879
257743
|
subscription = this.safeValue(client.subscriptions, subscriptionHash);
|
|
256880
257744
|
if (subscription !== undefined) {
|
|
256881
257745
|
const ohlcvMarket = this.safeValue(subscription, marketId, {});
|
|
256882
|
-
const marketSubscribed = this.
|
|
257746
|
+
const marketSubscribed = this.safeBool(ohlcvMarket, timeframe, false);
|
|
256883
257747
|
if (!marketSubscribed) {
|
|
256884
257748
|
type = 'UPDATE_SUBSCRIPTION';
|
|
256885
257749
|
client.subscriptions[subscriptionHash] = undefined;
|
|
@@ -257120,7 +257984,7 @@ class onetrading extends _onetrading_js__WEBPACK_IMPORTED_MODULE_0__/* ["default
|
|
|
257120
257984
|
if (subscription !== undefined) {
|
|
257121
257985
|
for (let i = 0; i < marketIds.length; i++) {
|
|
257122
257986
|
const marketId = marketIds[i];
|
|
257123
|
-
const marketSubscribed = this.
|
|
257987
|
+
const marketSubscribed = this.safeBool(subscription, marketId, false);
|
|
257124
257988
|
if (!marketSubscribed) {
|
|
257125
257989
|
type = 'UPDATE_SUBSCRIPTION';
|
|
257126
257990
|
client.subscriptions[subscriptionHash] = undefined;
|
|
@@ -257158,6 +258022,446 @@ class onetrading extends _onetrading_js__WEBPACK_IMPORTED_MODULE_0__/* ["default
|
|
|
257158
258022
|
}
|
|
257159
258023
|
|
|
257160
258024
|
|
|
258025
|
+
/***/ }),
|
|
258026
|
+
|
|
258027
|
+
/***/ 8516:
|
|
258028
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
258029
|
+
|
|
258030
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
258031
|
+
/* harmony export */ Z: () => (/* binding */ p2b)
|
|
258032
|
+
/* harmony export */ });
|
|
258033
|
+
/* harmony import */ var _p2b_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2466);
|
|
258034
|
+
/* harmony import */ var _base_errors_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6689);
|
|
258035
|
+
/* harmony import */ var _base_ws_Cache_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3020);
|
|
258036
|
+
// ---------------------------------------------------------------------------
|
|
258037
|
+
|
|
258038
|
+
|
|
258039
|
+
|
|
258040
|
+
// ---------------------------------------------------------------------------
|
|
258041
|
+
class p2b extends _p2b_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z {
|
|
258042
|
+
describe() {
|
|
258043
|
+
return this.deepExtend(super.describe(), {
|
|
258044
|
+
'has': {
|
|
258045
|
+
'ws': true,
|
|
258046
|
+
'cancelAllOrdersWs': false,
|
|
258047
|
+
'cancelOrdersWs': false,
|
|
258048
|
+
'cancelOrderWs': false,
|
|
258049
|
+
'createOrderWs': false,
|
|
258050
|
+
'editOrderWs': false,
|
|
258051
|
+
'fetchBalanceWs': false,
|
|
258052
|
+
'fetchOpenOrdersWs': false,
|
|
258053
|
+
'fetchOrderWs': false,
|
|
258054
|
+
'fetchTradesWs': false,
|
|
258055
|
+
'watchBalance': false,
|
|
258056
|
+
'watchMyTrades': false,
|
|
258057
|
+
'watchOHLCV': true,
|
|
258058
|
+
'watchOrderBook': true,
|
|
258059
|
+
'watchOrders': false,
|
|
258060
|
+
// 'watchStatus': true,
|
|
258061
|
+
'watchTicker': true,
|
|
258062
|
+
'watchTickers': false,
|
|
258063
|
+
'watchTrades': true,
|
|
258064
|
+
},
|
|
258065
|
+
'urls': {
|
|
258066
|
+
'api': {
|
|
258067
|
+
'ws': 'wss://apiws.p2pb2b.com/',
|
|
258068
|
+
},
|
|
258069
|
+
},
|
|
258070
|
+
'options': {
|
|
258071
|
+
'OHLCVLimit': 1000,
|
|
258072
|
+
'tradesLimit': 1000,
|
|
258073
|
+
'timeframes': {
|
|
258074
|
+
'15m': 900,
|
|
258075
|
+
'30m': 1800,
|
|
258076
|
+
'1h': 3600,
|
|
258077
|
+
'1d': 86400,
|
|
258078
|
+
},
|
|
258079
|
+
'watchTicker': {
|
|
258080
|
+
'name': 'state', // or 'price'
|
|
258081
|
+
},
|
|
258082
|
+
'watchTickers': {
|
|
258083
|
+
'name': 'state', // or 'price'
|
|
258084
|
+
},
|
|
258085
|
+
},
|
|
258086
|
+
'streaming': {
|
|
258087
|
+
'ping': this.ping,
|
|
258088
|
+
},
|
|
258089
|
+
});
|
|
258090
|
+
}
|
|
258091
|
+
async subscribe(name, messageHash, request, params = {}) {
|
|
258092
|
+
/**
|
|
258093
|
+
* @ignore
|
|
258094
|
+
* @method
|
|
258095
|
+
* @description Connects to a websocket channel
|
|
258096
|
+
* @param {string} name name of the channel
|
|
258097
|
+
* @param {string} messageHash string to look up in handler
|
|
258098
|
+
* @param {string[]|float[]} request endpoint parameters
|
|
258099
|
+
* @param {object} [params] extra parameters specific to the p2b api
|
|
258100
|
+
* @returns {object} data from the websocket stream
|
|
258101
|
+
*/
|
|
258102
|
+
const url = this.urls['api']['ws'];
|
|
258103
|
+
const subscribe = {
|
|
258104
|
+
'method': name,
|
|
258105
|
+
'params': request,
|
|
258106
|
+
'id': this.milliseconds(),
|
|
258107
|
+
};
|
|
258108
|
+
const query = this.extend(subscribe, params);
|
|
258109
|
+
return await this.watch(url, messageHash, query, messageHash);
|
|
258110
|
+
}
|
|
258111
|
+
async watchOHLCV(symbol, timeframe = '15m', since = undefined, limit = undefined, params = {}) {
|
|
258112
|
+
/**
|
|
258113
|
+
* @method
|
|
258114
|
+
* @name p2b#watchOHLCV
|
|
258115
|
+
* @description watches historical candlestick data containing the open, high, low, and close price, and the volume of a market. Can only subscribe to one timeframe at a time for each symbol
|
|
258116
|
+
* @see https://github.com/P2B-team/P2B-WSS-Public/blob/main/wss_documentation.md#kline-candlestick
|
|
258117
|
+
* @param {string} symbol unified symbol of the market to fetch OHLCV data for
|
|
258118
|
+
* @param {string} timeframe 15m, 30m, 1h or 1d
|
|
258119
|
+
* @param {int} [since] timestamp in ms of the earliest candle to fetch
|
|
258120
|
+
* @param {int} [limit] the maximum amount of candles to fetch
|
|
258121
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
258122
|
+
* @returns {int[][]} A list of candles ordered as timestamp, open, high, low, close, volume
|
|
258123
|
+
*/
|
|
258124
|
+
await this.loadMarkets();
|
|
258125
|
+
const timeframes = this.safeValue(this.options, 'timeframes', {});
|
|
258126
|
+
const channel = this.safeInteger(timeframes, timeframe);
|
|
258127
|
+
if (channel === undefined) {
|
|
258128
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' watchOHLCV cannot take a timeframe of ' + timeframe);
|
|
258129
|
+
}
|
|
258130
|
+
const market = this.market(symbol);
|
|
258131
|
+
const request = [
|
|
258132
|
+
market['id'],
|
|
258133
|
+
channel,
|
|
258134
|
+
];
|
|
258135
|
+
const messageHash = 'kline::' + market['symbol'];
|
|
258136
|
+
const ohlcv = await this.subscribe('kline.subscribe', messageHash, request, params);
|
|
258137
|
+
if (this.newUpdates) {
|
|
258138
|
+
limit = ohlcv.getLimit(symbol, limit);
|
|
258139
|
+
}
|
|
258140
|
+
return this.filterBySinceLimit(ohlcv, since, limit, 0, true);
|
|
258141
|
+
}
|
|
258142
|
+
async watchTicker(symbol, params = {}) {
|
|
258143
|
+
/**
|
|
258144
|
+
* @method
|
|
258145
|
+
* @name p2b#watchTicker
|
|
258146
|
+
* @description watches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
258147
|
+
* @see https://github.com/P2B-team/P2B-WSS-Public/blob/main/wss_documentation.md#last-price
|
|
258148
|
+
* @see https://github.com/P2B-team/P2B-WSS-Public/blob/main/wss_documentation.md#market-status
|
|
258149
|
+
* @param {string} symbol unified symbol of the market to fetch the ticker for
|
|
258150
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
258151
|
+
* @param {object} [params.method] 'state' (default) or 'price'
|
|
258152
|
+
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
258153
|
+
*/
|
|
258154
|
+
await this.loadMarkets();
|
|
258155
|
+
const watchTickerOptions = this.safeValue(this.options, 'watchTicker');
|
|
258156
|
+
let name = this.safeString(watchTickerOptions, 'name', 'state'); // or price
|
|
258157
|
+
[name, params] = this.handleOptionAndParams(params, 'method', 'name', name);
|
|
258158
|
+
const market = this.market(symbol);
|
|
258159
|
+
const request = [
|
|
258160
|
+
market['id'],
|
|
258161
|
+
];
|
|
258162
|
+
const messageHash = name + '::' + market['symbol'];
|
|
258163
|
+
return await this.subscribe(name + '.subscribe', messageHash, request, params);
|
|
258164
|
+
}
|
|
258165
|
+
async watchTrades(symbol, since = undefined, limit = undefined, params = {}) {
|
|
258166
|
+
/**
|
|
258167
|
+
* @method
|
|
258168
|
+
* @name p2b#watchTrades
|
|
258169
|
+
* @description get the list of most recent trades for a particular symbol
|
|
258170
|
+
* @see https://github.com/P2B-team/P2B-WSS-Public/blob/main/wss_documentation.md#deals
|
|
258171
|
+
* @param {string} symbol unified symbol of the market to fetch trades for
|
|
258172
|
+
* @param {int} [since] timestamp in ms of the earliest trade to fetch
|
|
258173
|
+
* @param {int} [limit] the maximum amount of trades to fetch
|
|
258174
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
258175
|
+
* @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
|
|
258176
|
+
*/
|
|
258177
|
+
await this.loadMarkets();
|
|
258178
|
+
const market = this.market(symbol);
|
|
258179
|
+
const request = [
|
|
258180
|
+
market['id'],
|
|
258181
|
+
];
|
|
258182
|
+
const messageHash = 'deals::' + market['symbol'];
|
|
258183
|
+
const trades = await this.subscribe('deals.subscribe', messageHash, request, params);
|
|
258184
|
+
if (this.newUpdates) {
|
|
258185
|
+
limit = trades.getLimit(symbol, limit);
|
|
258186
|
+
}
|
|
258187
|
+
return this.filterBySinceLimit(trades, since, limit, 'timestamp', true);
|
|
258188
|
+
}
|
|
258189
|
+
async watchOrderBook(symbol, limit = undefined, params = {}) {
|
|
258190
|
+
/**
|
|
258191
|
+
* @method
|
|
258192
|
+
* @name p2b#watchOrderBook
|
|
258193
|
+
* @description watches information on open orders with bid (buy) and ask (sell) prices, volumes and other data
|
|
258194
|
+
* @see https://github.com/P2B-team/P2B-WSS-Public/blob/main/wss_documentation.md#depth-of-market
|
|
258195
|
+
* @param {string} symbol unified symbol of the market to fetch the order book for
|
|
258196
|
+
* @param {int} [limit] 1-100, default=100
|
|
258197
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
258198
|
+
* @param {float} [params.interval] 0, 0.00000001, 0.0000001, 0.000001, 0.00001, 0.0001, 0.001, 0.01, 0.1, interval of precision for order, default=0.001
|
|
258199
|
+
* @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
|
|
258200
|
+
*/
|
|
258201
|
+
await this.loadMarkets();
|
|
258202
|
+
const market = this.market(symbol);
|
|
258203
|
+
const name = 'depth.subscribe';
|
|
258204
|
+
const messageHash = 'orderbook::' + market['symbol'];
|
|
258205
|
+
const interval = this.safeString(params, 'interval', '0.001');
|
|
258206
|
+
if (limit === undefined) {
|
|
258207
|
+
limit = 100;
|
|
258208
|
+
}
|
|
258209
|
+
const request = [
|
|
258210
|
+
market['id'],
|
|
258211
|
+
limit,
|
|
258212
|
+
interval,
|
|
258213
|
+
];
|
|
258214
|
+
const orderbook = await this.subscribe(name, messageHash, request, params);
|
|
258215
|
+
return orderbook.limit();
|
|
258216
|
+
}
|
|
258217
|
+
handleOHLCV(client, message) {
|
|
258218
|
+
//
|
|
258219
|
+
// {
|
|
258220
|
+
// "method": "kline.update",
|
|
258221
|
+
// "params": [
|
|
258222
|
+
// [
|
|
258223
|
+
// 1657648800, // Kline start time
|
|
258224
|
+
// "0.054146", // Kline open price
|
|
258225
|
+
// "0.053938", // Kline close price (current price)
|
|
258226
|
+
// "0.054146", // Kline high price
|
|
258227
|
+
// "0.053911", // Kline low price
|
|
258228
|
+
// "596.4674", // Volume for stock currency
|
|
258229
|
+
// "32.2298758767", // Volume for money currency
|
|
258230
|
+
// "ETH_BTC" // Market
|
|
258231
|
+
// ]
|
|
258232
|
+
// ],
|
|
258233
|
+
// "id": null
|
|
258234
|
+
// }
|
|
258235
|
+
//
|
|
258236
|
+
let data = this.safeList(message, 'params');
|
|
258237
|
+
data = this.safeList(data, 0);
|
|
258238
|
+
const method = this.safeString(message, 'method');
|
|
258239
|
+
const splitMethod = method.split('.');
|
|
258240
|
+
const channel = this.safeString(splitMethod, 0);
|
|
258241
|
+
const marketId = this.safeString(data, 7);
|
|
258242
|
+
const market = this.safeMarket(marketId);
|
|
258243
|
+
const timeframes = this.safeDict(this.options, 'timeframes', {});
|
|
258244
|
+
const timeframe = this.findTimeframe(channel, timeframes);
|
|
258245
|
+
const symbol = this.safeString(market, 'symbol');
|
|
258246
|
+
const messageHash = channel + '::' + symbol;
|
|
258247
|
+
const parsed = this.parseOHLCV(data, market);
|
|
258248
|
+
this.ohlcvs[symbol] = this.safeValue(this.ohlcvs, symbol, {});
|
|
258249
|
+
let stored = this.safeValue(this.ohlcvs[symbol], timeframe);
|
|
258250
|
+
if (symbol !== undefined) {
|
|
258251
|
+
if (stored === undefined) {
|
|
258252
|
+
const limit = this.safeInteger(this.options, 'OHLCVLimit', 1000);
|
|
258253
|
+
stored = new _base_ws_Cache_js__WEBPACK_IMPORTED_MODULE_2__/* .ArrayCacheByTimestamp */ .Py(limit);
|
|
258254
|
+
this.ohlcvs[symbol][timeframe] = stored;
|
|
258255
|
+
}
|
|
258256
|
+
stored.append(parsed);
|
|
258257
|
+
client.resolve(stored, messageHash);
|
|
258258
|
+
}
|
|
258259
|
+
return message;
|
|
258260
|
+
}
|
|
258261
|
+
handleTrade(client, message) {
|
|
258262
|
+
//
|
|
258263
|
+
// {
|
|
258264
|
+
// "method": "deals.update",
|
|
258265
|
+
// "params": [
|
|
258266
|
+
// "ETH_BTC",
|
|
258267
|
+
// [
|
|
258268
|
+
// {
|
|
258269
|
+
// "id": 4503032979, // Order_id
|
|
258270
|
+
// "amount": "0.103",
|
|
258271
|
+
// "type": "sell", // Side
|
|
258272
|
+
// "time": 1657661950.8487639, // Creation time
|
|
258273
|
+
// "price": "0.05361"
|
|
258274
|
+
// },
|
|
258275
|
+
// ...
|
|
258276
|
+
// ]
|
|
258277
|
+
// ],
|
|
258278
|
+
// "id": null
|
|
258279
|
+
// }
|
|
258280
|
+
//
|
|
258281
|
+
const data = this.safeList(message, 'params', []);
|
|
258282
|
+
const trades = this.safeList(data, 1);
|
|
258283
|
+
const marketId = this.safeString(data, 0);
|
|
258284
|
+
const market = this.safeMarket(marketId);
|
|
258285
|
+
const symbol = this.safeString(market, 'symbol');
|
|
258286
|
+
let tradesArray = this.safeValue(this.trades, symbol);
|
|
258287
|
+
if (tradesArray === undefined) {
|
|
258288
|
+
const tradesLimit = this.safeInteger(this.options, 'tradesLimit', 1000);
|
|
258289
|
+
tradesArray = new _base_ws_Cache_js__WEBPACK_IMPORTED_MODULE_2__/* .ArrayCache */ .ZL(tradesLimit);
|
|
258290
|
+
this.trades[symbol] = tradesArray;
|
|
258291
|
+
}
|
|
258292
|
+
for (let i = 0; i < trades.length; i++) {
|
|
258293
|
+
const item = trades[i];
|
|
258294
|
+
const trade = this.parseTrade(item, market);
|
|
258295
|
+
tradesArray.append(trade);
|
|
258296
|
+
}
|
|
258297
|
+
const messageHash = 'deals::' + symbol;
|
|
258298
|
+
client.resolve(tradesArray, messageHash);
|
|
258299
|
+
return message;
|
|
258300
|
+
}
|
|
258301
|
+
handleTicker(client, message) {
|
|
258302
|
+
//
|
|
258303
|
+
// state
|
|
258304
|
+
//
|
|
258305
|
+
// {
|
|
258306
|
+
// "method": "state.update",
|
|
258307
|
+
// "params": [
|
|
258308
|
+
// "ETH_BTC",
|
|
258309
|
+
// {
|
|
258310
|
+
// "high": "0.055774", // High price for the last 24h
|
|
258311
|
+
// "close": "0.053679", // Close price for the last 24h
|
|
258312
|
+
// "low": "0.053462", // Low price for the last 24h
|
|
258313
|
+
// "period": 86400, // Period 24h
|
|
258314
|
+
// "last": "0.053679", // Last price for the last 24h
|
|
258315
|
+
// "volume": "38463.6132", // Stock volume for the last 24h
|
|
258316
|
+
// "open": "0.055682", // Open price for the last 24h
|
|
258317
|
+
// "deal": "2091.0038055314" // Money volume for the last 24h
|
|
258318
|
+
// }
|
|
258319
|
+
// ],
|
|
258320
|
+
// "id": null
|
|
258321
|
+
// }
|
|
258322
|
+
//
|
|
258323
|
+
// price
|
|
258324
|
+
//
|
|
258325
|
+
// {
|
|
258326
|
+
// "method": "price.update",
|
|
258327
|
+
// "params": [
|
|
258328
|
+
// "ETH_BTC", // market
|
|
258329
|
+
// "0.053836" // last price
|
|
258330
|
+
// ],
|
|
258331
|
+
// "id": null
|
|
258332
|
+
// }
|
|
258333
|
+
//
|
|
258334
|
+
const data = this.safeList(message, 'params', []);
|
|
258335
|
+
const marketId = this.safeString(data, 0);
|
|
258336
|
+
const market = this.safeMarket(marketId);
|
|
258337
|
+
const method = this.safeString(message, 'method');
|
|
258338
|
+
const splitMethod = method.split('.');
|
|
258339
|
+
const messageHashStart = this.safeString(splitMethod, 0);
|
|
258340
|
+
const tickerData = this.safeDict(data, 1);
|
|
258341
|
+
let ticker = undefined;
|
|
258342
|
+
if (method === 'price.update') {
|
|
258343
|
+
const lastPrice = this.safeString(data, 1);
|
|
258344
|
+
ticker = this.safeTicker({
|
|
258345
|
+
'last': lastPrice,
|
|
258346
|
+
'close': lastPrice,
|
|
258347
|
+
'symbol': market['symbol'],
|
|
258348
|
+
});
|
|
258349
|
+
}
|
|
258350
|
+
else {
|
|
258351
|
+
ticker = this.parseTicker(tickerData, market);
|
|
258352
|
+
}
|
|
258353
|
+
const symbol = ticker['symbol'];
|
|
258354
|
+
const messageHash = messageHashStart + '::' + symbol;
|
|
258355
|
+
client.resolve(ticker, messageHash);
|
|
258356
|
+
return message;
|
|
258357
|
+
}
|
|
258358
|
+
handleOrderBook(client, message) {
|
|
258359
|
+
//
|
|
258360
|
+
// {
|
|
258361
|
+
// "method": "depth.update",
|
|
258362
|
+
// "params": [
|
|
258363
|
+
// false, // true - all records, false - new records
|
|
258364
|
+
// {
|
|
258365
|
+
// "asks": [ // side
|
|
258366
|
+
// [
|
|
258367
|
+
// "19509.81", // price
|
|
258368
|
+
// "0.277" // amount
|
|
258369
|
+
// ]
|
|
258370
|
+
// ]
|
|
258371
|
+
// },
|
|
258372
|
+
// "BTC_USDT"
|
|
258373
|
+
// ],
|
|
258374
|
+
// "id": null
|
|
258375
|
+
// }
|
|
258376
|
+
//
|
|
258377
|
+
const params = this.safeList(message, 'params', []);
|
|
258378
|
+
const data = this.safeDict(params, 1);
|
|
258379
|
+
const asks = this.safeList(data, 'asks');
|
|
258380
|
+
const bids = this.safeList(data, 'bids');
|
|
258381
|
+
const marketId = this.safeString(params, 2);
|
|
258382
|
+
const market = this.safeMarket(marketId);
|
|
258383
|
+
const symbol = market['symbol'];
|
|
258384
|
+
const messageHash = 'orderbook::' + market['symbol'];
|
|
258385
|
+
const subscription = this.safeValue(client.subscriptions, messageHash, {});
|
|
258386
|
+
const limit = this.safeInteger(subscription, 'limit');
|
|
258387
|
+
let orderbook = this.safeValue(this.orderbooks, symbol);
|
|
258388
|
+
if (orderbook === undefined) {
|
|
258389
|
+
this.orderbooks[symbol] = this.orderBook({}, limit);
|
|
258390
|
+
orderbook = this.orderbooks[symbol];
|
|
258391
|
+
}
|
|
258392
|
+
if (bids !== undefined) {
|
|
258393
|
+
for (let i = 0; i < bids.length; i++) {
|
|
258394
|
+
const bid = this.safeValue(bids, i);
|
|
258395
|
+
const price = this.safeNumber(bid, 0);
|
|
258396
|
+
const amount = this.safeNumber(bid, 1);
|
|
258397
|
+
orderbook['bids'].store(price, amount);
|
|
258398
|
+
}
|
|
258399
|
+
}
|
|
258400
|
+
if (asks !== undefined) {
|
|
258401
|
+
for (let i = 0; i < asks.length; i++) {
|
|
258402
|
+
const ask = this.safeValue(asks, i);
|
|
258403
|
+
const price = this.safeNumber(ask, 0);
|
|
258404
|
+
const amount = this.safeNumber(ask, 1);
|
|
258405
|
+
orderbook['asks'].store(price, amount);
|
|
258406
|
+
}
|
|
258407
|
+
}
|
|
258408
|
+
orderbook['symbol'] = symbol;
|
|
258409
|
+
client.resolve(orderbook, messageHash);
|
|
258410
|
+
}
|
|
258411
|
+
handleMessage(client, message) {
|
|
258412
|
+
if (this.handleErrorMessage(client, message)) {
|
|
258413
|
+
return;
|
|
258414
|
+
}
|
|
258415
|
+
const result = this.safeString(message, 'result');
|
|
258416
|
+
if (result === 'pong') {
|
|
258417
|
+
this.handlePong(client, message);
|
|
258418
|
+
return;
|
|
258419
|
+
}
|
|
258420
|
+
const method = this.safeString(message, 'method');
|
|
258421
|
+
const methods = {
|
|
258422
|
+
'depth.update': this.handleOrderBook,
|
|
258423
|
+
'price.update': this.handleTicker,
|
|
258424
|
+
'kline.update': this.handleOHLCV,
|
|
258425
|
+
'state.update': this.handleTicker,
|
|
258426
|
+
'deals.update': this.handleTrade,
|
|
258427
|
+
};
|
|
258428
|
+
const endpoint = this.safeValue(methods, method);
|
|
258429
|
+
if (endpoint !== undefined) {
|
|
258430
|
+
return endpoint.call(this, client, message);
|
|
258431
|
+
}
|
|
258432
|
+
}
|
|
258433
|
+
handleErrorMessage(client, message) {
|
|
258434
|
+
const error = this.safeString(message, 'error');
|
|
258435
|
+
if (error !== undefined) {
|
|
258436
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError(this.id + ' error: ' + this.json(error));
|
|
258437
|
+
}
|
|
258438
|
+
return false;
|
|
258439
|
+
}
|
|
258440
|
+
ping(client) {
|
|
258441
|
+
/**
|
|
258442
|
+
* @see https://github.com/P2B-team/P2B-WSS-Public/blob/main/wss_documentation.md#ping
|
|
258443
|
+
* @param client
|
|
258444
|
+
*/
|
|
258445
|
+
return {
|
|
258446
|
+
'method': 'server.ping',
|
|
258447
|
+
'params': [],
|
|
258448
|
+
'id': this.milliseconds(),
|
|
258449
|
+
};
|
|
258450
|
+
}
|
|
258451
|
+
handlePong(client, message) {
|
|
258452
|
+
//
|
|
258453
|
+
// {
|
|
258454
|
+
// error: null,
|
|
258455
|
+
// result: 'pong',
|
|
258456
|
+
// id: 1706539608030
|
|
258457
|
+
// }
|
|
258458
|
+
//
|
|
258459
|
+
client.lastPong = this.safeInteger(message, 'id');
|
|
258460
|
+
return message;
|
|
258461
|
+
}
|
|
258462
|
+
}
|
|
258463
|
+
|
|
258464
|
+
|
|
257161
258465
|
/***/ }),
|
|
257162
258466
|
|
|
257163
258467
|
/***/ 4360:
|
|
@@ -261081,7 +262385,7 @@ class probit extends _probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
261081
262385
|
// }
|
|
261082
262386
|
// }
|
|
261083
262387
|
//
|
|
261084
|
-
const reset = this.
|
|
262388
|
+
const reset = this.safeBool(message, 'reset', false);
|
|
261085
262389
|
const data = this.safeValue(message, 'data', {});
|
|
261086
262390
|
const currencyIds = Object.keys(data);
|
|
261087
262391
|
if (reset) {
|
|
@@ -261187,7 +262491,7 @@ class probit extends _probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
261187
262491
|
const symbol = this.safeSymbol(marketId);
|
|
261188
262492
|
const market = this.safeMarket(marketId);
|
|
261189
262493
|
const trades = this.safeValue(message, 'recent_trades', []);
|
|
261190
|
-
const reset = this.
|
|
262494
|
+
const reset = this.safeBool(message, 'reset', false);
|
|
261191
262495
|
const messageHash = 'trades:' + symbol;
|
|
261192
262496
|
let stored = this.safeValue(this.trades, symbol);
|
|
261193
262497
|
if (stored === undefined || reset) {
|
|
@@ -261260,7 +262564,7 @@ class probit extends _probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
261260
262564
|
if (length === 0) {
|
|
261261
262565
|
return;
|
|
261262
262566
|
}
|
|
261263
|
-
const reset = this.
|
|
262567
|
+
const reset = this.safeBool(message, 'reset', false);
|
|
261264
262568
|
const messageHash = 'myTrades';
|
|
261265
262569
|
let stored = this.myTrades;
|
|
261266
262570
|
if ((stored === undefined) || reset) {
|
|
@@ -261348,7 +262652,7 @@ class probit extends _probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
261348
262652
|
return;
|
|
261349
262653
|
}
|
|
261350
262654
|
const messageHash = 'orders';
|
|
261351
|
-
const reset = this.
|
|
262655
|
+
const reset = this.safeBool(message, 'reset', false);
|
|
261352
262656
|
let stored = this.orders;
|
|
261353
262657
|
if (stored === undefined || reset) {
|
|
261354
262658
|
const limit = this.safeInteger(this.options, 'ordersLimit', 1000);
|
|
@@ -261440,7 +262744,7 @@ class probit extends _probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z
|
|
|
261440
262744
|
storedOrderBook = this.orderBook({});
|
|
261441
262745
|
this.orderbooks[symbol] = storedOrderBook;
|
|
261442
262746
|
}
|
|
261443
|
-
const reset = this.
|
|
262747
|
+
const reset = this.safeBool(message, 'reset', false);
|
|
261444
262748
|
if (reset) {
|
|
261445
262749
|
const snapshot = this.parseOrderBook(dataBySide, symbol, undefined, 'buy', 'sell', 'price', 'quantity');
|
|
261446
262750
|
storedOrderBook.reset(snapshot);
|
|
@@ -263344,7 +264648,7 @@ class whitebit extends _whitebit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] *
|
|
|
263344
264648
|
let hasSymbolSubscription = true;
|
|
263345
264649
|
const market = this.market(symbol);
|
|
263346
264650
|
const marketId = market['id'];
|
|
263347
|
-
const isSubscribed = this.
|
|
264651
|
+
const isSubscribed = this.safeBool(subscription, marketId, false);
|
|
263348
264652
|
if (!isSubscribed) {
|
|
263349
264653
|
subscription[marketId] = true;
|
|
263350
264654
|
hasSymbolSubscription = false;
|
|
@@ -264731,7 +266035,7 @@ class probit extends _abstract_probit_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
264731
266035
|
const quoteId = this.safeString(market, 'quote_currency_id');
|
|
264732
266036
|
const base = this.safeCurrencyCode(baseId);
|
|
264733
266037
|
const quote = this.safeCurrencyCode(quoteId);
|
|
264734
|
-
const closed = this.
|
|
266038
|
+
const closed = this.safeBool(market, 'closed', false);
|
|
264735
266039
|
const takerFeeRate = this.safeString(market, 'taker_fee_rate');
|
|
264736
266040
|
const taker = _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise */ .O.stringDiv(takerFeeRate, '100');
|
|
264737
266041
|
const makerFeeRate = this.safeString(market, 'maker_fee_rate');
|
|
@@ -275975,7 +277279,7 @@ class timex extends _abstract_timex_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
275975
277279
|
const market = this.market(symbol);
|
|
275976
277280
|
const uppercaseSide = side.toUpperCase();
|
|
275977
277281
|
let uppercaseType = type.toUpperCase();
|
|
275978
|
-
const postOnly = this.
|
|
277282
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
275979
277283
|
if (postOnly) {
|
|
275980
277284
|
uppercaseType = 'POST_ONLY';
|
|
275981
277285
|
params = this.omit(params, ['postOnly']);
|
|
@@ -277515,7 +278819,7 @@ class tokocrypto extends _abstract_tokocrypto_js__WEBPACK_IMPORTED_MODULE_0__/*
|
|
|
277515
278819
|
break;
|
|
277516
278820
|
}
|
|
277517
278821
|
}
|
|
277518
|
-
const isMarginTradingAllowed = this.
|
|
278822
|
+
const isMarginTradingAllowed = this.safeBool(market, 'isMarginTradingAllowed', false);
|
|
277519
278823
|
const entry = {
|
|
277520
278824
|
'id': id,
|
|
277521
278825
|
'lowercaseId': lowercaseId,
|
|
@@ -278414,7 +279718,7 @@ class tokocrypto extends _abstract_tokocrypto_js__WEBPACK_IMPORTED_MODULE_0__/*
|
|
|
278414
279718
|
await this.loadMarkets();
|
|
278415
279719
|
const market = this.market(symbol);
|
|
278416
279720
|
const clientOrderId = this.safeString2(params, 'clientOrderId', 'clientId');
|
|
278417
|
-
const postOnly = this.
|
|
279721
|
+
const postOnly = this.safeBool(params, 'postOnly', false);
|
|
278418
279722
|
// only supported for spot/margin api
|
|
278419
279723
|
if (postOnly) {
|
|
278420
279724
|
type = 'LIMIT_MAKER';
|
|
@@ -279288,7 +280592,7 @@ class tokocrypto extends _abstract_tokocrypto_js__WEBPACK_IMPORTED_MODULE_0__/*
|
|
|
279288
280592
|
}
|
|
279289
280593
|
// check success value for wapi endpoints
|
|
279290
280594
|
// response in format {'msg': 'The coin does not exist.', 'success': true/false}
|
|
279291
|
-
const success = this.
|
|
280595
|
+
const success = this.safeBool(response, 'success', true);
|
|
279292
280596
|
if (!success) {
|
|
279293
280597
|
const messageInner = this.safeString(response, 'msg');
|
|
279294
280598
|
let parsedMessage = undefined;
|
|
@@ -281639,7 +282943,7 @@ class wavesexchange extends _abstract_wavesexchange_js__WEBPACK_IMPORTED_MODULE_
|
|
|
281639
282943
|
// "matcherFee":"4077612"
|
|
281640
282944
|
// }
|
|
281641
282945
|
// }
|
|
281642
|
-
const isDiscountFee = this.
|
|
282946
|
+
const isDiscountFee = this.safeBool(params, 'isDiscountFee', false);
|
|
281643
282947
|
let mode = undefined;
|
|
281644
282948
|
if (isDiscountFee) {
|
|
281645
282949
|
mode = this.safeValue(response, 'discount');
|
|
@@ -283656,7 +284960,7 @@ class wavesexchange extends _abstract_wavesexchange_js__WEBPACK_IMPORTED_MODULE_
|
|
|
283656
284960
|
}
|
|
283657
284961
|
handleErrors(code, reason, url, method, headers, body, response, requestHeaders, requestBody) {
|
|
283658
284962
|
const errorCode = this.safeString(response, 'error');
|
|
283659
|
-
const success = this.
|
|
284963
|
+
const success = this.safeBool(response, 'success', true);
|
|
283660
284964
|
const Exception = this.safeValue(this.exceptions, errorCode);
|
|
283661
284965
|
if (Exception !== undefined) {
|
|
283662
284966
|
const messageInner = this.safeString(response, 'message');
|
|
@@ -285246,8 +286550,8 @@ class whitebit extends _abstract_whitebit_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
285246
286550
|
const currency = response[id];
|
|
285247
286551
|
// breaks down in Python due to utf8 encoding issues on the exchange side
|
|
285248
286552
|
// const name = this.safeString (currency, 'name');
|
|
285249
|
-
const canDeposit = this.
|
|
285250
|
-
const canWithdraw = this.
|
|
286553
|
+
const canDeposit = this.safeBool(currency, 'can_deposit', true);
|
|
286554
|
+
const canWithdraw = this.safeBool(currency, 'can_withdraw', true);
|
|
285251
286555
|
const active = canDeposit && canWithdraw;
|
|
285252
286556
|
const code = this.safeCurrencyCode(id);
|
|
285253
286557
|
result[code] = {
|
|
@@ -288277,7 +289581,7 @@ class woo extends _abstract_woo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
288277
289581
|
* @param {boolean} [params.stop] whether the order is a stop/algo order
|
|
288278
289582
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
288279
289583
|
*/
|
|
288280
|
-
const stop = this.
|
|
289584
|
+
const stop = this.safeBool(params, 'stop', false);
|
|
288281
289585
|
params = this.omit(params, 'stop');
|
|
288282
289586
|
if (!stop && (symbol === undefined)) {
|
|
288283
289587
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ArgumentsRequired(this.id + ' cancelOrder() requires a symbol argument');
|
|
@@ -288445,7 +289749,7 @@ class woo extends _abstract_woo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
288445
289749
|
const request = {};
|
|
288446
289750
|
let market = undefined;
|
|
288447
289751
|
const stop = this.safeValue(params, 'stop');
|
|
288448
|
-
const trailing = this.
|
|
289752
|
+
const trailing = this.safeBool(params, 'trailing', false);
|
|
288449
289753
|
params = this.omit(params, ['stop', 'trailing']);
|
|
288450
289754
|
if (symbol !== undefined) {
|
|
288451
289755
|
market = this.market(symbol);
|
|
@@ -289227,7 +290531,7 @@ class woo extends _abstract_woo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
289227
290531
|
//
|
|
289228
290532
|
const transfer = this.parseTransfer(response, currency);
|
|
289229
290533
|
const transferOptions = this.safeValue(this.options, 'transfer', {});
|
|
289230
|
-
const fillResponseFromRequest = this.
|
|
290534
|
+
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
289231
290535
|
if (fillResponseFromRequest) {
|
|
289232
290536
|
transfer['amount'] = amount;
|
|
289233
290537
|
transfer['fromAccount'] = fromAccount;
|
|
@@ -291211,7 +292515,7 @@ class yobit extends _abstract_yobit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
291211
292515
|
//
|
|
291212
292516
|
// To cover points 1, 2, 3 and 4 combined this handler should work like this:
|
|
291213
292517
|
//
|
|
291214
|
-
let success = this.
|
|
292518
|
+
let success = this.safeBool(response, 'success', false);
|
|
291215
292519
|
if (typeof success === 'string') {
|
|
291216
292520
|
if ((success === 'true') || (success === '1')) {
|
|
291217
292521
|
success = true;
|
|
@@ -291972,7 +293276,7 @@ class zaif extends _abstract_zaif_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
291972
293276
|
this.throwBroadlyMatchedException(this.exceptions['broad'], error, feedback);
|
|
291973
293277
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(feedback); // unknown message
|
|
291974
293278
|
}
|
|
291975
|
-
const success = this.
|
|
293279
|
+
const success = this.safeBool(response, 'success', true);
|
|
291976
293280
|
if (!success) {
|
|
291977
293281
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(feedback);
|
|
291978
293282
|
}
|
|
@@ -293429,7 +294733,7 @@ class zonda extends _abstract_zonda_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
293429
294733
|
// }
|
|
293430
294734
|
//
|
|
293431
294735
|
const id = this.safeString2(response, 'offerId', 'stopOfferId');
|
|
293432
|
-
const completed = this.
|
|
294736
|
+
const completed = this.safeBool(response, 'completed', false);
|
|
293433
294737
|
const status = completed ? 'closed' : 'open';
|
|
293434
294738
|
const transactions = this.safeValue(response, 'transactions');
|
|
293435
294739
|
return this.safeOrder({
|
|
@@ -293491,7 +294795,7 @@ class zonda extends _abstract_zonda_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
293491
294795
|
'EUR': true,
|
|
293492
294796
|
'PLN': true,
|
|
293493
294797
|
};
|
|
293494
|
-
return this.
|
|
294798
|
+
return this.safeBool(fiatCurrencies, currency, false);
|
|
293495
294799
|
}
|
|
293496
294800
|
parseDepositAddress(depositAddress, currency = undefined) {
|
|
293497
294801
|
//
|
|
@@ -293628,7 +294932,7 @@ class zonda extends _abstract_zonda_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
293628
294932
|
//
|
|
293629
294933
|
const transfer = this.parseTransfer(response, currency);
|
|
293630
294934
|
const transferOptions = this.safeValue(this.options, 'transfer', {});
|
|
293631
|
-
const fillResponseFromRequest = this.
|
|
294935
|
+
const fillResponseFromRequest = this.safeBool(transferOptions, 'fillResponseFromRequest', true);
|
|
293632
294936
|
if (fillResponseFromRequest) {
|
|
293633
294937
|
transfer['amount'] = amount;
|
|
293634
294938
|
}
|
|
@@ -299099,39 +300403,39 @@ var __webpack_exports__ = {};
|
|
|
299099
300403
|
(() => {
|
|
299100
300404
|
__webpack_require__.r(__webpack_exports__);
|
|
299101
300405
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
299102
|
-
/* harmony export */ AccountNotEnabled: () => (/* reexport safe */
|
|
299103
|
-
/* harmony export */ AccountSuspended: () => (/* reexport safe */
|
|
299104
|
-
/* harmony export */ AddressPending: () => (/* reexport safe */
|
|
299105
|
-
/* harmony export */ ArgumentsRequired: () => (/* reexport safe */
|
|
299106
|
-
/* harmony export */ AuthenticationError: () => (/* reexport safe */
|
|
299107
|
-
/* harmony export */ BadRequest: () => (/* reexport safe */
|
|
299108
|
-
/* harmony export */ BadResponse: () => (/* reexport safe */
|
|
299109
|
-
/* harmony export */ BadSymbol: () => (/* reexport safe */
|
|
299110
|
-
/* harmony export */ BaseError: () => (/* reexport safe */
|
|
299111
|
-
/* harmony export */ CancelPending: () => (/* reexport safe */
|
|
299112
|
-
/* harmony export */ DDoSProtection: () => (/* reexport safe */
|
|
299113
|
-
/* harmony export */ DuplicateOrderId: () => (/* reexport safe */
|
|
300406
|
+
/* harmony export */ AccountNotEnabled: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.AccountNotEnabled),
|
|
300407
|
+
/* harmony export */ AccountSuspended: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.AccountSuspended),
|
|
300408
|
+
/* harmony export */ AddressPending: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.AddressPending),
|
|
300409
|
+
/* harmony export */ ArgumentsRequired: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.ArgumentsRequired),
|
|
300410
|
+
/* harmony export */ AuthenticationError: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.AuthenticationError),
|
|
300411
|
+
/* harmony export */ BadRequest: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.BadRequest),
|
|
300412
|
+
/* harmony export */ BadResponse: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.BadResponse),
|
|
300413
|
+
/* harmony export */ BadSymbol: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.BadSymbol),
|
|
300414
|
+
/* harmony export */ BaseError: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.BaseError),
|
|
300415
|
+
/* harmony export */ CancelPending: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.CancelPending),
|
|
300416
|
+
/* harmony export */ DDoSProtection: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.DDoSProtection),
|
|
300417
|
+
/* harmony export */ DuplicateOrderId: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.DuplicateOrderId),
|
|
299114
300418
|
/* harmony export */ Exchange: () => (/* reexport safe */ _src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__.e),
|
|
299115
|
-
/* harmony export */ ExchangeError: () => (/* reexport safe */
|
|
299116
|
-
/* harmony export */ ExchangeNotAvailable: () => (/* reexport safe */
|
|
299117
|
-
/* harmony export */ InsufficientFunds: () => (/* reexport safe */
|
|
299118
|
-
/* harmony export */ InvalidAddress: () => (/* reexport safe */
|
|
299119
|
-
/* harmony export */ InvalidNonce: () => (/* reexport safe */
|
|
299120
|
-
/* harmony export */ InvalidOrder: () => (/* reexport safe */
|
|
299121
|
-
/* harmony export */ MarginModeAlreadySet: () => (/* reexport safe */
|
|
299122
|
-
/* harmony export */ NetworkError: () => (/* reexport safe */
|
|
299123
|
-
/* harmony export */ NoChange: () => (/* reexport safe */
|
|
299124
|
-
/* harmony export */ NotSupported: () => (/* reexport safe */
|
|
299125
|
-
/* harmony export */ NullResponse: () => (/* reexport safe */
|
|
299126
|
-
/* harmony export */ OnMaintenance: () => (/* reexport safe */
|
|
299127
|
-
/* harmony export */ OrderImmediatelyFillable: () => (/* reexport safe */
|
|
299128
|
-
/* harmony export */ OrderNotCached: () => (/* reexport safe */
|
|
299129
|
-
/* harmony export */ OrderNotFillable: () => (/* reexport safe */
|
|
299130
|
-
/* harmony export */ OrderNotFound: () => (/* reexport safe */
|
|
299131
|
-
/* harmony export */ PermissionDenied: () => (/* reexport safe */
|
|
299132
|
-
/* harmony export */ Precise: () => (/* reexport safe */
|
|
299133
|
-
/* harmony export */ RateLimitExceeded: () => (/* reexport safe */
|
|
299134
|
-
/* harmony export */ RequestTimeout: () => (/* reexport safe */
|
|
300419
|
+
/* harmony export */ ExchangeError: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.ExchangeError),
|
|
300420
|
+
/* harmony export */ ExchangeNotAvailable: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.ExchangeNotAvailable),
|
|
300421
|
+
/* harmony export */ InsufficientFunds: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.InsufficientFunds),
|
|
300422
|
+
/* harmony export */ InvalidAddress: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.InvalidAddress),
|
|
300423
|
+
/* harmony export */ InvalidNonce: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.InvalidNonce),
|
|
300424
|
+
/* harmony export */ InvalidOrder: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.InvalidOrder),
|
|
300425
|
+
/* harmony export */ MarginModeAlreadySet: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.MarginModeAlreadySet),
|
|
300426
|
+
/* harmony export */ NetworkError: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.NetworkError),
|
|
300427
|
+
/* harmony export */ NoChange: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.NoChange),
|
|
300428
|
+
/* harmony export */ NotSupported: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.NotSupported),
|
|
300429
|
+
/* harmony export */ NullResponse: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.NullResponse),
|
|
300430
|
+
/* harmony export */ OnMaintenance: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.OnMaintenance),
|
|
300431
|
+
/* harmony export */ OrderImmediatelyFillable: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.OrderImmediatelyFillable),
|
|
300432
|
+
/* harmony export */ OrderNotCached: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.OrderNotCached),
|
|
300433
|
+
/* harmony export */ OrderNotFillable: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.OrderNotFillable),
|
|
300434
|
+
/* harmony export */ OrderNotFound: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.OrderNotFound),
|
|
300435
|
+
/* harmony export */ PermissionDenied: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.PermissionDenied),
|
|
300436
|
+
/* harmony export */ Precise: () => (/* reexport safe */ _src_base_Precise_js__WEBPACK_IMPORTED_MODULE_162__.O),
|
|
300437
|
+
/* harmony export */ RateLimitExceeded: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.RateLimitExceeded),
|
|
300438
|
+
/* harmony export */ RequestTimeout: () => (/* reexport safe */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__.RequestTimeout),
|
|
299135
300439
|
/* harmony export */ ace: () => (/* reexport safe */ _src_ace_js__WEBPACK_IMPORTED_MODULE_1__.Z),
|
|
299136
300440
|
/* harmony export */ alpaca: () => (/* reexport safe */ _src_alpaca_js__WEBPACK_IMPORTED_MODULE_2__.Z),
|
|
299137
300441
|
/* harmony export */ ascendex: () => (/* reexport safe */ _src_ascendex_js__WEBPACK_IMPORTED_MODULE_3__.Z),
|
|
@@ -299186,11 +300490,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
299186
300490
|
/* harmony export */ delta: () => (/* reexport safe */ _src_delta_js__WEBPACK_IMPORTED_MODULE_51__.Z),
|
|
299187
300491
|
/* harmony export */ deribit: () => (/* reexport safe */ _src_deribit_js__WEBPACK_IMPORTED_MODULE_52__.Z),
|
|
299188
300492
|
/* harmony export */ digifinex: () => (/* reexport safe */ _src_digifinex_js__WEBPACK_IMPORTED_MODULE_53__.Z),
|
|
299189
|
-
/* harmony export */ errors: () => (/* reexport module object */
|
|
300493
|
+
/* harmony export */ errors: () => (/* reexport module object */ _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__),
|
|
299190
300494
|
/* harmony export */ exchanges: () => (/* binding */ exchanges),
|
|
299191
300495
|
/* harmony export */ exmo: () => (/* reexport safe */ _src_exmo_js__WEBPACK_IMPORTED_MODULE_54__.Z),
|
|
299192
300496
|
/* harmony export */ fmfwio: () => (/* reexport safe */ _src_fmfwio_js__WEBPACK_IMPORTED_MODULE_55__.Z),
|
|
299193
|
-
/* harmony export */ functions: () => (/* reexport module object */
|
|
300497
|
+
/* harmony export */ functions: () => (/* reexport module object */ _src_base_functions_js__WEBPACK_IMPORTED_MODULE_163__),
|
|
299194
300498
|
/* harmony export */ gate: () => (/* reexport safe */ _src_gate_js__WEBPACK_IMPORTED_MODULE_56__.Z),
|
|
299195
300499
|
/* harmony export */ gateio: () => (/* reexport safe */ _src_gateio_js__WEBPACK_IMPORTED_MODULE_57__.Z),
|
|
299196
300500
|
/* harmony export */ gemini: () => (/* reexport safe */ _src_gemini_js__WEBPACK_IMPORTED_MODULE_58__.Z),
|
|
@@ -299240,9 +300544,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
299240
300544
|
/* harmony export */ zonda: () => (/* reexport safe */ _src_zonda_js__WEBPACK_IMPORTED_MODULE_100__.Z)
|
|
299241
300545
|
/* harmony export */ });
|
|
299242
300546
|
/* harmony import */ var _src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3043);
|
|
299243
|
-
/* harmony import */ var
|
|
299244
|
-
/* harmony import */ var
|
|
299245
|
-
/* harmony import */ var
|
|
300547
|
+
/* harmony import */ var _src_base_Precise_js__WEBPACK_IMPORTED_MODULE_162__ = __webpack_require__(2194);
|
|
300548
|
+
/* harmony import */ var _src_base_functions_js__WEBPACK_IMPORTED_MODULE_163__ = __webpack_require__(7100);
|
|
300549
|
+
/* harmony import */ var _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__ = __webpack_require__(6689);
|
|
299246
300550
|
/* harmony import */ var _src_ace_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9869);
|
|
299247
300551
|
/* harmony import */ var _src_alpaca_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5660);
|
|
299248
300552
|
/* harmony import */ var _src_ascendex_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9612);
|
|
@@ -299395,14 +300699,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
299395
300699
|
/* harmony import */ var _src_pro_okcoin_js__WEBPACK_IMPORTED_MODULE_150__ = __webpack_require__(7105);
|
|
299396
300700
|
/* harmony import */ var _src_pro_okx_js__WEBPACK_IMPORTED_MODULE_151__ = __webpack_require__(2214);
|
|
299397
300701
|
/* harmony import */ var _src_pro_onetrading_js__WEBPACK_IMPORTED_MODULE_152__ = __webpack_require__(9419);
|
|
299398
|
-
/* harmony import */ var
|
|
299399
|
-
/* harmony import */ var
|
|
299400
|
-
/* harmony import */ var
|
|
299401
|
-
/* harmony import */ var
|
|
299402
|
-
/* harmony import */ var
|
|
299403
|
-
/* harmony import */ var
|
|
299404
|
-
/* harmony import */ var
|
|
299405
|
-
/* harmony import */ var
|
|
300702
|
+
/* harmony import */ var _src_pro_p2b_js__WEBPACK_IMPORTED_MODULE_153__ = __webpack_require__(8516);
|
|
300703
|
+
/* harmony import */ var _src_pro_phemex_js__WEBPACK_IMPORTED_MODULE_154__ = __webpack_require__(4360);
|
|
300704
|
+
/* harmony import */ var _src_pro_poloniex_js__WEBPACK_IMPORTED_MODULE_155__ = __webpack_require__(7924);
|
|
300705
|
+
/* harmony import */ var _src_pro_poloniexfutures_js__WEBPACK_IMPORTED_MODULE_156__ = __webpack_require__(3541);
|
|
300706
|
+
/* harmony import */ var _src_pro_probit_js__WEBPACK_IMPORTED_MODULE_157__ = __webpack_require__(9782);
|
|
300707
|
+
/* harmony import */ var _src_pro_upbit_js__WEBPACK_IMPORTED_MODULE_158__ = __webpack_require__(7614);
|
|
300708
|
+
/* harmony import */ var _src_pro_wazirx_js__WEBPACK_IMPORTED_MODULE_159__ = __webpack_require__(4828);
|
|
300709
|
+
/* harmony import */ var _src_pro_whitebit_js__WEBPACK_IMPORTED_MODULE_160__ = __webpack_require__(5630);
|
|
300710
|
+
/* harmony import */ var _src_pro_woo_js__WEBPACK_IMPORTED_MODULE_161__ = __webpack_require__(3910);
|
|
299406
300711
|
/*
|
|
299407
300712
|
|
|
299408
300713
|
MIT License
|
|
@@ -299437,7 +300742,7 @@ SOFTWARE.
|
|
|
299437
300742
|
|
|
299438
300743
|
//-----------------------------------------------------------------------------
|
|
299439
300744
|
// this is updated by vss.js when building
|
|
299440
|
-
const version = '4.2.
|
|
300745
|
+
const version = '4.2.30';
|
|
299441
300746
|
_src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e.ccxtVersion = version;
|
|
299442
300747
|
//-----------------------------------------------------------------------------
|
|
299443
300748
|
|
|
@@ -299599,6 +300904,7 @@ _src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e.ccxtVersion
|
|
|
299599
300904
|
|
|
299600
300905
|
|
|
299601
300906
|
|
|
300907
|
+
|
|
299602
300908
|
|
|
299603
300909
|
|
|
299604
300910
|
const exchanges = {
|
|
@@ -299756,14 +301062,15 @@ const pro = {
|
|
|
299756
301062
|
'okcoin': _src_pro_okcoin_js__WEBPACK_IMPORTED_MODULE_150__/* ["default"] */ .Z,
|
|
299757
301063
|
'okx': _src_pro_okx_js__WEBPACK_IMPORTED_MODULE_151__/* ["default"] */ .Z,
|
|
299758
301064
|
'onetrading': _src_pro_onetrading_js__WEBPACK_IMPORTED_MODULE_152__/* ["default"] */ .Z,
|
|
299759
|
-
'
|
|
299760
|
-
'
|
|
299761
|
-
'
|
|
299762
|
-
'
|
|
299763
|
-
'
|
|
299764
|
-
'
|
|
299765
|
-
'
|
|
299766
|
-
'
|
|
301065
|
+
'p2b': _src_pro_p2b_js__WEBPACK_IMPORTED_MODULE_153__/* ["default"] */ .Z,
|
|
301066
|
+
'phemex': _src_pro_phemex_js__WEBPACK_IMPORTED_MODULE_154__/* ["default"] */ .Z,
|
|
301067
|
+
'poloniex': _src_pro_poloniex_js__WEBPACK_IMPORTED_MODULE_155__/* ["default"] */ .Z,
|
|
301068
|
+
'poloniexfutures': _src_pro_poloniexfutures_js__WEBPACK_IMPORTED_MODULE_156__/* ["default"] */ .Z,
|
|
301069
|
+
'probit': _src_pro_probit_js__WEBPACK_IMPORTED_MODULE_157__/* ["default"] */ .Z,
|
|
301070
|
+
'upbit': _src_pro_upbit_js__WEBPACK_IMPORTED_MODULE_158__/* ["default"] */ .Z,
|
|
301071
|
+
'wazirx': _src_pro_wazirx_js__WEBPACK_IMPORTED_MODULE_159__/* ["default"] */ .Z,
|
|
301072
|
+
'whitebit': _src_pro_whitebit_js__WEBPACK_IMPORTED_MODULE_160__/* ["default"] */ .Z,
|
|
301073
|
+
'woo': _src_pro_woo_js__WEBPACK_IMPORTED_MODULE_161__/* ["default"] */ .Z,
|
|
299767
301074
|
};
|
|
299768
301075
|
for (const exchange in pro) {
|
|
299769
301076
|
// const ccxtExchange = exchanges[exchange]
|
|
@@ -299776,7 +301083,7 @@ for (const exchange in pro) {
|
|
|
299776
301083
|
pro.exchanges = Object.keys(pro);
|
|
299777
301084
|
pro['Exchange'] = _src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e; // now the same for rest and ts
|
|
299778
301085
|
//-----------------------------------------------------------------------------
|
|
299779
|
-
const ccxt = Object.assign({ version, Exchange: _src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e, Precise:
|
|
301086
|
+
const ccxt = Object.assign({ version, Exchange: _src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e, Precise: _src_base_Precise_js__WEBPACK_IMPORTED_MODULE_162__/* .Precise */ .O, 'exchanges': Object.keys(exchanges), 'pro': pro }, exchanges, _src_base_functions_js__WEBPACK_IMPORTED_MODULE_163__, _src_base_errors_js__WEBPACK_IMPORTED_MODULE_164__);
|
|
299780
301087
|
|
|
299781
301088
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ccxt);
|
|
299782
301089
|
//-----------------------------------------------------------------------------
|