diff --git a/core/engine.py b/core/engine.py index fa0a0c2..0f93a0d 100644 --- a/core/engine.py +++ b/core/engine.py @@ -1669,9 +1669,18 @@ class TradingEngine: log.info(f"rec_outcome NICHT geschrieben: atr={_atr} px={_px} " f"sig={_sig} (pb_feats={'da' if _ws.get('pb_feats') else 'FEHLT'})") if _atr > 0 and _px > 0 and self.history: + # ⚠⚠ ZWEITER BUG, gefunden 2026-08-12 im Log: hier stand + # `self.wave.timeframe_name` — das Attribut gibt es NICHT + # (`AttributeError`, im `except` auf DEBUG verschluckt). + # `rec["tf"]` ist leer, also lief es IMMER in den Fallback. + # Der `pb_feats`-Fix vom 11.08. war also richtig — er kam + # an der ersten Sperre vorbei und legte diese zweite frei. + # ⚠ Lehre: nach einem Fix nicht nur „schreibt es jetzt?" + # pruefen, sondern das LOG lesen. Die Zeilen standen seit + # Stunden da; ich hatte nur auf INFO gefiltert. _rid = self.history.log_rec_outcome( signal=_sig, conf_pct=int(rec.get("conf_pct") or 0), - tf=str(rec.get("tf") or self.wave.timeframe_name or ""), + tf=str(rec.get("tf") or self._wave_tf_label or ""), price=_px, atr=_atr) log.info(f"rec_outcome #{_rid}: {_sig} @ {_px} atr={_atr}") if _sig in ("LONG", "SHORT", "WARTEN"):