From bee6b602b0bf4dfb7956a61b39ba03a240d89d6f Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 29 Jan 2021 10:53:41 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java |    3 +--
 src/main/java/com/xcong/excoin/utils/CalculateUtil.java                                  |    4 ++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java b/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java
index da3d739..e0c59d5 100644
--- a/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/contract/service/impl/RabbitOrderServiceImpl.java
@@ -500,7 +500,7 @@
 
                 BigDecimal rewardRatio = holdOrderDataModel.getRewardAmount().divide(holdOrderEntity.getBondAmount().subtract(holdOrderEntity.getOpeningFeeAmount()), 8, BigDecimal.ROUND_DOWN);
                 contractOrderEntity.setRewardRatio(rewardRatio);
-                contractOrderEntity.setRewardAmount(holdOrderDataModel.getRewardAmount());
+                contractOrderEntity.setRewardAmount(holdOrderDataModel.getRewardAmount().add(contractOrderEntity.getBondAmount()));
                 contractOrderEntity.setClosingPrice(holdOrderDataModel.getClosingPrice());
 //                contractOrderEntity.setForceClosingPrice(holdOrderDataModel.getClosingPrice());
 
@@ -511,7 +511,6 @@
                     contractOrderEntity.setOrderType(ContractOrderEntity.ORDER_TYPE_CLOSE_LESS);
                 }
                 contractOrderEntity.setClosingTime(new Date());
-                contractOrderEntity.setClosingFeeAmount(holdOrderEntity.getOpeningFeeAmount());
 
                 contractOrderDao.insert(contractOrderEntity);
             }
diff --git a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
index 183a4a4..b097cd3 100644
--- a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
+++ b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
@@ -275,7 +275,7 @@
 
     /**
      * 全仓模式下,维持保证金
-     * 维持保证金 = 持仓价值*维持保证金率= 面值*张数*开仓价格*维持保证金率
+     * 维持保证金 = 持仓价值*维持保证金率= 面值*张数*开仓价格*(1/杠杆倍率)*维持保证金率
      * @param contractHoldOrder
      * @return
      */
@@ -289,6 +289,6 @@
             redisUtils.set(AppContants.HOLD_BOND_RATIO, tradeSetting.getHoldBondRatio());
         }
 
-        return contractHoldOrder.getOpeningPrice().multiply(new BigDecimal(contractHoldOrder.getSymbolCntSale())).multiply(holdBondRatio).multiply(contractHoldOrder.getSymbolSku());
+        return contractHoldOrder.getOpeningPrice().multiply(new BigDecimal(contractHoldOrder.getSymbolCntSale())).multiply(holdBondRatio).multiply(contractHoldOrder.getSymbolSku()).multiply(BigDecimal.ONE.divide(new BigDecimal(contractHoldOrder.getLeverRatio()), 2, BigDecimal.ROUND_DOWN));
     }
 }

--
Gitblit v1.9.1