Die Ressourcen sind geladen. Beförderung...

Ichimoku Cloud und Bollinger Bands Kombination Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 2023-12-27 16:21:28
Tags:

img

Übersicht

Diese Strategie kombiniert den japanischen Ichimoku Cloud-Indikator mit dem Bollinger Bands-Indikator, um Handelssignale für lange und kurze Positionen zu generieren.

Strategieprinzip

  1. Die Ichimoku-Wolke besteht aus der Umrechnungslinie, der Basislinie, der Verzögerungslinie und den führenden Linien. Die Umrechnungslinie ist ein 9-tägiger gleitender Durchschnitt und die Basislinie ist ein 26-tägiger gleitender Durchschnitt. Wenn die Umrechnungslinie über der Basislinie liegt, ist dies ein bullisches Signal und umgekehrt für ein bärisches Signal.

  2. Die Verzögerungslinie ist die Verzögerungsbewegung der Preise. Wenn die Verzögerungslinie oberhalb liegt, zeigt sie einen Aufwärtstrend an. Unten zeigt sie einen Bärentrend an.

  3. Die Wolkenbänder bestehen aus zwei führenden Linien, die der 52-tägige gleitende Durchschnitt und der Mittelwert des 26-tägigen gleitenden Durchschnitts sind.

  4. Die Bollinger Bands bestehen aus N-Tage gleitenden Durchschnitten und Standardabweichungen, die Volatilitätsbänder für die Preise darstellen.

  5. Diese Strategie bildet Handelsregeln basierend auf den von der Ichimoku-Cloud generierten Signalen und den Ausbrüchen der Bollinger-Bänder. Zum Beispiel, wenn die Konversionslinie eine Aufwärts-Kreuzung über die Basislinie hat, ist die Verzögerungslinie oben, der Preis durchbricht die Wolkenbänder und durchbricht auch das obere Band der Bollinger-Bänder, löst es ein langes Eingangssignal aus.

Vorteile der Strategie

  1. Die Ichimoku-Wolke beurteilt die Trendrichtung deutlich, wobei die Konversions- und Verzögerungslinien kurzfristige Trends und die Wolkenbänder mittelfristige bis langfristige Trendrichtung anzeigen.

  2. Die Bollinger-Bänder bestimmen, ob die Preise übermäßig ausgeweitet sind, was einige unnötige Trades effektiv herausfiltern kann.

  3. Die Kombination der Indikatoren macht die Handelssignale klarer und zuverlässiger und vermeidet Handelsrisiken.

Risiken und Optimierung

  1. Bei falschen Parameter-Einstellungen für Bollinger-Bänder können ungenaue Handelssignale auftreten.

  2. Die Positionsgröße sollte angemessen angepasst werden, um Risiken zu kontrollieren.

  3. Es sollte eine Stop-Loss-Strategie eingeführt werden, um Verluste zu stoppen, wenn sich die Preise in ungünstiger Richtung über einen bestimmten Bereich bewegen.

  4. Erwägen Sie, mehr Indikatoren in Kombination mit der Ichimoku Cloud zu testen, um zuverlässigere Handelsstrategien zu bilden.

Schlussfolgerung

Diese Strategie nutzt effektiv die Ichimoku Cloud, um die Trendrichtung zu bestimmen, und den Bollinger Bands Indikator, um Signale zu filtern. Die Strategiesignale sind relativ klar und zuverlässig. Durch die Anpassung von Parametern und die Optimierung des Stop Loss können Handelsrisiken reduziert und gute Renditen erzielt werden.


/*backtest
start: 2023-12-19 00:00:00
end: 2023-12-26 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=5
strategy("Ichimoku Cloud and Bollinger Bands",
         overlay=true,
         initial_capital=1000,
         process_orders_on_close=true,
         default_qty_type=strategy.percent_of_equity,
         default_qty_value=30,
         commission_type=strategy.commission.percent,
         commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = true
notInTrade = strategy.position_size <= 0


//Ichimoku Cloud
//Inputs
ts_bars = input.int(9, minval=1, title="Tenkan-Sen Bars")
ks_bars = input.int(26, minval=1, title="Kijun-Sen Bars")
ssb_bars = input.int(52, minval=1, title="Senkou-Span B Bars")
cs_offset = input.int(26, minval=1, title="Chikou-Span Offset")
ss_offset = input.int(26, minval=1, title="Senkou-Span Offset")
long_entry = input(true, title="Long Entry")
short_entry = input(true, title="Short Entry")

middle(len) => math.avg(ta.lowest(len), ta.highest(len))

// Components of Ichimoku Cloud
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_bars)

// Plot Ichimoku Cloud
plot(tenkan, color=#0496ff, title="Tenkan-Sen")
plot(kijun, color=#991515, title="Kijun-Sen")
plot(close, offset=-cs_offset+1, color=#459915, title="Chikou-Span")
sa=plot(senkouA, offset=ss_offset-1, color=color.green, title="Senkou-Span A")
sb=plot(senkouB, offset=ss_offset-1, color=color.red, title="Senkou-Span B")
fill(sa, sb, color = senkouA > senkouB ? color.green : color.red, title="Cloud color")

ss_high = math.max(senkouA[ss_offset-1], senkouB[ss_offset-1])
ss_low = math.min(senkouA[ss_offset-1], senkouB[ss_offset-1])

// Entry/Exit Conditions
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = ta.mom(close, cs_offset-1) > 0
cs_cross_bear = ta.mom(close, cs_offset-1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low


//Bollinger Bands Indicator
length = input.int(20, minval=1)
src = input(close, title="Source")
mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))

bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(lower, close)
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossover(close, lower)

strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod)
strategy.close('Long', when=bearish and not short_entry)

strategy.entry('Short', strategy.short, when=bearish and short_entry and timePeriod)
strategy.close('Short', when=bullish and not long_entry)


//Works well on BTC 30m/1h (11.29%), ETH 2h (29.05%), MATIC 2h/30m (37.12%), AVAX 1h/2h (49.2%), SOL 45m (45.43%)


Mehr