From a5c0fbbbf7c7d560f69887ea243467fa4a9b1c06 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 29 Jun 2026 11:47:25 +0800
Subject: [PATCH] 假设多仓止损挂单位置: gridId=-5, -6, -7, -8 第一个止损位置: firstLongSlId = -5(最近的)
---
src/main/java/com/xcong/excoin/modules/gateApi/GateKlineWebSocketClient.java | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateKlineWebSocketClient.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateKlineWebSocketClient.java
index 156c76b..811bb20 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateKlineWebSocketClient.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateKlineWebSocketClient.java
@@ -258,6 +258,12 @@
}
if ("subscribe".equals(event)) {
log.info("[WS] {} 订阅成功: {}", channel, response.getJSONObject("result"));
+ for (GateChannelHandler handler : channelHandlers) {
+ if (channel.equals(handler.getChannelName())) {
+ handler.setSubscribed(true);
+ break;
+ }
+ }
return;
}
if ("unsubscribe".equals(event)) {
@@ -282,6 +288,17 @@
}
}
+ /**
+ * 检查所有已注册的频道是否都已收到订阅成功确认。
+ */
+ public boolean areAllSubscribed() {
+ if (channelHandlers.isEmpty()) return false;
+ for (GateChannelHandler h : channelHandlers) {
+ if (!h.isSubscribed()) return false;
+ }
+ return true;
+ }
+
// ---- heartbeat ----
/**
--
Gitblit v1.9.1