From 738b131f64656175232d771d76131c6fd31d3b65 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 23 Jun 2026 14:37:58 +0800
Subject: [PATCH] fix(gateApi): 修正网格交易基础数量配置
---
src/main/java/com/xcong/excoin/modules/gateApi/GateTradeExecutor.java | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateTradeExecutor.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateTradeExecutor.java
index 9984cf9..b5de170 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateTradeExecutor.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateTradeExecutor.java
@@ -92,6 +92,13 @@
executor.shutdownNow();
}
}
+ /**
+ * 提交一个通用任务到交易线程池末尾。
+ * 利用单线程池的 FIFO 特性确保任务按提交顺序执行。
+ */
+ public void submitTask(Runnable task) {
+ executor.execute(task);
+ }
/**
* 异步 IOC 市价开多。quantity 为正数(如 "1")。
@@ -338,7 +345,7 @@
*
* @param orderId 条件单 ID,为 null 时跳过
*/
- public void cancelConditionalOrder(String orderId) {
+ public void cancelConditionalOrder(String orderId,Consumer<String> onSuccess) {
if (orderId == null) {
return;
}
@@ -346,6 +353,9 @@
try {
futuresApi.cancelPriceTriggeredOrder(SETTLE, Long.parseLong(orderId));
log.info("[TradeExec] 条件单已取消, id:{}", orderId);
+ if (onSuccess != null) {
+ onSuccess.accept(orderId);
+ }
} catch (Exception e) {
log.warn("[TradeExec] 取消条件单失败(可能已触发), id:{}", orderId);
}
--
Gitblit v1.9.1