← Alle Insights

Bollinger-Bänder-Strategien: Mean-Reversion und Breakout.

Bollinger-Bänder sind, mathematisch betrachtet, ein gleitendes Konfidenzintervall um einen SMA. Sie messen Volatilität — nicht mehr und nicht weniger. Trotzdem haben sich darum mehr Strategien herumgerankt als um die meisten anderen Indikatoren. Was funktioniert, was nicht, und warum die Standardeinstellung 20/2.0 fast nie die richtige Antwort ist.

Ich setze Bollinger-Bänder vor allem in zwei Kontexten ein: als adaptiven Mean-Reversion-Anker auf Aktien und als Squeeze-Filter in Volatilitätsausbruch-Setups. In diesem Artikel zeige ich, wie das konkret aussieht, und warum statische Multiplikatoren in modernen Märkten oft versagen.

Mathematische Definition — kurz und sauber.

Bollinger-Bänder bestehen aus drei Linien:

Wobei σ(n) die rollende Standardabweichung der Schlusskurse ist. Standardwerte sind n=20 und k=2. Die Logik: wenn die Renditen normalverteilt wären, lägen rund 95 % der Werte innerhalb von ±2 Standardabweichungen. Außerhalb wäre statistisch „extrem".

Das Problem mit dieser Argumentation: Renditen sind nicht normalverteilt. Sie haben Fat Tails. In der Realität liegen je nach Markt 5–10 % der Werte außerhalb der Bänder — nicht 5 %, wie die Normalverteilung vorhersagen würde. Das macht Standard-Bollinger zu einem schiefen Confidence-Werkzeug.

Warum 20/2.0 überoptimiert wirkt — und es trotzdem nicht ist.

John Bollinger hat die Werte 20/2.0 in den 1980ern empirisch festgelegt. Anders als manche Indikator-Standardwerte (wie RSI 14/70/30) sind 20/2.0 erstaunlich robust geblieben — was kein Wunder ist, denn es ist ein Glättungs-Parameter plus ein Vola-Multiplikator, nicht ein spezifischer Trade-Trigger.

Wenn ich bei Mandanten optimierte Bollinger-Parameter sehe (n=14 oder n=27, k=1.7 oder k=2.3), ist das fast immer Overfitting auf das jeweilige Sample. Walk-Forward-Tests zeigen: die optimierten Werte halten OOS schlechter als die Standardwerte 20/2.0. Wenn schon Bollinger, dann mit den Originalwerten — oder mit einer komplett anderen Konstruktion (siehe adaptive Bollinger weiter unten).

Bollinger als Mean-Reversion-Setup auf Aktien.

Das klassische Setup: Schluss unter dem Lower Band → Long. Statistisch funktioniert das auf US-Einzelaktien überraschend solide, wenn man es richtig einbettet.

Konkret das Setup, das ich in leicht angepasster Form für Mandanten in Multi-Strategien-Portfolios einbaue:

Auf einem sauberen S&P-500-Backtest 2005–2025 zeigt dieses Setup eine Hit-Rate um 65 %, einen durchschnittlichen Trade von +1,1 % und etwa 600 Trades insgesamt (verteilt über mehrere Aktien). Wichtig: die Performance konzentriert sich stark auf Aufwärtstrend-Phasen des Marktes. In Bärenmärkten fällt der Edge zusammen — daher der Marktfilter.

Bollinger-%B: der unterschätzte Cousin.

Bollinger %B normalisiert die Position des Kurses innerhalb der Bänder auf 0–1:

%B = (Close − Lower) / (Upper − Lower)

%B = 0    →  Schluss = Lower Band
%B = 0.5  →  Schluss = Middle Band (SMA)
%B = 1    →  Schluss = Upper Band
%B > 1    →  Schluss über Upper Band (sehr extrem)
%B < 0    →  Schluss unter Lower Band

%B ist nützlich, weil es vergleichbar über verschiedene Assets und Zeitperioden ist. Ein Schluss bei %B = 0.05 ist auf SPY und auf einem Penny-Stock gleichermaßen ein „nahe Lower Band" — der Rohpreis-Abstand ist es nicht. Für Multi-Asset-Portfolios mit gleichen Setups ist %B das deutlich saubere Maß.

Bollinger-Squeeze und Breakout-Setups.

Bollinger-Squeeze: die Bandbreite (Upper − Lower) fällt auf ein Mehrmonats-Tief. Interpretation: die Volatilität ist extrem niedrig, ein Ausbruch ist statistisch wahrscheinlicher als sonst.

Das ist eine der wenigen Bollinger-Anwendungen, die keine Mean-Reversion ist. Bei sauberer Implementierung (Bandbreite/Mittelwert < 10. Perzentil der letzten 252 Tage) liefert der nachfolgende 20-Tages-Move auf liquiden Indizes typischerweise eine deutlich höhere Range als der Durchschnitt — gut ein Drittel mehr.

