Administrator
2025-12-12 59f3f0a8e4a7c14b3c06413cff288ba9fa92c426
src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java
@@ -83,10 +83,10 @@
        log.info("实际亏损金额: {}", realKuiSunAmount);
        String zhiSunPercent = InstrumentsWs.INSTRUMENTSWSMAP.get(CoinEnums.ZHI_SUN.name());
        BigDecimal zhiSunAmount = cashBal.multiply(new BigDecimal(zhiSunPercent));
        log.info("预期亏损金额: {}", realKuiSunAmount);
        log.info("预期亏损金额: {}", zhiSunAmount);
        String kangYaPercent = InstrumentsWs.INSTRUMENTSWSMAP.get(CoinEnums.KANG_CANG.name());
        log.info("预期抗仓金额: {}", kangYaPercent);
        BigDecimal  kangYaAmount = cashBal.multiply(new BigDecimal(kangYaPercent));
        log.info("预期抗仓金额: {}", kangYaAmount);
        if (realKuiSunAmount.compareTo(BigDecimal.ZERO) > 0){
            // 账户预期亏损金额比这个还小时,立即止损
@@ -102,14 +102,14 @@
            }
        }
        BigDecimal ordFroz = WsMapBuild.parseBigDecimalSafe(AccountWs.ACCOUNTWSMAP.get("ordFroz"));
        if (BigDecimal.ZERO.compareTo( ordFroz) >= 0) {
        BigDecimal ordFrozImr = WsMapBuild.parseBigDecimalSafe(AccountWs.ACCOUNTWSMAP.get("imr"));
        if (BigDecimal.ZERO.compareTo( ordFrozImr) >= 0) {
            log.error("占用保证金为零,进行初始化订单");
            return OrderParamEnums.INIT.getValue();
        }
        // 判断是否保证金超标
        BigDecimal totalOrderUsdt = WsMapBuild.parseBigDecimalSafe(CoinEnums.TOTAL_ORDER_USDT.name());
        if (ordFroz.compareTo(totalOrderUsdt) >= 0){
        if (ordFrozImr.compareTo(totalOrderUsdt) >= 0){
            log.error("已满仓......");
            return OrderParamEnums.HOLDING.getValue();
        }