From 83f9014a75f572154ae7732f0fc78d6467edde93 Mon Sep 17 00:00:00 2001
From: peter <908253177@qq.com>
Date: Tue, 08 Jul 2025 14:56:52 +0800
Subject: [PATCH] 外汇
---
trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
index b85db7a..38a35ed 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
@@ -3,6 +3,7 @@
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
+import com.yami.trading.bean.data.domain.Kline;
import com.yami.trading.bean.data.domain.Realtime;
import com.yami.trading.bean.data.domain.TradeDetails;
import com.yami.trading.bean.item.domain.Item;
@@ -12,6 +13,8 @@
import com.yami.trading.common.util.StringUtils;
import com.yami.trading.common.web.ResultObject;
import com.yami.trading.huobi.data.DataCache;
+import com.yami.trading.huobi.data.internal.KlineConstant;
+import com.yami.trading.huobi.data.internal.KlineService;
import com.yami.trading.service.data.DataService;
import com.yami.trading.service.item.ItemService;
import io.swagger.annotations.Api;
@@ -48,6 +51,8 @@
private DataService dataService;
@Autowired
private ItemService itemService;
+ @Autowired
+ private KlineService klineService;
@ApiOperation(value = "行情")
@GetMapping(HOBI + "getRealtime.action")
@@ -73,6 +78,14 @@
BigDecimal bigDecimal = BigDecimal.valueOf(1, decimals);
d.setAsk(d.getClose().add(bigDecimal).setScale(decimals, RoundingMode.HALF_UP));
d.setBid(d.getClose().subtract(bigDecimal).setScale(decimals, RoundingMode.HALF_UP));
+ //涨跌幅 = (当天收盘价 - 前一日收盘价) / 前一日收盘价 * 100%
+ if(null != bySymbol.getYesterdayLastPrice() && bySymbol.getYesterdayLastPrice().compareTo(BigDecimal.ZERO) != 0){
+ BigDecimal changePercent = (d.getClose().subtract(bySymbol.getYesterdayLastPrice()))
+ .divide(bySymbol.getYesterdayLastPrice(), 5, RoundingMode.HALF_UP) // 精确到4位小数
+ .multiply(new BigDecimal("100").setScale(2)); // 乘以100得到百分比
+ d.setChangeRatioStr(changePercent.toString());
+ }
+
if(d.getVolume()!=null){
d.setVolume(d.getVolume().setScale(2, RoundingMode.HALF_UP));
}
--
Gitblit v1.9.3