Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(parseOrder): type order #22593

Merged
merged 5 commits into from
May 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ts/src/ace.ts
Original file line number Diff line number Diff line change
Expand Up @@ -506,7 +506,7 @@ export default class ace extends Exchange {
return this.safeString (statuses, status, undefined);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
// "15697850529570392100421100482693"
Expand Down
2 changes: 1 addition & 1 deletion ts/src/alpaca.ts
Original file line number Diff line number Diff line change
Expand Up @@ -953,7 +953,7 @@ export default class alpaca extends Exchange {
return await this.fetchOrders (symbol, since, limit, this.extend (request, params));
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "id":"6ecfcc34-4bed-4b53-83ba-c564aa832a81",
Expand Down
2 changes: 1 addition & 1 deletion ts/src/ascendex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1272,7 +1272,7 @@ export default class ascendex extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
//
Expand Down
2 changes: 1 addition & 1 deletion ts/src/base/Exchange.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2350,7 +2350,7 @@ export default class Exchange {
throw new NotSupported (this.id + ' parseLedgerEntry() is not supported yet');
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
throw new NotSupported (this.id + ' parseOrder() is not supported yet');
}

Expand Down
2 changes: 1 addition & 1 deletion ts/src/bigone.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1359,7 +1359,7 @@ export default class bigone extends Exchange {
return this.safeString (types, type, type);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "id": "42154072251",
Expand Down
2 changes: 1 addition & 1 deletion ts/src/binance.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5030,7 +5030,7 @@ export default class binance extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// spot
//
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bingx.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2240,7 +2240,7 @@ export default class bingx extends Exchange {
return this.safeString (types, type, type);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// spot
// createOrder, createOrders, cancelOrder
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bit2c.ts
Original file line number Diff line number Diff line change
Expand Up @@ -536,7 +536,7 @@ export default class bit2c extends Exchange {
return this.parseOrder (response, market);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
// {
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitbank.ts
Original file line number Diff line number Diff line change
Expand Up @@ -616,7 +616,7 @@ export default class bitbank extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
const id = this.safeString (order, 'order_id');
const marketId = this.safeString (order, 'pair');
market = this.safeMarket (marketId, market);
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitbns.ts
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,7 @@ export default class bitbns extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
//
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitfinex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1190,7 +1190,7 @@ export default class bitfinex extends Exchange {
return await this.privatePostOrderCancelAll (params);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "id": 57334010955,
Expand Down
62 changes: 40 additions & 22 deletions ts/src/bitfinex2.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1493,21 +1493,22 @@ export default class bitfinex2 extends Exchange {
return this.safeString (orderTypes, orderType, 'GTC');
}

parseOrder (order, market: Market = undefined): Order {
const id = this.safeString (order, 0);
const marketId = this.safeString (order, 3);
parseOrder (order: Dict, market: Market = undefined): Order {
const orderList = this.safeList (order, 'result');
const id = this.safeString (orderList, 0);
const marketId = this.safeString (orderList, 3);
const symbol = this.safeSymbol (marketId);
// https://github.com/ccxt/ccxt/issues/6686
// const timestamp = this.safeTimestamp (order, 5);
const timestamp = this.safeInteger (order, 5);
const remaining = Precise.stringAbs (this.safeString (order, 6));
const signedAmount = this.safeString (order, 7);
// const timestamp = this.safeTimestamp (orderObject, 5);
const timestamp = this.safeInteger (orderList, 5);
const remaining = Precise.stringAbs (this.safeString (orderList, 6));
const signedAmount = this.safeString (orderList, 7);
const amount = Precise.stringAbs (signedAmount);
const side = Precise.stringLt (signedAmount, '0') ? 'sell' : 'buy';
const orderType = this.safeString (order, 8);
const orderType = this.safeString (orderList, 8);
const type = this.safeString (this.safeValue (this.options, 'exchangeTypes'), orderType);
const timeInForce = this.parseTimeInForce (orderType);
const rawFlags = this.safeString (order, 12);
const rawFlags = this.safeString (orderList, 12);
const flags = this.parseOrderFlags (rawFlags);
let postOnly = false;
if (flags !== undefined) {
Expand All @@ -1517,25 +1518,25 @@ export default class bitfinex2 extends Exchange {
}
}
}
let price = this.safeString (order, 16);
let price = this.safeString (orderList, 16);
let stopPrice = undefined;
if ((orderType === 'EXCHANGE STOP') || (orderType === 'EXCHANGE STOP LIMIT')) {
price = undefined;
stopPrice = this.safeString (order, 16);
stopPrice = this.safeString (orderList, 16);
if (orderType === 'EXCHANGE STOP LIMIT') {
price = this.safeString (order, 19);
price = this.safeString (orderList, 19);
}
}
let status = undefined;
const statusString = this.safeString (order, 13);
const statusString = this.safeString (orderList, 13);
if (statusString !== undefined) {
const parts = statusString.split (' @ ');
status = this.parseOrderStatus (this.safeString (parts, 0));
}
const average = this.safeString (order, 17);
const clientOrderId = this.safeString (order, 2);
const average = this.safeString (orderList, 17);
const clientOrderId = this.safeString (orderList, 2);
return this.safeOrder ({
'info': order,
'info': orderList,
'id': id,
'clientOrderId': clientOrderId,
'timestamp': timestamp,
Expand Down Expand Up @@ -1794,7 +1795,7 @@ export default class bitfinex2 extends Exchange {
for (let i = 0; i < data.length; i++) {
const entry = data[i];
const individualOrder = entry[4];
results.push (individualOrder[0]);
results.push ({ 'result': individualOrder[0] });
}
return this.parseOrders (results);
}
Expand All @@ -1815,7 +1816,11 @@ export default class bitfinex2 extends Exchange {
};
const response = await this.privatePostAuthWOrderCancelMulti (this.extend (request, params));
const orders = this.safeList (response, 4, []);
return this.parseOrders (orders);
const ordersList = [];
for (let i = 0; i < orders.length; i++) {
ordersList.push ({ 'result': orders[i] });
}
return this.parseOrders (ordersList);
}

async cancelOrder (id: string, symbol: Str = undefined, params = {}) {
Expand Down Expand Up @@ -1849,7 +1854,8 @@ export default class bitfinex2 extends Exchange {
}
const response = await this.privatePostAuthWOrderCancel (this.extend (request, params));
const order = this.safeValue (response, 4);
return this.parseOrder (order);
const orderObject = { 'result': order };
return this.parseOrder (orderObject);
}

async cancelOrders (ids, symbol: Str = undefined, params = {}) {
Expand Down Expand Up @@ -1926,7 +1932,11 @@ export default class bitfinex2 extends Exchange {
// ]
//
const orders = this.safeList (response, 4, []);
return this.parseOrders (orders, market);
const ordersList = [];
for (let i = 0; i < orders.length; i++) {
ordersList.push ({ 'result': orders[i] });
}
return this.parseOrders (ordersList, market);
}

async fetchOpenOrder (id: string, symbol: Str = undefined, params = {}) {
Expand Down Expand Up @@ -2037,7 +2047,11 @@ export default class bitfinex2 extends Exchange {
// ],
// ]
//
return this.parseOrders (response, market, since, limit);
const ordersList = [];
for (let i = 0; i < response.length; i++) {
ordersList.push ({ 'result': response[i] });
}
return this.parseOrders (ordersList, market, since, limit);
}

async fetchClosedOrders (symbol: Str = undefined, since: Int = undefined, limit: Int = undefined, params = {}): Promise<Order[]> {
Expand Down Expand Up @@ -2117,7 +2131,11 @@ export default class bitfinex2 extends Exchange {
// ]
// ]
//
return this.parseOrders (response, market, since, limit);
const ordersList = [];
for (let i = 0; i < response.length; i++) {
ordersList.push ({ 'result': response[i] });
}
return this.parseOrders (ordersList, market, since, limit);
}

async fetchOrderTrades (id: string, symbol: Str = undefined, since: Int = undefined, limit: Int = undefined, params = {}) {
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitflyer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -619,7 +619,7 @@ export default class bitflyer extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
const timestamp = this.parse8601 (this.safeString (order, 'child_order_date'));
const price = this.safeString (order, 'price');
const amount = this.safeString (order, 'size');
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitget.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3687,7 +3687,7 @@ export default class bitget extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder, editOrder, closePosition
//
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bithumb.ts
Original file line number Diff line number Diff line change
Expand Up @@ -807,7 +807,7 @@ export default class bithumb extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
//
// fetchOrder
Expand Down
8 changes: 4 additions & 4 deletions ts/src/bitmart.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2137,7 +2137,7 @@ export default class bitmart extends Exchange {
return this.parseTradingFee (data);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
//
Expand Down Expand Up @@ -2717,7 +2717,7 @@ export default class bitmart extends Exchange {
}
const data = this.safeValue (response, 'data');
if (data === true) {
return this.parseOrder (id, market);
return this.safeOrder ({ 'id': id }, market);
}
const succeeded = this.safeValue (data, 'succeed');
if (succeeded !== undefined) {
Expand All @@ -2731,8 +2731,8 @@ export default class bitmart extends Exchange {
throw new InvalidOrder (this.id + ' cancelOrder() ' + symbol + ' order id ' + id + ' is filled or canceled');
}
}
const order = this.parseOrder (id, market);
return this.extend (order, { 'id': id });
const order = this.safeOrder ({ 'id': id, 'symbol': market['symbol'], 'info': {}}, market);
return order;
}

async cancelOrders (ids: string[], symbol: Str = undefined, params = {}) {
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitmex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1706,7 +1706,7 @@ export default class bitmex extends Exchange {
return this.safeString (timeInForces, timeInForce, timeInForce);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "orderID":"56222c7a-9956-413a-82cf-99f4812c214b",
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitopro.ts
Original file line number Diff line number Diff line change
Expand Up @@ -915,7 +915,7 @@ export default class bitopro extends Exchange {
return this.safeString (statuses, status, undefined);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
// {
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitrue.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1752,7 +1752,7 @@ export default class bitrue extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder - spot
//
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitso.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1094,7 +1094,7 @@ export default class bitso extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
//
// canceledOrder
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitstamp.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1823,7 +1823,7 @@ export default class bitstamp extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// from fetch order:
// { status: "Finished",
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitteam.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1104,7 +1104,7 @@ export default class bitteam extends Exchange {
return this.parseOrders (orders, market);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// fetchOrders
// {
Expand Down
2 changes: 1 addition & 1 deletion ts/src/bitvavo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1552,7 +1552,7 @@ export default class bitvavo extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// cancelOrder, cancelAllOrders
//
Expand Down
2 changes: 1 addition & 1 deletion ts/src/blockchaincom.ts
Original file line number Diff line number Diff line change
Expand Up @@ -486,7 +486,7 @@ export default class blockchaincom extends Exchange {
return this.safeString (states, state, state);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "clOrdId": "00001",
Expand Down
2 changes: 1 addition & 1 deletion ts/src/blofin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1054,7 +1054,7 @@ export default class blofin extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "orderId": "2075628533",
Expand Down
2 changes: 1 addition & 1 deletion ts/src/btcalpha.ts
Original file line number Diff line number Diff line change
Expand Up @@ -679,7 +679,7 @@ export default class btcalpha extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// fetchClosedOrders / fetchOrder
// {
Expand Down
2 changes: 1 addition & 1 deletion ts/src/btcbox.ts
Original file line number Diff line number Diff line change
Expand Up @@ -374,7 +374,7 @@ export default class btcbox extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// {
// "id":11,
Expand Down
2 changes: 1 addition & 1 deletion ts/src/btcmarkets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -985,7 +985,7 @@ export default class btcmarkets extends Exchange {
return this.safeString (statuses, status, status);
}

parseOrder (order, market: Market = undefined): Order {
parseOrder (order: Dict, market: Market = undefined): Order {
//
// createOrder
//
Expand Down
Loading