Sizing auf der echten Historie gerechnet (analyze_sizing_live.py)

Folge der S/R-Widerlegung: der Hebel zeigt auf die GROESSE. Pfad-Simulation ueber
1.278 geschlossene Trades (08.05.-13.08.), pnl/lots als groessenunabhaengiges
Ergebnis, Lots aus der simulierten Equity abgeleitet.

Zwei dokumentierte Zahlen stimmten nicht mehr und wurden aus den Daten neu
geschaetzt: EUR je $ und Lot = 86,90 (notiert 87,6), Margin je Lot ~405 EUR
(notiert 670).

DER IST-PFAD IST DIE BOTSCHAFT:
  Start 1.115,70 · Hoch 2.724,16 (05.08.) · Tief 261,36 (30.07.) · Ende 1.279,04
  Max-Drawdown 82,8 % · schlechtester Einzeltrade -381,16 EUR
  42 von 71 Tagen negativ; getragen von wenigen Tagen (04.08. +1.297).
Das Konto hat zweimal den Grossteil seines Werts verloren. Fuer unbeaufsichtigten
Betrieb ist das die entscheidende Zahl, nicht der Endstand.

VARIANTEN (Ende / MaxDD / schlechtester Trade):
  IST                    1.279 / 82,8 % / -381
  Lot-Deckel 1,5         1.362 / 82,8 % / -345   -> bringt fast nichts
  Risiko 1,5 %/Trade       680 / 54,4 % /  -77
  Risiko 0,5 %/Trade       960 / 22,2 % /  -27
  IST + Breaker 8 %/Tag  2.018 / 59,2 % / -381   -> verbessert BEIDES

ABER: ein Tag traegt 70 % des Breaker-Vorteils (07.08. +556,82 von +800,19), und
an drei Tagen kostet er (-106,85 / -96,00 / -50,77). Ohne den 07.08. bleiben
+243 EUR ueber 10 Tage. Das ist kein Makel der Messung, sondern das Wesen einer
Versicherung -- ihr Wert sitzt im Tail. Die +739 sind eine Realisierung, keine
Erwartung.

GRENZEN: die Sim sperrt nach dem Ausloesen ALLE Trades des Tages; live sperrt der
Breaker nur die autonomen. Bei einem zu 94 % manuell gehandelten Konto misst sie
damit eher eine Disziplin-Regel -- fuer das Ziel Autotrading ist sie dagegen das
richtige Modell. Confounder bei Risiko-Sizing: laeuft auf 1.118 von 1.278 Trades
(nur die mit sl_at_entry).

