diff --git a/freqtrade/templates/freqaiprimer.py b/freqtrade/templates/freqaiprimer.py index 4cae872d..b96506ec 100644 --- a/freqtrade/templates/freqaiprimer.py +++ b/freqtrade/templates/freqaiprimer.py @@ -920,6 +920,37 @@ class FreqaiPrimer(IStrategy): self.strategy_log(f" - 基本条件满足: {basic_condition_count} 次") self.strategy_log(f" - 最终条件(基本+EMA过滤): {final_condition_count} 次") + # ========== 新增:最近5个时间点的条件满足状况可视化 ========== + # 显示最近5个时间点的条件满足情况(更直观) + if len(dataframe) >= 5: + recent_indices = dataframe.index[-5:] + self.strategy_log(f"[{metadata['pair']}] 最近5个时间点条件满足状况:") + + # RSI 超卖条件可视化 + rsi_recent = rsi_condition_1h.iloc[-5:].tolist() + rsi_visual = ''.join(['✅' if x else '❌' for x in rsi_recent]) + self.strategy_log(f" - RSI 超卖: [{rsi_visual}]") + + # StochRSI 超卖条件可视化 + stochrsi_recent = stochrsi_condition_1h.iloc[-5:].tolist() + stochrsi_visual = ''.join(['✅' if x else '❌' for x in stochrsi_recent]) + self.strategy_log(f" - StochRSI 超卖: [{stochrsi_visual}]") + + # MACD 上升趋势条件可视化 + macd_recent = macd_condition_1h.iloc[-5:].tolist() + macd_visual = ''.join(['✅' if x else '❌' for x in macd_recent]) + self.strategy_log(f" - MACD 上升趋势: [{macd_visual}]") + + # 趋势确认条件可视化 + trend_recent = trend_confirmation.iloc[-5:].tolist() + trend_visual = ''.join(['✅' if x else '❌' for x in trend_recent]) + self.strategy_log(f" - 趋势确认: [{trend_visual}]") + + # 价格接近布林带下轨条件可视化 + bb_lower_recent = close_to_bb_lower_1h.iloc[-5:].tolist() + bb_lower_visual = ''.join(['✅' if x else '❌' for x in bb_lower_recent]) + self.strategy_log(f" - 价格接近布林带下轨: [{bb_lower_visual}]") + # 如果EMA条件满足但最终条件未满足,输出详细信息 if ema_trend_count > 0 and final_condition_count == 0: self.strategy_log(f"[{metadata['pair']}] 注意:检测到 {ema_trend_count} 次EMA趋势过滤满足,但由于其他条件不足未能生成入场信号")