From 9c620e0aa02701442be3a71a277f5f495da5d90a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=96=87=E8=96=87=E5=AE=89?= Date: Wed, 25 Feb 2026 11:10:13 +0800 Subject: [PATCH] =?UTF-8?q?feat(market=5Fscanner):=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E8=B6=8B=E5=8A=BF=E4=BF=A1=E5=8F=B7=E5=BC=BA=E5=BA=A6=E4=B8=BA?= =?UTF-8?q?=E9=9B=B6=E6=97=B6=E7=9A=84=E6=8F=90=E7=A4=BA=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在市场扫描逻辑中添加了对所有标的趋势信号强度为零的情况的日志记录,避免用户误解为异常。此改动旨在提升用户对市场状态的理解,并指导用户在特定情况下的交易决策。增强了系统的可用性与用户友好性。 --- trading_system/market_scanner.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/trading_system/market_scanner.py b/trading_system/market_scanner.py index 6ac3be3..2280dd9 100644 --- a/trading_system/market_scanner.py +++ b/trading_system/market_scanner.py @@ -326,7 +326,16 @@ class MarketScanner: logger.info(f"===== 其它活跃交易对 (高波动/无明确信号) ({len(others)}) =====") for i, symbol_info in enumerate(others, 1): self._log_single_symbol(i, symbol_info) - + + # 当所有标的趋势信号强度均为 0 时打一行说明,避免误以为异常 + strong_count = sum(1 for s in top_n if s.get('signal_strength', 0) > 0) + if top_n and strong_count == 0: + logger.info( + "本轮扫描: 所有 %d 个标的趋势信号强度均为 0(可能原因:1h 与 4H 方向冲突被清零、或无明确 MACD 金叉/死叉、或多空冲突)。" + "仅当趋势信号≥5 才会生成合约推荐与自动交易。", + len(top_n), + ) + return top_n def _log_single_symbol(self, index: int, symbol_info: Dict):