Nichts am Live-System geaendert.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-08-13 16:38:57 +02:00
co-authored by Claude Opus 5
parent 1e8d700f46
commit 02bec8fbb2
2 changed files with 265 additions and 0 deletions
+58
View File
@@ -5617,6 +5617,64 @@ Berührungen schliesst. Live prüft den **laufenden** Kurs im Sekundentakt; das
Analogon ist die **Bar-Spanne**. Danach feuert er in 2123 % der Trades (live
4 von 11 = 36 %, bei n=11 kein Widerspruch).
### ⚠⚠ SIZING AUF DER ECHTEN HISTORIE GERECHNET (`analyze_sizing_live.py`, 2026-08-13)
Folge der S/R-Widerlegung: der Hebel zeigt auf die GRÖSSE. Pfad-Simulation über
**1.278 geschlossene Trades (08.05.13.08.)**, `pnl/lots` als größenunabhängiges
Ergebnis, Lots aus der jeweils simulierten Equity abgeleitet.
⚠ Zwei dokumentierte Zahlen stimmen nicht mehr und wurden **aus den Daten neu
geschätzt**: EUR je $ und Lot = **86,90** (notiert 87,6) und Margin je Lot
**~405 €** (notiert 670 — bei 1.279 € Balance und ~3 Lots).
**(1) DER IST-PFAD IST DIE EIGENTLICHE BOTSCHAFT:**
| | |
|---|---|
| Start (rekonstruiert) | 1.115,70 € |
| **Hoch** | **2.724,16 €** (05.08.) |
| **Tief** | **261,36 €** (30.07.) |
| **Max-Drawdown** | **82,8 %** |
| schlechtester Einzeltrade | **381,16 €** |
| Ende | 1.279,04 € |
⚠⚠ Das Konto hat **zweimal** den Großteil seines Werts verloren — 82,8 % bis
zum 30.07., danach vom Hoch am 05.08. nochmals **53 %**. **42 von 71 Tagen sind
negativ**; getragen wird alles von wenigen Tagen (04.08. **+1.297 €**). Für
**unbeaufsichtigten** Betrieb ist das die entscheidende Zahl, nicht der Endstand.
**(2) VARIANTEN** (Ende / MaxDD / schlechtester Trade):
| Regel | Ende | MaxDD | schlecht. Trade |
|---|---|---|---|
| **IST** | 1.279 € | **82,8 %** | **381 €** |
| Lot-Deckel 1,5 | 1.362 € | 82,8 % | 345 € |
| Risiko 1,5 %/Trade | 680 € | **54,4 %** | **77 €** |
| Risiko 0,5 %/Trade | 960 € | **22,2 %** | **27 €** |
| **IST + Breaker 8 %/Tag** | **2.018 €** | **59,2 %** | 381 € |
| IST + Breaker 5 %/Tag | 1.976 € | 65,5 % | 381 € |
**Lot-Deckel bringen fast nichts** — die realen Lots lagen meist darunter.
**Risiko-Sizing drittelt den schlechtesten Trade und halbiert den Drawdown**,
kostet aber Endstand. ⚠ **Confounder: die Risiko-Varianten laufen auf 1.118 der
1.278 Trades** (nur die mit `sl_at_entry`) — nicht direkt vergleichbar.
⚠⚠ **Der Breaker verbessert BEIDES** (Ende +739 €, DD 23,6 Pp) — aber:
**(3) ⚠⚠ EIN TAG TRÄGT 70 % DES BREAKER-VORTEILS.** Vermiedene Beträge je
Auslösetag: **07.08. +556,82** · 30.07. +200,48 · 24.07. +106,61 · 28.07. +81,24
· 23.07. +63,23 · Rest klein — und an **drei Tagen kostet er**: 11.08. 106,85 ·
29.07. 96,00 · 27.07. 50,77. Summe +800,19 € über 11 Auslösetage.
⚠ Ohne den 07.08. bleiben **+243 €** über 10 Tage. **Das ist kein Makel der
Messung, sondern das Wesen einer Versicherung** — ihr Wert sitzt im Tail. Aber
die +739 € sind eine **Realisierung**, keine Erwartung.
⚠⚠ **UND EINE GRENZE, die für HEUTE entscheidend ist:** die Sim sperrt nach dem
Auslösen **alle** Trades des Tages. Live sperrt `_check_circuit_breaker` nur die
**autonomen** (`_check_auto_squeeze`), manuelle Orders bleiben frei. Bei einem zu
94 % manuell gehandelten Konto misst die Sim damit eher eine **Disziplin-Regel**
als das heutige Code-Verhalten. **Für das Ziel Autotrading ist sie dagegen das
richtige Modell** — dort greift die Sperre wirklich.
⚠ Weitere Grenzen: EIN Pfad ist keine Verteilung (für die Ruin-Frage bleibt
`backtest_sizing.py` das Werkzeug: Margin-Sizing 36 % P(DD>80 %) — was der
gemessene IST-Pfad mit 82,8 % **bestätigt**); die Sim unterstellt dieselben
Trades bei anderer Größe, was bei **manuellen** Trades eine starke Annahme ist;
und der Breaker wird auf **realisierte** Tagesverluste geprüft, während er live
auch die offene Position kappt → die Sim **unterschätzt** ihn.
### ✅ S/R-AUTO-CLOSE WIEDER AN (User-Entscheidung 2026-08-11)
Frage war: „sollten wir Trades bei einem S/R-Bounce automatisch schliessen?"