From e84b3c45f7ecef39926b582b10d03b30ff77ee95 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Tue, 28 Oct 2025 16:36:56 +0800
Subject: [PATCH] 最高最低值优化

---
 trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimeWebsocketServer.java |   24 +++++++++++++-----------
 1 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimeWebsocketServer.java b/trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimeWebsocketServer.java
index b6e2862..8a0250d 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimeWebsocketServer.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimeWebsocketServer.java
@@ -112,20 +112,22 @@
 			realtime.setAmount(new BigDecimal(amount));
 
 			if (currentValue != null && currentValue != 0) {
-				realtime.setClose(new BigDecimal(Arith.add(close, currentValue.doubleValue())));
+				realtime.setClose(new BigDecimal(Arith.add(close, currentValue)));
 				//realtime.setVolume(new BigDecimal(Arith.add(vol, Arith.mul(Arith.div(currentValue, close), vol))));
 				//realtime.setAmount(new BigDecimal(Arith.add(amount, Arith.mul(Arith.div(currentValue, close), amount))));
+
+				Double high = DataCache.getRealtimeHigh().get(symbol);
+				Double low = DataCache.getRealtimeLow().get(symbol);
+
+				if (high != null) {
+					realtime.setHigh(BigDecimal.valueOf(high));
+				}
+				if (low != null) {
+					realtime.setLow(BigDecimal.valueOf(low));
+				}
 			}
 
-			Double high = DataCache.getRealtimeHigh().get(symbol);
-			Double low = DataCache.getRealtimeLow().get(symbol);
 
-			if (high == null || realtime.getClose().doubleValue() > high) {
-				DataCache.getRealtimeHigh().put(symbol, close);
-			}
-			if ((low == null || realtime.getClose().doubleValue() < low) && realtime.getClose().doubleValue() > 0) {
-				DataCache.getRealtimeLow().put(symbol, close);
-			}
 
 			Realtime current = DataCache.getRealtime(symbol);
 			if (current == null || current.getTs() != event.getTs()) {
@@ -135,13 +137,13 @@
 					realtime.setAmount(realtime.getAmount().multiply(item.getMultiple()));
 				}
 
-				if (high != null && high >= realtime.getClose().doubleValue()) {
+				/*if (high != null && high >= realtime.getClose().doubleValue()) {
 					realtime.setHigh(new BigDecimal(high));
 				}
 
 				if (low != null && low <= realtime.getClose().doubleValue()) {
 					realtime.setLow(new BigDecimal(low));
-				}
+				}*/
 
 				/*ouble h24Before = DataCache.getRealtime24HBeforeOpen().get(symbol);
 				if (h24Before != null) {

--
Gitblit v1.9.3