From 830dd7a3c9c496348b5434f881913d6bca01ba3b Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 17 Dec 2025 09:57:19 +0800
Subject: [PATCH] refactor(okx): 调整账户与仓位初始化逻辑

---
 src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java b/src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java
index 3eecb98..fe1037b 100644
--- a/src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/okxNewPrice/celue/CaoZuoServiceImpl.java
@@ -113,7 +113,7 @@
         BigDecimal pos = PositionsWs.getAccountMap(accountName).get("pos");
         if (BigDecimal.ZERO.compareTo( pos) >= 0) {
             log.error("持仓数量为零,进行初始化订单");
-            return OrderParamEnums.INIT.getValue();
+            return null;
         }
         // 判断是否保证金超标
         if (PositionsWs.getAccountMap(accountName).get("imr") == null){
@@ -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"));
                     //未实现收益
@@ -284,7 +284,7 @@
         BigDecimal pos = PositionsWs.getAccountMap(accountName).get("pos");
         if (BigDecimal.ZERO.compareTo( pos) >= 0) {
             log.error("持仓数量为零,进行初始化订单");
-            return OrderParamEnums.INIT.getValue();
+            return null;
         }
         // 判断是否保证金超标
         if (PositionsWs.getAccountMap(accountName).get("imr") == null){
@@ -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"));

--
Gitblit v1.9.1