From cbcf779da2e10df907350debf8ae648e93824c56 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 15 Jun 2026 21:28:16 +0800
Subject: [PATCH] fix(gateApi): 修复网格交易止损数量计算逻辑

---
 src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java
index 93c14be..8ed0b97 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java
@@ -1116,9 +1116,9 @@
 
         BigDecimal baseQuantity = new BigDecimal(config.getBaseQuantity());
         BigDecimal subtract = baseQuantity.subtract(longPositionSize);
-        String size = new BigDecimal(config.getQuantity()).add(new BigDecimal("1")).toString();
-        if (subtract.compareTo(BigDecimal.ZERO) >=0){
-            size = subtract.add(new BigDecimal("1")).toString();
+        String size = new BigDecimal(config.getQuantity()).add(new BigDecimal(config.getQuantity())).toString();
+        if (subtract.compareTo(BigDecimal.ZERO) > 0){
+            size = subtract.add(new BigDecimal(config.getQuantity())).toString();
         }
         log.info("[Gate] 多仓止损触发 gridId:{}, 在gridId:{}挂{}基础张多单",
                 gridId, newEntryGridId, size);
@@ -1174,9 +1174,10 @@
 
         BigDecimal baseQuantity = new BigDecimal(config.getBaseQuantity());
         BigDecimal subtract = baseQuantity.subtract(shortPositionSize);
-        String size = new BigDecimal(config.getQuantity()).add(new BigDecimal("1")).toString();
-        if (subtract.compareTo(BigDecimal.ZERO) >=0){
-            size = subtract.add(new BigDecimal("1")).toString();
+
+        String size = new BigDecimal(config.getQuantity()).add(new BigDecimal(config.getQuantity())).toString();
+        if (subtract.compareTo(BigDecimal.ZERO) > 0){
+            size = subtract.add(new BigDecimal(config.getQuantity())).toString();
         }
         log.info("[Gate] 空仓止损触发 gridId:{}, 在gridId:{}挂{}基础张空单",
                 gridId, newEntryGridId, size);

--
Gitblit v1.9.1