From 1a3f2693a476338da836de84cbded66bc9dfcf42 Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Thu, 08 Apr 2021 21:56:34 +0800
Subject: [PATCH] modify
---
src/test/java/com/xcong/excoin/WholeTest.java | 9 ++++++---
src/main/java/com/xcong/excoin/utils/CalculateUtil.java | 20 +-------------------
2 files changed, 7 insertions(+), 22 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
index ad6762a..44ef082 100644
--- a/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
+++ b/src/main/java/com/xcong/excoin/utils/CalculateUtil.java
@@ -230,25 +230,7 @@
totalBondAmount = totalBondAmount.add(holdOrderEntity.getBondAmount());
}
- // 盈亏
- BigDecimal rewardRatio = BigDecimal.ZERO;
- // 开多
- if (ContractHoldOrderEntity.OPENING_TYPE_MORE == holdOrderEntity.getOpeningType()) {
- // (最新价-开仓价)*规格*张数
- rewardRatio = newPrice.subtract(holdOrderEntity.getOpeningPrice()).multiply(contractHoldOrderEntity.getSymbolSku()).multiply(new BigDecimal(holdOrderEntity.getSymbolCntSale()));
- // 开空
- } else {
- // (开仓价-最新价)*规格*张数
- rewardRatio = holdOrderEntity.getOpeningPrice().subtract(newPrice).multiply(contractHoldOrderEntity.getSymbolSku()).multiply(new BigDecimal(holdOrderEntity.getSymbolCntSale()));
- }
-
- if (memberEntity.getIsProfit() == MemberEntity.IS_PROFIT_Y) {
- PlatformTradeSettingEntity tradeSettingEntity = cacheSettingUtils.getTradeSetting();
- if (rewardRatio.compareTo(BigDecimal.ZERO) > -1) {
- rewardRatio = rewardRatio.multiply(BigDecimal.ONE.subtract(tradeSettingEntity.getProfitParam()));
- }
- }
- totalProfitOrLoss = totalProfitOrLoss.add(rewardRatio);
+ totalProfitOrLoss = totalProfitOrLoss.add(calProfitOrLoss(holdOrderEntity, memberEntity));
}
// 维持保证金
diff --git a/src/test/java/com/xcong/excoin/WholeTest.java b/src/test/java/com/xcong/excoin/WholeTest.java
index 1e97f1c..2cc497a 100644
--- a/src/test/java/com/xcong/excoin/WholeTest.java
+++ b/src/test/java/com/xcong/excoin/WholeTest.java
@@ -17,6 +17,7 @@
import com.xcong.excoin.rabbit.pricequeue.WebsocketPriceService;
import com.xcong.excoin.rabbit.producer.OrderProducer;
import com.xcong.excoin.utils.CalculateUtil;
+import com.xcong.excoin.utils.CoinTypeConvert;
import com.xcong.excoin.utils.RedisUtils;
import com.xcong.excoin.utils.ThreadPoolUtils;
import lombok.SneakyThrows;
@@ -200,10 +201,12 @@
@Test
public void wholeForceNewTest() {
- MemberEntity memberEntity = memberDao.selectById(15L);
- ContractHoldOrderEntity holdOrder = contractHoldOrderDao.selectById(724L);
+ BigDecimal newPrice = new BigDecimal(redisUtils.getString(CoinTypeConvert.convertToKey("BTC/USDT")));
- System.out.println(CalculateUtil.calWholePriceTwo(memberEntity, holdOrder, 1, BigDecimal.ZERO));
+ MemberEntity memberEntity = memberDao.selectById(22L);
+ ContractHoldOrderEntity holdOrder = contractHoldOrderDao.selectById(743L);
+
+ System.out.println(CalculateUtil.calWholePriceTwo(memberEntity, holdOrder, 1, newPrice));
}
@Test
--
Gitblit v1.9.1