Was nicht funktioniert: Richtung des Ausbruchs vorhersagen. Squeeze sagt: „etwas passiert bald". Squeeze sagt nicht: „es geht hoch" oder „runter". Wer den Squeeze als Long-Trigger handelt, hat eine Trefferquote nahe 50 %. Wer ihn als Volatilitäts-Vorlauf für Optionsstrategien nutzt (Long-Straddle, Strangle), hat einen sauberen Edge — denn implizite Volatilität ist in Squeeze-Phasen meistens billiger als sie sein sollte.

Warum statische Multiplikatoren in Vola-Regimes versagen.

Der Konstanten-Multiplikator k=2 setzt voraus, dass das Vola-Regime stabil ist. Ist es nicht. In Hochvolatilitäts-Phasen (VIX > 30) werden die Bänder so weit, dass praktisch nichts mehr sie berührt — Bollinger feuert keine Signale. In Niedrigvolatilitäts-Phasen (VIX < 12) werden die Bänder so eng, dass jeder normale Tagesschluss sie kreuzt — Bollinger feuert ständig.

Eine Strategie, die in beiden Regimes funktionieren soll, kann nicht mit festem k arbeiten. Was hilft: ein adaptives k, das auf Volatilität skaliert.

Adaptive Bollinger-Bänder mit Vola-Skalierung.

Die Idee: k wird dynamisch angepasst, sodass die Häufigkeit von Bandberührungen über die Zeit konstant bleibt. Konkret: rollend kalibrieren wir k so, dass über die letzten 252 Tage etwa 10 % der Schlüsse außerhalb der Bänder lagen.

# Adaptive Bollinger-Bänder: Multiplikator k aus Quantil rekalibriert
import numpy as np
import pandas as pd

def adaptive_bollinger(px, n=20, target_outside_pct=0.10, lookback=252):
    sma   = px.rolling(n).mean()
    std   = px.rolling(n).std()
    # z-score des Schlusses zum SMA in Std-Einheiten
    z     = (px - sma) / std
    # k so, dass |z| das gewünschte Quantil entspricht
    k     = z.abs().rolling(lookback).quantile(1 - target_outside_pct)
    upper = sma + k * std
    lower = sma - k * std
    return sma, upper, lower, k

# Anwendung auf SPY
import yfinance as yf
spy = yf.download("SPY", start="2010-01-01", auto_adjust=True)["Close"]
sma, up, lo, k = adaptive_bollinger(spy)
print(f"Aktuelles adaptives k: {k.iloc[-1]:.2f}")
print(f"Mittelwert k über Zeit: {k.mean():.2f}")

In meiner Praxis pendelt das adaptive k zwischen 1,6 (in ruhigen Phasen) und 2,8 (nach extremen Vola-Schocks, z. B. 2020). Setups, die auf Band-Berührung reagieren, feuern mit adaptivem k über alle Regimes mit ähnlicher Häufigkeit — was bei festem k=2 nicht der Fall ist.

Bollinger vs. Keltner-Channels.

Keltner-Channels sind ähnlich aufgebaut, verwenden aber ATR statt Standardabweichung als Maß für die Bandbreite:

Keltner-Middle = EMA(n)
Keltner-Upper  = EMA(n) + m × ATR(n)
Keltner-Lower  = EMA(n) − m × ATR(n)

Praktischer Unterschied: ATR reagiert auf intraday-Ranges (High − Low), Standardabweichung nur auf Schlusskurs-Veränderungen. Keltner ist daher etwas weniger empfindlich auf Schluss-Ausreißer und mehr auf intraday-Vola.

In Mean-Reversion-Backtests auf liquiden Aktien sind Bollinger und Keltner in der Performance fast nicht zu unterscheiden — die Trefferquoten liegen typischerweise innerhalb von 1–2 Prozentpunkten. Für Squeeze-Setups ist eine Kombination aus beiden („Bollinger innerhalb von Keltner" als Squeeze-Definition, siehe John Carter) das Setup mit der besten statistischen Trennschärfe — schlicht, weil es zwei unterschiedliche Vola-Maße kombiniert.

Was ich Mandanten konkret empfehle.

Was ich vermeide: doppelte oder dreifache Bollinger-Bänder, Bollinger-MACD-Kombinationen mit sechs Parametern, „Bollinger-Bounce-Strategien" ohne Trendfilter. Mehr Parameter heißt besseres In-Sample, schlechteres Out-of-Sample. Das gilt auch hier.

Sie wollen Bollinger oder Mean-Reversion-Setups robust in ein Portfolio integrieren? Erstgespräch buchen — wir schauen uns Ihren Setup an.