Administrator
2026-06-05 782bebb2e734e1782e875fc2f45cbef71cb07712
src/main/java/com/xcong/excoin/modules/okxNewPrice/OkxGridTradeService.java
@@ -563,7 +563,9 @@
        BigDecimal triggerPrice = newEntryGrid.getGridPrice();
        BigDecimal priceDiff = longEntryPrice.subtract(triggerPrice).abs();
        int count = priceDiff.divide(config.getStep(), 0, RoundingMode.DOWN).intValue();
        // 精度补偿:步长被setScale截断,priceDiff/step可能产生1.99998→Down截断为1的问题
        BigDecimal epsilon = new BigDecimal("0.00000001");
        int count = priceDiff.add(epsilon).divide(config.getStep(), 0, RoundingMode.DOWN).intValue();
        count = Math.max(1, count);
        int entryQty = count * Integer.parseInt(config.getQuantity());
        String size = String.valueOf(entryQty);
@@ -605,7 +607,9 @@
        BigDecimal triggerPrice = newEntryGrid.getGridPrice();
        BigDecimal priceDiff = shortEntryPrice.subtract(triggerPrice).abs();
        int count = priceDiff.divide(config.getStep(), 0, RoundingMode.DOWN).intValue();
        // 精度补偿:步长被setScale截断,priceDiff/step可能产生1.99998→Down截断为1的问题
        BigDecimal epsilon = new BigDecimal("0.00000001");
        int count = priceDiff.add(epsilon).divide(config.getStep(), 0, RoundingMode.DOWN).intValue();
        count = Math.max(1, count);
        int entryQty = count * Integer.parseInt(config.getQuantity());
        String size = String.valueOf(entryQty);