From 7685782bb420b129f995ff7b222b5efe261e0cba Mon Sep 17 00:00:00 2001 From: claw_bot Date: Thu, 12 Mar 2026 03:33:03 +0000 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=A1=8C=E6=83=85=E7=BC=93?= =?UTF-8?q?=E5=AD=98=E7=AD=96=E7=95=A5=EF=BC=9A=E7=BE=8E=E8=82=A1=E4=BA=A4?= =?UTF-8?q?=E6=98=93=E6=97=B6=E6=AE=B5=E7=BC=93=E5=AD=9815=E5=88=86?= =?UTF-8?q?=E9=92=9F=EF=BC=8C=E9=9D=9E=E4=BA=A4=E6=98=93=E6=97=B6=E6=AE=B5?= =?UTF-8?q?=E7=BC=93=E5=AD=9824=E5=B0=8F=E6=97=B6=EF=BC=8C=E8=8A=82?= =?UTF-8?q?=E7=9C=81API=E9=85=8D=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/MarketDataService.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/AssetManager.Infrastructure/Services/MarketDataService.cs b/AssetManager.Infrastructure/Services/MarketDataService.cs index 0311547..3b155de 100644 --- a/AssetManager.Infrastructure/Services/MarketDataService.cs +++ b/AssetManager.Infrastructure/Services/MarketDataService.cs @@ -428,12 +428,20 @@ public class MarketDataService : IMarketDataService /// private DateTime GetCacheExpirationTime(string assetType) { - return assetType.ToLower() switch + if (assetType.Equals("crypto", StringComparison.OrdinalIgnoreCase)) { - "stock" => DateTime.Now.AddMinutes(15), // 股票缓存15分钟 - "crypto" => DateTime.Now.AddMinutes(1), // 加密货币缓存1分钟 - _ => DateTime.Now.AddMinutes(15) - }; + return DateTime.Now.AddMinutes(1); // 加密货币7*24小时交易,缓存1分钟 + } + + // 美股交易时段:9:30-16:00 美国东部时间 = 14:30-21:00 UTC(夏令时)/15:30-22:00 UTC(冬令时) + // 简化处理:UTC时间14:00-22:00视为美股交易时段 + var nowUtc = DateTime.UtcNow; + if (nowUtc.Hour >= 14 && nowUtc.Hour < 22 && nowUtc.DayOfWeek is not DayOfWeek.Saturday and not DayOfWeek.Sunday) + { + return DateTime.Now.AddMinutes(15); // 交易时段缓存15分钟 + } + + return DateTime.Now.AddHours(24); // 非交易时段(盘前/盘后/周末)缓存24小时,节省API调用 } }