From 565759348e6312a6fb9747042bd1dcd86d117196 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 19 May 2026 15:18:36 +0800
Subject: [PATCH] fix(gateApi): 修正网格交易条件订单触发规则
---
src/main/java/com/xcong/excoin/modules/gateApi/GateWebSocketClientManager.java | 29 ++++++++++++++++++-----------
1 files changed, 18 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateWebSocketClientManager.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateWebSocketClientManager.java
index def4b82..80b2e45 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateWebSocketClientManager.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateWebSocketClientManager.java
@@ -14,24 +14,31 @@
import java.math.BigDecimal;
/**
- * Gate 模块 Spring 入口,组装所有组件并管理生命周期。
+ * Gate 模块 Spring 容器入口 — 组件组装 + 生命周期管理。
*
- * <h3>启动流程 ({@code @PostConstruct})</h3>
+ * <h3>组装顺序({@code @PostConstruct})</h3>
* <ol>
- * <li>构建 {@link GateConfig}(Builder 模式,含 API 密钥、合约、策略参数)</li>
- * <li>创建 {@link GateGridTradeService} → init():切持仓模式、清旧条件单、设杠杆</li>
- * <li>创建 {@link GateKlineWebSocketClient} → 注册 3 个 Handler → init():建立 WS 连接</li>
- * <li>gridTradeService.startGrid():激活策略,等待 K 线触发首次双开</li>
+ * <li>{@link GateConfig} — 构建配置(API 密钥、合约、策略参数)</li>
+ * <li>{@link GateGridTradeService} — init():获取用户 ID → 切双向持仓 → 清旧条件单 → 平仓 → 设杠杆</li>
+ * <li>{@link GateKlineWebSocketClient} — 注册 6 个频道处理器 → init():建立 WS 连接并订阅</li>
+ * <li>{@code gridTradeService.startGrid()} — 状态重置,等待首根 K 线</li>
* </ol>
*
- * <h3>销毁流程 ({@code @PreDestroy})</h3>
+ * <h3>6 个频道处理器</h3>
* <ol>
- * <li>gridTradeService.stopGrid():取消条件单 → 关闭交易线程池</li>
+ * <li>CandlestickChannelHandler — 公开频道,K线 → onKline()</li>
+ * <li>PositionsChannelHandler — 私有频道,仓位 → onPositionUpdate()</li>
+ * <li>PositionClosesChannelHandler — 私有频道,平仓 → onPositionClose()</li>
+ * <li>OrdersChannelHandler — 私有频道,订单成交 → onOrderUpdate()</li>
+ * <li>UserTradesChannelHandler — 私有频道,用户成交 → onUserTrade()</li>
+ * <li>AutoOrdersChannelHandler — 私有频道,条件单状态 → onAutoOrder()</li>
+ * </ol>
+ *
+ * <h3>销毁顺序({@code @PreDestroy})</h3>
+ * <ol>
+ * <li>gridTradeService.stopGrid():取消所有条件单 → 关闭交易线程池</li>
* <li>wsClient.destroy():取消订阅 → 断开 WS → 关闭线程池</li>
* </ol>
- *
- * <h3>配置</h3>
- * 当前在代码中硬编码测试网参数。切换到生产网只需改为 {@code .isProduction(true)}。
*
* @author Administrator
*/
--
Gitblit v1.9.1