ccxt 4.2.38 → 4.2.40
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 +1340 -407
- package/dist/ccxt.browser.min.js +3 -3
- package/dist/cjs/ccxt.js +1 -1
- package/dist/cjs/src/ascendex.js +28 -24
- package/dist/cjs/src/base/Exchange.js +28 -16
- package/dist/cjs/src/binance.js +528 -181
- package/dist/cjs/src/bingx.js +250 -23
- package/dist/cjs/src/bitget.js +14 -3
- package/dist/cjs/src/bitso.js +18 -2
- package/dist/cjs/src/bitstamp.js +24 -2
- package/dist/cjs/src/bl3p.js +6 -0
- package/dist/cjs/src/blockchaincom.js +21 -0
- package/dist/cjs/src/btcalpha.js +9 -0
- package/dist/cjs/src/btcbox.js +9 -0
- package/dist/cjs/src/btcmarkets.js +19 -0
- package/dist/cjs/src/bybit.js +3 -1
- package/dist/cjs/src/coinbase.js +21 -8
- package/dist/cjs/src/coinbasepro.js +1 -0
- package/dist/cjs/src/coinlist.js +9 -7
- package/dist/cjs/src/coinmetro.js +2 -1
- package/dist/cjs/src/krakenfutures.js +133 -16
- package/dist/cjs/src/luno.js +1 -1
- package/dist/cjs/src/mexc.js +43 -43
- package/dist/cjs/src/okx.js +11 -17
- package/dist/cjs/src/phemex.js +1 -0
- package/dist/cjs/src/poloniexfutures.js +11 -5
- package/dist/cjs/src/pro/bitmart.js +141 -48
- package/dist/cjs/src/pro/bybit.js +5 -5
- package/dist/cjs/src/pro/mexc.js +1 -1
- package/dist/cjs/src/wavesexchange.js +1 -1
- package/dist/cjs/src/woo.js +1 -1
- package/js/ccxt.d.ts +1 -1
- package/js/ccxt.js +1 -1
- package/js/src/abstract/bingx.d.ts +4 -0
- package/js/src/abstract/coinbase.d.ts +1 -0
- package/js/src/abstract/coinbasepro.d.ts +1 -0
- package/js/src/abstract/okx.d.ts +1 -0
- package/js/src/ascendex.d.ts +2 -2
- package/js/src/ascendex.js +28 -24
- package/js/src/base/Exchange.d.ts +12 -8
- package/js/src/base/Exchange.js +28 -16
- package/js/src/base/types.d.ts +2 -0
- package/js/src/bigone.d.ts +2 -2
- package/js/src/binance.d.ts +9 -9
- package/js/src/binance.js +528 -181
- package/js/src/bingx.d.ts +6 -5
- package/js/src/bingx.js +250 -23
- package/js/src/bitfinex.d.ts +3 -3
- package/js/src/bitfinex2.d.ts +2 -2
- package/js/src/bitget.d.ts +5 -5
- package/js/src/bitget.js +14 -3
- package/js/src/bitmart.d.ts +2 -2
- package/js/src/bitmex.d.ts +2 -2
- package/js/src/bitrue.d.ts +2 -2
- package/js/src/bitso.d.ts +1 -1
- package/js/src/bitso.js +18 -2
- package/js/src/bitstamp.d.ts +1 -1
- package/js/src/bitstamp.js +24 -2
- package/js/src/bitvavo.d.ts +1 -1
- package/js/src/bl3p.js +6 -0
- package/js/src/blockchaincom.js +21 -0
- package/js/src/blofin.d.ts +2 -2
- package/js/src/btcalpha.js +9 -0
- package/js/src/btcbox.js +9 -0
- package/js/src/btcmarkets.js +19 -0
- package/js/src/bybit.d.ts +7 -7
- package/js/src/bybit.js +3 -1
- package/js/src/cex.d.ts +1 -1
- package/js/src/coinbase.d.ts +2 -2
- package/js/src/coinbase.js +21 -8
- package/js/src/coinbasepro.js +1 -0
- package/js/src/coinex.d.ts +4 -4
- package/js/src/coinlist.d.ts +2 -2
- package/js/src/coinlist.js +9 -7
- package/js/src/coinmetro.js +2 -1
- package/js/src/coinone.d.ts +1 -1
- package/js/src/delta.d.ts +2 -2
- package/js/src/deribit.d.ts +3 -3
- package/js/src/digifinex.d.ts +3 -3
- package/js/src/exmo.d.ts +2 -2
- package/js/src/gate.d.ts +6 -6
- package/js/src/hitbtc.d.ts +2 -2
- package/js/src/hollaex.d.ts +1 -1
- package/js/src/htx.d.ts +3 -3
- package/js/src/huobijp.d.ts +1 -1
- package/js/src/kraken.d.ts +2 -2
- package/js/src/krakenfutures.d.ts +4 -2
- package/js/src/krakenfutures.js +133 -16
- package/js/src/kucoin.d.ts +5 -5
- package/js/src/kucoinfutures.d.ts +2 -2
- package/js/src/latoken.d.ts +1 -1
- package/js/src/lbank.d.ts +2 -2
- package/js/src/luno.d.ts +1 -1
- package/js/src/luno.js +1 -1
- package/js/src/mexc.d.ts +4 -4
- package/js/src/mexc.js +43 -43
- package/js/src/ndax.d.ts +1 -1
- package/js/src/novadax.d.ts +1 -1
- package/js/src/okcoin.d.ts +2 -2
- package/js/src/okx.d.ts +7 -7
- package/js/src/okx.js +11 -17
- package/js/src/paymium.d.ts +2 -2
- package/js/src/phemex.d.ts +4 -4
- package/js/src/phemex.js +1 -0
- package/js/src/poloniex.d.ts +2 -2
- package/js/src/poloniexfutures.d.ts +2 -2
- package/js/src/poloniexfutures.js +11 -5
- package/js/src/pro/bitmart.d.ts +4 -0
- package/js/src/pro/bitmart.js +141 -48
- package/js/src/pro/bitvavo.d.ts +1 -1
- package/js/src/pro/bybit.d.ts +1 -1
- package/js/src/pro/bybit.js +5 -5
- package/js/src/pro/cex.d.ts +2 -2
- package/js/src/pro/coinbase.d.ts +2 -2
- package/js/src/pro/coinex.d.ts +1 -1
- package/js/src/pro/lbank.d.ts +1 -1
- package/js/src/pro/mexc.js +1 -1
- package/js/src/probit.d.ts +1 -1
- package/js/src/timex.d.ts +1 -1
- package/js/src/upbit.d.ts +1 -1
- package/js/src/wavesexchange.js +1 -1
- package/js/src/whitebit.d.ts +2 -2
- package/js/src/woo.d.ts +3 -3
- package/js/src/woo.js +1 -1
- package/js/src/zonda.d.ts +3 -3
- package/package.json +2 -2
package/js/src/gate.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export default class gate extends Exchange {
|
|
|
8
8
|
describe(): any;
|
|
9
9
|
setSandboxMode(enable: any): void;
|
|
10
10
|
convertExpireDate(date: any): string;
|
|
11
|
-
createExpiredOptionMarket(symbol:
|
|
11
|
+
createExpiredOptionMarket(symbol: string): MarketInterface;
|
|
12
12
|
safeMarket(marketId?: any, market?: any, delimiter?: any, marketType?: any): MarketInterface;
|
|
13
13
|
fetchMarkets(params?: {}): Promise<any>;
|
|
14
14
|
fetchSpotMarkets(params?: {}): Promise<any[]>;
|
|
@@ -134,7 +134,7 @@ export default class gate extends Exchange {
|
|
|
134
134
|
maker: number;
|
|
135
135
|
taker: number;
|
|
136
136
|
};
|
|
137
|
-
fetchTransactionFees(codes?:
|
|
137
|
+
fetchTransactionFees(codes?: string[], params?: {}): Promise<{}>;
|
|
138
138
|
fetchDepositWithdrawFees(codes?: Strings, params?: {}): Promise<any>;
|
|
139
139
|
parseDepositWithdrawFee(fee: any, currency?: Currency): {
|
|
140
140
|
info: any;
|
|
@@ -182,8 +182,8 @@ export default class gate extends Exchange {
|
|
|
182
182
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
183
183
|
createOrders(orders: OrderRequest[], params?: {}): Promise<Order[]>;
|
|
184
184
|
createOrderRequest(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): any;
|
|
185
|
-
createMarketBuyOrderWithCost(symbol: string, cost:
|
|
186
|
-
editOrder(id: string, symbol:
|
|
185
|
+
createMarketBuyOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
186
|
+
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: number, price?: number, params?: {}): Promise<Order>;
|
|
187
187
|
parseOrderStatus(status: any): string;
|
|
188
188
|
parseOrder(order: any, market?: Market): Order;
|
|
189
189
|
fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
@@ -192,7 +192,7 @@ export default class gate extends Exchange {
|
|
|
192
192
|
fetchOrdersByStatus(status: any, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
|
|
193
193
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
194
194
|
cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
|
|
195
|
-
transfer(code: string, amount: number, fromAccount:
|
|
195
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
196
196
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
197
197
|
id: string;
|
|
198
198
|
timestamp: any;
|
|
@@ -333,7 +333,7 @@ export default class gate extends Exchange {
|
|
|
333
333
|
info: any;
|
|
334
334
|
};
|
|
335
335
|
parseLedgerEntryType(type: any): string;
|
|
336
|
-
setPositionMode(hedged:
|
|
336
|
+
setPositionMode(hedged: boolean, symbol?: string, params?: {}): Promise<any>;
|
|
337
337
|
fetchUnderlyingAssets(params?: {}): Promise<any[]>;
|
|
338
338
|
fetchLiquidations(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Liquidation[]>;
|
|
339
339
|
fetchMyLiquidations(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Liquidation[]>;
|
package/js/src/hitbtc.d.ts
CHANGED
|
@@ -64,13 +64,13 @@ export default class hitbtc extends Exchange {
|
|
|
64
64
|
fetchOpenOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
65
65
|
cancelAllOrders(symbol?: Str, params?: {}): Promise<Order[]>;
|
|
66
66
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
67
|
-
editOrder(id: string, symbol:
|
|
67
|
+
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: number, price?: number, params?: {}): Promise<Order>;
|
|
68
68
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
69
69
|
createOrderRequest(market: object, marketType: string, type: OrderType, side: OrderSide, amount: any, price?: any, marginMode?: Str, params?: {}): {}[];
|
|
70
70
|
parseOrderStatus(status: any): string;
|
|
71
71
|
parseOrder(order: any, market?: Market): Order;
|
|
72
72
|
fetchMarginMode(symbol?: Str, params?: {}): Promise<MarginMode>;
|
|
73
|
-
transfer(code: string, amount: number, fromAccount:
|
|
73
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
74
74
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
75
75
|
id: string;
|
|
76
76
|
timestamp: any;
|
package/js/src/hollaex.d.ts
CHANGED
|
@@ -39,7 +39,7 @@ export default class hollaex extends Exchange {
|
|
|
39
39
|
network: string;
|
|
40
40
|
info: any;
|
|
41
41
|
};
|
|
42
|
-
fetchDepositAddresses(codes?:
|
|
42
|
+
fetchDepositAddresses(codes?: string[], params?: {}): Promise<{}>;
|
|
43
43
|
fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
44
44
|
fetchWithdrawal(id: string, code?: Str, params?: {}): Promise<Transaction>;
|
|
45
45
|
fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
package/js/src/htx.d.ts
CHANGED
|
@@ -92,7 +92,7 @@ export default class htx extends Exchange {
|
|
|
92
92
|
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
93
93
|
parseOrderStatus(status: any): string;
|
|
94
94
|
parseOrder(order: any, market?: Market): Order;
|
|
95
|
-
createMarketBuyOrderWithCost(symbol: string, cost:
|
|
95
|
+
createMarketBuyOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
96
96
|
createTrailingPercentOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, trailingPercent?: any, trailingTriggerPrice?: any, params?: {}): Promise<Order>;
|
|
97
97
|
createSpotOrderRequest(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<any>;
|
|
98
98
|
createContractOrderRequest(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): any;
|
|
@@ -128,7 +128,7 @@ export default class htx extends Exchange {
|
|
|
128
128
|
toAccount: any;
|
|
129
129
|
status: any;
|
|
130
130
|
};
|
|
131
|
-
transfer(code: string, amount: number, fromAccount:
|
|
131
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
132
132
|
fetchIsolatedBorrowRates(params?: {}): Promise<BorrowRate[]>;
|
|
133
133
|
parseIsolatedBorrowRate(info: any, market?: Market): {
|
|
134
134
|
symbol: string;
|
|
@@ -266,5 +266,5 @@ export default class htx extends Exchange {
|
|
|
266
266
|
};
|
|
267
267
|
fetchLiquidations(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Liquidation[]>;
|
|
268
268
|
parseLiquidation(liquidation: any, market?: Market): import("./base/types.js").Liquidation;
|
|
269
|
-
setPositionMode(hedged:
|
|
269
|
+
setPositionMode(hedged: boolean, symbol?: Str, params?: {}): Promise<any>;
|
|
270
270
|
}
|
package/js/src/huobijp.d.ts
CHANGED
|
@@ -51,7 +51,7 @@ export default class huobijp extends Exchange {
|
|
|
51
51
|
fetchOpenOrdersV2(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
52
52
|
parseOrderStatus(status: any): string;
|
|
53
53
|
parseOrder(order: any, market?: Market): Order;
|
|
54
|
-
createMarketBuyOrderWithCost(symbol: string, cost:
|
|
54
|
+
createMarketBuyOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
55
55
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
56
56
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
|
|
57
57
|
cancelOrders(ids: any, symbol?: Str, params?: {}): Promise<any>;
|
package/js/src/kraken.d.ts
CHANGED
|
@@ -70,7 +70,7 @@ export default class kraken extends Exchange {
|
|
|
70
70
|
parseOrderType(status: any): string;
|
|
71
71
|
parseOrder(order: any, market?: Market): Order;
|
|
72
72
|
orderRequest(method: any, symbol: any, type: any, request: any, price?: any, params?: {}): any[];
|
|
73
|
-
editOrder(id: string, symbol:
|
|
73
|
+
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: number, price?: number, params?: {}): Promise<Order>;
|
|
74
74
|
fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
75
75
|
fetchOrderTrades(id: string, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
76
76
|
fetchOrdersByIds(ids: any, symbol?: Str, params?: {}): Promise<any[]>;
|
|
@@ -114,7 +114,7 @@ export default class kraken extends Exchange {
|
|
|
114
114
|
fetchPositions(symbols?: Strings, params?: {}): Promise<any>;
|
|
115
115
|
parseAccount(account: any): string;
|
|
116
116
|
transferOut(code: string, amount: any, params?: {}): Promise<TransferEntry>;
|
|
117
|
-
transfer(code: string, amount: number, fromAccount:
|
|
117
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
118
118
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
119
119
|
info: any;
|
|
120
120
|
id: string;
|
|
@@ -17,11 +17,13 @@ export default class krakenfutures extends Exchange {
|
|
|
17
17
|
createOrderRequest(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): any;
|
|
18
18
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
19
19
|
createOrders(orders: OrderRequest[], params?: {}): Promise<Order[]>;
|
|
20
|
-
editOrder(id: string, symbol:
|
|
20
|
+
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: number, price?: number, params?: {}): Promise<Order>;
|
|
21
21
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
|
|
22
22
|
cancelOrders(ids: string[], symbol?: Str, params?: {}): Promise<Order[]>;
|
|
23
23
|
cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
|
|
24
24
|
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
25
|
+
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
26
|
+
fetchCanceledOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
25
27
|
parseOrderType(orderType: any): string;
|
|
26
28
|
verifyOrderActionSuccess(status: any, method: any, omit?: any[]): void;
|
|
27
29
|
parseOrderStatus(status: any): string;
|
|
@@ -90,7 +92,7 @@ export default class krakenfutures extends Exchange {
|
|
|
90
92
|
};
|
|
91
93
|
parseAccount(account: any): any;
|
|
92
94
|
transferOut(code: string, amount: any, params?: {}): Promise<TransferEntry>;
|
|
93
|
-
transfer(code: string, amount: number, fromAccount:
|
|
95
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
94
96
|
setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
|
|
95
97
|
fetchLeverage(symbol?: Str, params?: {}): Promise<any>;
|
|
96
98
|
handleErrors(code: any, reason: any, url: any, method: any, headers: any, body: any, response: any, requestHeaders: any, requestBody: any): any;
|
package/js/src/krakenfutures.js
CHANGED
|
@@ -42,7 +42,8 @@ export default class krakenfutures extends Exchange {
|
|
|
42
42
|
'fetchBalance': true,
|
|
43
43
|
'fetchBorrowRateHistories': false,
|
|
44
44
|
'fetchBorrowRateHistory': false,
|
|
45
|
-
'
|
|
45
|
+
'fetchCanceledOrders': true,
|
|
46
|
+
'fetchClosedOrders': true,
|
|
46
47
|
'fetchCrossBorrowRate': false,
|
|
47
48
|
'fetchCrossBorrowRates': false,
|
|
48
49
|
'fetchDepositAddress': false,
|
|
@@ -802,37 +803,30 @@ export default class krakenfutures extends Exchange {
|
|
|
802
803
|
id = this.safeString(trade, 'executionId');
|
|
803
804
|
}
|
|
804
805
|
let order = this.safeString(trade, 'order_id');
|
|
805
|
-
let
|
|
806
|
+
let marketId = this.safeString(trade, 'symbol');
|
|
806
807
|
let side = this.safeString(trade, 'side');
|
|
807
808
|
let type = undefined;
|
|
808
809
|
const priorEdit = this.safeValue(trade, 'orderPriorEdit');
|
|
809
810
|
const priorExecution = this.safeValue(trade, 'orderPriorExecution');
|
|
810
811
|
if (priorExecution !== undefined) {
|
|
811
812
|
order = this.safeString(priorExecution, 'orderId');
|
|
812
|
-
|
|
813
|
+
marketId = this.safeString(priorExecution, 'symbol');
|
|
813
814
|
side = this.safeString(priorExecution, 'side');
|
|
814
815
|
type = this.safeString(priorExecution, 'type');
|
|
815
816
|
}
|
|
816
817
|
else if (priorEdit !== undefined) {
|
|
817
818
|
order = this.safeString(priorEdit, 'orderId');
|
|
818
|
-
|
|
819
|
+
marketId = this.safeString(priorEdit, 'symbol');
|
|
819
820
|
side = this.safeString(priorEdit, 'type');
|
|
820
821
|
type = this.safeString(priorEdit, 'type');
|
|
821
822
|
}
|
|
822
823
|
if (type !== undefined) {
|
|
823
824
|
type = this.parseOrderType(type);
|
|
824
825
|
}
|
|
825
|
-
|
|
826
|
-
if (symbolId !== undefined) {
|
|
827
|
-
market = this.safeValue(this.markets_by_id, symbolId);
|
|
828
|
-
if (market === undefined) {
|
|
829
|
-
symbol = symbolId;
|
|
830
|
-
}
|
|
831
|
-
}
|
|
832
|
-
symbol = this.safeString(market, 'symbol', symbol);
|
|
826
|
+
market = this.safeMarket(marketId, market);
|
|
833
827
|
let cost = undefined;
|
|
828
|
+
const linear = this.safeBool(market, 'linear');
|
|
834
829
|
if ((amount !== undefined) && (price !== undefined) && (market !== undefined)) {
|
|
835
|
-
const linear = this.safeValue(market, 'linear');
|
|
836
830
|
if (linear) {
|
|
837
831
|
cost = Precise.stringMul(amount, price); // in quote
|
|
838
832
|
}
|
|
@@ -855,15 +849,15 @@ export default class krakenfutures extends Exchange {
|
|
|
855
849
|
return this.safeTrade({
|
|
856
850
|
'info': trade,
|
|
857
851
|
'id': id,
|
|
852
|
+
'symbol': this.safeString(market, 'symbol'),
|
|
858
853
|
'timestamp': timestamp,
|
|
859
854
|
'datetime': this.iso8601(timestamp),
|
|
860
|
-
'symbol': symbol,
|
|
861
855
|
'order': order,
|
|
862
856
|
'type': type,
|
|
863
857
|
'side': side,
|
|
864
858
|
'takerOrMaker': takerOrMaker,
|
|
865
859
|
'price': price,
|
|
866
|
-
'amount': amount,
|
|
860
|
+
'amount': linear ? amount : undefined,
|
|
867
861
|
'cost': cost,
|
|
868
862
|
'fee': undefined,
|
|
869
863
|
});
|
|
@@ -1196,6 +1190,102 @@ export default class krakenfutures extends Exchange {
|
|
|
1196
1190
|
const orders = this.safeValue(response, 'openOrders', []);
|
|
1197
1191
|
return this.parseOrders(orders, market, since, limit);
|
|
1198
1192
|
}
|
|
1193
|
+
async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
1194
|
+
/**
|
|
1195
|
+
* @method
|
|
1196
|
+
* @name krakenfutures#fetchClosedOrders
|
|
1197
|
+
* @see https://docs.futures.kraken.com/#http-api-history-account-history-get-order-events
|
|
1198
|
+
* @description Gets all closed orders, including trigger orders, for an account from the exchange api
|
|
1199
|
+
* @param {string} symbol Unified market symbol
|
|
1200
|
+
* @param {int} [since] Timestamp (ms) of earliest order.
|
|
1201
|
+
* @param {int} [limit] How many orders to return.
|
|
1202
|
+
* @param {object} [params] Exchange specific parameters
|
|
1203
|
+
* @returns An array of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1204
|
+
*/
|
|
1205
|
+
await this.loadMarkets();
|
|
1206
|
+
let market = undefined;
|
|
1207
|
+
if (symbol !== undefined) {
|
|
1208
|
+
market = this.market(symbol);
|
|
1209
|
+
}
|
|
1210
|
+
const request = {};
|
|
1211
|
+
if (limit !== undefined) {
|
|
1212
|
+
request['count'] = limit;
|
|
1213
|
+
}
|
|
1214
|
+
if (since !== undefined) {
|
|
1215
|
+
request['from'] = since;
|
|
1216
|
+
}
|
|
1217
|
+
const response = await this.historyGetOrders(this.extend(request, params));
|
|
1218
|
+
const allOrders = this.safeList(response, 'elements', []);
|
|
1219
|
+
const closedOrders = [];
|
|
1220
|
+
for (let i = 0; i < allOrders.length; i++) {
|
|
1221
|
+
const order = allOrders[i];
|
|
1222
|
+
const event = this.safeDict(order, 'event', {});
|
|
1223
|
+
const orderPlaced = this.safeDict(event, 'OrderPlaced');
|
|
1224
|
+
if (orderPlaced !== undefined) {
|
|
1225
|
+
const innerOrder = this.safeDict(orderPlaced, 'order', {});
|
|
1226
|
+
const filled = this.safeString(innerOrder, 'filled');
|
|
1227
|
+
if (filled !== '0') {
|
|
1228
|
+
innerOrder['status'] = 'closed'; // status not available in the response
|
|
1229
|
+
closedOrders.push(innerOrder);
|
|
1230
|
+
}
|
|
1231
|
+
}
|
|
1232
|
+
}
|
|
1233
|
+
return this.parseOrders(closedOrders, market, since, limit);
|
|
1234
|
+
}
|
|
1235
|
+
async fetchCanceledOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
|
|
1236
|
+
/**
|
|
1237
|
+
* @method
|
|
1238
|
+
* @name krakenfutures#fetchCanceledOrders
|
|
1239
|
+
* @see https://docs.futures.kraken.com/#http-api-history-account-history-get-order-events
|
|
1240
|
+
* @description Gets all canceled orders, including trigger orders, for an account from the exchange api
|
|
1241
|
+
* @param {string} symbol Unified market symbol
|
|
1242
|
+
* @param {int} [since] Timestamp (ms) of earliest order.
|
|
1243
|
+
* @param {int} [limit] How many orders to return.
|
|
1244
|
+
* @param {object} [params] Exchange specific parameters
|
|
1245
|
+
* @returns An array of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
|
|
1246
|
+
*/
|
|
1247
|
+
await this.loadMarkets();
|
|
1248
|
+
let market = undefined;
|
|
1249
|
+
if (symbol !== undefined) {
|
|
1250
|
+
market = this.market(symbol);
|
|
1251
|
+
}
|
|
1252
|
+
const request = {};
|
|
1253
|
+
if (limit !== undefined) {
|
|
1254
|
+
request['count'] = limit;
|
|
1255
|
+
}
|
|
1256
|
+
if (since !== undefined) {
|
|
1257
|
+
request['from'] = since;
|
|
1258
|
+
}
|
|
1259
|
+
const response = await this.historyGetOrders(this.extend(request, params));
|
|
1260
|
+
const allOrders = this.safeList(response, 'elements', []);
|
|
1261
|
+
const canceledAndRejected = [];
|
|
1262
|
+
for (let i = 0; i < allOrders.length; i++) {
|
|
1263
|
+
const order = allOrders[i];
|
|
1264
|
+
const event = this.safeDict(order, 'event', {});
|
|
1265
|
+
const orderPlaced = this.safeDict(event, 'OrderPlaced');
|
|
1266
|
+
if (orderPlaced !== undefined) {
|
|
1267
|
+
const innerOrder = this.safeDict(orderPlaced, 'order', {});
|
|
1268
|
+
const filled = this.safeString(innerOrder, 'filled');
|
|
1269
|
+
if (filled === '0') {
|
|
1270
|
+
innerOrder['status'] = 'canceled'; // status not available in the response
|
|
1271
|
+
canceledAndRejected.push(innerOrder);
|
|
1272
|
+
}
|
|
1273
|
+
}
|
|
1274
|
+
const orderCanceled = this.safeDict(event, 'OrderCancelled');
|
|
1275
|
+
if (orderCanceled !== undefined) {
|
|
1276
|
+
const innerOrder = this.safeDict(orderCanceled, 'order', {});
|
|
1277
|
+
innerOrder['status'] = 'canceled'; // status not available in the response
|
|
1278
|
+
canceledAndRejected.push(innerOrder);
|
|
1279
|
+
}
|
|
1280
|
+
const orderRejected = this.safeDict(event, 'OrderRejected');
|
|
1281
|
+
if (orderRejected !== undefined) {
|
|
1282
|
+
const innerOrder = this.safeDict(orderRejected, 'order', {});
|
|
1283
|
+
innerOrder['status'] = 'rejected'; // status not available in the response
|
|
1284
|
+
canceledAndRejected.push(innerOrder);
|
|
1285
|
+
}
|
|
1286
|
+
}
|
|
1287
|
+
return this.parseOrders(canceledAndRejected, market, since, limit);
|
|
1288
|
+
}
|
|
1199
1289
|
parseOrderType(orderType) {
|
|
1200
1290
|
const map = {
|
|
1201
1291
|
'lmt': 'limit',
|
|
@@ -1439,6 +1529,32 @@ export default class krakenfutures extends Exchange {
|
|
|
1439
1529
|
// "status": "requiredArgumentMissing",
|
|
1440
1530
|
// "orderEvents": []
|
|
1441
1531
|
// }
|
|
1532
|
+
// closed orders
|
|
1533
|
+
// {
|
|
1534
|
+
// uid: '2f00cd63-e61d-44f8-8569-adabde885941',
|
|
1535
|
+
// timestamp: '1707258274849',
|
|
1536
|
+
// event: {
|
|
1537
|
+
// OrderPlaced: {
|
|
1538
|
+
// order: {
|
|
1539
|
+
// uid: '85805e01-9eed-4395-8360-ed1a228237c9',
|
|
1540
|
+
// accountUid: '406142dd-7c5c-4a8b-acbc-5f16eca30009',
|
|
1541
|
+
// tradeable: 'PF_LTCUSD',
|
|
1542
|
+
// direction: 'Buy',
|
|
1543
|
+
// quantity: '0',
|
|
1544
|
+
// filled: '0.1',
|
|
1545
|
+
// timestamp: '1707258274849',
|
|
1546
|
+
// limitPrice: '69.2200000000',
|
|
1547
|
+
// orderType: 'IoC',
|
|
1548
|
+
// clientId: '',
|
|
1549
|
+
// reduceOnly: false,
|
|
1550
|
+
// lastUpdateTimestamp: '1707258274849'
|
|
1551
|
+
// },
|
|
1552
|
+
// reason: 'new_user_order',
|
|
1553
|
+
// reducedQuantity: '',
|
|
1554
|
+
// algoId: ''
|
|
1555
|
+
// }
|
|
1556
|
+
// }
|
|
1557
|
+
// }
|
|
1442
1558
|
//
|
|
1443
1559
|
const orderEvents = this.safeValue(order, 'orderEvents', []);
|
|
1444
1560
|
const errorStatus = this.safeString(order, 'status');
|
|
@@ -1501,7 +1617,8 @@ export default class krakenfutures extends Exchange {
|
|
|
1501
1617
|
let remaining = this.safeString(details, 'unfilledSize');
|
|
1502
1618
|
let average = undefined;
|
|
1503
1619
|
let filled2 = '0.0';
|
|
1504
|
-
|
|
1620
|
+
const tradesLength = trades.length;
|
|
1621
|
+
if (tradesLength > 0) {
|
|
1505
1622
|
let vwapSum = '0.0';
|
|
1506
1623
|
for (let i = 0; i < trades.length; i++) {
|
|
1507
1624
|
const trade = trades[i];
|
package/js/src/kucoin.d.ts
CHANGED
|
@@ -67,12 +67,12 @@ export default class kucoin extends Exchange {
|
|
|
67
67
|
fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
|
|
68
68
|
handleTriggerPrices(params: any): any[];
|
|
69
69
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
70
|
-
createMarketOrderWithCost(symbol: string, side: OrderSide, cost:
|
|
71
|
-
createMarketBuyOrderWithCost(symbol: string, cost:
|
|
72
|
-
createMarketSellOrderWithCost(symbol: string, cost:
|
|
70
|
+
createMarketOrderWithCost(symbol: string, side: OrderSide, cost: number, params?: {}): Promise<Order>;
|
|
71
|
+
createMarketBuyOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
72
|
+
createMarketSellOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
73
73
|
createOrders(orders: OrderRequest[], params?: {}): Promise<Order[]>;
|
|
74
74
|
createOrderRequest(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): any;
|
|
75
|
-
editOrder(id: string, symbol:
|
|
75
|
+
editOrder(id: string, symbol: string, type: OrderType, side: OrderSide, amount?: number, price?: number, params?: {}): Promise<Order>;
|
|
76
76
|
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
|
|
77
77
|
cancelAllOrders(symbol?: Str, params?: {}): Promise<any>;
|
|
78
78
|
fetchOrdersByStatus(status: any, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
@@ -99,7 +99,7 @@ export default class kucoin extends Exchange {
|
|
|
99
99
|
fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
100
100
|
parseBalanceHelper(entry: any): import("./base/types.js").Account;
|
|
101
101
|
fetchBalance(params?: {}): Promise<Balances>;
|
|
102
|
-
transfer(code: string, amount: number, fromAccount:
|
|
102
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
103
103
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
104
104
|
id: string;
|
|
105
105
|
currency: string;
|
|
@@ -48,7 +48,7 @@ export default class kucoinfutures extends kucoin {
|
|
|
48
48
|
};
|
|
49
49
|
fetchOrdersByStatus(status: any, symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
50
50
|
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
51
|
-
fetchOrder(id?:
|
|
51
|
+
fetchOrder(id?: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
52
52
|
parseOrder(order: any, market?: Market): Order;
|
|
53
53
|
fetchFundingRate(symbol: string, params?: {}): Promise<{
|
|
54
54
|
info: any;
|
|
@@ -71,7 +71,7 @@ export default class kucoinfutures extends kucoin {
|
|
|
71
71
|
}>;
|
|
72
72
|
parseBalance(response: any): Balances;
|
|
73
73
|
fetchBalance(params?: {}): Promise<Balances>;
|
|
74
|
-
transfer(code: string, amount: number, fromAccount:
|
|
74
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
75
75
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
76
76
|
id: string;
|
|
77
77
|
timestamp: number;
|
package/js/src/latoken.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ export default class latoken extends Exchange {
|
|
|
52
52
|
parseTransactionStatus(status: any): string;
|
|
53
53
|
parseTransactionType(type: any): string;
|
|
54
54
|
fetchTransfers(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
|
|
55
|
-
transfer(code: string, amount: number, fromAccount:
|
|
55
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
56
56
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
57
57
|
info: any;
|
|
58
58
|
id: string;
|
package/js/src/lbank.d.ts
CHANGED
|
@@ -28,7 +28,7 @@ export default class lbank extends Exchange {
|
|
|
28
28
|
};
|
|
29
29
|
fetchTradingFee(symbol: string, params?: {}): Promise<{}>;
|
|
30
30
|
fetchTradingFees(params?: {}): Promise<{}>;
|
|
31
|
-
createMarketBuyOrderWithCost(symbol: string, cost:
|
|
31
|
+
createMarketBuyOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
32
32
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
33
33
|
parseOrderStatus(status: any): string;
|
|
34
34
|
parseOrder(order: any, market?: Market): Order;
|
|
@@ -61,7 +61,7 @@ export default class lbank extends Exchange {
|
|
|
61
61
|
parseTransaction(transaction: any, currency?: Currency): Transaction;
|
|
62
62
|
fetchDeposits(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
63
63
|
fetchWithdrawals(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<Transaction[]>;
|
|
64
|
-
fetchTransactionFees(codes?:
|
|
64
|
+
fetchTransactionFees(codes?: string[], params?: {}): Promise<any>;
|
|
65
65
|
fetchPrivateTransactionFees(params?: {}): Promise<{
|
|
66
66
|
withdraw: {};
|
|
67
67
|
deposit: {};
|
package/js/src/luno.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export default class luno extends Exchange {
|
|
|
23
23
|
fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
|
|
24
24
|
parseTrade(trade: any, market?: Market): Trade;
|
|
25
25
|
fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
26
|
-
fetchOHLCV(symbol:
|
|
26
|
+
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
27
27
|
parseOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
28
28
|
fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
29
29
|
fetchTradingFee(symbol: string, params?: {}): Promise<{
|
package/js/src/luno.js
CHANGED
|
@@ -762,7 +762,7 @@ export default class luno extends Exchange {
|
|
|
762
762
|
'pair': market['id'],
|
|
763
763
|
};
|
|
764
764
|
if (since !== undefined) {
|
|
765
|
-
request['since'] =
|
|
765
|
+
request['since'] = this.parseToInt(since);
|
|
766
766
|
}
|
|
767
767
|
else {
|
|
768
768
|
const duration = 1000 * 1000 * this.parseTimeframe(timeframe);
|
package/js/src/mexc.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ export default class mexc extends Exchange {
|
|
|
30
30
|
fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
|
|
31
31
|
parseTicker(ticker: any, market?: Market): Ticker;
|
|
32
32
|
fetchBidsAsks(symbols?: Strings, params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
|
|
33
|
-
createMarketBuyOrderWithCost(symbol: string, cost:
|
|
33
|
+
createMarketBuyOrderWithCost(symbol: string, cost: number, params?: {}): Promise<Order>;
|
|
34
34
|
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
35
35
|
createSpotOrderRequest(market: any, type: any, side: any, amount: any, price?: any, marginMode?: any, params?: {}): any;
|
|
36
36
|
createSpotOrder(market: any, type: any, side: any, amount: any, price?: any, marginMode?: any, params?: {}): Promise<Order>;
|
|
@@ -140,7 +140,7 @@ export default class mexc extends Exchange {
|
|
|
140
140
|
status: string;
|
|
141
141
|
}>;
|
|
142
142
|
fetchTransfers(code?: Str, since?: Int, limit?: Int, params?: {}): Promise<any>;
|
|
143
|
-
transfer(code: string, amount: number, fromAccount:
|
|
143
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
144
144
|
parseTransfer(transfer: any, currency?: Currency): {
|
|
145
145
|
info: any;
|
|
146
146
|
id: string;
|
|
@@ -155,12 +155,12 @@ export default class mexc extends Exchange {
|
|
|
155
155
|
parseAccountId(status: any): string;
|
|
156
156
|
parseTransferStatus(status: any): string;
|
|
157
157
|
withdraw(code: string, amount: number, address: any, tag?: any, params?: {}): Promise<Transaction>;
|
|
158
|
-
setPositionMode(hedged:
|
|
158
|
+
setPositionMode(hedged: boolean, symbol?: Str, params?: {}): Promise<any>;
|
|
159
159
|
fetchPositionMode(symbol?: Str, params?: {}): Promise<{
|
|
160
160
|
info: any;
|
|
161
161
|
hedged: boolean;
|
|
162
162
|
}>;
|
|
163
|
-
fetchTransactionFees(codes?:
|
|
163
|
+
fetchTransactionFees(codes?: string[], params?: {}): Promise<{
|
|
164
164
|
withdraw: {};
|
|
165
165
|
deposit: {};
|
|
166
166
|
info: any;
|