ccxt 4.2.77 → 4.2.78
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/build.sh +1 -1
- package/dist/ccxt.browser.js +216 -47
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/bybit.js +6 -2
- package/dist/cjs/src/coinbase.js +22 -9
- package/dist/cjs/src/gate.js +1 -0
- package/dist/cjs/src/htx.js +36 -27
- package/dist/cjs/src/hyperliquid.js +6 -4
- package/dist/cjs/src/kucoin.js +52 -0
- package/dist/cjs/src/okcoin.js +27 -1
- package/dist/cjs/src/okx.js +18 -0
- package/dist/cjs/src/woo.js +47 -3
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/base/types.d.ts +2 -2
- package/js/src/bybit.js +6 -2
- package/js/src/coinbase.d.ts +2 -2
- package/js/src/coinbase.js +22 -9
- package/js/src/gate.js +1 -0
- package/js/src/htx.js +36 -27
- package/js/src/hyperliquid.js +6 -4
- package/js/src/kucoin.js +52 -0
- package/js/src/okcoin.js +27 -1
- package/js/src/okx.js +18 -0
- package/js/src/woo.d.ts +2 -0
- package/js/src/woo.js +47 -3
- package/package.json +1 -1
- package/skip-tests.json +5 -1
package/README.md
CHANGED
|
@@ -213,13 +213,13 @@ console.log(version, Object.keys(exchanges));
|
|
|
213
213
|
|
|
214
214
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
|
215
215
|
|
|
216
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.2.
|
|
217
|
-
* unpkg: https://unpkg.com/ccxt@4.2.
|
|
216
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.2.78/dist/ccxt.browser.js
|
|
217
|
+
* unpkg: https://unpkg.com/ccxt@4.2.78/dist/ccxt.browser.js
|
|
218
218
|
|
|
219
219
|
CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
|
|
220
220
|
|
|
221
221
|
```HTML
|
|
222
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.2.
|
|
222
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.2.78/dist/ccxt.browser.js"></script>
|
|
223
223
|
```
|
|
224
224
|
|
|
225
225
|
Creates a global `ccxt` object:
|
package/build.sh
CHANGED
package/dist/ccxt.browser.js
CHANGED
|
@@ -91570,11 +91570,15 @@ class bybit extends _abstract_bybit_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"
|
|
|
91570
91570
|
const tier = info[i];
|
|
91571
91571
|
const marketId = this.safeString(info, 'symbol');
|
|
91572
91572
|
market = this.safeMarket(marketId);
|
|
91573
|
+
let minNotional = this.parseNumber('0');
|
|
91574
|
+
if (i !== 0) {
|
|
91575
|
+
minNotional = this.safeNumber(info[i - 1], 'riskLimitValue');
|
|
91576
|
+
}
|
|
91573
91577
|
tiers.push({
|
|
91574
91578
|
'tier': this.safeInteger(tier, 'id'),
|
|
91575
91579
|
'currency': market['settle'],
|
|
91576
|
-
'minNotional':
|
|
91577
|
-
'maxNotional':
|
|
91580
|
+
'minNotional': minNotional,
|
|
91581
|
+
'maxNotional': this.safeNumber(tier, 'riskLimitValue'),
|
|
91578
91582
|
'maintenanceMarginRate': this.safeNumber(tier, 'maintenanceMargin'),
|
|
91579
91583
|
'maxLeverage': this.safeNumber(tier, 'maxLeverage'),
|
|
91580
91584
|
'info': tier,
|
|
@@ -94524,7 +94528,10 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
94524
94528
|
* @returns {object[]} an array of objects representing market data
|
|
94525
94529
|
*/
|
|
94526
94530
|
const method = this.safeString(this.options, 'fetchMarkets', 'fetchMarketsV3');
|
|
94527
|
-
|
|
94531
|
+
if (method === 'fetchMarketsV3') {
|
|
94532
|
+
return await this.fetchMarketsV3(params);
|
|
94533
|
+
}
|
|
94534
|
+
return await this.fetchMarketsV2(params);
|
|
94528
94535
|
}
|
|
94529
94536
|
async fetchMarketsV2(params = {}) {
|
|
94530
94537
|
const response = await this.fetchCurrenciesFromCache(params);
|
|
@@ -94599,7 +94606,13 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
94599
94606
|
return result;
|
|
94600
94607
|
}
|
|
94601
94608
|
async fetchMarketsV3(params = {}) {
|
|
94602
|
-
const
|
|
94609
|
+
const promisesUnresolved = [
|
|
94610
|
+
this.v3PrivateGetBrokerageProducts(params),
|
|
94611
|
+
this.v3PrivateGetBrokerageTransactionSummary(params),
|
|
94612
|
+
];
|
|
94613
|
+
// const response = await this.v3PrivateGetBrokerageProducts (params);
|
|
94614
|
+
const promises = await Promise.all(promisesUnresolved);
|
|
94615
|
+
const response = this.safeDict(promises, 0, {});
|
|
94603
94616
|
//
|
|
94604
94617
|
// [
|
|
94605
94618
|
// {
|
|
@@ -94634,7 +94647,8 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
94634
94647
|
// ...
|
|
94635
94648
|
// ]
|
|
94636
94649
|
//
|
|
94637
|
-
const fees = await this.v3PrivateGetBrokerageTransactionSummary(params);
|
|
94650
|
+
// const fees = await this.v3PrivateGetBrokerageTransactionSummary (params);
|
|
94651
|
+
const fees = this.safeDict(promises, 1, {});
|
|
94638
94652
|
//
|
|
94639
94653
|
// {
|
|
94640
94654
|
// "total_volume": 0,
|
|
@@ -95351,6 +95365,9 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
95351
95365
|
const response = await this.v2PrivateGetAccountsAccountIdTransactions(this.extend(request, params));
|
|
95352
95366
|
const ledger = this.parseLedger(response['data'], currency, since, limit);
|
|
95353
95367
|
const length = ledger.length;
|
|
95368
|
+
if (length === 0) {
|
|
95369
|
+
return ledger;
|
|
95370
|
+
}
|
|
95354
95371
|
const lastIndex = length - 1;
|
|
95355
95372
|
const last = this.safeDict(ledger, lastIndex);
|
|
95356
95373
|
const pagination = this.safeDict(response, 'pagination', {});
|
|
@@ -95690,9 +95707,9 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
95690
95707
|
'fee': fee,
|
|
95691
95708
|
};
|
|
95692
95709
|
}
|
|
95693
|
-
async findAccountId(code) {
|
|
95710
|
+
async findAccountId(code, params = {}) {
|
|
95694
95711
|
await this.loadMarkets();
|
|
95695
|
-
await this.loadAccounts();
|
|
95712
|
+
await this.loadAccounts(false, params);
|
|
95696
95713
|
for (let i = 0; i < this.accounts.length; i++) {
|
|
95697
95714
|
const account = this.accounts[i];
|
|
95698
95715
|
if (account['code'] === code) {
|
|
@@ -95721,7 +95738,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
95721
95738
|
if (code === undefined) {
|
|
95722
95739
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' prepareAccountRequestWithCurrencyCode() method requires an account_id (or accountId) parameter OR a currency code argument');
|
|
95723
95740
|
}
|
|
95724
|
-
accountId = await this.findAccountId(code);
|
|
95741
|
+
accountId = await this.findAccountId(code, params);
|
|
95725
95742
|
if (accountId === undefined) {
|
|
95726
95743
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(this.id + ' prepareAccountRequestWithCurrencyCode() could not find account id for ' + code);
|
|
95727
95744
|
}
|
|
@@ -96865,7 +96882,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
96865
96882
|
if (code === undefined) {
|
|
96866
96883
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' withdraw() requires an account_id (or accountId) parameter OR a currency code argument');
|
|
96867
96884
|
}
|
|
96868
|
-
accountId = await this.findAccountId(code);
|
|
96885
|
+
accountId = await this.findAccountId(code, params);
|
|
96869
96886
|
if (accountId === undefined) {
|
|
96870
96887
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(this.id + ' withdraw() could not find account id for ' + code);
|
|
96871
96888
|
}
|
|
@@ -97090,7 +97107,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
97090
97107
|
if (code === undefined) {
|
|
97091
97108
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' deposit() requires an account_id (or accountId) parameter OR a currency code argument');
|
|
97092
97109
|
}
|
|
97093
|
-
accountId = await this.findAccountId(code);
|
|
97110
|
+
accountId = await this.findAccountId(code, params);
|
|
97094
97111
|
if (accountId === undefined) {
|
|
97095
97112
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(this.id + ' deposit() could not find account id for ' + code);
|
|
97096
97113
|
}
|
|
@@ -97160,7 +97177,7 @@ class coinbase extends _abstract_coinbase_js__WEBPACK_IMPORTED_MODULE_0__/* ["de
|
|
|
97160
97177
|
if (code === undefined) {
|
|
97161
97178
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ArgumentsRequired(this.id + ' fetchDeposit() requires an account_id (or accountId) parameter OR a currency code argument');
|
|
97162
97179
|
}
|
|
97163
|
-
accountId = await this.findAccountId(code);
|
|
97180
|
+
accountId = await this.findAccountId(code, params);
|
|
97164
97181
|
if (accountId === undefined) {
|
|
97165
97182
|
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError(this.id + ' fetchDeposit() could not find account id for ' + code);
|
|
97166
97183
|
}
|
|
@@ -135863,6 +135880,7 @@ class gate extends _abstract_gate_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"]
|
|
|
135863
135880
|
'rebate': 'https://api.gateio.ws/api/v4',
|
|
135864
135881
|
'earn': 'https://api.gateio.ws/api/v4',
|
|
135865
135882
|
'account': 'https://api.gateio.ws/api/v4',
|
|
135883
|
+
'loan': 'https://api.gateio.ws/api/v4',
|
|
135866
135884
|
},
|
|
135867
135885
|
},
|
|
135868
135886
|
'test': {
|
|
@@ -153585,42 +153603,47 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
153585
153603
|
// 'from': parseInt ((since / 1000).toString ()), spot only
|
|
153586
153604
|
// 'to': this.seconds (), spot only
|
|
153587
153605
|
};
|
|
153588
|
-
const
|
|
153589
|
-
params = this.omit(params, 'price');
|
|
153606
|
+
const priceType = this.safeStringN(params, ['priceType', 'price']);
|
|
153607
|
+
params = this.omit(params, ['priceType', 'price']);
|
|
153608
|
+
let until = undefined;
|
|
153609
|
+
[until, params] = this.handleParamInteger(params, 'until');
|
|
153610
|
+
const untilSeconds = (until !== undefined) ? this.parseToInt(until / 1000) : undefined;
|
|
153590
153611
|
if (market['contract']) {
|
|
153591
153612
|
if (limit !== undefined) {
|
|
153592
|
-
request['size'] = limit; // when using limit from
|
|
153613
|
+
request['size'] = limit; // when using limit: from & to are ignored
|
|
153593
153614
|
// https://huobiapi.github.io/docs/usdt_swap/v1/en/#general-get-kline-data
|
|
153594
153615
|
}
|
|
153595
153616
|
else {
|
|
153596
153617
|
limit = 2000; // only used for from/to calculation
|
|
153597
153618
|
}
|
|
153598
|
-
if (
|
|
153619
|
+
if (priceType === undefined) {
|
|
153599
153620
|
const duration = this.parseTimeframe(timeframe);
|
|
153621
|
+
let calcualtedEnd = undefined;
|
|
153600
153622
|
if (since === undefined) {
|
|
153601
153623
|
const now = this.seconds();
|
|
153602
153624
|
request['from'] = now - duration * (limit - 1);
|
|
153603
|
-
|
|
153625
|
+
calcualtedEnd = now;
|
|
153604
153626
|
}
|
|
153605
153627
|
else {
|
|
153606
153628
|
const start = this.parseToInt(since / 1000);
|
|
153607
153629
|
request['from'] = start;
|
|
153608
|
-
|
|
153630
|
+
calcualtedEnd = this.sum(start, duration * (limit - 1));
|
|
153609
153631
|
}
|
|
153632
|
+
request['to'] = (untilSeconds !== undefined) ? untilSeconds : calcualtedEnd;
|
|
153610
153633
|
}
|
|
153611
153634
|
}
|
|
153612
153635
|
let response = undefined;
|
|
153613
153636
|
if (market['future']) {
|
|
153614
153637
|
if (market['inverse']) {
|
|
153615
153638
|
request['symbol'] = market['id'];
|
|
153616
|
-
if (
|
|
153639
|
+
if (priceType === 'mark') {
|
|
153617
153640
|
response = await this.contractPublicGetIndexMarketHistoryMarkPriceKline(this.extend(request, params));
|
|
153618
153641
|
}
|
|
153619
|
-
else if (
|
|
153642
|
+
else if (priceType === 'index') {
|
|
153620
153643
|
response = await this.contractPublicGetIndexMarketHistoryIndex(this.extend(request, params));
|
|
153621
153644
|
}
|
|
153622
|
-
else if (
|
|
153623
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' +
|
|
153645
|
+
else if (priceType === 'premiumIndex') {
|
|
153646
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' + priceType + ' kline data');
|
|
153624
153647
|
}
|
|
153625
153648
|
else {
|
|
153626
153649
|
response = await this.contractPublicGetMarketHistoryKline(this.extend(request, params));
|
|
@@ -153628,13 +153651,13 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
153628
153651
|
}
|
|
153629
153652
|
else if (market['linear']) {
|
|
153630
153653
|
request['contract_code'] = market['id'];
|
|
153631
|
-
if (
|
|
153654
|
+
if (priceType === 'mark') {
|
|
153632
153655
|
response = await this.contractPublicGetIndexMarketHistoryLinearSwapMarkPriceKline(this.extend(request, params));
|
|
153633
153656
|
}
|
|
153634
|
-
else if (
|
|
153635
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' +
|
|
153657
|
+
else if (priceType === 'index') {
|
|
153658
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' + priceType + ' kline data');
|
|
153636
153659
|
}
|
|
153637
|
-
else if (
|
|
153660
|
+
else if (priceType === 'premiumIndex') {
|
|
153638
153661
|
response = await this.contractPublicGetIndexMarketHistoryLinearSwapPremiumIndexKline(this.extend(request, params));
|
|
153639
153662
|
}
|
|
153640
153663
|
else {
|
|
@@ -153645,13 +153668,13 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
153645
153668
|
else if (market['swap']) {
|
|
153646
153669
|
request['contract_code'] = market['id'];
|
|
153647
153670
|
if (market['inverse']) {
|
|
153648
|
-
if (
|
|
153671
|
+
if (priceType === 'mark') {
|
|
153649
153672
|
response = await this.contractPublicGetIndexMarketHistorySwapMarkPriceKline(this.extend(request, params));
|
|
153650
153673
|
}
|
|
153651
|
-
else if (
|
|
153652
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' +
|
|
153674
|
+
else if (priceType === 'index') {
|
|
153675
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' + priceType + ' kline data');
|
|
153653
153676
|
}
|
|
153654
|
-
else if (
|
|
153677
|
+
else if (priceType === 'premiumIndex') {
|
|
153655
153678
|
response = await this.contractPublicGetIndexMarketHistorySwapPremiumIndexKline(this.extend(request, params));
|
|
153656
153679
|
}
|
|
153657
153680
|
else {
|
|
@@ -153659,13 +153682,13 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
153659
153682
|
}
|
|
153660
153683
|
}
|
|
153661
153684
|
else if (market['linear']) {
|
|
153662
|
-
if (
|
|
153685
|
+
if (priceType === 'mark') {
|
|
153663
153686
|
response = await this.contractPublicGetIndexMarketHistoryLinearSwapMarkPriceKline(this.extend(request, params));
|
|
153664
153687
|
}
|
|
153665
|
-
else if (
|
|
153666
|
-
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' +
|
|
153688
|
+
else if (priceType === 'index') {
|
|
153689
|
+
throw new _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest(this.id + ' ' + market['type'] + ' has no api endpoint for ' + priceType + ' kline data');
|
|
153667
153690
|
}
|
|
153668
|
-
else if (
|
|
153691
|
+
else if (priceType === 'premiumIndex') {
|
|
153669
153692
|
response = await this.contractPublicGetIndexMarketHistoryLinearSwapPremiumIndexKline(this.extend(request, params));
|
|
153670
153693
|
}
|
|
153671
153694
|
else {
|
|
@@ -153678,18 +153701,22 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
153678
153701
|
let useHistorical = undefined;
|
|
153679
153702
|
[useHistorical, params] = this.handleOptionAndParams(params, 'fetchOHLCV', 'useHistoricalEndpointForSpot', true);
|
|
153680
153703
|
if (!useHistorical) {
|
|
153681
|
-
// `limit` only available for the this endpoint
|
|
153682
153704
|
if (limit !== undefined) {
|
|
153683
|
-
request['size'] = limit; // max 2000
|
|
153705
|
+
request['size'] = Math.min(2000, limit); // max 2000
|
|
153684
153706
|
}
|
|
153685
153707
|
response = await this.spotPublicGetMarketHistoryKline(this.extend(request, params));
|
|
153686
153708
|
}
|
|
153687
153709
|
else {
|
|
153688
|
-
//
|
|
153710
|
+
// "from & to" only available for the this endpoint
|
|
153689
153711
|
if (since !== undefined) {
|
|
153690
|
-
// default 150 bars
|
|
153691
153712
|
request['from'] = this.parseToInt(since / 1000);
|
|
153692
153713
|
}
|
|
153714
|
+
if (untilSeconds !== undefined) {
|
|
153715
|
+
request['to'] = untilSeconds;
|
|
153716
|
+
}
|
|
153717
|
+
if (limit !== undefined) {
|
|
153718
|
+
request['size'] = Math.min(1000, limit); // max 1000, otherwise default returns 150
|
|
153719
|
+
}
|
|
153693
153720
|
response = await this.spotPublicGetMarketHistoryCandles(this.extend(request, params));
|
|
153694
153721
|
}
|
|
153695
153722
|
}
|
|
@@ -153705,7 +153732,7 @@ class htx extends _abstract_htx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
153705
153732
|
// ]
|
|
153706
153733
|
// }
|
|
153707
153734
|
//
|
|
153708
|
-
const data = this.
|
|
153735
|
+
const data = this.safeList(response, 'data', []);
|
|
153709
153736
|
return this.parseOHLCVs(data, market, timeframe, since, limit);
|
|
153710
153737
|
}
|
|
153711
153738
|
async fetchAccounts(params = {}) {
|
|
@@ -162526,8 +162553,9 @@ class hyperliquid extends _abstract_hyperliquid_js__WEBPACK_IMPORTED_MODULE_0__/
|
|
|
162526
162553
|
* @param {bool} [params.postOnly] true or false whether the order is post-only
|
|
162527
162554
|
* @param {bool} [params.reduceOnly] true or false whether the order is reduce-only
|
|
162528
162555
|
* @param {float} [params.triggerPrice] The price at which a trigger order is triggered at
|
|
162529
|
-
* @param {string} [params.clientOrderId] client order id, optional 128 bit hex string
|
|
162556
|
+
* @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
|
162530
162557
|
* @param {string} [params.slippage] the slippage for market order
|
|
162558
|
+
* @param {string} [params.vaultAddress] the vault address for order
|
|
162531
162559
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
162532
162560
|
*/
|
|
162533
162561
|
await this.loadMarkets();
|
|
@@ -162577,7 +162605,7 @@ class hyperliquid extends _abstract_hyperliquid_js__WEBPACK_IMPORTED_MODULE_0__/
|
|
|
162577
162605
|
}
|
|
162578
162606
|
}
|
|
162579
162607
|
}
|
|
162580
|
-
params = this.omit(params, ['slippage', 'clientOrderId', 'client_id', 'slippage', 'triggerPrice', 'stopPrice', 'stopLossPrice', 'takeProfitPrice']);
|
|
162608
|
+
params = this.omit(params, ['slippage', 'clientOrderId', 'client_id', 'slippage', 'triggerPrice', 'stopPrice', 'stopLossPrice', 'takeProfitPrice', 'timeInForce']);
|
|
162581
162609
|
const nonce = this.milliseconds();
|
|
162582
162610
|
const orderReq = [];
|
|
162583
162611
|
for (let i = 0; i < orders.length; i++) {
|
|
@@ -162704,7 +162732,7 @@ class hyperliquid extends _abstract_hyperliquid_js__WEBPACK_IMPORTED_MODULE_0__/
|
|
|
162704
162732
|
* @param {string} id order id
|
|
162705
162733
|
* @param {string} symbol unified symbol of the market the order was made in
|
|
162706
162734
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
162707
|
-
* @param {string} [params.clientOrderId] client order id (
|
|
162735
|
+
* @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
|
162708
162736
|
* @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
162709
162737
|
*/
|
|
162710
162738
|
return await this.cancelOrders([id], symbol, params);
|
|
@@ -162719,7 +162747,7 @@ class hyperliquid extends _abstract_hyperliquid_js__WEBPACK_IMPORTED_MODULE_0__/
|
|
|
162719
162747
|
* @param {string[]} ids order ids
|
|
162720
162748
|
* @param {string} [symbol] unified market symbol
|
|
162721
162749
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
162722
|
-
* @param {string|string[]} [params.clientOrderId] client order ids (
|
|
162750
|
+
* @param {string|string[]} [params.clientOrderId] client order ids, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
|
162723
162751
|
* @returns {object} an list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
162724
162752
|
*/
|
|
162725
162753
|
this.checkRequiredCredentials();
|
|
@@ -162802,6 +162830,7 @@ class hyperliquid extends _abstract_hyperliquid_js__WEBPACK_IMPORTED_MODULE_0__/
|
|
|
162802
162830
|
* @param {bool} [params.reduceOnly] true or false whether the order is reduce-only
|
|
162803
162831
|
* @param {float} [params.triggerPrice] The price at which a trigger order is triggered at
|
|
162804
162832
|
* @param {string} [params.clientOrderId] client order id, (optional 128 bit hex string e.g. 0x1234567890abcdef1234567890abcdef)
|
|
162833
|
+
* @param {string} [params.vaultAddress] the vault address for order
|
|
162805
162834
|
* @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
162806
162835
|
*/
|
|
162807
162836
|
this.checkRequiredCredentials();
|
|
@@ -173923,6 +173952,56 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
173923
173952
|
'130202': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173924
173953
|
'130203': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
173925
173954
|
'130204': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
173955
|
+
'130301': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
173956
|
+
'130302': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
173957
|
+
'130303': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173958
|
+
'130304': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173959
|
+
'130305': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173960
|
+
'130306': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173961
|
+
'130307': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173962
|
+
'130308': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173963
|
+
'130309': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173964
|
+
'130310': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173965
|
+
'130311': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173966
|
+
'130312': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173967
|
+
'130313': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173968
|
+
'130314': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173969
|
+
'130315': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173970
|
+
'126000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173971
|
+
'126001': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173972
|
+
'126002': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173973
|
+
'126003': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173974
|
+
'126004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173975
|
+
'126005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
173976
|
+
'126006': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173977
|
+
'126007': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173978
|
+
'126009': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173979
|
+
'126010': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173980
|
+
'126011': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173981
|
+
'126013': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
173982
|
+
'126015': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173983
|
+
'126021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
173984
|
+
'126022': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173985
|
+
'126027': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173986
|
+
'126028': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173987
|
+
'126029': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173988
|
+
'126030': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173989
|
+
'126033': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173990
|
+
'126034': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173991
|
+
'126036': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173992
|
+
'126037': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173993
|
+
'126038': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173994
|
+
'126039': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173995
|
+
'126041': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173996
|
+
'126042': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173997
|
+
'126043': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.OrderNotFound,
|
|
173998
|
+
'126044': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173999
|
+
'126045': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
174000
|
+
'126046': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.NotSupported,
|
|
174001
|
+
'126047': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
174002
|
+
'126048': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
174003
|
+
'135005': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
174004
|
+
'135018': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.ExchangeError,
|
|
173926
174005
|
'200004': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
173927
174006
|
'210014': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173928
174007
|
'210021': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InsufficientFunds,
|
|
@@ -173944,10 +174023,12 @@ class kucoin extends _abstract_kucoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
173944
174023
|
'400350': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173945
174024
|
'400370': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173946
174025
|
'400400': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
174026
|
+
'400401': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AuthenticationError,
|
|
173947
174027
|
'400500': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173948
174028
|
'400600': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadSymbol,
|
|
173949
174029
|
'400760': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.InvalidOrder,
|
|
173950
174030
|
'401000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
174031
|
+
'408000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
173951
174032
|
'411100': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.AccountSuspended,
|
|
173952
174033
|
'415000': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.BadRequest,
|
|
173953
174034
|
'400303': _base_errors_js__WEBPACK_IMPORTED_MODULE_2__.PermissionDenied,
|
|
@@ -201541,6 +201622,16 @@ class okcoin extends _abstract_okcoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
201541
201622
|
'50026': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeNotAvailable,
|
|
201542
201623
|
'50027': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.PermissionDenied,
|
|
201543
201624
|
'50028': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
201625
|
+
'50029': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
201626
|
+
'50030': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.PermissionDenied,
|
|
201627
|
+
'50032': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.AccountSuspended,
|
|
201628
|
+
'50033': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.AccountSuspended,
|
|
201629
|
+
'50035': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
201630
|
+
'50036': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
201631
|
+
'50037': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
201632
|
+
'50038': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
201633
|
+
'50039': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
201634
|
+
'50041': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
201544
201635
|
'50044': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
201545
201636
|
// API Class
|
|
201546
201637
|
'50100': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
@@ -201584,9 +201675,25 @@ class okcoin extends _abstract_okcoin_js__WEBPACK_IMPORTED_MODULE_0__/* ["defaul
|
|
|
201584
201675
|
'51024': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.AccountSuspended,
|
|
201585
201676
|
'51025': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
201586
201677
|
'51026': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadSymbol,
|
|
201678
|
+
'51030': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201679
|
+
'51031': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201680
|
+
'51032': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201681
|
+
'51033': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201682
|
+
'51037': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201683
|
+
'51038': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201684
|
+
'51044': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201587
201685
|
'51046': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201588
201686
|
'51047': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201589
|
-
'
|
|
201687
|
+
'51048': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201688
|
+
'51049': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201689
|
+
'51050': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201690
|
+
'51051': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201691
|
+
'51052': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201692
|
+
'51053': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201693
|
+
'51054': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
201694
|
+
'51056': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201695
|
+
'51058': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201696
|
+
'51059': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201590
201697
|
'51100': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201591
201698
|
'51102': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
201592
201699
|
'51103': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
@@ -204997,6 +205104,7 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
204997
205104
|
'50027': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.PermissionDenied,
|
|
204998
205105
|
'50028': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
204999
205106
|
'50044': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.BadRequest,
|
|
205107
|
+
'50061': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
205000
205108
|
'50062': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
205001
205109
|
// API Class
|
|
205002
205110
|
'50100': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
@@ -205184,6 +205292,15 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
205184
205292
|
// SPOT/MARGIN error codes 54000-54999
|
|
205185
205293
|
'54000': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
205186
205294
|
'54001': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
205295
|
+
// Trading bot Error Code from 55100 to 55999
|
|
205296
|
+
'55100': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205297
|
+
'55101': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205298
|
+
'55102': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205299
|
+
'55103': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205300
|
+
'55104': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205301
|
+
'55111': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205302
|
+
'55112': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205303
|
+
'55113': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.InvalidOrder,
|
|
205187
205304
|
// FUNDING error codes 58000-58999
|
|
205188
205305
|
'58000': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.ExchangeError,
|
|
205189
205306
|
'58001': _base_errors_js__WEBPACK_IMPORTED_MODULE_1__.AuthenticationError,
|
|
@@ -209445,6 +209562,14 @@ class okx extends _abstract_okx_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
209445
209562
|
'3': 'pending',
|
|
209446
209563
|
'4': 'pending',
|
|
209447
209564
|
'5': 'pending',
|
|
209565
|
+
'6': 'pending',
|
|
209566
|
+
'7': 'pending',
|
|
209567
|
+
'8': 'pending',
|
|
209568
|
+
'9': 'pending',
|
|
209569
|
+
'10': 'pending',
|
|
209570
|
+
'12': 'pending',
|
|
209571
|
+
'15': 'pending',
|
|
209572
|
+
'16': 'pending',
|
|
209448
209573
|
};
|
|
209449
209574
|
return this.safeString(statuses, status, status);
|
|
209450
209575
|
}
|
|
@@ -308873,7 +308998,7 @@ class woo extends _abstract_woo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
308873
308998
|
'fetchBalance': true,
|
|
308874
308999
|
'fetchCanceledOrders': false,
|
|
308875
309000
|
'fetchClosedOrder': false,
|
|
308876
|
-
'fetchClosedOrders':
|
|
309001
|
+
'fetchClosedOrders': true,
|
|
308877
309002
|
'fetchCurrencies': true,
|
|
308878
309003
|
'fetchDepositAddress': true,
|
|
308879
309004
|
'fetchDeposits': true,
|
|
@@ -308892,7 +309017,7 @@ class woo extends _abstract_woo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
308892
309017
|
'fetchOHLCV': true,
|
|
308893
309018
|
'fetchOpenInterestHistory': false,
|
|
308894
309019
|
'fetchOpenOrder': false,
|
|
308895
|
-
'fetchOpenOrders':
|
|
309020
|
+
'fetchOpenOrders': true,
|
|
308896
309021
|
'fetchOrder': true,
|
|
308897
309022
|
'fetchOrderBook': true,
|
|
308898
309023
|
'fetchOrders': true,
|
|
@@ -310262,7 +310387,51 @@ class woo extends _abstract_woo_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */
|
|
|
310262
310387
|
//
|
|
310263
310388
|
const data = this.safeValue(response, 'data', response);
|
|
310264
310389
|
const orders = this.safeList(data, 'rows');
|
|
310265
|
-
return this.parseOrders(orders, market, since, limit
|
|
310390
|
+
return this.parseOrders(orders, market, since, limit);
|
|
310391
|
+
}
|
|
310392
|
+
async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
310393
|
+
/**
|
|
310394
|
+
* @method
|
|
310395
|
+
* @name woo#fetchOpenOrders
|
|
310396
|
+
* @description fetches information on multiple orders made by the user
|
|
310397
|
+
* @see https://docs.woo.org/#get-orders
|
|
310398
|
+
* @see https://docs.woo.org/#get-algo-orders
|
|
310399
|
+
* @param {string} symbol unified market symbol of the market orders were made in
|
|
310400
|
+
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
310401
|
+
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
310402
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
310403
|
+
* @param {boolean} [params.stop] whether the order is a stop/algo order
|
|
310404
|
+
* @param {boolean} [params.isTriggered] whether the order has been triggered (false by default)
|
|
310405
|
+
* @param {string} [params.side] 'buy' or 'sell'
|
|
310406
|
+
* @param {boolean} [params.trailing] set to true if you want to fetch trailing orders
|
|
310407
|
+
* @param {boolean} [params.paginate] set to true if you want to fetch orders with pagination
|
|
310408
|
+
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
310409
|
+
*/
|
|
310410
|
+
await this.loadMarkets();
|
|
310411
|
+
const extendedParams = this.extend(params, { 'status': 'INCOMPLETE' });
|
|
310412
|
+
return await this.fetchOrders(symbol, since, limit, extendedParams);
|
|
310413
|
+
}
|
|
310414
|
+
async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
310415
|
+
/**
|
|
310416
|
+
* @method
|
|
310417
|
+
* @name woo#fetchClosedOrders
|
|
310418
|
+
* @description fetches information on multiple orders made by the user
|
|
310419
|
+
* @see https://docs.woo.org/#get-orders
|
|
310420
|
+
* @see https://docs.woo.org/#get-algo-orders
|
|
310421
|
+
* @param {string} symbol unified market symbol of the market orders were made in
|
|
310422
|
+
* @param {int} [since] the earliest time in ms to fetch orders for
|
|
310423
|
+
* @param {int} [limit] the maximum number of order structures to retrieve
|
|
310424
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
310425
|
+
* @param {boolean} [params.stop] whether the order is a stop/algo order
|
|
310426
|
+
* @param {boolean} [params.isTriggered] whether the order has been triggered (false by default)
|
|
310427
|
+
* @param {string} [params.side] 'buy' or 'sell'
|
|
310428
|
+
* @param {boolean} [params.trailing] set to true if you want to fetch trailing orders
|
|
310429
|
+
* @param {boolean} [params.paginate] set to true if you want to fetch orders with pagination
|
|
310430
|
+
* @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
310431
|
+
*/
|
|
310432
|
+
await this.loadMarkets();
|
|
310433
|
+
const extendedParams = this.extend(params, { 'status': 'COMPLETED' });
|
|
310434
|
+
return await this.fetchOrders(symbol, since, limit, extendedParams);
|
|
310266
310435
|
}
|
|
310267
310436
|
parseTimeInForce(timeInForce) {
|
|
310268
310437
|
const timeInForces = {
|
|
@@ -321921,7 +322090,7 @@ SOFTWARE.
|
|
|
321921
322090
|
|
|
321922
322091
|
//-----------------------------------------------------------------------------
|
|
321923
322092
|
// this is updated by vss.js when building
|
|
321924
|
-
const version = '4.2.
|
|
322093
|
+
const version = '4.2.78';
|
|
321925
322094
|
_src_base_Exchange_js__WEBPACK_IMPORTED_MODULE_0__/* .Exchange */ .e.ccxtVersion = version;
|
|
321926
322095
|
//-----------------------------------------------------------------------------
|
|
321927
322096
|
|