Administrator
2026-08-10 423f15ff32cd88abcbb703b15dcc66fa2ed05602
src/main/java/com/xcong/excoin/modules/gateApi/GateGridTradeService.java
@@ -1295,7 +1295,8 @@
     * 根据加仓配置计算止损追单时的实际下单量。
     * <p>公式:</p>
     * <pre>
     * addMultiplier = floor(effectiveStopLossCount / addPositionInterval)
     * divisor = addPositionInterval + 1
     * addMultiplier = floor(effectiveStopLossCount / divisor)
     * addQty = addMultiplier × addPositionQuantity
     * finalQty = min(baseQuantity + addQty, maxPositionPerSide > 0 ? maxPositionPerSide : ∞)
     * </pre>
@@ -1310,7 +1311,13 @@
        int maxPerSide = config.getMaxPositionPerSide();
        int effectiveCount = getEffectiveStopLossCount(isLong);
        int addMultiplier = interval > 0 ? effectiveCount / interval : 0;
        int startThreshold = config.getAddPositionStartThreshold();
        if (startThreshold > 0) {
            effectiveCount = Math.max(0, effectiveCount - startThreshold);
        }
        // divisor = interval + 1:interval=0→每次加仓, interval=1→每2次加仓(2,4,6...), interval=3→每4次加仓(4,8,12...)
        int divisor = interval + 1;
        int addMultiplier = interval >= 0 ? effectiveCount / divisor : 0;
        int addQty = addMultiplier * addQtyPerUnit;
        int totalQty = baseQty + addQty;