From bb146de0f32bfbbb516e1c25ff4873986d548673 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Thu, 15 Jan 2026 10:41:21 +0800
Subject: [PATCH] etf

---
 trading-order-service/src/main/java/com/yami/trading/service/MarketOpenChecker.java |   36 ++++++++++++++++++++++++++++--------
 1 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/trading-order-service/src/main/java/com/yami/trading/service/MarketOpenChecker.java b/trading-order-service/src/main/java/com/yami/trading/service/MarketOpenChecker.java
index f064cbc..42147a1 100644
--- a/trading-order-service/src/main/java/com/yami/trading/service/MarketOpenChecker.java
+++ b/trading-order-service/src/main/java/com/yami/trading/service/MarketOpenChecker.java
@@ -165,9 +165,9 @@
             case MY_STOCKS: {
                 ZonedDateTime nowKualaLumpur = nowUtc.withZoneSameInstant(ZoneId.of("Asia/Kuala_Lumpur"));
                 String formattedDate = nowKualaLumpur.format(formatter);
-                if (myStockStopSet.contains(formattedDate)) {
+                /*if (myStockStopSet.contains(formattedDate)) {
                     return false;
-                }
+                }*/
                 if (nowKualaLumpur.getDayOfWeek().getValue() < 6) { // 保证周一至周五可以交易
                     if ((nowKualaLumpur.getHour() == 9 && nowKualaLumpur.getMinute() >= 30) || // 上午9:30开始
                             (nowKualaLumpur.getHour() > 9 && nowKualaLumpur.getHour() < 12) || // 9点过后至12点前
@@ -182,9 +182,9 @@
                 ZonedDateTime nowShanghai = nowUtc.withZoneSameInstant(ZoneId.of("Asia/Shanghai"));
                 String formattedDate = nowShanghai.format(formatter);
                 //logger.info("---> MarketOpenChecker.isOpen market:{}, dayOfWeek:{}, hour:{}", market, nowShanghai.getDayOfWeek().getValue(), nowShanghai.getHour());
-                if (aStockStopSet.contains(formattedDate)) {
+                /*if (aStockStopSet.contains(formattedDate)) {
                     return false;
-                }
+                }*/
                 if (nowShanghai.getDayOfWeek().getValue() < 6 &&
                         ((nowShanghai.getHour() == 9 && nowShanghai.getMinute() >= 30) ||
                                 (nowShanghai.getHour() == 10) ||
@@ -198,9 +198,9 @@
 
                 ZonedDateTime nowHongKong = nowUtc.withZoneSameInstant(ZoneId.of("Asia/Hong_Kong"));
                 String formattedDate = nowHongKong.format(formatter);
-                if (hkStockStopSet.contains(formattedDate)) {
+                /*if (hkStockStopSet.contains(formattedDate)) {
                     return false;
-                }
+                }*/
                 if (nowHongKong.getDayOfWeek().getValue() < 6 &&
                         ((nowHongKong.getHour() == 9 && nowHongKong.getMinute() >= 30) ||
                                 (nowHongKong.getHour() > 9 && nowHongKong.getHour() < 12) ||
@@ -211,10 +211,10 @@
             }
             case US_STOCKS: {
                 ZonedDateTime nowNewYork = nowUtc.withZoneSameInstant(ZoneId.of("America/New_York"));
-                String formattedDate = nowNewYork.format(formatter);
+                /*String formattedDate = nowNewYork.format(formatter);
                 if (usStockStopSet.contains(formattedDate)) {
                     return false;
-                }
+                }*/
                 if (!isUsSupportPreAndAfter()) {
                     if (nowNewYork.getDayOfWeek().getValue() < 6 &&
                             ((nowNewYork.getHour() == 9 && nowNewYork.getMinute() >= 30) ||
@@ -411,6 +411,26 @@
         return false;
     }
 
+    public static boolean isMarketOpenBuyDz(String market) {
+        ZonedDateTime nowUtc = ZonedDateTime.now(ZoneId.of("UTC"));
+        return isOpenBuyDz(market, nowUtc);
+    }
+
+    private static boolean isOpenBuyDz(String market, ZonedDateTime nowUtc) {
+        switch (market) {
+            case US_STOCKS: {
+                ZonedDateTime nowNewYork = nowUtc.withZoneSameInstant(ZoneId.of("America/New_York"));
+                if (nowNewYork.getDayOfWeek().getValue() < 6) {
+                    return true;
+                }
+                break;
+            }
+            default:
+                throw new IllegalArgumentException("无效的市场名称");
+        }
+        return false;
+    }
+
 
     public static List<OpenCloseTime> listUsOpenCloseDateTime() {
         int year = 2023;

--
Gitblit v1.9.3