ccxt 4.2.43 → 4.2.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/ccxt.browser.js +627 -325
- package/dist/ccxt.browser.min.js +2 -2
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/base/Exchange.js +6 -0
- package/dist/cjs/src/binance.js +254 -42
- package/dist/cjs/src/bingx.js +3 -1
- package/dist/cjs/src/blofin.js +2 -1
- package/dist/cjs/src/coinbase.js +1 -7
- package/dist/cjs/src/krakenfutures.js +3 -2
- package/dist/cjs/src/kucoin.js +9 -5
- package/dist/cjs/src/mexc.js +348 -266
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/base/Exchange.js +6 -0
- package/js/src/binance.js +254 -42
- package/js/src/bingx.js +3 -1
- package/js/src/blofin.js +2 -1
- package/js/src/coinbase.js +1 -7
- package/js/src/coinbasepro.d.ts +1 -1
- package/js/src/krakenfutures.js +3 -2
- package/js/src/kucoin.js +9 -5
- package/js/src/mexc.d.ts +4 -5
- package/js/src/mexc.js +348 -266
- package/js/src/static_dependencies/jsencrypt/lib/jsbn/jsbn.d.ts +1 -1
- package/package.json +1 -1
- package/skip-tests.json +2 -0
package/dist/ccxt.browser.js
CHANGED
|
@@ -10173,6 +10173,9 @@ class Exchange {
|
|
|
10173
10173
|
* @param {string} currencyCode unified currency code, but this argument is not required by default, unless there is an exchange (like huobi) that needs an override of the method to be able to pass currencyCode argument additionally
|
|
10174
10174
|
* @returns {string|undefined} exchange-specific network id
|
|
10175
10175
|
*/
|
|
10176
|
+
if (networkCode === undefined) {
|
|
10177
|
+
return undefined;
|
|
10178
|
+
}
|
|
10176
10179
|
const networkIdsByCodes = this.safeValue(this.options, 'networks', {});
|
|
10177
10180
|
let networkId = this.safeString(networkIdsByCodes, networkCode);
|
|
10178
10181
|
// for example, if 'ETH' is passed for networkCode, but 'ETH' key not defined in `options->networks` object
|
|
@@ -10216,6 +10219,9 @@ class Exchange {
|
|
|
10216
10219
|
* @param {string|undefined} currencyCode unified currency code, but this argument is not required by default, unless there is an exchange (like huobi) that needs an override of the method to be able to pass currencyCode argument additionally
|
|
10217
10220
|
* @returns {string|undefined} unified network code
|
|
10218
10221
|
*/
|
|
10222
|
+
if (networkId === undefined) {
|
|
10223
|
+
return undefined;
|
|
10224
|
+
}
|
|
10219
10225
|
const networkCodesByIds = this.safeDict(this.options, 'networksById', {});
|
|
10220
10226
|
let networkCode = this.safeString(networkCodesByIds, networkId, networkId);
|
|
10221
10227
|
// replace mainnet network-codes (i.e. ERC20->ETH)
|
|
@@ -20649,9 +20655,11 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
20649
20655
|
const networkList = this.safeList(entry, 'networkList', []);
|
|
20650
20656
|
const fees = {};
|
|
20651
20657
|
let fee = undefined;
|
|
20658
|
+
const networks = {};
|
|
20652
20659
|
for (let j = 0; j < networkList.length; j++) {
|
|
20653
20660
|
const networkItem = networkList[j];
|
|
20654
20661
|
const network = this.safeString(networkItem, 'network');
|
|
20662
|
+
const networkCode = this.networkIdToCode(network);
|
|
20655
20663
|
// const name = this.safeString (networkItem, 'name');
|
|
20656
20664
|
const withdrawFee = this.safeNumber(networkItem, 'withdrawFee');
|
|
20657
20665
|
const depositEnable = this.safeBool(networkItem, 'depositEnable');
|
|
@@ -20669,6 +20677,26 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
20669
20677
|
if (!_base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise */ .O.stringEq(precisionTick, '0')) {
|
|
20670
20678
|
minPrecision = (minPrecision === undefined) ? precisionTick : _base_Precise_js__WEBPACK_IMPORTED_MODULE_3__/* .Precise */ .O.stringMin(minPrecision, precisionTick);
|
|
20671
20679
|
}
|
|
20680
|
+
networks[networkCode] = {
|
|
20681
|
+
'info': networkItem,
|
|
20682
|
+
'id': network,
|
|
20683
|
+
'network': networkCode,
|
|
20684
|
+
'active': depositEnable && withdrawEnable,
|
|
20685
|
+
'deposit': depositEnable,
|
|
20686
|
+
'withdraw': withdrawEnable,
|
|
20687
|
+
'fee': this.parseNumber(fee),
|
|
20688
|
+
'precision': minPrecision,
|
|
20689
|
+
'limits': {
|
|
20690
|
+
'withdraw': {
|
|
20691
|
+
'min': this.safeNumber(networkItem, 'withdrawMin'),
|
|
20692
|
+
'max': this.safeNumber(networkItem, 'withdrawMax'),
|
|
20693
|
+
},
|
|
20694
|
+
'deposit': {
|
|
20695
|
+
'min': undefined,
|
|
20696
|
+
'max': undefined,
|
|
20697
|
+
},
|
|
20698
|
+
},
|
|
20699
|
+
};
|
|
20672
20700
|
}
|
|
20673
20701
|
const trading = this.safeBool(entry, 'trading');
|
|
20674
20702
|
const active = (isWithdrawEnabled && isDepositEnabled && trading);
|
|
@@ -20685,7 +20713,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
20685
20713
|
'active': active,
|
|
20686
20714
|
'deposit': isDepositEnabled,
|
|
20687
20715
|
'withdraw': isWithdrawEnabled,
|
|
20688
|
-
'networks':
|
|
20716
|
+
'networks': networks,
|
|
20689
20717
|
'fee': fee,
|
|
20690
20718
|
'fees': fees,
|
|
20691
20719
|
'limits': this.limits,
|
|
@@ -23098,7 +23126,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23098
23126
|
// "msg": "Quantity greater than max quantity."
|
|
23099
23127
|
// }
|
|
23100
23128
|
//
|
|
23101
|
-
// createOrder, fetchOpenOrders, fetchOrder, cancelOrder: portfolio margin linear swap and future
|
|
23129
|
+
// createOrder, fetchOpenOrders, fetchOrder, cancelOrder, fetchOrders: portfolio margin linear swap and future
|
|
23102
23130
|
//
|
|
23103
23131
|
// {
|
|
23104
23132
|
// "symbol": "BTCUSDT",
|
|
@@ -23121,7 +23149,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23121
23149
|
// "status": "NEW"
|
|
23122
23150
|
// }
|
|
23123
23151
|
//
|
|
23124
|
-
// createOrder, fetchOpenOrders, fetchOrder, cancelOrder: portfolio margin inverse swap and future
|
|
23152
|
+
// createOrder, fetchOpenOrders, fetchOrder, cancelOrder, fetchOrders: portfolio margin inverse swap and future
|
|
23125
23153
|
//
|
|
23126
23154
|
// {
|
|
23127
23155
|
// "symbol": "ETHUSD_PERP",
|
|
@@ -23206,7 +23234,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23206
23234
|
// "type": "LIMIT"
|
|
23207
23235
|
// }
|
|
23208
23236
|
//
|
|
23209
|
-
// fetchOpenOrders, fetchOrder: portfolio margin spot margin
|
|
23237
|
+
// fetchOpenOrders, fetchOrder, fetchOrders: portfolio margin spot margin
|
|
23210
23238
|
//
|
|
23211
23239
|
// {
|
|
23212
23240
|
// "symbol": "BTCUSDT",
|
|
@@ -23256,6 +23284,32 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23256
23284
|
// "selfTradePreventionMode": "NONE"
|
|
23257
23285
|
// }
|
|
23258
23286
|
//
|
|
23287
|
+
// fetchOrders: portfolio margin linear and inverse swap conditional
|
|
23288
|
+
//
|
|
23289
|
+
// {
|
|
23290
|
+
// "newClientStrategyId": "x-xcKtGhcuaf166172ed504cd1bc0396",
|
|
23291
|
+
// "strategyId": 3733211,
|
|
23292
|
+
// "strategyStatus": "CANCELLED",
|
|
23293
|
+
// "strategyType": "STOP",
|
|
23294
|
+
// "origQty": "0.010",
|
|
23295
|
+
// "price": "35000",
|
|
23296
|
+
// "orderId": 0,
|
|
23297
|
+
// "reduceOnly": false,
|
|
23298
|
+
// "side": "BUY",
|
|
23299
|
+
// "positionSide": "BOTH",
|
|
23300
|
+
// "stopPrice": "50000",
|
|
23301
|
+
// "symbol": "BTCUSDT",
|
|
23302
|
+
// "type": "LIMIT",
|
|
23303
|
+
// "bookTime": 1707270098774,
|
|
23304
|
+
// "updateTime": 1707270119261,
|
|
23305
|
+
// "timeInForce": "GTC",
|
|
23306
|
+
// "triggerTime": 0,
|
|
23307
|
+
// "workingType": "CONTRACT_PRICE",
|
|
23308
|
+
// "priceProtect": false,
|
|
23309
|
+
// "goodTillDate": 0,
|
|
23310
|
+
// "selfTradePreventionMode": "NONE"
|
|
23311
|
+
// }
|
|
23312
|
+
//
|
|
23259
23313
|
const code = this.safeString(order, 'code');
|
|
23260
23314
|
if (code !== undefined) {
|
|
23261
23315
|
// cancelOrders/createOrders might have a partial success
|
|
@@ -23314,7 +23368,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23314
23368
|
}
|
|
23315
23369
|
return this.safeOrder({
|
|
23316
23370
|
'info': order,
|
|
23317
|
-
'id': this.safeString2(order, '
|
|
23371
|
+
'id': this.safeString2(order, 'strategyId', 'orderId'),
|
|
23318
23372
|
'clientOrderId': this.safeString2(order, 'clientOrderId', 'newClientStrategyId'),
|
|
23319
23373
|
'timestamp': timestamp,
|
|
23320
23374
|
'datetime': this.iso8601(timestamp),
|
|
@@ -23949,13 +24003,20 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23949
24003
|
* @see https://binance-docs.github.io/apidocs/delivery/en/#all-orders-user_data
|
|
23950
24004
|
* @see https://binance-docs.github.io/apidocs/voptions/en/#query-option-order-history-trade
|
|
23951
24005
|
* @see https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-all-orders-user_data
|
|
24006
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-um-orders-user_data
|
|
24007
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-cm-orders-user_data
|
|
24008
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-um-conditional-orders-user_data
|
|
24009
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-cm-conditional-orders-user_data
|
|
24010
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-margin-account-orders-user_data
|
|
23952
24011
|
* @param {string} symbol unified market symbol of the market orders were made in
|
|
23953
24012
|
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
23954
24013
|
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
23955
24014
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
23956
24015
|
* @param {string} [params.marginMode] 'cross' or 'isolated', for spot margin trading
|
|
23957
24016
|
* @param {int} [params.until] the latest time in ms to fetch orders for
|
|
23958
|
-
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [
|
|
24017
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
24018
|
+
* @param {boolean} [params.portfolioMargin] set to true if you would like to fetch orders in a portfolio margin account
|
|
24019
|
+
* @param {boolean} [params.stop] set to true if you would like to fetch portfolio margin account stop or conditional orders
|
|
23959
24020
|
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
23960
24021
|
*/
|
|
23961
24022
|
if (symbol === undefined) {
|
|
@@ -23968,17 +24029,18 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23968
24029
|
return await this.fetchPaginatedCallDynamic('fetchOrders', symbol, since, limit, params);
|
|
23969
24030
|
}
|
|
23970
24031
|
const market = this.market(symbol);
|
|
23971
|
-
const defaultType = this.safeString2(this.options, 'fetchOrders', 'defaultType', '
|
|
24032
|
+
const defaultType = this.safeString2(this.options, 'fetchOrders', 'defaultType', market['type']);
|
|
23972
24033
|
const type = this.safeString(params, 'type', defaultType);
|
|
23973
|
-
|
|
23974
|
-
|
|
24034
|
+
let marginMode = undefined;
|
|
24035
|
+
[marginMode, params] = this.handleMarginModeAndParams('fetchOrders', params);
|
|
24036
|
+
let isPortfolioMargin = undefined;
|
|
24037
|
+
[isPortfolioMargin, params] = this.handleOptionAndParams2(params, 'fetchOrders', 'papi', 'portfolioMargin', false);
|
|
24038
|
+
const isConditional = this.safeBool2(params, 'stop', 'conditional');
|
|
24039
|
+
params = this.omit(params, ['stop', 'conditional', 'type']);
|
|
24040
|
+
let request = {
|
|
23975
24041
|
'symbol': market['id'],
|
|
23976
24042
|
};
|
|
23977
|
-
|
|
23978
|
-
if (until !== undefined) {
|
|
23979
|
-
params = this.omit(params, 'until');
|
|
23980
|
-
request['endTime'] = until;
|
|
23981
|
-
}
|
|
24043
|
+
[request, params] = this.handleUntilOption('endTime', request, params);
|
|
23982
24044
|
if (since !== undefined) {
|
|
23983
24045
|
request['startTime'] = since;
|
|
23984
24046
|
}
|
|
@@ -23987,22 +24049,47 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
23987
24049
|
}
|
|
23988
24050
|
let response = undefined;
|
|
23989
24051
|
if (market['option']) {
|
|
23990
|
-
response = await this.eapiPrivateGetHistoryOrders(this.extend(request,
|
|
24052
|
+
response = await this.eapiPrivateGetHistoryOrders(this.extend(request, params));
|
|
23991
24053
|
}
|
|
23992
24054
|
else if (market['linear']) {
|
|
23993
|
-
|
|
24055
|
+
if (isPortfolioMargin) {
|
|
24056
|
+
if (isConditional) {
|
|
24057
|
+
response = await this.papiGetUmConditionalAllOrders(this.extend(request, params));
|
|
24058
|
+
}
|
|
24059
|
+
else {
|
|
24060
|
+
response = await this.papiGetUmAllOrders(this.extend(request, params));
|
|
24061
|
+
}
|
|
24062
|
+
}
|
|
24063
|
+
else {
|
|
24064
|
+
response = await this.fapiPrivateGetAllOrders(this.extend(request, params));
|
|
24065
|
+
}
|
|
23994
24066
|
}
|
|
23995
24067
|
else if (market['inverse']) {
|
|
23996
|
-
|
|
23997
|
-
|
|
23998
|
-
|
|
23999
|
-
|
|
24000
|
-
|
|
24068
|
+
if (isPortfolioMargin) {
|
|
24069
|
+
if (isConditional) {
|
|
24070
|
+
response = await this.papiGetCmConditionalAllOrders(this.extend(request, params));
|
|
24071
|
+
}
|
|
24072
|
+
else {
|
|
24073
|
+
response = await this.papiGetCmAllOrders(this.extend(request, params));
|
|
24074
|
+
}
|
|
24075
|
+
}
|
|
24076
|
+
else {
|
|
24077
|
+
response = await this.dapiPrivateGetAllOrders(this.extend(request, params));
|
|
24001
24078
|
}
|
|
24002
|
-
response = await this.sapiGetMarginAllOrders(this.extend(request, query));
|
|
24003
24079
|
}
|
|
24004
24080
|
else {
|
|
24005
|
-
|
|
24081
|
+
if (isPortfolioMargin) {
|
|
24082
|
+
response = await this.papiGetMarginAllOrders(this.extend(request, params));
|
|
24083
|
+
}
|
|
24084
|
+
else if (type === 'margin' || marginMode !== undefined) {
|
|
24085
|
+
if (marginMode === 'isolated') {
|
|
24086
|
+
request['isIsolated'] = true;
|
|
24087
|
+
}
|
|
24088
|
+
response = await this.sapiGetMarginAllOrders(this.extend(request, params));
|
|
24089
|
+
}
|
|
24090
|
+
else {
|
|
24091
|
+
response = await this.privateGetAllOrders(this.extend(request, params));
|
|
24092
|
+
}
|
|
24006
24093
|
}
|
|
24007
24094
|
//
|
|
24008
24095
|
// spot
|
|
@@ -24078,6 +24165,112 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
24078
24165
|
// }
|
|
24079
24166
|
// ]
|
|
24080
24167
|
//
|
|
24168
|
+
// inverse portfolio margin
|
|
24169
|
+
//
|
|
24170
|
+
// [
|
|
24171
|
+
// {
|
|
24172
|
+
// "orderId": 71328442983,
|
|
24173
|
+
// "symbol": "ETHUSD_PERP",
|
|
24174
|
+
// "pair": "ETHUSD",
|
|
24175
|
+
// "status": "CANCELED",
|
|
24176
|
+
// "clientOrderId": "x-xcKtGhcu4b3e3d8515dd4dc5ba9ccc",
|
|
24177
|
+
// "price": "2000",
|
|
24178
|
+
// "avgPrice": "0.00",
|
|
24179
|
+
// "origQty": "1",
|
|
24180
|
+
// "executedQty": "0",
|
|
24181
|
+
// "cumBase": "0",
|
|
24182
|
+
// "timeInForce": "GTC",
|
|
24183
|
+
// "type": "LIMIT",
|
|
24184
|
+
// "reduceOnly": false,
|
|
24185
|
+
// "side": "BUY",
|
|
24186
|
+
// "origType": "LIMIT",
|
|
24187
|
+
// "time": 1707197843046,
|
|
24188
|
+
// "updateTime": 1707197941373,
|
|
24189
|
+
// "positionSide": "BOTH"
|
|
24190
|
+
// },
|
|
24191
|
+
// ]
|
|
24192
|
+
//
|
|
24193
|
+
// linear portfolio margin
|
|
24194
|
+
//
|
|
24195
|
+
// [
|
|
24196
|
+
// {
|
|
24197
|
+
// "orderId": 259235347005,
|
|
24198
|
+
// "symbol": "BTCUSDT",
|
|
24199
|
+
// "status": "CANCELED",
|
|
24200
|
+
// "clientOrderId": "x-xcKtGhcu402881c9103f42bdb4183b",
|
|
24201
|
+
// "price": "35000",
|
|
24202
|
+
// "avgPrice": "0.00000",
|
|
24203
|
+
// "origQty": "0.010",
|
|
24204
|
+
// "executedQty": "0",
|
|
24205
|
+
// "cumQuote": "0",
|
|
24206
|
+
// "timeInForce": "GTC",
|
|
24207
|
+
// "type": "LIMIT",
|
|
24208
|
+
// "reduceOnly": false,
|
|
24209
|
+
// "side": "BUY",
|
|
24210
|
+
// "origType": "LIMIT",
|
|
24211
|
+
// "time": 1707194702167,
|
|
24212
|
+
// "updateTime": 1707197804748,
|
|
24213
|
+
// "positionSide": "BOTH",
|
|
24214
|
+
// "selfTradePreventionMode": "NONE",
|
|
24215
|
+
// "goodTillDate": 0
|
|
24216
|
+
// },
|
|
24217
|
+
// ]
|
|
24218
|
+
//
|
|
24219
|
+
// conditional portfolio margin
|
|
24220
|
+
//
|
|
24221
|
+
// [
|
|
24222
|
+
// {
|
|
24223
|
+
// "newClientStrategyId": "x-xcKtGhcuaf166172ed504cd1bc0396",
|
|
24224
|
+
// "strategyId": 3733211,
|
|
24225
|
+
// "strategyStatus": "CANCELLED",
|
|
24226
|
+
// "strategyType": "STOP",
|
|
24227
|
+
// "origQty": "0.010",
|
|
24228
|
+
// "price": "35000",
|
|
24229
|
+
// "orderId": 0,
|
|
24230
|
+
// "reduceOnly": false,
|
|
24231
|
+
// "side": "BUY",
|
|
24232
|
+
// "positionSide": "BOTH",
|
|
24233
|
+
// "stopPrice": "50000",
|
|
24234
|
+
// "symbol": "BTCUSDT",
|
|
24235
|
+
// "type": "LIMIT",
|
|
24236
|
+
// "bookTime": 1707270098774,
|
|
24237
|
+
// "updateTime": 1707270119261,
|
|
24238
|
+
// "timeInForce": "GTC",
|
|
24239
|
+
// "triggerTime": 0,
|
|
24240
|
+
// "workingType": "CONTRACT_PRICE",
|
|
24241
|
+
// "priceProtect": false,
|
|
24242
|
+
// "goodTillDate": 0,
|
|
24243
|
+
// "selfTradePreventionMode": "NONE"
|
|
24244
|
+
// },
|
|
24245
|
+
// ]
|
|
24246
|
+
//
|
|
24247
|
+
// spot margin portfolio margin
|
|
24248
|
+
//
|
|
24249
|
+
// [
|
|
24250
|
+
// {
|
|
24251
|
+
// "symbol": "BTCUSDT",
|
|
24252
|
+
// "orderId": 24684460474,
|
|
24253
|
+
// "clientOrderId": "x-R4BD3S82e9ef29d8346440f0b28b86",
|
|
24254
|
+
// "price": "35000.00000000",
|
|
24255
|
+
// "origQty": "0.00100000",
|
|
24256
|
+
// "executedQty": "0.00000000",
|
|
24257
|
+
// "cummulativeQuoteQty": "0.00000000",
|
|
24258
|
+
// "status": "CANCELED",
|
|
24259
|
+
// "timeInForce": "GTC",
|
|
24260
|
+
// "type": "LIMIT",
|
|
24261
|
+
// "side": "BUY",
|
|
24262
|
+
// "stopPrice": "0.00000000",
|
|
24263
|
+
// "icebergQty": "0.00000000",
|
|
24264
|
+
// "time": 1707113538870,
|
|
24265
|
+
// "updateTime": 1707113797688,
|
|
24266
|
+
// "isWorking": true,
|
|
24267
|
+
// "accountId": 200180970,
|
|
24268
|
+
// "selfTradePreventionMode": "EXPIRE_MAKER",
|
|
24269
|
+
// "preventedMatchId": null,
|
|
24270
|
+
// "preventedQuantity": null
|
|
24271
|
+
// },
|
|
24272
|
+
// ]
|
|
24273
|
+
//
|
|
24081
24274
|
return this.parseOrders(response, market, since, limit);
|
|
24082
24275
|
}
|
|
24083
24276
|
async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
@@ -24202,13 +24395,23 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
24202
24395
|
* @see https://binance-docs.github.io/apidocs/delivery/en/#all-orders-user_data
|
|
24203
24396
|
* @see https://binance-docs.github.io/apidocs/voptions/en/#query-option-order-history-trade
|
|
24204
24397
|
* @see https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-all-orders-user_data
|
|
24398
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-um-orders-user_data
|
|
24399
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-cm-orders-user_data
|
|
24400
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-um-conditional-orders-user_data
|
|
24401
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-cm-conditional-orders-user_data
|
|
24402
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-margin-account-orders-user_data
|
|
24205
24403
|
* @param {string} symbol unified market symbol of the market orders were made in
|
|
24206
24404
|
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
24207
24405
|
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
24208
24406
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
24209
|
-
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [
|
|
24407
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
24408
|
+
* @param {boolean} [params.portfolioMargin] set to true if you would like to fetch orders in a portfolio margin account
|
|
24409
|
+
* @param {boolean} [params.stop] set to true if you would like to fetch portfolio margin account stop or conditional orders
|
|
24210
24410
|
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
24211
24411
|
*/
|
|
24412
|
+
if (symbol === undefined) {
|
|
24413
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' fetchClosedOrders() requires a symbol argument');
|
|
24414
|
+
}
|
|
24212
24415
|
const orders = await this.fetchOrders(symbol, since, undefined, params);
|
|
24213
24416
|
const filteredOrders = this.filterBy(orders, 'status', 'closed');
|
|
24214
24417
|
return this.filterBySinceLimit(filteredOrders, since, limit);
|
|
@@ -24221,22 +24424,23 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
24221
24424
|
* @see https://binance-docs.github.io/apidocs/spot/en/#all-orders-user_data
|
|
24222
24425
|
* @see https://binance-docs.github.io/apidocs/spot/en/#query-margin-account-39-s-all-orders-user_data
|
|
24223
24426
|
* @see https://binance-docs.github.io/apidocs/voptions/en/#query-option-order-history-trade
|
|
24427
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-um-orders-user_data
|
|
24428
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-cm-orders-user_data
|
|
24429
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-um-conditional-orders-user_data
|
|
24430
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-cm-conditional-orders-user_data
|
|
24431
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#query-all-margin-account-orders-user_data
|
|
24224
24432
|
* @param {string} symbol unified market symbol of the market the orders were made in
|
|
24225
24433
|
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
24226
24434
|
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
24227
24435
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
24228
|
-
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [
|
|
24436
|
+
* @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [available parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
|
|
24437
|
+
* @param {boolean} [params.portfolioMargin] set to true if you would like to fetch orders in a portfolio margin account
|
|
24438
|
+
* @param {boolean} [params.stop] set to true if you would like to fetch portfolio margin account stop or conditional orders
|
|
24229
24439
|
* @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
24230
24440
|
*/
|
|
24231
24441
|
if (symbol === undefined) {
|
|
24232
24442
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' fetchCanceledOrders() requires a symbol argument');
|
|
24233
24443
|
}
|
|
24234
|
-
await this.loadMarkets();
|
|
24235
|
-
const market = this.market(symbol);
|
|
24236
|
-
if (market['swap'] || market['future']) {
|
|
24237
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported(this.id + ' fetchCanceledOrders() supports spot, margin and option markets only');
|
|
24238
|
-
}
|
|
24239
|
-
params = this.omit(params, 'type');
|
|
24240
24444
|
const orders = await this.fetchOrders(symbol, since, undefined, params);
|
|
24241
24445
|
const filteredOrders = this.filterBy(orders, 'status', 'canceled');
|
|
24242
24446
|
return this.filterBySinceLimit(filteredOrders, since, limit);
|
|
@@ -25985,35 +26189,48 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
25985
26189
|
* @see https://binance-docs.github.io/apidocs/spot/en/#trade-fee-user_data
|
|
25986
26190
|
* @see https://binance-docs.github.io/apidocs/futures/en/#user-commission-rate-user_data
|
|
25987
26191
|
* @see https://binance-docs.github.io/apidocs/delivery/en/#user-commission-rate-user_data
|
|
26192
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#get-user-commission-rate-for-um-user_data
|
|
26193
|
+
* @see https://binance-docs.github.io/apidocs/pm/en/#get-user-commission-rate-for-cm-user_data
|
|
25988
26194
|
* @param {string} symbol unified market symbol
|
|
25989
26195
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
26196
|
+
* @param {boolean} [params.portfolioMargin] set to true if you would like to fetch trading fees in a portfolio margin account
|
|
25990
26197
|
* @returns {object} a [fee structure]{@link https://docs.ccxt.com/#/?id=fee-structure}
|
|
25991
26198
|
*/
|
|
25992
26199
|
await this.loadMarkets();
|
|
25993
26200
|
const market = this.market(symbol);
|
|
25994
|
-
const
|
|
25995
|
-
const type = this.safeString(params, 'type', defaultType);
|
|
25996
|
-
params = this.omit(params, 'type');
|
|
26201
|
+
const type = market['type'];
|
|
25997
26202
|
let subType = undefined;
|
|
25998
26203
|
[subType, params] = this.handleSubTypeAndParams('fetchTradingFee', market, params);
|
|
25999
|
-
|
|
26204
|
+
let isPortfolioMargin = undefined;
|
|
26205
|
+
[isPortfolioMargin, params] = this.handleOptionAndParams2(params, 'fetchTradingFee', 'papi', 'portfolioMargin', false);
|
|
26000
26206
|
const isLinear = this.isLinear(type, subType);
|
|
26001
26207
|
const isInverse = this.isInverse(type, subType);
|
|
26002
26208
|
const request = {
|
|
26003
26209
|
'symbol': market['id'],
|
|
26004
26210
|
};
|
|
26005
26211
|
let response = undefined;
|
|
26006
|
-
if (
|
|
26007
|
-
|
|
26008
|
-
|
|
26009
|
-
|
|
26010
|
-
|
|
26212
|
+
if (isLinear) {
|
|
26213
|
+
if (isPortfolioMargin) {
|
|
26214
|
+
response = await this.papiGetUmCommissionRate(this.extend(request, params));
|
|
26215
|
+
}
|
|
26216
|
+
else {
|
|
26217
|
+
response = await this.fapiPrivateGetCommissionRate(this.extend(request, params));
|
|
26218
|
+
}
|
|
26011
26219
|
}
|
|
26012
26220
|
else if (isInverse) {
|
|
26013
|
-
|
|
26221
|
+
if (isPortfolioMargin) {
|
|
26222
|
+
response = await this.papiGetCmCommissionRate(this.extend(request, params));
|
|
26223
|
+
}
|
|
26224
|
+
else {
|
|
26225
|
+
response = await this.dapiPrivateGetCommissionRate(this.extend(request, params));
|
|
26226
|
+
}
|
|
26227
|
+
}
|
|
26228
|
+
else {
|
|
26229
|
+
response = await this.sapiGetAssetTradeFee(this.extend(request, params));
|
|
26014
26230
|
}
|
|
26015
26231
|
//
|
|
26016
26232
|
// spot
|
|
26233
|
+
//
|
|
26017
26234
|
// [
|
|
26018
26235
|
// {
|
|
26019
26236
|
// "symbol": "BTCUSDT",
|
|
@@ -26023,6 +26240,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26023
26240
|
// ]
|
|
26024
26241
|
//
|
|
26025
26242
|
// swap
|
|
26243
|
+
//
|
|
26026
26244
|
// {
|
|
26027
26245
|
// "symbol": "BTCUSD_PERP",
|
|
26028
26246
|
// "makerCommissionRate": "0.00015", // 0.015%
|
|
@@ -26033,7 +26251,7 @@ class binance extends _abstract_binance_js__WEBPACK_IMPORTED_MODULE_0__/* ["defa
|
|
|
26033
26251
|
if (Array.isArray(data)) {
|
|
26034
26252
|
data = this.safeDict(data, 0, {});
|
|
26035
26253
|
}
|
|
26036
|
-
return this.parseTradingFee(data);
|
|
26254
|
+
return this.parseTradingFee(data, market);
|
|
26037
26255
|
}
|
|
26038
26256
|
async fetchTradingFees(params = {}) {
|
|
26039
26257
|
/**
|
|
@@ -30106,7 +30324,9 @@ class bingx extends _abstract_bingx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
30106
30324
|
},
|
|
30107
30325
|
'broad': {},
|
|
30108
30326
|
},
|
|
30109
|
-
'commonCurrencies': {
|
|
30327
|
+
'commonCurrencies': {
|
|
30328
|
+
'SNOW': 'Snowman', // Snowman vs SnowSwap conflict
|
|
30329
|
+
},
|
|
30110
30330
|
'options': {
|
|
30111
30331
|
'defaultType': 'spot',
|
|
30112
30332
|
'accountsByType': {
|
|
@@ -77324,7 +77544,8 @@ class blofin extends _abstract_blofin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
77324
77544
|
const request = {};
|
|
77325
77545
|
let response = undefined;
|
|
77326
77546
|
if (accountType !== undefined) {
|
|
77327
|
-
const
|
|
77547
|
+
const options = this.safeDict(this.options, 'accountsByType', {});
|
|
77548
|
+
const parsedAccountType = this.safeString(options, accountType, accountType);
|
|
77328
77549
|
request['accountType'] = parsedAccountType;
|
|
77329
77550
|
response = await this.privateGetAssetBalances(this.extend(request, params));
|
|
77330
77551
|
}
|
|
@@ -94996,13 +95217,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
94996
95217
|
payload = body;
|
|
94997
95218
|
}
|
|
94998
95219
|
}
|
|
94999
|
-
|
|
95000
|
-
if (version === 'v3') {
|
|
95001
|
-
auth = nonce + method + savedPath + payload;
|
|
95002
|
-
}
|
|
95003
|
-
else {
|
|
95004
|
-
auth = nonce + method + fullPath + payload;
|
|
95005
|
-
}
|
|
95220
|
+
const auth = nonce + method + savedPath + payload;
|
|
95006
95221
|
const signature = this.hmac(this.encode(auth), this.encode(this.secret), _static_dependencies_noble_hashes_sha256_js__WEBPACK_IMPORTED_MODULE_4__/* .sha256 */ .J);
|
|
95007
95222
|
headers = {
|
|
95008
95223
|
'CB-ACCESS-KEY': this.apiKey,
|
|
@@ -164117,6 +164332,7 @@ class krakenfutures extends _abstract_krakenfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
164117
164332
|
}
|
|
164118
164333
|
createOrderRequest(symbol, type, side, amount, price = undefined, params = {}) {
|
|
164119
164334
|
const market = this.market(symbol);
|
|
164335
|
+
symbol = market['symbol'];
|
|
164120
164336
|
type = this.safeString(params, 'orderType', type);
|
|
164121
164337
|
const timeInForce = this.safeString(params, 'timeInForce');
|
|
164122
164338
|
let postOnly = false;
|
|
@@ -164136,7 +164352,7 @@ class krakenfutures extends _abstract_krakenfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
164136
164352
|
const request = {
|
|
164137
164353
|
'symbol': market['id'],
|
|
164138
164354
|
'side': side,
|
|
164139
|
-
'size': amount,
|
|
164355
|
+
'size': this.amountToPrecision(symbol, amount),
|
|
164140
164356
|
};
|
|
164141
164357
|
const clientOrderId = this.safeString2(params, 'clientOrderId', 'cliOrdId');
|
|
164142
164358
|
if (clientOrderId !== undefined) {
|
|
@@ -164174,7 +164390,7 @@ class krakenfutures extends _abstract_krakenfutures_js__WEBPACK_IMPORTED_MODULE_
|
|
|
164174
164390
|
}
|
|
164175
164391
|
request['orderType'] = type;
|
|
164176
164392
|
if (price !== undefined) {
|
|
164177
|
-
request['limitPrice'] = price;
|
|
164393
|
+
request['limitPrice'] = this.priceToPrecision(symbol, price);
|
|
164178
164394
|
}
|
|
164179
164395
|
params = this.omit(params, ['clientOrderId', 'timeInForce', 'triggerPrice', 'stopLossPrice', 'takeProfitPrice']);
|
|
164180
164396
|
return this.extend(request, params);
|
|
@@ -169672,11 +169888,11 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
169672
169888
|
}
|
|
169673
169889
|
}
|
|
169674
169890
|
let fee = undefined;
|
|
169675
|
-
const feeCost = this.
|
|
169891
|
+
const feeCost = this.safeString(item, 'fee');
|
|
169676
169892
|
let feeCurrency = undefined;
|
|
169677
|
-
if (feeCost !== 0) {
|
|
169893
|
+
if (feeCost !== '0') {
|
|
169678
169894
|
feeCurrency = code;
|
|
169679
|
-
fee = { 'cost': feeCost, 'currency': feeCurrency };
|
|
169895
|
+
fee = { 'cost': this.parseNumber(feeCost), 'currency': feeCurrency };
|
|
169680
169896
|
}
|
|
169681
169897
|
return {
|
|
169682
169898
|
'id': id,
|
|
@@ -169790,8 +170006,12 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
169790
170006
|
// }
|
|
169791
170007
|
// }
|
|
169792
170008
|
//
|
|
169793
|
-
const
|
|
169794
|
-
|
|
170009
|
+
const dataList = this.safeList(response, 'data');
|
|
170010
|
+
if (dataList !== undefined) {
|
|
170011
|
+
return this.parseLedger(dataList, currency, since, limit);
|
|
170012
|
+
}
|
|
170013
|
+
const data = this.safeDict(response, 'data');
|
|
170014
|
+
const items = this.safeList(data, 'items', []);
|
|
169795
170015
|
return this.parseLedger(items, currency, since, limit);
|
|
169796
170016
|
}
|
|
169797
170017
|
calculateRateLimiterCost(api, method, path, params, config = {}) {
|
|
@@ -183211,247 +183431,353 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
183211
183431
|
'defaultNetwork': 'ETH',
|
|
183212
183432
|
'defaultNetworks': {
|
|
183213
183433
|
'ETH': 'ETH',
|
|
183214
|
-
'USDT': '
|
|
183434
|
+
'USDT': 'ERC20',
|
|
183435
|
+
'USDC': 'ERC20',
|
|
183436
|
+
'BTC': 'BTC',
|
|
183437
|
+
'LTC': 'LTC',
|
|
183215
183438
|
},
|
|
183216
183439
|
'networks': {
|
|
183217
|
-
'
|
|
183218
|
-
'
|
|
183219
|
-
'
|
|
183220
|
-
'
|
|
183221
|
-
'BEP20': 'BNB Smart Chain(BEP20)',
|
|
183222
|
-
'OPTIMISM': 'Optimism(OP)',
|
|
183223
|
-
'SOL': 'Solana(SOL)',
|
|
183224
|
-
'CRC20': 'CRONOS',
|
|
183440
|
+
'ABBC': 'ABBC',
|
|
183441
|
+
'ACA': 'ACALA',
|
|
183442
|
+
'ADA': 'Cardano(ADA)',
|
|
183443
|
+
'AE': 'AE',
|
|
183225
183444
|
'ALGO': 'Algorand(ALGO)',
|
|
183226
|
-
'
|
|
183227
|
-
'
|
|
183228
|
-
'
|
|
183229
|
-
'
|
|
183230
|
-
'
|
|
183445
|
+
'ALPH': 'Alephium(ALPH)',
|
|
183446
|
+
'AME': 'AME',
|
|
183447
|
+
'AOK': 'AOK',
|
|
183448
|
+
'APT': 'APTOS(APT)',
|
|
183449
|
+
'AR': 'AR',
|
|
183450
|
+
'ARB': 'Arbitrum One(ARB)',
|
|
183231
183451
|
'ARBNOVA': 'ARBNOVA',
|
|
183232
|
-
'
|
|
183233
|
-
'
|
|
183234
|
-
'
|
|
183235
|
-
'
|
|
183236
|
-
'
|
|
183237
|
-
'
|
|
183238
|
-
'
|
|
183239
|
-
|
|
183240
|
-
'
|
|
183241
|
-
'
|
|
183242
|
-
'
|
|
183243
|
-
'
|
|
183244
|
-
'
|
|
183245
|
-
'
|
|
183452
|
+
'ARBONE': 'ArbitrumOne(ARB)',
|
|
183453
|
+
'ARK': 'ARK',
|
|
183454
|
+
'ASTR': 'ASTAR',
|
|
183455
|
+
'ATOM': 'Cosmos(ATOM)',
|
|
183456
|
+
'AVAXC': 'Avalanche C Chain(AVAX CCHAIN)',
|
|
183457
|
+
'AVAXX': 'Avalanche X Chain(AVAX XCHAIN)',
|
|
183458
|
+
'AZERO': 'Aleph Zero(AZERO)',
|
|
183459
|
+
'BCH': 'Bitcoin Cash(BCH)',
|
|
183460
|
+
'BDX': 'BDX',
|
|
183461
|
+
'BEAM': 'BEAM',
|
|
183462
|
+
'BEP2': 'BNB Beacon Chain(BEP2)',
|
|
183463
|
+
'BEP20': 'BNB Smart Chain(BEP20)',
|
|
183464
|
+
'BITCI': 'BITCI',
|
|
183465
|
+
'BNC': 'BNC',
|
|
183466
|
+
'BNCDOT': 'BNCPOLKA',
|
|
183467
|
+
'BOBA': 'BOBA',
|
|
183468
|
+
'BSC': 'BEP20(BSC)',
|
|
183469
|
+
'BSV': 'Bitcoin SV(BSV)',
|
|
183470
|
+
'BTC': 'Bitcoin(BTC)',
|
|
183471
|
+
'BTM': 'BTM2',
|
|
183246
183472
|
'CELO': 'CELO',
|
|
183247
|
-
'
|
|
183248
|
-
'
|
|
183473
|
+
'CFX': 'CFX',
|
|
183474
|
+
'CHZ': 'Chiliz Legacy Chain(CHZ)',
|
|
183475
|
+
'CHZ2': 'Chiliz Chain(CHZ2)',
|
|
183476
|
+
'CKB': 'CKB',
|
|
183477
|
+
'CLORE': 'Clore.ai(CLORE)',
|
|
183478
|
+
'CRC20': 'CRONOS',
|
|
183479
|
+
'CSPR': 'CSPR',
|
|
183480
|
+
'DASH': 'DASH',
|
|
183481
|
+
'DC': 'Dogechain(DC)',
|
|
183482
|
+
'DCR': 'DCR',
|
|
183483
|
+
'DNX': 'Dynex(DNX)',
|
|
183484
|
+
'DOGE': 'Dogecoin(DOGE)',
|
|
183485
|
+
'DOT': 'Polkadot(DOT)',
|
|
183486
|
+
'DYM': 'Dymension(DYM)',
|
|
183487
|
+
'EDG': 'EDG',
|
|
183249
183488
|
'EGLD': 'EGLD',
|
|
183250
183489
|
'EOS': 'EOS',
|
|
183251
|
-
'
|
|
183490
|
+
'ERC20': 'Ethereum(ERC20)',
|
|
183491
|
+
'ETC': 'Ethereum Classic(ETC)',
|
|
183492
|
+
'ETHF': 'ETF',
|
|
183252
183493
|
'ETHW': 'ETHW',
|
|
183253
|
-
'
|
|
183494
|
+
'EVER': 'EVER',
|
|
183495
|
+
'FET': 'FET',
|
|
183496
|
+
'FIL': 'FIL',
|
|
183497
|
+
'FIO': 'FIO',
|
|
183498
|
+
'FLOW': 'FLOW',
|
|
183499
|
+
'FSN': 'FSN',
|
|
183500
|
+
'FTM': 'Fantom(FTM)',
|
|
183501
|
+
'FUSE': 'FUSE',
|
|
183502
|
+
'GLMR': 'GLMR',
|
|
183503
|
+
'GRIN': 'GRIN',
|
|
183504
|
+
'HBAR': 'Hedera(HBAR)',
|
|
183505
|
+
'HIVE': 'HIVE',
|
|
183506
|
+
'HRC20': 'HECO',
|
|
183507
|
+
'HYDRA': 'HYDRA',
|
|
183508
|
+
'ICP': 'Internet Computer(ICP)',
|
|
183509
|
+
'INDEX': 'Index Chain',
|
|
183510
|
+
'IOST': 'IOST',
|
|
183254
183511
|
'IOTA': 'IOTA',
|
|
183255
|
-
'
|
|
183256
|
-
'
|
|
183257
|
-
'
|
|
183258
|
-
'
|
|
183259
|
-
'METIS': 'METIS',
|
|
183512
|
+
'IOTX': 'IOTX',
|
|
183513
|
+
'IRIS': 'IRIS',
|
|
183514
|
+
'KAR': 'KAR',
|
|
183515
|
+
'KAS': 'Kaspa(KAS)',
|
|
183260
183516
|
'KAVA': 'KAVA',
|
|
183261
183517
|
'KDA': 'KDA',
|
|
183262
|
-
'
|
|
183263
|
-
'
|
|
183264
|
-
'
|
|
183265
|
-
'XLM': 'XLM',
|
|
183518
|
+
'KILT': 'KILT',
|
|
183519
|
+
'KLAY': 'Klaytn(KLAY)',
|
|
183520
|
+
'KMA': 'KMA',
|
|
183266
183521
|
'KSM': 'KSM',
|
|
183267
|
-
'MOVR': 'MOVR',
|
|
183268
|
-
'XMR': 'XMR',
|
|
183269
183522
|
'LAT': 'LAT',
|
|
183270
|
-
'
|
|
183271
|
-
|
|
183272
|
-
|
|
183273
|
-
'
|
|
183274
|
-
'
|
|
183275
|
-
'
|
|
183276
|
-
'
|
|
183277
|
-
'
|
|
183278
|
-
'
|
|
183279
|
-
'
|
|
183280
|
-
'
|
|
183281
|
-
'
|
|
183282
|
-
'NEAR': 'NEAR',
|
|
183283
|
-
'
|
|
183284
|
-
'
|
|
183285
|
-
'BITCI': 'BITCI',
|
|
183523
|
+
'LAVA': 'Elysium(LAVA)',
|
|
183524
|
+
'LTC': 'Litecoin(LTC)',
|
|
183525
|
+
'LUNA': 'Terra(LUNA)',
|
|
183526
|
+
'MASS': 'MASS',
|
|
183527
|
+
'MATIC': 'Polygon(MATIC)',
|
|
183528
|
+
'MCOIN': 'Mcoin Network',
|
|
183529
|
+
'METIS': 'METIS',
|
|
183530
|
+
'MINA': 'MINA',
|
|
183531
|
+
'MNT': 'Mantle(MNT)',
|
|
183532
|
+
'MOVR': 'MOVR',
|
|
183533
|
+
'MTRG': 'Meter(MTRG)',
|
|
183534
|
+
'NAS': 'NAS',
|
|
183535
|
+
'NEAR': 'NEAR Protocol(NEAR)',
|
|
183536
|
+
'NEBL': 'NEBL',
|
|
183537
|
+
'NEM': 'NEM',
|
|
183286
183538
|
'NEO': 'NEO',
|
|
183287
|
-
'
|
|
183288
|
-
'
|
|
183289
|
-
'
|
|
183290
|
-
'BNCDOT': 'BNCPOLKA',
|
|
183291
|
-
'ETHF': 'ETF',
|
|
183292
|
-
'STEEM': 'STEEM',
|
|
183293
|
-
'OASYS': 'OASYS',
|
|
183294
|
-
'BEAM': 'BEAM',
|
|
183295
|
-
'VSYS': 'VSYS',
|
|
183539
|
+
'NEO3': 'NEO3',
|
|
183540
|
+
'NEOXA': 'Neoxa Network',
|
|
183541
|
+
'NULS': 'NULS',
|
|
183296
183542
|
'OASIS': 'ROSE',
|
|
183297
|
-
'
|
|
183298
|
-
'
|
|
183543
|
+
'OASYS': 'OASYS',
|
|
183544
|
+
'OKC': 'OKT',
|
|
183545
|
+
'OMN': 'Omega Network(OMN)',
|
|
183546
|
+
'OMNI': 'OMNI',
|
|
183547
|
+
'ONE': 'ONE',
|
|
183548
|
+
'ONT': 'ONT',
|
|
183549
|
+
'OPTIMISM': 'Optimism(OP)',
|
|
183550
|
+
'OSMO': 'OSMO',
|
|
183551
|
+
'PLCU': 'PLCU',
|
|
183552
|
+
'POKT': 'POKT',
|
|
183553
|
+
'QKC': 'QKC',
|
|
183299
183554
|
'QTUM': 'QTUM',
|
|
183300
|
-
'
|
|
183301
|
-
'
|
|
183302
|
-
'
|
|
183303
|
-
'
|
|
183304
|
-
'
|
|
183305
|
-
'
|
|
183306
|
-
'HYDRA': 'HYDRA',
|
|
183555
|
+
'RAP20': 'RAP20 (Rangers Mainnet)',
|
|
183556
|
+
'REI': 'REI',
|
|
183557
|
+
'RSK': 'RBTC',
|
|
183558
|
+
'RVN': 'Ravencoin(RVN)',
|
|
183559
|
+
'SATOX': 'Satoxcoin(SATOX)',
|
|
183560
|
+
'SC': 'SC',
|
|
183307
183561
|
'SCRT': 'SCRT',
|
|
183562
|
+
'SDN': 'SDN',
|
|
183563
|
+
'SGB': 'SGB',
|
|
183564
|
+
'SOL': 'Solana(SOL)',
|
|
183565
|
+
'STAR': 'STAR',
|
|
183566
|
+
'STARK': 'Starknet(STARK)',
|
|
183567
|
+
'STEEM': 'STEEM',
|
|
183568
|
+
'SYS': 'SYS',
|
|
183569
|
+
'TAO': 'Bittensor(TAO)',
|
|
183570
|
+
'TIA': 'Celestia(TIA)',
|
|
183308
183571
|
'TOMO': 'TOMO',
|
|
183572
|
+
'TON': 'Toncoin(TON)',
|
|
183573
|
+
'TRC10': 'TRC10',
|
|
183574
|
+
'TRC20': 'Tron(TRC20)',
|
|
183575
|
+
'UGAS': 'UGAS(Ultrain)',
|
|
183576
|
+
'VET': 'VeChain(VET)',
|
|
183577
|
+
'VEX': 'Vexanium(VEX)',
|
|
183578
|
+
'VSYS': 'VSYS',
|
|
183579
|
+
'WAVES': 'WAVES',
|
|
183309
183580
|
'WAX': 'WAX',
|
|
183310
|
-
'
|
|
183311
|
-
'
|
|
183581
|
+
'WEMIX': 'WEMIX',
|
|
183582
|
+
'XCH': 'Chia(XCH)',
|
|
183312
183583
|
'XDC': 'XDC',
|
|
183313
|
-
'
|
|
183314
|
-
'
|
|
183315
|
-
'
|
|
183316
|
-
'
|
|
183317
|
-
'
|
|
183318
|
-
'FLOW': 'FLOW',
|
|
183319
|
-
'RSK': 'RBTC',
|
|
183320
|
-
'DCR': 'DCR',
|
|
183321
|
-
'HIVE': 'HIVE',
|
|
183322
|
-
'XYM': 'XYM',
|
|
183323
|
-
'CKB': 'CKB',
|
|
183584
|
+
'XEC': 'XEC',
|
|
183585
|
+
'XLM': 'Stellar(XLM)',
|
|
183586
|
+
'XMR': 'Monero(XMR)',
|
|
183587
|
+
'XNA': 'Neurai(XNA)',
|
|
183588
|
+
'XPR': 'XPR Network',
|
|
183324
183589
|
'XRD': 'XRD',
|
|
183590
|
+
'XRP': 'Ripple(XRP)',
|
|
183591
|
+
'XTZ': 'XTZ',
|
|
183325
183592
|
'XVG': 'XVG',
|
|
183326
|
-
'
|
|
183327
|
-
'
|
|
183328
|
-
'
|
|
183329
|
-
'
|
|
183330
|
-
'POKT': 'POKT',
|
|
183331
|
-
'NEO3': 'NEO3',
|
|
183332
|
-
'FIO': 'FIO',
|
|
183333
|
-
'MASS': 'MASS',
|
|
183334
|
-
'AME': 'AME',
|
|
183335
|
-
'REI': 'REI',
|
|
183336
|
-
'IRIS': 'IRIS',
|
|
183593
|
+
'XYM': 'XYM',
|
|
183594
|
+
'ZEC': 'ZEC',
|
|
183595
|
+
'ZEN': 'ZEN',
|
|
183596
|
+
'ZIL': 'Zilliqa(ZIL)',
|
|
183337
183597
|
'ZTG': 'ZTG',
|
|
183338
|
-
'EDG': 'EDG',
|
|
183339
|
-
'FUSE': 'FUSE',
|
|
183340
|
-
'EVER': 'EVER',
|
|
183341
|
-
'FET': 'FET',
|
|
183342
|
-
'CFX': 'CFX',
|
|
183343
|
-
'NEBL': 'NEBL',
|
|
183344
|
-
'STAR': 'STAR',
|
|
183345
|
-
'NEM': 'NEM',
|
|
183346
|
-
'BDX': 'BDX',
|
|
183347
|
-
'TON': 'TONCOIN',
|
|
183348
|
-
'NAS': 'NAS',
|
|
183349
|
-
'QKC': 'QKC',
|
|
183350
|
-
'BTM': 'BTM2',
|
|
183351
|
-
'FSN': 'FSN',
|
|
183352
183598
|
// todo: uncomment below after concensus
|
|
183353
|
-
// '
|
|
183354
|
-
// '
|
|
183355
|
-
// '
|
|
183356
|
-
// '
|
|
183357
|
-
// 'KUJIRA': 'KUJI',
|
|
183358
|
-
// 'HUAHUA': 'HUAHUA',
|
|
183359
|
-
// 'FRUITS': 'FRTS',
|
|
183360
|
-
// 'IOEX': 'IOEX',
|
|
183361
|
-
// 'TOMAINFO': 'TON',
|
|
183599
|
+
// 'ALAYA': 'ATP',
|
|
183600
|
+
// 'ANDUSCHAIN': 'DEB',
|
|
183601
|
+
// 'ASSETMANTLE': 'MNTL',
|
|
183602
|
+
// 'AXE': 'AXE',
|
|
183362
183603
|
// 'BITCOINHD': 'BHD',
|
|
183604
|
+
// 'BITCOINVAULT': 'BTCV',
|
|
183605
|
+
// 'BITKUB': 'KUB',
|
|
183606
|
+
// 'BITSHARES_OLD': 'BTS',
|
|
183607
|
+
// 'BITSHARES': 'NBS',
|
|
183608
|
+
// 'BYTZ': 'BYTZ',
|
|
183609
|
+
// 'CANTO': 'CANTO', // CANTOEVM
|
|
183363
183610
|
// 'CENNZ': 'CENNZ',
|
|
183364
|
-
// '
|
|
183365
|
-
// '
|
|
183611
|
+
// 'CHAINX': 'PCX',
|
|
183612
|
+
// 'CONCODRIUM': 'CCD',
|
|
183366
183613
|
// 'CONTENTVALUENETWORK': 'CVNT',
|
|
183367
|
-
// '
|
|
183368
|
-
// '
|
|
183369
|
-
// '
|
|
183614
|
+
// 'CORTEX': 'CTXC',
|
|
183615
|
+
// 'CYPHERIUM': 'CPH',
|
|
183616
|
+
// 'DANGNN': 'DGC',
|
|
183370
183617
|
// 'DARWINIASMARTCHAIN': 'Darwinia Smart Chain',
|
|
183371
|
-
// '
|
|
183372
|
-
// '
|
|
183618
|
+
// 'DHEALTH': 'DHP',
|
|
183619
|
+
// 'DOGECOIN': [ 'DOGE', 'DOGECHAIN' ], // todo after unification
|
|
183620
|
+
// 'DRAC': 'DRAC',
|
|
183621
|
+
// 'DRAKEN': 'DRK',
|
|
183373
183622
|
// 'ECOCHAIN': 'ECOC',
|
|
183374
183623
|
// 'ELECTRAPROTOCOL': 'XEP',
|
|
183375
|
-
// '
|
|
183376
|
-
// '
|
|
183377
|
-
// '
|
|
183378
|
-
// '
|
|
183379
|
-
// '
|
|
183380
|
-
// 'BITKUB': 'KUB',
|
|
183381
|
-
// 'BITCOINVAULT': 'BTCV',
|
|
183382
|
-
// 'PROXIMAX': 'XPX',
|
|
183383
|
-
// 'PAC': 'PAC',
|
|
183384
|
-
// 'CHAINX': 'PCX',
|
|
183385
|
-
// 'DRAC': 'DRAC',
|
|
183386
|
-
// 'WHITECOIN': 'XWC',
|
|
183387
|
-
// 'TECHPAY': 'TPC',
|
|
183388
|
-
// 'GXCHAIN': 'GXC',
|
|
183389
|
-
// 'CYPHERIUM': 'CPH',
|
|
183390
|
-
// 'LBRY': 'LBC',
|
|
183391
|
-
// 'TONGTONG': 'TTC',
|
|
183392
|
-
// 'LEDGIS': 'LED',
|
|
183393
|
-
// 'PMG': 'PMG',
|
|
183394
|
-
// 'PROOFOFMEMES': 'POM',
|
|
183395
|
-
// 'SENTINEL': 'DVPN',
|
|
183396
|
-
// 'METER': 'MTRG',
|
|
183397
|
-
// 'YAS': 'YAS',
|
|
183398
|
-
// 'ULTRAIN': 'UGAS',
|
|
183399
|
-
// 'PASTEL': 'PSL',
|
|
183400
|
-
// 'KONSTELLATION': 'DARC',
|
|
183401
|
-
// 'ANDUSCHAIN': 'DEB',
|
|
183624
|
+
// 'EMERALD': 'EMERALD', // sits on top of OASIS
|
|
183625
|
+
// 'EVMOS': 'EVMOS', // EVMOSETH is different
|
|
183626
|
+
// 'EXOSAMA': 'SAMA',
|
|
183627
|
+
// 'FIBOS': 'FO',
|
|
183628
|
+
// 'FILECASH': 'FIC',
|
|
183402
183629
|
// 'FIRMACHAIN': 'FCT',
|
|
183630
|
+
// 'FIRO': 'XZC',
|
|
183631
|
+
// 'FNCY': 'FNCY',
|
|
183632
|
+
// 'FRUITS': 'FRTS',
|
|
183633
|
+
// 'GLEEC': 'GLEEC',
|
|
183634
|
+
// 'GXCHAIN': 'GXC',
|
|
183403
183635
|
// 'HANDSHAKE': 'HNS',
|
|
183404
|
-
// 'DANGNN': 'DGC',
|
|
183405
|
-
// 'SERO': 'SERO',
|
|
183406
183636
|
// 'HPB': 'HPB',
|
|
183407
|
-
// 'XDAI': 'XDAI',
|
|
183408
|
-
// 'EXOSAMA': 'SAMA',
|
|
183409
|
-
// 'DHEALTH': 'DHP',
|
|
183410
|
-
// 'HUPAYX': 'HPX',
|
|
183411
|
-
// 'GLEEC': 'GLEEC',
|
|
183412
|
-
// 'FIBOS': 'FO',
|
|
183413
|
-
// 'MDNA': 'DNA',
|
|
183414
183637
|
// 'HSHARE': 'HC',
|
|
183415
|
-
// '
|
|
183416
|
-
// '
|
|
183638
|
+
// 'HUAHUA': 'HUAHUA',
|
|
183639
|
+
// 'HUPAYX': 'HPX',
|
|
183640
|
+
// 'INDEXCHAIN': 'IDX',
|
|
183641
|
+
// 'INTCHAIN': 'INT',
|
|
183642
|
+
// 'INTEGRITEE': 'TEER',
|
|
183643
|
+
// 'INTERLAY': 'INTR',
|
|
183644
|
+
// 'IOEX': 'IOEX',
|
|
183645
|
+
// 'JUNO': 'JUNO',
|
|
183646
|
+
// 'KASPA': 'KASPA',
|
|
183647
|
+
// 'KEKCHAIN': 'KEKCHAIN',
|
|
183648
|
+
// 'KINTSUGI': 'KINT',
|
|
183649
|
+
// 'KOINOS': 'KOINOS',
|
|
183650
|
+
// 'KONSTELLATION': 'DARC',
|
|
183651
|
+
// 'KUJIRA': 'KUJI',
|
|
183652
|
+
// 'KULUPU': 'KLP',
|
|
183653
|
+
// 'LBRY': 'LBC',
|
|
183654
|
+
// 'LEDGIS': 'LED',
|
|
183655
|
+
// 'LIGHTNINGBITCOIN': 'LBTC',
|
|
183417
183656
|
// 'LINE': 'LINE',
|
|
183657
|
+
// 'MDNA': 'DNA',
|
|
183418
183658
|
// 'MDUKEY': 'MDU',
|
|
183419
|
-
// '
|
|
183659
|
+
// 'METAMUI': 'MMUI',
|
|
183660
|
+
// 'METAVERSE_ETP': 'ETP',
|
|
183661
|
+
// 'METER': 'MTRG',
|
|
183420
183662
|
// 'MEVERSE': 'MEVerse',
|
|
183663
|
+
// 'NEWTON': 'NEW',
|
|
183664
|
+
// 'NODLE': 'NODLE',
|
|
183665
|
+
// 'ORIGYN': 'OGY',
|
|
183666
|
+
// 'PAC': 'PAC',
|
|
183667
|
+
// 'PASTEL': 'PSL',
|
|
183668
|
+
// 'PHALA': 'Khala',
|
|
183669
|
+
// 'PLEX': 'PLEX',
|
|
183670
|
+
// 'PMG': 'PMG',
|
|
183421
183671
|
// 'POINT': 'POINT', // POINTEVM is different
|
|
183422
|
-
// '
|
|
183423
|
-
// '
|
|
183424
|
-
// '
|
|
183425
|
-
// '
|
|
183426
|
-
// 'CORTEX': 'CTXC',
|
|
183672
|
+
// 'PROOFOFMEMES': 'POM',
|
|
183673
|
+
// 'PROXIMAX': 'XPX',
|
|
183674
|
+
// 'RCHAIN': 'REV',
|
|
183675
|
+
// 'REBUS': 'REBUS', // REBUSEVM is different
|
|
183427
183676
|
// 'RIZON': 'ATOLO',
|
|
183677
|
+
// 'SENTINEL': 'DVPN',
|
|
183678
|
+
// 'SERO': 'SERO',
|
|
183679
|
+
// 'TECHPAY': 'TPC',
|
|
183680
|
+
// 'TELOSCOIN': 'TLOS', // todo
|
|
183681
|
+
// 'TERRA': 'LUNA2',
|
|
183682
|
+
// 'TERRACLASSIC': 'LUNC',
|
|
183683
|
+
// 'TLOS': 'TELOS', // todo
|
|
183684
|
+
// 'TOMAINFO': 'TON',
|
|
183685
|
+
// 'TONGTONG': 'TTC',
|
|
183686
|
+
// 'TURTLECOIN': 'TRTL',
|
|
183687
|
+
// 'ULORD': 'UT',
|
|
183688
|
+
// 'ULTRAIN': 'UGAS',
|
|
183689
|
+
// 'UMEE': 'UMEE',
|
|
183428
183690
|
// 'VDIMENSION': 'VOLLAR',
|
|
183429
|
-
// 'JUNO': 'JUNO',
|
|
183430
183691
|
// 'VEXANIUM': 'VEX',
|
|
183431
|
-
// 'INTCHAIN': 'INT',
|
|
183432
|
-
// 'METAMUI': 'MMUI',
|
|
183433
|
-
// 'RCHAIN': 'REV',
|
|
183434
|
-
// 'EVMOS': 'EVMOS', // EVMOSETH is different
|
|
183435
|
-
// 'ZKSYNC': 'ZKSYNC',
|
|
183436
|
-
// 'BITSHARES_OLD': 'BTS',
|
|
183437
|
-
// 'BITSHARES': 'NBS',
|
|
183438
|
-
// 'UMEE': 'UMEE',
|
|
183439
183692
|
// 'VNT': 'VNT',
|
|
183440
|
-
// '
|
|
183441
|
-
// '
|
|
183442
|
-
// 'NEWTON': 'NEW',
|
|
183443
|
-
// // 'BAJUN': '',
|
|
183444
|
-
// 'INTERLAY': 'INTR',
|
|
183445
|
-
// 'LIGHTNINGBITCOIN': 'LBTC',
|
|
183446
|
-
// 'FIRO': 'XZC',
|
|
183447
|
-
// 'ALAYA': 'ATP',
|
|
183448
|
-
// 'AXE': 'AXE',
|
|
183449
|
-
// 'FNCY': 'FNCY',
|
|
183693
|
+
// 'WAYKICHAIN': 'WICC',
|
|
183694
|
+
// 'WHITECOIN': 'XWC',
|
|
183450
183695
|
// 'WITNET': 'WIT',
|
|
183451
|
-
// '
|
|
183452
|
-
// '
|
|
183696
|
+
// 'XDAI': 'XDAI',
|
|
183697
|
+
// 'XX': 'XX',
|
|
183698
|
+
// 'YAS': 'YAS',
|
|
183699
|
+
// 'ZENITH': 'ZENITH',
|
|
183700
|
+
// 'ZKSYNC': 'ZKSYNC',
|
|
183701
|
+
// // 'BAJUN': '',
|
|
183453
183702
|
// OKB <> OKT (for usdt it's exception) for OKC, PMEER, FLARE, STRD, ZEL, FUND, "NONE", CRING, FREETON, QTZ (probably unique network is meant), HT, BSC(RACAV1), BSC(RACAV2), AMBROSUS, BAJUN, NOM. their individual info is at https://www.mexc.com/api/platform/asset/spot/{COINNAME}
|
|
183454
183703
|
},
|
|
183704
|
+
'networksById': {
|
|
183705
|
+
'Aleph Zero(AZERO)': 'AZERO',
|
|
183706
|
+
'Alephium(ALPH)': 'ALPH',
|
|
183707
|
+
'Algorand(ALGO)': 'ALGO',
|
|
183708
|
+
'APTOS(APT)': 'APT',
|
|
183709
|
+
'Arbitrum One(ARB)': 'ARB',
|
|
183710
|
+
'Avalanche C Chain(AVAX CCHAIN)': 'AVAXC',
|
|
183711
|
+
'Avalanche X Chain(AVAX XCHAIN)': 'AVAXX',
|
|
183712
|
+
'BEP20(BSC)': 'BSC',
|
|
183713
|
+
'Bitcoin Cash(BCH)': 'BCH',
|
|
183714
|
+
'Bitcoin SV(BSV)': 'BSV',
|
|
183715
|
+
'Bitcoin(BTC)': 'BTC',
|
|
183716
|
+
'Bittensor(TAO)': 'TAO',
|
|
183717
|
+
'BNB Beacon Chain(BEP2)': 'BEP2',
|
|
183718
|
+
'BNB Smart Chain(BEP20-RACAV1)': 'BSC',
|
|
183719
|
+
'BNB Smart Chain(BEP20-RACAV2)': 'BSC',
|
|
183720
|
+
'BNB Smart Chain(BEP20)': 'BSC',
|
|
183721
|
+
'Cardano(ADA)': 'ADA',
|
|
183722
|
+
'Celestia(TIA)': 'TIA',
|
|
183723
|
+
'Chia(XCH)': 'XCH',
|
|
183724
|
+
'Chiliz Chain(CHZ2)': 'CHZ2',
|
|
183725
|
+
'Chiliz Legacy Chain(CHZ)': 'CHZ',
|
|
183726
|
+
'Clore.ai(CLORE)': 'CLORE',
|
|
183727
|
+
'Cosmos(ATOM)': 'ATOM',
|
|
183728
|
+
'Dogechain(DC)': 'DC',
|
|
183729
|
+
'Dogecoin(DOGE)': 'DOGE',
|
|
183730
|
+
'Dymension(DYM)': 'DYM',
|
|
183731
|
+
'Dynex(DNX)': 'DNX',
|
|
183732
|
+
'Elysium(LAVA)': 'LAVA',
|
|
183733
|
+
'Ethereum Classic(ETC)': 'ETC',
|
|
183734
|
+
'Ethereum(ERC20)': 'ERC20',
|
|
183735
|
+
'Fantom(FTM)': 'FTM',
|
|
183736
|
+
'Hedera(HBAR)': 'HBAR',
|
|
183737
|
+
'Index Chain': 'INDEX',
|
|
183738
|
+
'Internet Computer(ICP)': 'ICP',
|
|
183739
|
+
'Kaspa(KAS)': 'KAS',
|
|
183740
|
+
'Klaytn(KLAY)': 'KLAY',
|
|
183741
|
+
'Litecoin(LTC)': 'LTC',
|
|
183742
|
+
'Mantle(MNT)': 'MNT',
|
|
183743
|
+
'Mcoin Network': 'MCOIN',
|
|
183744
|
+
'Meter(MTRG)': 'MTRG',
|
|
183745
|
+
'Monero(XMR)': 'XMR',
|
|
183746
|
+
'NEAR Protocol(NEAR)': 'NEAR',
|
|
183747
|
+
'Neoxa Network': 'NEOXA',
|
|
183748
|
+
'Neurai(XNA)': 'XNA',
|
|
183749
|
+
'Omega Network(OMN)': 'OMN',
|
|
183750
|
+
'Optimism(OP)': 'OPTIMISM',
|
|
183751
|
+
'Polkadot(DOT)': 'DOT',
|
|
183752
|
+
'Polygon(MATIC)': 'MATIC',
|
|
183753
|
+
'RAP20 (Rangers Mainnet)': 'RAP20',
|
|
183754
|
+
'Ravencoin(RVN)': 'RVN',
|
|
183755
|
+
'Ripple(XRP)': 'XRP',
|
|
183756
|
+
'Satoxcoin(SATOX)': 'SATOX',
|
|
183757
|
+
'Solana(SOL)': 'SOL',
|
|
183758
|
+
'Starknet(STARK)': 'STARK',
|
|
183759
|
+
'Stellar(XLM)': 'XLM',
|
|
183760
|
+
'Terra(LUNA)': 'LUNA',
|
|
183761
|
+
'Toncoin(TON)': 'TON',
|
|
183762
|
+
'Tron(TRC20)': 'TRC20',
|
|
183763
|
+
'UGAS(Ultrain)': 'UGAS',
|
|
183764
|
+
'VeChain(VET)': 'VET',
|
|
183765
|
+
'Vexanium(VEX)': 'VEX',
|
|
183766
|
+
'XPR Network': 'XPR',
|
|
183767
|
+
'Zilliqa(ZIL)': 'ZIL',
|
|
183768
|
+
// TODO: uncomment below after deciding unified name
|
|
183769
|
+
// 'PEPE COIN BSC':
|
|
183770
|
+
// 'SMART BLOCKCHAIN':
|
|
183771
|
+
// 'f(x)Core':
|
|
183772
|
+
// 'Syscoin Rollux':
|
|
183773
|
+
// 'Syscoin UTXO':
|
|
183774
|
+
// 'zkSync Era':
|
|
183775
|
+
// 'zkSync Lite':
|
|
183776
|
+
// 'Darwinia Smart Chain':
|
|
183777
|
+
// 'Arbitrum One(ARB-Bridged)':
|
|
183778
|
+
// 'Optimism(OP-Bridged)':
|
|
183779
|
+
// 'Polygon(MATIC-Bridged)':
|
|
183780
|
+
},
|
|
183455
183781
|
'recvWindow': 5 * 1000,
|
|
183456
183782
|
'maxTimeTillEnd': 90 * 86400 * 1000 - 1,
|
|
183457
183783
|
'broker': 'CCXT',
|
|
@@ -183731,7 +184057,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
183731
184057
|
for (let j = 0; j < chains.length; j++) {
|
|
183732
184058
|
const chain = chains[j];
|
|
183733
184059
|
const networkId = this.safeString(chain, 'network');
|
|
183734
|
-
const network = this.
|
|
184060
|
+
const network = this.networkIdToCode(networkId);
|
|
183735
184061
|
const isDepositEnabled = this.safeBool(chain, 'depositEnable', false);
|
|
183736
184062
|
const isWithdrawEnabled = this.safeBool(chain, 'withdrawEnable', false);
|
|
183737
184063
|
const active = (isDepositEnabled && isWithdrawEnabled);
|
|
@@ -183804,26 +184130,6 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
183804
184130
|
}
|
|
183805
184131
|
return result;
|
|
183806
184132
|
}
|
|
183807
|
-
safeNetwork(networkId) {
|
|
183808
|
-
if (networkId.indexOf('BSC') >= 0) {
|
|
183809
|
-
return 'BEP20';
|
|
183810
|
-
}
|
|
183811
|
-
const parts = networkId.split(' ');
|
|
183812
|
-
networkId = parts.join('');
|
|
183813
|
-
networkId = networkId.replace('-20', '20');
|
|
183814
|
-
const networksById = {
|
|
183815
|
-
'Ethereum(ERC20)': 'ERC20',
|
|
183816
|
-
'Algorand(ALGO)': 'ALGO',
|
|
183817
|
-
'ArbitrumOne(ARB)': 'ARBONE',
|
|
183818
|
-
'AvalancheCChain(AVAXCCHAIN)': 'AVAXC',
|
|
183819
|
-
'BNB Smart Chain(BEP20)': 'BEP20',
|
|
183820
|
-
'Polygon(MATIC)': 'MATIC',
|
|
183821
|
-
'Optimism(OP)': 'OPTIMISM',
|
|
183822
|
-
'Solana(SOL)': 'SOL',
|
|
183823
|
-
'Tron(TRC20)': 'TRC20',
|
|
183824
|
-
};
|
|
183825
|
-
return this.safeString(networksById, networkId, networkId);
|
|
183826
|
-
}
|
|
183827
184133
|
async fetchMarkets(params = {}) {
|
|
183828
184134
|
/**
|
|
183829
184135
|
* @method
|
|
@@ -187068,23 +187374,22 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
187068
187374
|
}
|
|
187069
187375
|
parseDepositAddress(depositAddress, currency = undefined) {
|
|
187070
187376
|
//
|
|
187071
|
-
//
|
|
187072
|
-
//
|
|
187073
|
-
//
|
|
187074
|
-
//
|
|
187075
|
-
//
|
|
187076
|
-
//
|
|
187377
|
+
// {
|
|
187378
|
+
// coin: "USDT",
|
|
187379
|
+
// network: "BNB Smart Chain(BEP20)",
|
|
187380
|
+
// address: "0x0d48003e0c27c5de62b97c9b4cdb31fdd29da619",
|
|
187381
|
+
// memo: null
|
|
187382
|
+
// }
|
|
187077
187383
|
//
|
|
187078
187384
|
const address = this.safeString(depositAddress, 'address');
|
|
187079
|
-
const
|
|
187080
|
-
const networkId = this.safeString(depositAddress, '
|
|
187081
|
-
const network = this.safeNetwork(networkId);
|
|
187385
|
+
const currencyId = this.safeString(depositAddress, 'coin');
|
|
187386
|
+
const networkId = this.safeString(depositAddress, 'network');
|
|
187082
187387
|
this.checkAddress(address);
|
|
187083
187388
|
return {
|
|
187084
|
-
'currency':
|
|
187389
|
+
'currency': this.safeCurrencyCode(currencyId, currency),
|
|
187085
187390
|
'address': address,
|
|
187086
|
-
'tag':
|
|
187087
|
-
'network':
|
|
187391
|
+
'tag': this.safeString(depositAddress, 'memo'),
|
|
187392
|
+
'network': this.networkIdToCode(networkId),
|
|
187088
187393
|
'info': depositAddress,
|
|
187089
187394
|
};
|
|
187090
187395
|
}
|
|
@@ -187113,23 +187418,19 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
187113
187418
|
}
|
|
187114
187419
|
params = this.omit(params, 'network');
|
|
187115
187420
|
const response = await this.spotPrivateGetCapitalDepositAddress(this.extend(request, params));
|
|
187116
|
-
|
|
187117
|
-
|
|
187118
|
-
|
|
187119
|
-
|
|
187120
|
-
|
|
187121
|
-
|
|
187122
|
-
|
|
187123
|
-
|
|
187124
|
-
|
|
187125
|
-
|
|
187126
|
-
|
|
187127
|
-
|
|
187128
|
-
|
|
187129
|
-
'tag': tag,
|
|
187130
|
-
});
|
|
187131
|
-
}
|
|
187132
|
-
return result;
|
|
187421
|
+
//
|
|
187422
|
+
// [
|
|
187423
|
+
// {
|
|
187424
|
+
// coin: "USDT",
|
|
187425
|
+
// network: "BNB Smart Chain(BEP20)",
|
|
187426
|
+
// address: "0x0d48003e0c27c5de62b97c9b4cdb31fdd29da619",
|
|
187427
|
+
// memo: null
|
|
187428
|
+
// }
|
|
187429
|
+
// ...
|
|
187430
|
+
// ]
|
|
187431
|
+
//
|
|
187432
|
+
const addressStructures = this.parseDepositAddresses(response, undefined, false);
|
|
187433
|
+
return this.indexBy(addressStructures, 'network');
|
|
187133
187434
|
}
|
|
187134
187435
|
async createDepositAddress(code, params = {}) {
|
|
187135
187436
|
/**
|
|
@@ -187163,13 +187464,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
187163
187464
|
// "address": "zzqqqqqqqqqq",
|
|
187164
187465
|
// "memo": "MX10068"
|
|
187165
187466
|
// }
|
|
187166
|
-
return
|
|
187167
|
-
'info': response,
|
|
187168
|
-
'currency': this.safeString(response, 'coin'),
|
|
187169
|
-
'network': this.safeString(response, 'network'),
|
|
187170
|
-
'address': this.safeString(response, 'address'),
|
|
187171
|
-
'tag': this.safeString(response, 'memo'),
|
|
187172
|
-
};
|
|
187467
|
+
return this.parseDepositAddress(response, currency);
|
|
187173
187468
|
}
|
|
187174
187469
|
async fetchDepositAddress(code, params = {}) {
|
|
187175
187470
|
/**
|
|
@@ -187179,23 +187474,30 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
187179
187474
|
* @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#deposit-address-supporting-network
|
|
187180
187475
|
* @param {string} code unified currency code
|
|
187181
187476
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
187477
|
+
* @param {string} [params.network] the chain of currency, this only apply for multi-chain currency, and there is no need for single chain currency
|
|
187182
187478
|
* @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
|
|
187183
187479
|
*/
|
|
187184
|
-
const
|
|
187185
|
-
params = this.omit(params, 'network');
|
|
187186
|
-
const
|
|
187187
|
-
|
|
187188
|
-
|
|
187189
|
-
|
|
187190
|
-
|
|
187191
|
-
|
|
187192
|
-
|
|
187193
|
-
|
|
187480
|
+
const network = this.safeString(params, 'network');
|
|
187481
|
+
params = this.omit(params, ['network']);
|
|
187482
|
+
const addressStructures = await this.fetchDepositAddressesByNetwork(code, params);
|
|
187483
|
+
let result = undefined;
|
|
187484
|
+
if (network !== undefined) {
|
|
187485
|
+
result = this.safeDict(addressStructures, this.networkIdToCode(network, code));
|
|
187486
|
+
}
|
|
187487
|
+
else {
|
|
187488
|
+
const options = this.safeDict(this.options, 'defaultNetworks');
|
|
187489
|
+
const defaultNetworkForCurrency = this.safeString(options, code);
|
|
187490
|
+
if (defaultNetworkForCurrency !== undefined) {
|
|
187491
|
+
result = this.safeDict(addressStructures, defaultNetworkForCurrency);
|
|
187492
|
+
}
|
|
187493
|
+
else {
|
|
187494
|
+
const keys = Object.keys(addressStructures);
|
|
187495
|
+
const key = this.safeString(keys, 0);
|
|
187496
|
+
result = this.safeDict(addressStructures, key);
|
|
187194
187497
|
}
|
|
187195
187498
|
}
|
|
187196
|
-
const result = this.safeValue(response, 0);
|
|
187197
187499
|
if (result === undefined) {
|
|
187198
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidAddress(this.id + ' fetchDepositAddress() cannot find a deposit address for ' + code + ', consider creating one using the MEXC platform');
|
|
187500
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidAddress(this.id + ' fetchDepositAddress() cannot find a deposit address for ' + code + ', and network' + network + 'consider creating one using the MEXC platform');
|
|
187199
187501
|
}
|
|
187200
187502
|
return result;
|
|
187201
187503
|
}
|
|
@@ -187367,7 +187669,7 @@ class mexc extends _abstract_mexc_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
187367
187669
|
let network = undefined;
|
|
187368
187670
|
const rawNetwork = this.safeString(transaction, 'network');
|
|
187369
187671
|
if (rawNetwork !== undefined) {
|
|
187370
|
-
network = this.
|
|
187672
|
+
network = this.networkIdToCode(rawNetwork);
|
|
187371
187673
|
}
|
|
187372
187674
|
const code = this.safeCurrencyCode(currencyId, currency);
|
|
187373
187675
|
const status = this.parseTransactionStatusByType(this.safeString(transaction, 'status'), type);
|
|
@@ -305282,7 +305584,7 @@ SOFTWARE.
|
|
|
305282
305584
|
|
|
305283
305585
|
//-----------------------------------------------------------------------------
|
|
305284
305586
|
// this is updated by vss.js when building
|
|
305285
|
-
const version = '4.2.
|
|
305587
|
+
const version = '4.2.44';
|
|
305286
305588
|
_src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e.ccxtVersion = version;
|
|
305287
305589
|
//-----------------------------------------------------------------------------
|
|
305288
305590
|
|