Ichimoku-Wolke und MACD-Momentum-Riding-Strategie

Schriftsteller:ChaoZhang, Datum: 2023-11-22 13:59:36
Tags:

img

Übersicht

Die Ichimoku Cloud und MACD Momentum Riding ist eine Trendfolgsstrategie, die den Ichimoku Cloud-Indikator und den MACD-Impulsindikator kombiniert. Die Strategie nutzt die Ichimoku Cloud, um die Trendrichtung und Unterstützungs-/Widerstandsniveaus sowie den MACD-Indikator zu bestimmen, um eine Momentumumumumkehr zu erkennen, und tritt während eines Trends zeitlich in den Markt ein. Inzwischen setzt die Strategie einen Trailing Stop Loss ein, um Gewinne zu erzielen und Drawdowns zu reduzieren.

Strategie Logik

Ichimoku Wolke

Die Ichimoku-Wolke besteht aus der Wendelinie (Tenkan-Sen), der Basislinie (Kijun-Sen), der führenden Spanne A (Senkou-Spanne A), der führenden Spanne B (Senkou-Spanne B) und der Bestätigungslinie (Chikou-Spanne).

  • Preis über Cloud - Aufwärtstrend
  • Preis unter Cloud - Abwärtstrend
  • Wendelinie über der Basislinie - Aufwärtssignal
  • Drehlinie unterhalb der Basislinie - Bärensignal

MACD-Indikator

Die Moving Average Convergence Divergence oder MACD ist ein Momentum-Indikator. In dieser Strategie ist es ein Kaufsignal, wenn die schnelle Linie der MACD über die langsame Linie geht, und ein Verkaufsignal, wenn die schnelle Linie unter die langsame Linie geht.

Ein- und Ausgänge

Wenn die Turning Line über die Basislinie kreuzt, kreuzt die Confirmation Line über den Schlusskurs von 26 Bars vor, der Schlusskurs bricht über das obere Band der Cloud und die schnelle Linie des MACD hat ein bullisches Crossover über die langsame Linie.

Wenn der Preis um 3% steigt, wird die Strategie den Stop-Loss auf 97% des aktuellen Preises verschieben, um Gewinne zu erzielen und die Aufwärtsbewegung zu verfolgen.

Wenn die Turning Line unterhalb der Basislinie kreuzt, kreuzt die Confirmation Line unterhalb des Schlusskurses von 26 Bars vor, der Schlusskurs bricht unterhalb des unteren Bandes der Cloud ab und die MACDs schnelle Linie hat ein bärisches Crossover unterhalb der langsamen Linie, gehen Sie kurz.

Wenn der Kurs um 3% fällt, wird die Strategie den Stop-Loss auf 103% des aktuellen Preises verschieben, um Gewinne zu erzielen und die Abwärtsbewegung zu verfolgen.

Analyse der Vorteile

Diese Strategie kombiniert die Identifizierung von Trends und den Zeitpunkt des Einsteigens, wodurch bei Trendmärkten gute Renditen erzielt werden können.

  1. Ichimoku Cloud kann die Trendrichtung eindeutig identifizieren.

  2. Der MACD ist wirksam bei der Erkennung von kurzfristigen Momentumumum-Umkehrungen.

  3. Durch den Trailing-Stop-Loss kann die Strategie während eines Trends weitergeführt werden.

Risikoanalyse

Diese Strategie birgt auch gewisse Risiken:

  1. Die Wolke benötigt relativ lange Rückblickzeiten und kann kurzfristig ungenaue Signale geben.

  2. Der MACD schwingt mit dem Preis und kann falsche Signale erzeugen.

  3. Der Stopp-Loss-Verlust muss entsprechend angepasst werden, da sonst die Whipsaws während der Trendmärkte zu häufig ausfallen.

  4. Die Strategie selbst verwaltet kein Risiko. Der Benutzer muss externe Risikomanagementtechniken umsetzen, um Verluste zu kontrollieren.

Optimierungsrichtlinien

Die Ichimoku Cloud- und MACD-Momentum-Riding-Strategie kann wie folgt optimiert werden:

  1. Parameter-Tuning - Drehlinie anpassen, Basislinie Rückblick Perioden, MACD-Parameter für klarere Signale optimieren.

  2. Fügen Sie Filterung hinzu - Verwenden Sie andere Indikatoren wie RSI, Bollinger Bands, um schlechte Signale auszufiltern und falsche Signale zu reduzieren.

  3. Die Risikopositionen, für die die Risikopositionen gemäß Artikel 36 Absatz 1 Buchstabe c der CRR gelten, sind die Risikopositionen, für die die Risikopositionen gemäß Artikel 36 Absatz 1 der CRR gelten.

  4. Einbeziehung von Positionsgrößen - Höchstverlust pro Handel zur Kontrolle des Gesamtverlustes.

  5. Automatische Auswahl von Verträgen und Neuausgleich - Erweiterung der Anpassungsfähigkeit auf mehr Märkte.

Schlussfolgerung

Die Ichimoku Cloud und MACD Momentum Riding Strategie berücksichtigt sowohl den Trend als auch das Timing, was eine gute Rendite erzielen kann, wenn die Parameter richtig abgestimmt sind und Risikokontrollen vorhanden sind.


/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-03 05:20:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('Ichimoku Cloud with MACD and Trailing Stop Loss',
         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 = time >= timestamp(syminfo.timezone, 2022, 6, 1, 0, 0)


// 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))

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

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

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


// MACD
[macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9)


// Entry/Exit Signals
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

bullish = tk_cross_bull and cs_cross_bull and price_above_kumo and ta.crossover(macd, macd_signal)
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo and ta.crossunder(macd, macd_signal)

// Configure trail stop level with input options
longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01
shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01

// Determine trail stop loss prices
longStopPrice = 0.0
shortStopPrice = 0.0

longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - longTrailPerc)
    math.max(stopValue, longStopPrice[1])
else
    0

shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + shortTrailPerc)
    math.min(stopValue, shortStopPrice[1])
else
    999999

strategy.entry('Long', strategy.long, when=bullish and long_entry and timePeriod)
strategy.exit('Exit', stop = longStopPrice, limit = shortStopPrice)
//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)




Mehr