Diese Strategie ist ein Intraday-Handelssystem, das Bollinger Bands und Fibonacci-Retracement-Levels kombiniert. Sie identifiziert überkaufte und überverkaufte Bedingungen mit Bollinger Bands und nutzt Fibonacci-Retracement-Levels, um potenzielle Unterstützungs- und Widerstandszonen zu bestätigen und somit Handelschancen bei Marktschwankungen zu erfassen.
Die Kernlogik der Strategie beruht auf folgenden Schlüsselelementen: 1. Verwendung von Bollinger-Bändern (2 Standardabweichungen) zur Ermittlung überkaufter und überverkaufter Preiszonen 2. Berechnung der Fibonacci-Retracement-Levels anhand der höchsten und niedrigsten Preise der letzten 20 Perioden 3. Erzeugung von Kaufsignalen, wenn der Preis unter den unteren Bollinger Band bricht und über den Fibonacci-Stützungsniveaus 0,236 oder 0,382 bleibt 4. Erzeugung von Verkaufssignalen, wenn der Preis über den oberen Bollinger Band bricht und unter dem Fibonacci-Widerstandsniveau 0,618 bleibt 5. Verwendung von festen Stop-Loss- und Take-Profit-Punkten zur Risikokontrolle und Gewinnsicherung
Dies ist ein vollständiges Handelssystem, das klassische technische Analysewerkzeuge kombiniert und den Händlern durch die Synergie von Bollinger Bands und Fibonacci-Retracements einen systematischen Handelsrahmen bietet. Obwohl es bestimmte Einschränkungen hat, kann die Strategie durch geeignete Parameteroptimierung und Risikomanagement im Intraday-Handel gut funktionieren. Der Schlüssel besteht darin, entsprechende Anpassungen und Optimierungen basierend auf spezifischen Handelsinstrumenten und Marktbedingungen vorzunehmen.
/*backtest start: 2025-01-02 00:00:00 end: 2025-01-09 00:00:00 period: 10m basePeriod: 10m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}] */ //@version=5 strategy("Bollinger Bands and Fibonacci Intraday Strategy", overlay=true) // Bollinger Bands settings length = input.int(20, title="Bollinger Band Length") src = close mult = input.float(2.0, title="Bollinger Band Multiplier") basis = ta.sma(src, length) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // Fibonacci retracement levels fibRetrace1 = input.float(0.236, title="Fibonacci Level 0.236") fibRetrace2 = input.float(0.382, title="Fibonacci Level 0.382") fibRetrace3 = input.float(0.618, title="Fibonacci Level 0.618") // Define the Fibonacci levels based on recent high and low var float fibLow = na var float fibHigh = na if (bar_index == 0 or ta.highest(high, 20) != fibHigh or ta.lowest(low, 20) != fibLow) fibHigh := ta.highest(high, 20) fibLow := ta.lowest(low, 20) fibLevel1 = fibLow + (fibHigh - fibLow) * fibRetrace1 fibLevel2 = fibLow + (fibHigh - fibLow) * fibRetrace2 fibLevel3 = fibLow + (fibHigh - fibLow) * fibRetrace3 // Plot Fibonacci levels on the chart plot(fibLevel1, title="Fib 0.236", color=color.blue, linewidth=1) plot(fibLevel2, title="Fib 0.382", color=color.green, linewidth=1) plot(fibLevel3, title="Fib 0.618", color=color.red, linewidth=1) // Buy and Sell conditions buyCondition = close < lower and close > fibLevel1 sellCondition = close > upper and close < fibLevel3 // Plot Buy and Sell signals plotshape(buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") plotshape(sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL") // Execute strategy if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.entry("Sell", strategy.short) // Exit strategy with stop loss and take profit stopLoss = input.float(50, title="Stop Loss (pips)", minval=1) takeProfit = input.float(100, title="Take Profit (pips)", minval=1) strategy.exit("Exit Buy", "Buy", stop=close - stopLoss * syminfo.mintick, limit=close + takeProfit * syminfo.mintick) strategy.exit("Exit Sell", "Sell", stop=close + stopLoss * syminfo.mintick, limit=close - takeProfit * syminfo.mintick)