Die Ichimoku Cloud Trend Following Strategy ist eine Technische Analyse-Strategie. Sie verwendet die fünf Indikatorenlinien des Gleichgewichtsdiagramms, um die Markttrendrichtung, den Unterstützungs- und Widerstandsstand und den Eintrittszeitpunkt zu bestimmen.
Die Kernindikatoren der Strategie umfassen:
Wenn die Umschaltlinie über die Referenzlinie verläuft, handelt es sich um ein Kaufsignal; wenn die Umschaltlinie über die Referenzlinie verläuft, handelt es sich um ein Verkaufssignal.
Die Strategie entscheidet über die Trendrichtung aufgrund der Beziehung zwischen der Umlauflinie und der Referenzlinie. Zum Beispiel wird ein Aufbruch der Umlauflinie über die Referenzlinie als Eintritt in mehrere Köpfe beurteilt, wobei ein Kaufsignal erzeugt wird, wenn die Bedingungen für eine Antriebslinie über dem Preis erfüllt werden.
Der Stop-Loss oder der Stop-Pump wird auf der Basis der vorherigen Linie A oder der Benchmark-Linie gesetzt. Wenn ein Stop-Loss auf der Benchmark-Linie gewählt wird, wird der Preis ausgeglichen, wenn er über die Benchmark-Linie fällt.
Die Strategie hat folgende Vorteile:
Die größte Gefahr dieser Strategie besteht darin, dass sie leicht zu falschen Signalen führt.
Die erste Balance-Chart-Strategie ist eine umfassende Multi-Indikator-Strategie, die die Marktbewegung beurteilt und sowohl kurzfristige als auch mittelfristige Trends berücksichtigt.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Ichimoku Cloud - BitBell", shorttitle="Ichimoku Cloud - BitBell", overlay=true) conversionPeriods = input.int(9, minval=1, title="Conversion Line Length") basePeriods = input.int(26, minval=1, title="Base Line Length") laggingSpan2Periods = input.int(52, minval=1, title="Leading Span B Length") displacement = input.int(26, minval=1, title="Lagging Span") donchian(len) => math.avg(ta.lowest(len), ta.highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = math.avg(conversionLine, baseLine) leadLine1bbbbb = math.avg(conversionLine, baseLine)[displacement - 1] plot(leadLine1bbbbb) leadLine2 = donchian(laggingSpan2Periods) leadLine2bbbbbb = donchian(laggingSpan2Periods)[displacement - 1] plot(leadLine2bbbbbb) support = leadLine1bbbbb > leadLine2bbbbbb Resistance = leadLine1bbbbb < leadLine2bbbbbb TrailStop = input.string(title='Choose Trail Line', options=["ConversionLine", "BaseLine"], defval="ConversionLine") var stopLong = 0.0 var stopShort = 0.0 var TagetLong = 0.0 var TargetShort = 0.0 if close > leadLine1bbbbb and close > leadLine2bbbbbb and conversionLine[1] <= baseLine[1] and conversionLine > baseLine and close > conversionLine and support strategy.entry("Long",strategy.long) stopLong := conversionLine // if close < stopLong and strategy.position_size > 0 // strategy.close("Long") // stopLong := 0.0 if (close < conversionLine and strategy.position_size > 0) and (TrailStop == 'ConversionLine') strategy.close("Long") stopLong := 0.0 if (close < baseLine and strategy.position_size > 0) and (TrailStop == 'BaseLine') strategy.close("Long") stopLong := 0.0 if close < leadLine1bbbbb and close < leadLine2bbbbbb and conversionLine[1] >= baseLine[1] and conversionLine < baseLine and close < conversionLine and Resistance strategy.entry("Short",strategy.short) stopShort := conversionLine // if close > stopShort and strategy.position_size < 0 // strategy.close("Short") // stopShort := 0.0 if (close > conversionLine and strategy.position_size < 0) and (TrailStop == 'ConversionLine') strategy.close("Short") stopShort := 0.0 if (close > baseLine and strategy.position_size < 0) and (TrailStop == 'BaseLine') strategy.close("Short") stopShort := 0.0 // if close >= 1.0006 * strategy.position_avg_price and strategy.position_size > 0 // strategy.close("Long") // stopLong := 0.0 plot(conversionLine, color=#2962FF, title="Conversion Line") plot(baseLine, color=#B71C1C, title="Base Line") plot(close, offset = -displacement + 1, color=#43A047, title="Lagging Span") p1 = plot(leadLine1, offset = displacement - 1, color=#A5D6A7, title="Leading Span A") p2 = plot(leadLine2, offset = displacement - 1, color=#EF9A9A, title="Leading Span B") plot(leadLine1 > leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Upper Line", display = display.none) plot(leadLine1 < leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Lower Line", display = display.none) fill(p1, p2, color = leadLine1 > leadLine2 ? color.rgb(67, 160, 71, 90) : color.rgb(244, 67, 54, 90))