ccxt 4.4.70 → 4.4.71
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 +5 -8
- package/dist/ccxt.browser.min.js +7 -7
- package/dist/cjs/ccxt.js +1 -6
- package/dist/cjs/src/abstract/poloniexfutures.js +1 -1
- package/dist/cjs/src/base/Exchange.js +22 -0
- package/dist/cjs/src/binance.js +106 -101
- package/dist/cjs/src/bingx.js +64 -42
- package/dist/cjs/src/bitget.js +1 -5
- package/dist/cjs/src/bitmart.js +15 -1
- package/dist/cjs/src/bitopro.js +1 -0
- package/dist/cjs/src/bitrue.js +1 -0
- package/dist/cjs/src/cex.js +1 -0
- package/dist/cjs/src/coinbaseexchange.js +1 -0
- package/dist/cjs/src/deribit.js +1 -0
- package/dist/cjs/src/hashkey.js +4 -2
- package/dist/cjs/src/kraken.js +83 -6
- package/dist/cjs/src/kucoin.js +4 -2
- package/dist/cjs/src/mexc.js +8 -4
- package/dist/cjs/src/okx.js +58 -46
- package/dist/cjs/src/poloniex.js +1311 -81
- package/dist/cjs/src/poloniexfutures.js +1 -1
- package/dist/cjs/src/pro/binance.js +94 -94
- package/dist/cjs/src/pro/bingx.js +63 -52
- package/dist/cjs/src/pro/poloniexfutures.js +1 -1
- package/dist/cjs/src/whitebit.js +4 -2
- package/js/ccxt.d.ts +3 -9
- package/js/ccxt.js +2 -6
- package/js/src/abstract/bingx.d.ts +1 -0
- package/js/src/abstract/bitmart.d.ts +1 -0
- package/js/src/abstract/poloniex.d.ts +36 -0
- package/js/src/abstract/poloniexfutures.js +6 -0
- package/js/src/base/Exchange.d.ts +11 -2
- package/js/src/base/Exchange.js +22 -0
- package/js/src/base/types.d.ts +31 -0
- package/js/src/binance.d.ts +98 -97
- package/js/src/binance.js +106 -101
- package/js/src/bingx.js +64 -42
- package/js/src/bitget.js +1 -5
- package/js/src/bitmart.d.ts +1 -0
- package/js/src/bitmart.js +15 -1
- package/js/src/bitopro.js +1 -0
- package/js/src/bitrue.js +1 -0
- package/js/src/cex.js +1 -0
- package/js/src/coinbaseexchange.js +1 -0
- package/js/src/deribit.js +1 -0
- package/js/src/hashkey.js +4 -2
- package/js/src/kraken.d.ts +1 -0
- package/js/src/kraken.js +83 -6
- package/js/src/kucoin.js +4 -2
- package/js/src/mexc.js +8 -4
- package/js/src/okx.js +58 -46
- package/js/src/poloniex.d.ts +109 -1
- package/js/src/poloniex.js +1311 -81
- package/js/src/poloniexfutures.js +6 -0
- package/js/src/pro/binance.d.ts +94 -94
- package/js/src/pro/binance.js +94 -94
- package/js/src/pro/bingx.js +63 -52
- package/js/src/pro/poloniexfutures.js +6 -0
- package/js/src/whitebit.js +4 -2
- package/package.json +1 -1
package/js/src/bingx.js
CHANGED
|
@@ -39,6 +39,7 @@ export default class bingx extends Exchange {
|
|
|
39
39
|
'createOrder': true,
|
|
40
40
|
'createOrders': true,
|
|
41
41
|
'createOrderWithTakeProfitAndStopLoss': true,
|
|
42
|
+
'createReduceOnlyOrder': true,
|
|
42
43
|
'createStopLossOrder': true,
|
|
43
44
|
'createStopOrder': true,
|
|
44
45
|
'createTakeProfitOrder': true,
|
|
@@ -156,6 +157,7 @@ export default class bingx extends Exchange {
|
|
|
156
157
|
'trade/myTrades': 2,
|
|
157
158
|
'user/commissionRate': 5,
|
|
158
159
|
'account/balance': 2,
|
|
160
|
+
'account/allAccountBalance': 2,
|
|
159
161
|
},
|
|
160
162
|
'post': {
|
|
161
163
|
'trade/order': 2,
|
|
@@ -1454,62 +1456,82 @@ export default class bingx extends Exchange {
|
|
|
1454
1456
|
// spot
|
|
1455
1457
|
//
|
|
1456
1458
|
// {
|
|
1457
|
-
// "code":
|
|
1458
|
-
// "
|
|
1459
|
-
//
|
|
1460
|
-
// [
|
|
1461
|
-
//
|
|
1462
|
-
//
|
|
1463
|
-
//
|
|
1464
|
-
// [
|
|
1465
|
-
// "26324.71",
|
|
1466
|
-
// "0.31888"
|
|
1467
|
-
// ],
|
|
1468
|
-
// ],
|
|
1469
|
-
// "asks": [
|
|
1470
|
-
// [
|
|
1471
|
-
// "26340.30",
|
|
1472
|
-
// "6.45221"
|
|
1459
|
+
// "code":0,
|
|
1460
|
+
// "timestamp":1743240504535,
|
|
1461
|
+
// "data":{
|
|
1462
|
+
// "bids":[
|
|
1463
|
+
// ["83775.39","1.981875"],
|
|
1464
|
+
// ["83775.38","0.001076"],
|
|
1465
|
+
// ["83775.34","0.254716"],
|
|
1473
1466
|
// ],
|
|
1474
|
-
// [
|
|
1475
|
-
//
|
|
1476
|
-
//
|
|
1467
|
+
// "asks":[
|
|
1468
|
+
// ["83985.40","0.000013"],
|
|
1469
|
+
// ["83980.00","0.000011"],
|
|
1470
|
+
// ["83975.70","0.000061000000000000005"],
|
|
1477
1471
|
// ],
|
|
1478
|
-
//
|
|
1472
|
+
// "ts":1743240504535,
|
|
1473
|
+
// "lastUpdateId":13565639906
|
|
1474
|
+
// }
|
|
1479
1475
|
// }
|
|
1480
1476
|
//
|
|
1481
|
-
//
|
|
1477
|
+
//
|
|
1478
|
+
// linear swap
|
|
1482
1479
|
//
|
|
1483
1480
|
// {
|
|
1484
|
-
// "code":
|
|
1485
|
-
// "msg":
|
|
1486
|
-
// "data":
|
|
1487
|
-
//
|
|
1488
|
-
//
|
|
1489
|
-
//
|
|
1490
|
-
//
|
|
1491
|
-
//
|
|
1481
|
+
// "code":0,
|
|
1482
|
+
// "msg":"",
|
|
1483
|
+
// "data":{
|
|
1484
|
+
// "T":1743240836255,
|
|
1485
|
+
// "bids":[
|
|
1486
|
+
// ["83760.7","7.0861"],
|
|
1487
|
+
// ["83760.6","0.0044"],
|
|
1488
|
+
// ["83757.7","1.9526"],
|
|
1492
1489
|
// ],
|
|
1493
|
-
// [
|
|
1494
|
-
//
|
|
1495
|
-
//
|
|
1490
|
+
// "asks":[
|
|
1491
|
+
// ["83784.3","8.3531"],
|
|
1492
|
+
// ["83782.8","23.7289"],
|
|
1493
|
+
// ["83780.1","18.0617"],
|
|
1496
1494
|
// ],
|
|
1497
|
-
//
|
|
1498
|
-
//
|
|
1499
|
-
//
|
|
1500
|
-
//
|
|
1501
|
-
// "43616.00000000"
|
|
1495
|
+
// "bidsCoin":[
|
|
1496
|
+
// ["83760.7","0.0007"],
|
|
1497
|
+
// ["83760.6","0.0000"],
|
|
1498
|
+
// ["83757.7","0.0002"],
|
|
1502
1499
|
// ],
|
|
1503
|
-
// [
|
|
1504
|
-
//
|
|
1505
|
-
//
|
|
1500
|
+
// "asksCoin":[
|
|
1501
|
+
// ["83784.3","0.0008"],
|
|
1502
|
+
// ["83782.8","0.0024"],
|
|
1503
|
+
// ["83780.1","0.0018"],
|
|
1504
|
+
// ]
|
|
1505
|
+
// }
|
|
1506
|
+
// }
|
|
1507
|
+
//
|
|
1508
|
+
// inverse swap
|
|
1509
|
+
//
|
|
1510
|
+
// {
|
|
1511
|
+
// "code":0,
|
|
1512
|
+
// "msg":"",
|
|
1513
|
+
// "timestamp":1743240979146,
|
|
1514
|
+
// "data":{
|
|
1515
|
+
// "T":1743240978691,
|
|
1516
|
+
// "bids":[
|
|
1517
|
+
// ["83611.4","241.0"],
|
|
1518
|
+
// ["83611.3","1.0"],
|
|
1519
|
+
// ["83602.9","666.0"],
|
|
1506
1520
|
// ],
|
|
1507
|
-
//
|
|
1521
|
+
// "asks":[
|
|
1522
|
+
// ["83645.0","4253.0"],
|
|
1523
|
+
// ["83640.5","3188.0"],
|
|
1524
|
+
// ["83636.0","5540.0"],
|
|
1525
|
+
// ]
|
|
1526
|
+
// }
|
|
1508
1527
|
// }
|
|
1509
1528
|
//
|
|
1510
1529
|
const orderbook = this.safeDict(response, 'data', {});
|
|
1530
|
+
const nonce = this.safeInteger(orderbook, 'lastUpdateId');
|
|
1511
1531
|
const timestamp = this.safeInteger2(orderbook, 'T', 'ts');
|
|
1512
|
-
|
|
1532
|
+
const result = this.parseOrderBook(orderbook, market['symbol'], timestamp, 'bids', 'asks', 0, 1);
|
|
1533
|
+
result['nonce'] = nonce;
|
|
1534
|
+
return result;
|
|
1513
1535
|
}
|
|
1514
1536
|
/**
|
|
1515
1537
|
* @method
|
package/js/src/bitget.js
CHANGED
|
@@ -1744,11 +1744,7 @@ export default class bitget extends Exchange {
|
|
|
1744
1744
|
if (this.options['adjustForTimeDifference']) {
|
|
1745
1745
|
await this.loadTimeDifference();
|
|
1746
1746
|
}
|
|
1747
|
-
const
|
|
1748
|
-
let types = this.safeValue(this.options, 'fetchMarkets', ['spot', 'swap']);
|
|
1749
|
-
if (sandboxMode) {
|
|
1750
|
-
types = ['swap'];
|
|
1751
|
-
}
|
|
1747
|
+
const types = this.safeValue(this.options, 'fetchMarkets', ['spot', 'swap']);
|
|
1752
1748
|
const promises = [];
|
|
1753
1749
|
let fetchMargins = false;
|
|
1754
1750
|
for (let i = 0; i < types.length; i++) {
|
package/js/src/bitmart.d.ts
CHANGED
|
@@ -634,6 +634,7 @@ export default class bitmart extends Exchange {
|
|
|
634
634
|
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-plan-order-signed
|
|
635
635
|
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-tp-sl-order-signed
|
|
636
636
|
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-preset-plan-order-signed
|
|
637
|
+
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-limit-order-signed
|
|
637
638
|
* @param {string} id order id
|
|
638
639
|
* @param {string} symbol unified symbol of the market to edit an order in
|
|
639
640
|
* @param {string} type 'market' or 'limit'
|
package/js/src/bitmart.js
CHANGED
|
@@ -39,6 +39,7 @@ export default class bitmart extends Exchange {
|
|
|
39
39
|
'createOrder': true,
|
|
40
40
|
'createOrders': true,
|
|
41
41
|
'createPostOnlyOrder': true,
|
|
42
|
+
'createReduceOnlyOrder': true,
|
|
42
43
|
'createStopLimitOrder': false,
|
|
43
44
|
'createStopMarketOrder': false,
|
|
44
45
|
'createStopOrder': false,
|
|
@@ -256,6 +257,7 @@ export default class bitmart extends Exchange {
|
|
|
256
257
|
'contract/private/submit-tp-sl-order': 2.5,
|
|
257
258
|
'contract/private/modify-plan-order': 2.5,
|
|
258
259
|
'contract/private/modify-preset-plan-order': 2.5,
|
|
260
|
+
'contract/private/modify-limit-order': 2.5,
|
|
259
261
|
'contract/private/modify-tp-sl-order': 2.5,
|
|
260
262
|
'contract/private/submit-trail-order': 2.5,
|
|
261
263
|
'contract/private/cancel-trail-order': 1.5, // weight is not provided by the exchange, is set as ordinary order
|
|
@@ -5116,6 +5118,7 @@ export default class bitmart extends Exchange {
|
|
|
5116
5118
|
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-plan-order-signed
|
|
5117
5119
|
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-tp-sl-order-signed
|
|
5118
5120
|
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-preset-plan-order-signed
|
|
5121
|
+
* @see https://developer-pro.bitmart.com/en/futuresv2/#modify-limit-order-signed
|
|
5119
5122
|
* @param {string} id order id
|
|
5120
5123
|
* @param {string} symbol unified symbol of the market to edit an order in
|
|
5121
5124
|
* @param {string} type 'market' or 'limit'
|
|
@@ -5151,6 +5154,7 @@ export default class bitmart extends Exchange {
|
|
|
5151
5154
|
const isTakeProfit = takeProfitPrice !== undefined;
|
|
5152
5155
|
const isPresetStopLoss = presetStopLoss !== undefined;
|
|
5153
5156
|
const isPresetTakeProfit = presetTakeProfit !== undefined;
|
|
5157
|
+
const isLimitOrder = (type === 'limit');
|
|
5154
5158
|
const request = {
|
|
5155
5159
|
'symbol': market['id'],
|
|
5156
5160
|
};
|
|
@@ -5226,8 +5230,18 @@ export default class bitmart extends Exchange {
|
|
|
5226
5230
|
// }
|
|
5227
5231
|
//
|
|
5228
5232
|
}
|
|
5233
|
+
else if (isLimitOrder) {
|
|
5234
|
+
request['order_id'] = this.parseToInt(id); // reparse id as int this endpoint is the only one requiring it
|
|
5235
|
+
if (amount !== undefined) {
|
|
5236
|
+
request['size'] = this.amountToPrecision(symbol, amount);
|
|
5237
|
+
}
|
|
5238
|
+
if (price !== undefined) {
|
|
5239
|
+
request['price'] = this.priceToPrecision(symbol, price);
|
|
5240
|
+
}
|
|
5241
|
+
response = await this.privatePostContractPrivateModifyLimitOrder(this.extend(request, params));
|
|
5242
|
+
}
|
|
5229
5243
|
else {
|
|
5230
|
-
throw new NotSupported(this.id + ' editOrder() only supports trigger, stop loss and take profit orders');
|
|
5244
|
+
throw new NotSupported(this.id + ' editOrder() only supports limit, trigger, stop loss and take profit orders');
|
|
5231
5245
|
}
|
|
5232
5246
|
const data = this.safeDict(response, 'data', {});
|
|
5233
5247
|
return this.parseOrder(data, market);
|
package/js/src/bitopro.js
CHANGED
package/js/src/bitrue.js
CHANGED
|
@@ -33,6 +33,7 @@ export default class bitrue extends Exchange {
|
|
|
33
33
|
'createMarketOrderWithCost': false,
|
|
34
34
|
'createMarketSellOrderWithCost': false,
|
|
35
35
|
'createOrder': true,
|
|
36
|
+
'createReduceOnlyOrder': true,
|
|
36
37
|
'createStopLimitOrder': true,
|
|
37
38
|
'createStopMarketOrder': true,
|
|
38
39
|
'createStopOrder': true,
|
package/js/src/cex.js
CHANGED
|
@@ -29,6 +29,7 @@ export default class coinbaseexchange extends Exchange {
|
|
|
29
29
|
'cancelOrder': true,
|
|
30
30
|
'createDepositAddress': true,
|
|
31
31
|
'createOrder': true,
|
|
32
|
+
'createReduceOnlyOrder': false,
|
|
32
33
|
'createStopLimitOrder': true,
|
|
33
34
|
'createStopMarketOrder': true,
|
|
34
35
|
'createStopOrder': true,
|
package/js/src/deribit.js
CHANGED
package/js/src/hashkey.js
CHANGED
|
@@ -2441,8 +2441,10 @@ export default class hashkey extends Exchange {
|
|
|
2441
2441
|
if (!market['spot']) {
|
|
2442
2442
|
throw new NotSupported(this.id + ' createMarketBuyOrderWithCost() is supported for spot markets only');
|
|
2443
2443
|
}
|
|
2444
|
-
|
|
2445
|
-
|
|
2444
|
+
const req = {
|
|
2445
|
+
'cost': cost,
|
|
2446
|
+
};
|
|
2447
|
+
return await this.createOrder(symbol, 'market', 'buy', cost, undefined, this.extend(req, params));
|
|
2446
2448
|
}
|
|
2447
2449
|
/**
|
|
2448
2450
|
* @method
|
package/js/src/kraken.d.ts
CHANGED
|
@@ -43,6 +43,7 @@ export default class kraken extends Exchange {
|
|
|
43
43
|
* @returns {object} an associative dictionary of currencies
|
|
44
44
|
*/
|
|
45
45
|
fetchCurrencies(params?: {}): Promise<Currencies>;
|
|
46
|
+
safeCurrencyCode(currencyId: Str, currency?: Currency): Str;
|
|
46
47
|
/**
|
|
47
48
|
* @method
|
|
48
49
|
* @name kraken#fetchTradingFee
|
package/js/src/kraken.js
CHANGED
|
@@ -222,13 +222,13 @@ export default class kraken extends Exchange {
|
|
|
222
222
|
},
|
|
223
223
|
},
|
|
224
224
|
'commonCurrencies': {
|
|
225
|
+
// about X & Z prefixes and .S & .M suffixes, see comment under fetchCurrencies
|
|
225
226
|
'LUNA': 'LUNC',
|
|
226
227
|
'LUNA2': 'LUNA',
|
|
227
228
|
'REPV2': 'REP',
|
|
228
229
|
'REP': 'REPV1',
|
|
229
230
|
'UST': 'USTC',
|
|
230
231
|
'XBT': 'BTC',
|
|
231
|
-
'XBT.M': 'BTC.M',
|
|
232
232
|
'XDG': 'DOGE',
|
|
233
233
|
},
|
|
234
234
|
'options': {
|
|
@@ -768,9 +768,48 @@ export default class kraken extends Exchange {
|
|
|
768
768
|
// {
|
|
769
769
|
// "error": [],
|
|
770
770
|
// "result": {
|
|
771
|
-
// "
|
|
771
|
+
// "ATOM": {
|
|
772
772
|
// "aclass": "currency",
|
|
773
|
-
// "altname": "
|
|
773
|
+
// "altname": "ATOM",
|
|
774
|
+
// "collateral_value": "0.7",
|
|
775
|
+
// "decimals": 8,
|
|
776
|
+
// "display_decimals": 6,
|
|
777
|
+
// "margin_rate": 0.02,
|
|
778
|
+
// "status": "enabled",
|
|
779
|
+
// },
|
|
780
|
+
// "ATOM.S": {
|
|
781
|
+
// "aclass": "currency",
|
|
782
|
+
// "altname": "ATOM.S",
|
|
783
|
+
// "decimals": 8,
|
|
784
|
+
// "display_decimals": 6,
|
|
785
|
+
// "status": "enabled",
|
|
786
|
+
// },
|
|
787
|
+
// "XXBT": {
|
|
788
|
+
// "aclass": "currency",
|
|
789
|
+
// "altname": "XBT",
|
|
790
|
+
// "decimals": 10,
|
|
791
|
+
// "display_decimals": 5,
|
|
792
|
+
// "margin_rate": 0.01,
|
|
793
|
+
// "status": "enabled",
|
|
794
|
+
// },
|
|
795
|
+
// "XETH": {
|
|
796
|
+
// "aclass": "currency",
|
|
797
|
+
// "altname": "ETH",
|
|
798
|
+
// "decimals": 10,
|
|
799
|
+
// "display_decimals": 5
|
|
800
|
+
// "margin_rate": 0.02,
|
|
801
|
+
// "status": "enabled",
|
|
802
|
+
// },
|
|
803
|
+
// "XBT.M": {
|
|
804
|
+
// "aclass": "currency",
|
|
805
|
+
// "altname": "XBT.M",
|
|
806
|
+
// "decimals": 10,
|
|
807
|
+
// "display_decimals": 5
|
|
808
|
+
// "status": "enabled",
|
|
809
|
+
// },
|
|
810
|
+
// "ETH.M": {
|
|
811
|
+
// "aclass": "currency",
|
|
812
|
+
// "altname": "ETH.M",
|
|
774
813
|
// "decimals": 10,
|
|
775
814
|
// "display_decimals": 5
|
|
776
815
|
// "status": "enabled",
|
|
@@ -789,7 +828,30 @@ export default class kraken extends Exchange {
|
|
|
789
828
|
// see: https://support.kraken.com/hc/en-us/articles/201893608-What-are-the-withdrawal-fees-
|
|
790
829
|
// to add support for multiple withdrawal/deposit methods and
|
|
791
830
|
// differentiated fees for each particular method
|
|
792
|
-
|
|
831
|
+
//
|
|
832
|
+
// Notes about abbreviations:
|
|
833
|
+
// Z and X prefixes: https://support.kraken.com/hc/en-us/articles/360001206766-Bitcoin-currency-code-XBT-vs-BTC
|
|
834
|
+
// S and M suffixes: https://support.kraken.com/hc/en-us/articles/360039879471-What-is-Asset-S-and-Asset-M-
|
|
835
|
+
//
|
|
836
|
+
let code = this.safeCurrencyCode(id);
|
|
837
|
+
// the below can not be reliable done in `safeCurrencyCode`, so we have to do it here
|
|
838
|
+
if (id.indexOf('.') < 0) {
|
|
839
|
+
const altName = this.safeString(currency, 'altname');
|
|
840
|
+
// handle cases like below:
|
|
841
|
+
//
|
|
842
|
+
// id | altname
|
|
843
|
+
// ---------------
|
|
844
|
+
// XXBT | XBT
|
|
845
|
+
// ZUSD | USD
|
|
846
|
+
if (id !== altName && (id.startsWith('X') || id.startsWith('Z'))) {
|
|
847
|
+
code = this.safeCurrencyCode(altName);
|
|
848
|
+
// also, add map in commonCurrencies:
|
|
849
|
+
this.commonCurrencies[id] = code;
|
|
850
|
+
}
|
|
851
|
+
else {
|
|
852
|
+
code = this.safeCurrencyCode(id);
|
|
853
|
+
}
|
|
854
|
+
}
|
|
793
855
|
const precision = this.parseNumber(this.parsePrecision(this.safeString(currency, 'decimals')));
|
|
794
856
|
// assumes all currencies are active except those listed above
|
|
795
857
|
const active = this.safeString(currency, 'status') === 'enabled';
|
|
@@ -818,6 +880,19 @@ export default class kraken extends Exchange {
|
|
|
818
880
|
}
|
|
819
881
|
return result;
|
|
820
882
|
}
|
|
883
|
+
safeCurrencyCode(currencyId, currency = undefined) {
|
|
884
|
+
if (currencyId === undefined) {
|
|
885
|
+
return currencyId;
|
|
886
|
+
}
|
|
887
|
+
if (currencyId.indexOf('.') > 0) {
|
|
888
|
+
// if ID contains .M, .S or .F, then it can't contain X or Z prefix. in such case, ID equals to ALTNAME
|
|
889
|
+
const parts = currencyId.split('.');
|
|
890
|
+
const firstPart = this.safeString(parts, 0);
|
|
891
|
+
const secondPart = this.safeString(parts, 1);
|
|
892
|
+
return super.safeCurrencyCode(firstPart, currency) + '.' + secondPart;
|
|
893
|
+
}
|
|
894
|
+
return super.safeCurrencyCode(currencyId, currency);
|
|
895
|
+
}
|
|
821
896
|
/**
|
|
822
897
|
* @method
|
|
823
898
|
* @name kraken#fetchTradingFee
|
|
@@ -1514,8 +1589,10 @@ export default class kraken extends Exchange {
|
|
|
1514
1589
|
async createMarketOrderWithCost(symbol, side, cost, params = {}) {
|
|
1515
1590
|
await this.loadMarkets();
|
|
1516
1591
|
// only buy orders are supported by the endpoint
|
|
1517
|
-
|
|
1518
|
-
|
|
1592
|
+
const req = {
|
|
1593
|
+
'cost': cost,
|
|
1594
|
+
};
|
|
1595
|
+
return await this.createOrder(symbol, 'market', side, cost, undefined, this.extend(req, params));
|
|
1519
1596
|
}
|
|
1520
1597
|
/**
|
|
1521
1598
|
* @method
|
package/js/src/kucoin.js
CHANGED
|
@@ -2296,8 +2296,10 @@ export default class kucoin extends Exchange {
|
|
|
2296
2296
|
*/
|
|
2297
2297
|
async createMarketOrderWithCost(symbol, side, cost, params = {}) {
|
|
2298
2298
|
await this.loadMarkets();
|
|
2299
|
-
|
|
2300
|
-
|
|
2299
|
+
const req = {
|
|
2300
|
+
'cost': cost,
|
|
2301
|
+
};
|
|
2302
|
+
return await this.createOrder(symbol, 'market', side, cost, undefined, this.extend(req, params));
|
|
2301
2303
|
}
|
|
2302
2304
|
/**
|
|
2303
2305
|
* @method
|
package/js/src/mexc.js
CHANGED
|
@@ -2254,8 +2254,10 @@ export default class mexc extends Exchange {
|
|
|
2254
2254
|
if (!market['spot']) {
|
|
2255
2255
|
throw new NotSupported(this.id + ' createMarketBuyOrderWithCost() supports spot orders only');
|
|
2256
2256
|
}
|
|
2257
|
-
|
|
2258
|
-
|
|
2257
|
+
const req = {
|
|
2258
|
+
'cost': cost,
|
|
2259
|
+
};
|
|
2260
|
+
return await this.createOrder(symbol, 'market', 'buy', 0, undefined, this.extend(req, params));
|
|
2259
2261
|
}
|
|
2260
2262
|
/**
|
|
2261
2263
|
* @method
|
|
@@ -2273,8 +2275,10 @@ export default class mexc extends Exchange {
|
|
|
2273
2275
|
if (!market['spot']) {
|
|
2274
2276
|
throw new NotSupported(this.id + ' createMarketBuyOrderWithCost() supports spot orders only');
|
|
2275
2277
|
}
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
+
const req = {
|
|
2279
|
+
'cost': cost,
|
|
2280
|
+
};
|
|
2281
|
+
return await this.createOrder(symbol, 'market', 'sell', 0, undefined, this.extend(req, params));
|
|
2278
2282
|
}
|
|
2279
2283
|
/**
|
|
2280
2284
|
* @method
|
package/js/src/okx.js
CHANGED
|
@@ -984,71 +984,64 @@ export default class okx extends Exchange {
|
|
|
984
984
|
'networks': {
|
|
985
985
|
'BTC': 'Bitcoin',
|
|
986
986
|
'BTCLN': 'Lightning',
|
|
987
|
+
'BTCLIGHTNING': 'Lightning',
|
|
987
988
|
'BEP20': 'BSC',
|
|
989
|
+
'BRC20': 'BRC20',
|
|
988
990
|
'ERC20': 'ERC20',
|
|
989
991
|
'TRC20': 'TRC20',
|
|
990
992
|
'CRC20': 'Crypto',
|
|
991
|
-
// sorted
|
|
992
993
|
'ACA': 'Acala',
|
|
993
994
|
'ALGO': 'Algorand',
|
|
994
|
-
'BHP': 'BHP',
|
|
995
995
|
'APT': 'Aptos',
|
|
996
|
+
'SCROLL': 'Scroll',
|
|
996
997
|
'ARBONE': 'Arbitrum One',
|
|
997
998
|
'AVAXC': 'Avalanche C-Chain',
|
|
998
999
|
'AVAXX': 'Avalanche X-Chain',
|
|
999
|
-
'
|
|
1000
|
+
'BASE': 'Base',
|
|
1001
|
+
'SUI': 'SUI',
|
|
1002
|
+
'ZKSYNCERA': 'zkSync Era',
|
|
1003
|
+
'LINEA': 'Linea',
|
|
1000
1004
|
'AR': 'Arweave',
|
|
1001
1005
|
'ASTR': 'Astar',
|
|
1002
1006
|
'BCH': 'BitcoinCash',
|
|
1003
1007
|
'BSV': 'Bitcoin SV',
|
|
1004
|
-
'BTM': 'Bytom',
|
|
1005
1008
|
'ADA': 'Cardano',
|
|
1006
1009
|
'CSPR': 'Casper',
|
|
1007
1010
|
'CELO': 'CELO',
|
|
1008
1011
|
'XCH': 'Chia',
|
|
1009
|
-
'CHZ': 'Chiliz',
|
|
1012
|
+
// 'CHZ': 'Chiliz', TBD: Chiliz 2.0 Chain vs Chiliz Chain
|
|
1010
1013
|
'ATOM': 'Cosmos',
|
|
1011
|
-
'TRUE': 'TrueChain',
|
|
1012
|
-
'DCR': 'Decred',
|
|
1013
1014
|
'DGB': 'Digibyte',
|
|
1014
1015
|
'DOGE': 'Dogecoin',
|
|
1015
|
-
'XEC': 'XEC',
|
|
1016
1016
|
'EGLD': 'Elrond',
|
|
1017
|
+
'CFX': 'Conflux',
|
|
1017
1018
|
'EOS': 'EOS',
|
|
1019
|
+
'CORE': 'CORE',
|
|
1018
1020
|
'ETC': 'Ethereum Classic',
|
|
1019
1021
|
'ETHW': 'EthereumPow',
|
|
1020
|
-
'FTM': 'Fantom',
|
|
1022
|
+
// 'FTM': 'Fantom', 'Sonic' TBD
|
|
1021
1023
|
'FIL': 'Filecoin',
|
|
1022
|
-
'FLOW': 'FLOW',
|
|
1023
|
-
'FSN': 'Fusion',
|
|
1024
1024
|
'ONE': 'Harmony',
|
|
1025
1025
|
'HBAR': 'Hedera',
|
|
1026
|
-
'HNT': 'Helium',
|
|
1027
|
-
'ZEN': 'Horizen',
|
|
1028
1026
|
'ICX': 'ICON',
|
|
1029
1027
|
'ICP': 'Dfinity',
|
|
1030
1028
|
'IOST': 'IOST',
|
|
1031
1029
|
'IOTA': 'MIOTA',
|
|
1032
|
-
'KDA': 'Kadena',
|
|
1033
|
-
'KAR': 'KAR',
|
|
1034
1030
|
'KLAY': 'Klaytn',
|
|
1035
1031
|
'KSM': 'Kusama',
|
|
1036
1032
|
'LSK': 'Lisk',
|
|
1037
1033
|
'LTC': 'Litecoin',
|
|
1038
1034
|
'METIS': 'Metis',
|
|
1039
1035
|
'MINA': 'Mina',
|
|
1040
|
-
'XMR': 'Monero',
|
|
1041
1036
|
'GLRM': 'Moonbeam',
|
|
1042
1037
|
'MOVR': 'Moonriver',
|
|
1043
1038
|
'NANO': 'Nano',
|
|
1044
1039
|
'NEAR': 'NEAR',
|
|
1045
|
-
'NAS': 'Nebulas',
|
|
1046
|
-
'NEM': 'New Economy Movement',
|
|
1047
1040
|
'NULS': 'NULS',
|
|
1048
1041
|
'OASYS': 'OASYS',
|
|
1049
|
-
'OKC': 'OKC',
|
|
1050
1042
|
'ONT': 'Ontology',
|
|
1051
1043
|
'OPTIMISM': 'Optimism',
|
|
1044
|
+
// 'OP': 'Optimism', or Optimism (V2), TBD
|
|
1052
1045
|
'LAT': 'PlatON',
|
|
1053
1046
|
'DOT': 'Polkadot',
|
|
1054
1047
|
'MATIC': 'Polygon',
|
|
@@ -1061,35 +1054,54 @@ export default class okx extends Exchange {
|
|
|
1061
1054
|
'XTZ': 'Tezos',
|
|
1062
1055
|
'TON': 'TON',
|
|
1063
1056
|
'THETA': 'Theta',
|
|
1064
|
-
'VSYS': 'VSYSTEMS',
|
|
1065
|
-
'WAVES': 'WAVES',
|
|
1066
1057
|
'WAX': 'Wax',
|
|
1067
|
-
'ZEC': 'Zcash',
|
|
1068
1058
|
'ZIL': 'Zilliqa',
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
//
|
|
1072
|
-
//
|
|
1073
|
-
//
|
|
1074
|
-
//
|
|
1075
|
-
//
|
|
1076
|
-
//
|
|
1077
|
-
//
|
|
1078
|
-
//
|
|
1079
|
-
//
|
|
1080
|
-
//
|
|
1081
|
-
//
|
|
1082
|
-
//
|
|
1083
|
-
//
|
|
1084
|
-
//
|
|
1085
|
-
//
|
|
1086
|
-
//
|
|
1087
|
-
//
|
|
1088
|
-
//
|
|
1089
|
-
//
|
|
1090
|
-
//
|
|
1091
|
-
//
|
|
1092
|
-
//
|
|
1059
|
+
// non-supported known network: CRP. KAVA, TAIKO, BOB, GNO, BLAST, RSK, SEI, MANTLE, HYPE, RUNE, OSMO, XIN, WEMIX, HT, FSN, NEO, TLOS, CANTO, SCRT, AURORA, XMR
|
|
1060
|
+
// others:
|
|
1061
|
+
// "OKTC",
|
|
1062
|
+
// "X Layer",
|
|
1063
|
+
// "Polygon (Bridged)",
|
|
1064
|
+
// "BTCK-OKTC",
|
|
1065
|
+
// "ETHK-OKTC",
|
|
1066
|
+
// "Starknet",
|
|
1067
|
+
// "LTCK-OKTC",
|
|
1068
|
+
// "XRPK-OKTC",
|
|
1069
|
+
// "BCHK-OKTC",
|
|
1070
|
+
// "ETCK-OKTC",
|
|
1071
|
+
// "Endurance Smart Chain",
|
|
1072
|
+
// "Berachain",
|
|
1073
|
+
// "CELO-TOKEN",
|
|
1074
|
+
// "CFX_EVM",
|
|
1075
|
+
// "Cortex",
|
|
1076
|
+
// "DAIK-OKTC",
|
|
1077
|
+
// "Dora Vota Mainnet",
|
|
1078
|
+
// "DOTK-OKTC",
|
|
1079
|
+
// "DYDX",
|
|
1080
|
+
// "AELF",
|
|
1081
|
+
// "Enjin Relay Chain",
|
|
1082
|
+
// "FEVM",
|
|
1083
|
+
// "FILK-OKTC",
|
|
1084
|
+
// "Flare",
|
|
1085
|
+
// "Gravity Alpha Mainnet",
|
|
1086
|
+
// "INJ",
|
|
1087
|
+
// "Story",
|
|
1088
|
+
// "LINKK-OKTC",
|
|
1089
|
+
// "Terra",
|
|
1090
|
+
// "Terra Classic",
|
|
1091
|
+
// "Terra Classic (USTC)",
|
|
1092
|
+
// "MERLIN Network",
|
|
1093
|
+
// "Layer 3",
|
|
1094
|
+
// "PI",
|
|
1095
|
+
// "Ronin",
|
|
1096
|
+
// "Quantum",
|
|
1097
|
+
// "SHIBK-OKTC",
|
|
1098
|
+
// "SUSHIK-OKTC",
|
|
1099
|
+
// "Celestia",
|
|
1100
|
+
// "TRXK-OKTC",
|
|
1101
|
+
// "UNIK-OKTC",
|
|
1102
|
+
// "Venom",
|
|
1103
|
+
// "WBTCK-OKTC",
|
|
1104
|
+
// "ZetaChain",
|
|
1093
1105
|
},
|
|
1094
1106
|
'fetchOpenInterestHistory': {
|
|
1095
1107
|
'timeframes': {
|