Diese Strategie ist ein anpassungsfähiges Handelssystem mit mittlerer Umkehrung, das auf dem Bollinger Bands-Indikator basiert. Es erfasst Überkauf- und Überverkaufsmöglichkeiten, indem es Preis-Crossovers mit Bollinger Bands überwacht und nach dem Prinzip der mittleren Umkehr handelt. Die Strategie beinhaltet dynamische Positionsgrößen und Risikomanagementmechanismen, die für mehrere Märkte und Zeitrahmen geeignet sind.
Die Kernlogik beruht auf folgenden Punkten: 1. Verwendet als mittleres Band den gleitenden 20-Perioden-Durchschnitt mit 2 Standardabweichungen für das obere und das untere Band. 2. Eröffnet Long-Positionen, wenn der Preis unter das untere Band fällt (Überverkauftes Signal). 3. Eröffnet Leerpositionen, wenn der Preis über das obere Band bricht (Überkaufsignal). 4. Gewinnt, wenn der Preis in das mittlere Band zurückkehrt. 5. Setzt 1% Stop Loss und 2% Take Profit ein und erzielt ein 2: 1 Risiko-Rendite-Verhältnis. 6. Verwendet eine prozentual basierte Positionsgröße und investiert 1% des Kontokapitals pro Handel.
Konsolidierungsmarktrisiko - Kann zu Verlusten durch häufigen Handel auf unterschiedlichen Märkten führen. Lösung: Fügen Sie Trendfilter hinzu, handeln Sie nur, wenn der Trend klar ist.
Falsches Ausbruchrisiko - Der Kurs kann sich nach dem Ausbruch schnell umkehren. Lösung: Hinzufügen von Bestätigungssignalen wie Volumen oder anderen technischen Indikatoren.
Systematisches Risiko - Kann bei extremen Marktbedingungen größere Verluste erleiden. Lösungsansatz: Einführung von Höchstmengen, automatische Einstellung des Handels, wenn der Schwellenwert erreicht wird.
Diese Strategie erfasst die Preisabweichung mithilfe von Bollinger Bands und handelt nach dem Prinzip der mittleren Umkehrung. Ihr umfassendes Risikomanagement und klare Handelsregeln bieten eine gute Praktikabilität. Durch vorgeschlagene Optimierungen können die Stabilität und Rentabilität der Strategie weiter verbessert werden. Sie eignet sich für quantitative Händler, die nach stetigen Renditen suchen.
/*backtest start: 2025-01-09 00:00:00 end: 2025-01-16 00:00:00 period: 10m basePeriod: 10m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("Bollinger Bands Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=200) // Inputs for Bollinger Bands bbLength = input.int(20, title="Bollinger Bands Length") bbStdDev = input.float(2.0, title="Bollinger Bands StdDev") // Inputs for Risk Management stopLossPerc = input.float(1.0, title="Stop Loss (%)", minval=0.1, step=0.1) takeProfitPerc = input.float(2.0, title="Take Profit (%)", minval=0.1, step=0.1) // Calculate Bollinger Bands basis = ta.sma(close, bbLength) bbStdev = ta.stdev(close, bbLength) upper = basis + bbStdDev * bbStdev lower = basis - bbStdDev * bbStdev // Plot Bollinger Bands plot(basis, color=color.blue, title="Middle Band") plot(upper, color=color.red, title="Upper Band") plot(lower, color=color.green, title="Lower Band") // Entry Conditions longCondition = ta.crossover(close, lower) shortCondition = ta.crossunder(close, upper) // Exit Conditions exitLongCondition = ta.crossunder(close, basis) exitShortCondition = ta.crossover(close, basis) // Stop Loss and Take Profit Levels longStopLoss = close * (1 - stopLossPerc / 100) longTakeProfit = close * (1 + takeProfitPerc / 100) shortStopLoss = close * (1 + stopLossPerc / 100) shortTakeProfit = close * (1 - takeProfitPerc / 100) // Execute Long Trades if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Exit Long", from_entry="Long", stop=longStopLoss, limit=longTakeProfit) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Exit Short", from_entry="Short", stop=shortStopLoss, limit=shortTakeProfit) // Close Positions on Exit Conditions if (exitLongCondition and strategy.position_size > 0) strategy.close("Long") if (exitShortCondition and strategy.position_size < 0) strategy.close("Short") // 🔊 SOUND ALERTS IN BROWSER 🔊 if (longCondition) alert("🔔 Long Entry Signal!", alert.freq_once_per_bar_close) if (shortCondition) alert("🔔 Short Entry Signal!", alert.freq_once_per_bar_close) if (exitLongCondition) alert("🔔 Closing Long Trade!", alert.freq_once_per_bar_close) if (exitShortCondition) alert("🔔 Closing Short Trade!", alert.freq_once_per_bar_close)