Ichimoku Cloud dan MACD Momentum Riding Strategy

Penulis:ChaoZhang, Tanggal: 2023-11-22 13:59:36
Tag:

img

Gambaran umum

Ichimoku Cloud dan MACD Momentum Riding adalah strategi mengikuti tren yang menggabungkan indikator Ichimoku Cloud dan indikator momentum MACD. Strategi ini menggunakan Ichimoku Cloud untuk menentukan arah tren dan level support/resistance, serta indikator MACD untuk mendeteksi pembalikan momentum, dan memasuki pasar dengan waktu selama tren. Sementara itu, strategi mengadopsi stop loss trailing untuk mengunci keuntungan dan mengurangi penarikan.

Logika Strategi

Awan Ichimoku

Awan Ichimoku terdiri dari Jalur Putar (Tenkan-Sen), Jalur Dasar (Kijun-Sen), Leading Span A (Senkou-Span A), Leading Span B (Senkou-Span B) dan Jalur Konfirmasi (Chikou-Span).

  • Harga di atas Cloud - Uptrend
  • Harga di bawah Cloud - Trend penurunan
  • Turning Line melintasi di atas Base Line - Bullish signal
  • Turning Line melintasi di bawah Base Line - sinyal bearish

Indikator MACD

Divergensi Konvergensi Moving Average, atau MACD, adalah indikator momentum. Dalam strategi ini, ketika garis cepat MACD melintasi di atas garis lambat, itu adalah sinyal beli, dan ketika garis cepat melintasi di bawah garis lambat, itu adalah sinyal jual.

Masuk dan Keluar

Ketika Turning Line melintasi di atas Base Line, Confirmation Line melintasi di atas harga penutupan 26 bar yang lalu, harga penutupan pecah di atas band atas Cloud, dan garis cepat MACD memiliki crossover bullish di atas garis lambat, pergi panjang.

Ketika harga naik 3%, strategi akan memindahkan stop loss ke 97% dari harga saat ini untuk mengunci keuntungan dan melacak pergerakan naik.

Ketika Turning Line melintasi di bawah Base Line, Confirmation Line melintasi di bawah harga penutupan 26 bar yang lalu, harga penutupan melintasi di bawah band bawah Cloud, dan garis cepat MACD memiliki penyeberangan bearish di bawah garis lambat, pergi pendek.

Ketika harga turun 3%, strategi akan memindahkan stop loss ke 103% dari harga saat ini untuk mengunci keuntungan dan mengikuti pergerakan ke bawah.

Analisis Keuntungan

Strategi ini menggabungkan identifikasi tren dan waktu masuk, yang dapat mencapai pengembalian yang baik selama pasar tren.

  1. Ichimoku Cloud dapat dengan jelas mengidentifikasi arah tren. Strategi hanya masuk sejajar dengan arah Cloud, menghindari perdagangan kontra-tren.

  2. MACD efektif dalam mendeteksi pembalikan momentum jangka pendek.

  3. Trailing stop loss memungkinkan strategi untuk terus berjalan selama tren. ukuran posisi yang tepat memastikan risiko terkontrol per perdagangan.

Analisis Risiko

Ada juga risiko tertentu dengan strategi ini:

  1. Awan membutuhkan periode pencarian yang relatif panjang dan dapat memberikan sinyal yang tidak akurat dalam jangka pendek.

  2. MACD berosilasi dengan harga dan dapat menghasilkan sinyal palsu. Lebih banyak filter diperlukan untuk mengkonfirmasi sinyal.

  3. Stop loss trailing hanya cocok untuk pasar tren. persentase stop loss perlu disesuaikan, jika tidak, whipsaws mungkin berhenti terlalu sering selama pasar range.

  4. Strategi itu sendiri tidak mengelola risiko. Pengguna perlu menerapkan teknik manajemen risiko eksternal untuk mengendalikan kerugian.

Arahan Optimasi

Strategi Ichimoku Cloud dan MACD Momentum Riding dapat dioptimalkan dengan cara berikut:

  1. Penyesuaian parameter - Sesuaikan garis belokan, periode pencarian garis dasar, optimalkan parameter MACD untuk sinyal yang lebih jelas.

  2. Tambahkan penyaringan - Gunakan indikator lain seperti RSI, Bollinger Bands untuk menyaring sinyal buruk, mengurangi sinyal palsu.

  3. Hal ini berarti bahwa nilai tukar rupiah yang dapat diukur dengan metode ini adalah nilai tukar rupiah.

  4. Menggabungkan ukuran posisi - Batas kerugian maksimum per perdagangan untuk mengontrol penarikan keseluruhan.

  5. Otomatis memilih kontrak & rebalancing - Memperluas kemampuan beradaptasi ke lebih banyak pasar.

Kesimpulan

Strategi Ichimoku Cloud dan MACD Momentum Riding mempertimbangkan tren dan waktu, yang dapat mencapai pengembalian yang baik ketika parameter disetel dengan benar dan kontrol risiko ada.


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




Lebih banyak