backtest_volume_profile.py: Volume Profile / Liquiditaetslinien gemessen -> VERWORFEN

User-Frage "System zur besseren Vorhersage - Liquiditaetsnachfragelinien?".
Getestet, weil es die einzige Klasse mit ANDERER Datenquelle war (Volumen = wo
wurde gehandelt, statt Pivots = wo war ein Docht). SMC/Order Blocks selbst sind
strukturell Pivot-Zonen = die schon 5x verworfene Klasse.

Aufbau: feste Preis-Bins 0.05$, rollierendes 24h-Fenster, tick_volume ueber
[low,high] verteilt, Value Area 70%; 80k M5-Bars, 2 Halbjahre, Live-Exit+Echtkosten.

Ergebnis - nichts traegt, die Kern-Idee am eindeutigsten:
  A) Reversion am POC ("Kurs prallt an der Liquiditaetslinie ab")
     H1 -0.178 / H2 -0.121 (PF 0.79/0.84) -> in BEIDEN Haelften negativ
  A) Reversion am HVN   H1 -0.067 / H2 +0.044 -> kippt
  B) Momentum durch LVN H1 -0.031 / H2 +0.003 -> Breakeven-Rauschen

Informations-Test (Forward-Return 2h, relativ zur mid-Baseline): kein Bucket
weicht konsistent ab. Tiefere Einsicht: die Volume-Profile-Position ist ein
TREND-PROXY ("ausserhalb Value Area" = Ausbruch laeuft = folgt dem Regime),
keine unabhaengige Information -> erbt die Regime-Anfaelligkeit von Momentum.

15. verworfener Signal-Eingriff. CLAUDE.md aktualisiert.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-07-30 14:51:48 +02:00
co-authored by Claude Opus 4.8
parent 2996eddd7e
commit 29f53c45c1
2 changed files with 269 additions and 0 deletions
+27
View File
@@ -1240,6 +1240,33 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
klein & kaum handelbar; NY Fed: SKS nicht profitabel; out-of-sample schwach) UND der
Struktur-Klasse (Muster = Swings+Trendlinien = die gerade verworfene Klasse). **11.
verworfener Signal-Eingriff — am Signal ist nichts zu holen.**
- **Volume Profile / „Liquiditätslinien" (POC/HVN/LVN, Value Area) = VERWORFEN
(gemessen `backtest_volume_profile.py`, 2026-07-30, User-Frage „System zur besseren
Vorhersage — Liquiditätsnachfragelinien / wahrsch. Verkaufslinie?"):** Getestet, WEIL
es die einzige Klasse mit einer **anderen Datenquelle** war (nicht „wo war ein Docht"
= Pivots/Swings, sondern **wo wurde tatsächlich gehandelt** = Volumen) — SMC/ICT-
„Order Blocks"/Liquidity-Linien selbst sind strukturell Pivot-Zonen und damit dieselbe
5× verworfene Klasse. Aufbau: feste Preis-Bins 0,05 $, rollierendes 24-h-Fenster
(288 M5-Bars), Bar-Volumen (`tick_volume` — CFD liefert `real_volume=0`) gleichmäßig
über [low, high], Value Area 70 %; 80k M5-Bars, 2 Halbjahre, Live-Exit + Echtkosten.
**Ergebnis: nichts trägt.** Am eindeutigsten fällt genau die *Kern-Idee* durch:
**Reversion am POC („der Kurs prallt an der Liquiditätslinie ab") ist in BEIDEN
Hälften negativ** (ØR 0,178/0,121, PF 0,79/0,84, n≈400 je Hälfte) — der POC hält
NICHT. HVN-Reversion kippt (0,067/+0,044), LVN-Momentum ist Breakeven-Rauschen
(0,031/+0,003). **Informations-Test (Teil 1, Forward-Return 2 h ohne Exit/Kosten,
relativ zur `mid`-Baseline gelesen — H1 war Abwärts-, H2 Aufwärts-Regime, absolute
Werte sind daher Drift-verzerrt):** KEIN Bucket weicht konsistent ab — LVN H1 0,11
/ H2 +0,09 relativ, HVN H1 +0,08 / H2 0,06 → beide kippen. **Tiefere Einsicht: die
Volume-Profile-Position ist ein TREND-PROXY, keine unabhängige Information**
(„außerhalb Value Area" = Ausbruch läuft = folgt dem Regime: H2 +0,304 vs +0,092 in
VA, H1 umgekehrt 0,122 vs 0,057) — sie erbt damit exakt die Regime-Anfälligkeit von
Momentum/Struktur. **15. verworfener Signal-Eingriff.** ⚠ Was BLEIBT: das bereits
validierte **P(break)-Modell** ist die einzige belegt-prädiktive „Liquiditäts"-Aussage
im Projekt (AUC 0,71 out-of-sample, kalibriert; ~63 % der Level-Touches prallen ab) —
und auch das trägt nur als **EXIT**, nicht als Entry. Einzige noch ungetestete Klasse
wäre **echter Order-Flow/L2-Orderbuch** (Pepperstone = Market Maker, liefert keins;
Hyperliquid hätte `l2Book` — bräuchte erst wochenlange Datensammlung UND einen Beleg,
dass HL-Orderbuch-Signale auf den CFD übertragbar sind).
- **Chartmuster-Kachel `#card-patterns` (`core/patterns.py`, 2026-07-27, User-Idee
„Visuelle Muster-Erkennung"): REINE ANZEIGE, KEIN Signal.** Erkennt mechanisch aus
den M30-Swing-Pivots (k=3, wie `structure.py`): **Doppeltop/-boden, Kopf-Schulter/