Files
trade-kuns/docs/walkforward-grid-2026-06-10.md
Claude f754b91acd feat: No-Stop-Grid-Variante (--no-stop, --pair) — erstes Edge-Signal auf XRP
XRP-Datenanalyse: nie enge Ranges, breite Bänder → No-Stop-Design.
OOS-PF 2.0-2.74, Volldurchlauf +49% bei 10% MaxDD. Gate formal 
(Worst-Window + Ratio), Tail-Risiko dokumentiert.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-10 07:17:33 +00:00

78 lines
4.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Walk-Forward-Ergebnisse: ATR-GridBot — 2026-06-10
**Daten:** 103 799 15m-Candles/Pair, 2023-06-24 → 2026-06-09 (3 Jahre), 32 Fenster (Train 120d / Test 30d).
**Strategie:** ATR-Grid mit ADX-Regime-Filter, long-only (Design: `docs/specs/2026-06-10-grid-bot-design.md`).
**Methodik:** fixe A-priori-Parameter je Variante, kein Grid-Search. CLI: `bun run grid [--spacing X --levels N --adx Y]`. Runs in `backtest_runs` (kind `grid-walkforward`).
| Variante | OOS-PF | Trades | WinRate | MaxDD | Overfit-Ratio | Gate |
|---|---|---|---|---|---|---|
| A: spacing 1.0×ATR, 4 Levels, ADX<20 | 0.87 | 1002 | 64.6 % | 18.4 % | 1.42 | ❌ PF + Fenster |
| B: spacing 1.5×ATR | 1.03 | 514 | 56.0 % | 10.6 % | 1.53 | ❌ PF + Fenster |
| C: ADX<15 (strenger) | 0.94 | 425 | 63.3 % | 6.5 % | 1.24 | ❌ PF + Fenster |
## Nachtrag: kürzere Timeframes (User-Frage „wird das auf kürzeren Einheiten besser?")
Entscheidungs-Timeframe parametrisiert (`--tf` Minuten; ATR/ADX/Aktivierung auf 1h bzw. 15m statt 4h):
| Variante | OOS-PF | Trades | WinRate | MaxDD | Gate |
|---|---|---|---|---|---|
| D: tf 1h, spacing 1.0×ATR | 0.59 | 4410 | 63.9 % | 57.1 % | ❌ |
| E: tf 1h, spacing 1.5×ATR | 0.64 | 2246 | 54.3 % | 37.6 % | ❌ |
| F: tf 15m, spacing 1.0×ATR | 0.29 | 19 783 | 47.1 % | **97.2 %** | ❌ |
| G: tf 15m, spacing 2.0×ATR | 0.47 | 6259 | 44.7 % | 67.8 % | ❌ |
**Monoton schlechter, je kürzer der Timeframe** — exakt die Fee-Mathematik: ATR(1h) ≈ ⅓, ATR(15m) ≈ ⅙ von ATR(4h) → das Spacing schrumpft auf die Größenordnung der 0.3 % Round-Trip-Kosten, jeder TP verdient fast nichts, die Breakdown-Verluste bleiben gleich groß. tf 15m ist Totalverlust (MaxDD 97 %). Das war auch der Todesmechanismus des krypto-kuns-v1-Bots (115-min-Signale).
## Nachtrag 2: XRP-Datenanalyse + No-Stop-Grid (User-Ziel „good working GridBot")
**XRP-Historie (3 Jahre, 4h):** Nur **1 von 106** rollierenden 30d-Fenstern ist eine enge
Range (<15 % Spanne) — XRP „ranged" im klassischen Sinn praktisch nie. Es oszilliert
aber in **breiten Bändern** über lange Strecken (2023-Q42024-Q3: 0.380.75;
2025: 1.63.7). 25 % der Fenster fallen >10 %, schlimmste 30d: 32 % (Jan 2026).
ATR%(4h) median 1.43 %. → Engmaschige Grids mit hartem Stop sterben an den Rändern;
wenn Grid, dann **breit + ohne Verlust-Verkäufe**.
**No-Stop-Variante** (`--no-stop`: Lots werden nie mit Verlust verkauft, nur TP;
leeres Grid re-centert verlustfrei; `--pair` für Einzel-Pair):
| Variante | OOS-PF | Trades | WinRate | MaxDD | Gate |
|---|---|---|---|---|---|
| H: no-stop, 2×ATR, 6 Levels, XRP only | 2.00 | 195 | 80.0 % | 31.6 % | ❌ DD + Fenster + Ratio |
| I: no-stop, 2×ATR, 6 Levels, 4 Pairs | 1.33 | 719 | 77.6 % | 31.9 % | ❌ DD + Fenster + Ratio |
| J: no-stop, 3×ATR, 8 Levels, XRP only | **2.74** | 104 | 77.9 % | **17.5 %** | ❌ Fenster + Ratio |
**Volldurchlauf ohne Fenster-Artefakte** (J, 3 Jahre am Stück): **+49 %** (1000 → 1491),
MaxDD **10.2 %**, PF 4.18, 89 % WinRate — aber nur 27 Trades. Buy&Hold XRP: +130 %
bei 71 % Drawdown. Risk-adjusted schlägt das Grid Buy&Hold deutlich.
**Ehrliche Einordnung:**
- Erste Grid-Variante mit echtem Edge-Signal — aber Params J wurden nach Sichtung
von H/I gewählt (Selektionsrisiko), und 27 Trades/3J sind statistisch dünn.
- Der Worst-Window-Fail ist teils Artefakt (30d-Fenster zwangsliquidieren Inventar
am Fensterende), teils echt: Crash-Monate erwischen das Inventar voll.
- **Strukturelles Tail-Risiko:** Ein No-Stop-Grid verkauft nie mit Verlust — bei
einem Absturz ohne Erholung (2018-Stil, 95 %) hält es Bags bis zum Ende. Voll
gefüllt liegt ~100 % des Pair-Budgets im Asset. Die 10 % MaxDD der letzten
3 Jahre unterschätzen dieses Risiko systematisch.
**Status:** Gate formal nicht bestanden (Fenster + Ratio). Paper-Probelauf als
zweite Engine wäre — wie beim Trend-Bot — eine bewusste User-Entscheidung.
## Befund
Klassische Grid-Pathologie, durch Regime-Filter abgemildert, aber nicht behoben:
hohe WinRate (viele kleine TP-Gewinne à 1 Spacing), doch die `grid_stop`-Verluste
bei Range-Breakdowns (5 Spacings über N Lots) fressen alles. Breiteres Spacing
(B) hebt den PF Richtung Break-even (1.03 ≈ Fees zurückverdient, mehr nicht),
strengerer Filter (C) senkt nur den Drawdown. Schlechtestes Fenster durchgängig
PF ≈ 0.1 — Crash-Monate treffen das Grid voll.
**Schlussfolgerung:** Mean-Reversion-Grids haben auf Krypto-4h über 3 Jahre
keinen handelbaren Edge nach Fees — konsistent mit dem v1-GridBot-Erlebnis
(krypto-kuns) und spiegelbildlich zum Trendfolge-Befund (dünner Edge, weil
Krypto eben trendet/crasht statt sauber zu ranged).
**Entscheidung:** Gate nicht bestanden → **kein Paper-Deploy des GridBots.**
Das Gate wird nicht aufgeweicht. Der laufende Paper-Probelauf des Trend-Bots
(trading.kuns.dev) bleibt das Live-Experiment.