From 96a6e618c3810f3235a6b1a4092b547c1460beae Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 04 Sep 2026 10:33:26 +0800
Subject: [PATCH] refactor(gateApi): 优化网格交易服务中的数量计算逻辑

---
 src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java
index 4828f0a..7a5fdda 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java
@@ -93,7 +93,7 @@
                 .priceScale(GateWebSocketClientManager.DEFAULT_PRICE_SCALE)
                 .contractMultiplier(new BigDecimal(GateWebSocketClientManager.DEFAULT_CONTRACT_MULTIPLIER))
                 .unrealizedPnlPriceMode(GateConfig.PnLPriceMode.valueOf(GateWebSocketClientManager.DEFAULT_PNL_MODE))
-                .isProduction(true)
+                .isProduction(false)
                 .reopenMaxRetries(GateWebSocketClientManager.DEFAULT_REOPEN_MAX_RETRIES)
                 // 可调参数 — 从 DTO 读取
                 .gridRate(nvl(dto.getGridRate(), new BigDecimal("0.005")))
@@ -105,6 +105,13 @@
                 .stopLossCount(dto.getStopLossCount())
                 .takeProfitGridSpan(dto.getTakeProfitGridSpan())
                 .priceDriveEnabled(nvl(dto.getPriceDriveEnabled(), true))
+                .rounds(dto.getRounds())
+                .stopLossCountMode(nvl(dto.getStopLossCountMode(), "dual"))
+                .addPositionInterval(dto.getAddPositionInterval() >= 0 ? dto.getAddPositionInterval() : 3)
+                .addPositionQuantity(dto.getAddPositionQuantity() > 0 ? dto.getAddPositionQuantity() : 1)
+                .maxPositionPerSide(dto.getMaxPositionPerSide())
+                .addPositionStartThreshold(dto.getAddPositionStartThreshold() >= 0 ? dto.getAddPositionStartThreshold() : 1)
+                .placeExcessTakeProfit(dto.isPlaceExcessTakeProfit())
                 .build();
     }
 

--
Gitblit v1.9.1