mirror of
https://github.com/discountry/ritmex-bot.git
synced 2026-09-10 00:38:07 +00:00
优化做市引擎、偏移做市引擎和趋势引擎的订单管理逻辑,将待取消订单的类型从数字更改为字符串,确保在处理订单时的类型一致性。同时,增强风险检查逻辑,确保在平仓时使用正确的价格,提升交易策略的稳定性和准确性。
This commit is contained in:
@@ -707,10 +707,12 @@ function updateAccountSnapshot(snapshot: AsterAccountSnapshot | null, event: { e
|
||||
}
|
||||
|
||||
function mergeOrderSnapshot(map: Map<number, AsterOrder>, order: AsterOrder): void {
|
||||
const numericId = typeof order.orderId === "number" ? order.orderId : Number(order.orderId);
|
||||
if (!Number.isFinite(numericId)) return;
|
||||
if (FINAL_ORDER_STATUSES.has(order.status)) {
|
||||
map.delete(order.orderId);
|
||||
map.delete(numericId);
|
||||
} else {
|
||||
map.set(order.orderId, order);
|
||||
map.set(numericId, { ...order, orderId: numericId });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1003,7 +1005,10 @@ export class AsterGateway {
|
||||
await this.rest.cancelAllOrders(params);
|
||||
for (const order of Array.from(this.openOrders.values())) {
|
||||
if (order.symbol === params.symbol) {
|
||||
this.openOrders.delete(order.orderId);
|
||||
const numericId = typeof order.orderId === "number" ? order.orderId : Number(order.orderId);
|
||||
if (Number.isFinite(numericId)) {
|
||||
this.openOrders.delete(numericId);
|
||||
}
|
||||
}
|
||||
}
|
||||
this.ordersEvent.emit(Array.from(this.openOrders.values()));
|
||||
|
||||
Reference in New Issue
Block a user