Administrator
2025-12-15 84ce7752ff2c05f1c8fed004a4fcf76c4b7c6360
fix(okxNewPrice): 修正减仓逻辑中的价格比较条件

- 修改平仓队列价格比较逻辑,确保正确触发减仓操作
- 调整开仓队列价格比较条件,优化减仓时机判断
- 更新日志信息以准确反映价格比较结果
1 files modified
8 ■■■■ changed files
src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java 8 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java
@@ -173,8 +173,8 @@
                    return OrderParamEnums.HOLDING.getValue();
                }
                AscBigDecimal pingCang = queuePingCang.peek();
                if (pingCang != null && markPx.compareTo(pingCang.getValue()) >= 0 && avgPx.compareTo(pingCang.getValue()) < 0) {
                    log.info("开始减仓...平仓队列价格小于当前价格{}<={}", pingCang.getValue(), markPx);
                if (pingCang != null && avgPx.compareTo(pingCang.getValue()) < 0) {
                    log.info("开始减仓...平仓队列价格大于当前价格{}<={}", pingCang.getValue(), avgPx);
                    // 手续费
                    BigDecimal feeValue = PositionsWs.getAccountMap(accountName).get("fee").multiply(new BigDecimal("2"));
                    //未实现收益
@@ -321,8 +321,8 @@
                    return OrderParamEnums.HOLDING.getValue();
                }
                DescBigDecimal kaiCang = queueKaiCang.peek();
                if (kaiCang != null && markPx.compareTo(kaiCang.getValue()) <= 0 && avgPx.compareTo(kaiCang.getValue()) >= 0) {
                    log.info("开始减仓...减仓队列价格大于当前价格{}>{}", kaiCang.getValue(), markPx);
                if (kaiCang != null && avgPx.compareTo(kaiCang.getValue()) >= 0) {
                    log.info("开始减仓...减仓队列价格小于开仓价格{}>{}", kaiCang.getValue(), avgPx);
                    // 手续费
                    BigDecimal feeValue = PositionsWs.getAccountMap(accountName).get("fee").multiply(new BigDecimal("2"));