优化做市引擎、偏移做市引擎和趋势引擎的订单管理逻辑,将待取消订单的类型从数字更改为字符串,确保在处理订单时的类型一致性。同时,增强风险检查逻辑,确保在平仓时使用正确的价格,提升交易策略的稳定性和准确性。

This commit is contained in:
discountry
2025-09-27 17:05:51 +08:00
parent dde7ab71a9
commit 0bb22d891f
9 changed files with 217 additions and 92 deletions
+8 -3
View File
@@ -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()));