Tren Ichimoku Mengikuti Strategi

Penulis:ChaoZhang, Tanggal: 2023-12-11 15:00:29
Tag:

img

Gambaran umum

Strategi ini dirancang berdasarkan indikator Ichimoku untuk mengikuti tren dan perdagangan equilibrium breakout, yang bertujuan untuk menangkap tren harga jangka menengah hingga panjang untuk keuntungan yang stabil.

Logika Strategi

Strategi ini menggunakan lima garis Ichimoku - Tenkan-sen, Kijun-sen, Senkou Span A, Senkou Span B dan Chikou Span untuk menentukan tren harga dan level support/resistance.

  1. Ketika dekat melintasi Kijun-sen dan Kijun-sen tidak rata, sinyal beli dipicu.
  2. Ketika persimpangan dekat di bawah Kijun-sen dan Kijun-sen tidak rata, sinyal jual dipicu.
  3. Ketika penutupan berada di atas awan, likuiditas baik untuk mengambil posisi.
  4. Ketika penutupan berada di bawah awan, likuiditas rendah dan mengambil posisi harus dihindari.
  5. Ketika Chikou Span melintasi dekat, sinyal beli dipicu.
  6. Ketika Chikou Span melintasi di bawah penutupan, sinyal jual dipicu.

Sinyal perdagangan di atas dikombinasikan untuk menentukan waktu masuk akhir.

Analisis Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Menggunakan Ichimoku untuk menentukan tren dapat menyaring kebisingan pasar dan menangkap tren jangka menengah hingga panjang.
  2. Menggabungkan kondisi awan menghindari mengambil posisi dalam likuiditas yang buruk.
  3. Chikou Span bertindak sebagai konfirmasi untuk menghindari kabur palsu.
  4. Peraturan ini sederhana dan jelas untuk diterapkan.

Analisis Risiko

Risiko dari strategi ini melibatkan:

  1. Pengaturan parameter yang tidak tepat dapat menyebabkan kehilangan peluang perdagangan.
  2. Penghakiman tren mungkin terlambat ketika tren bermutasi, tidak dapat memotong kerugian tepat waktu.
  3. Risiko kerugian yang lebih tinggi untuk posisi panjang.

Risiko ini dapat ditangani dengan mengoptimalkan parameter, menggabungkan dengan indikator lain untuk menentukan perubahan tren, dan stop loss yang ketat.

Arahan Optimasi

Strategi dapat dioptimalkan lebih lanjut dari aspek berikut:

  1. Optimalkan parameter Ichimoku untuk menemukan kombinasi terbaik.
  2. Tambahkan filter harga & volume untuk menghindari penyimpangan tren.
  3. Sertakan indikator volatilitas untuk mengidentifikasi titik pembalikan.
  4. Tambahkan model pembelajaran mesin untuk menentukan status tren.

Ringkasan

Strategi ini memanfaatkan Ichimoku untuk menentukan tren harga dan kondisi likuiditas untuk mengikuti tren, yang dapat secara efektif menyaring kebisingan dan menangkap tren jangka menengah hingga panjang dengan penarikan yang lebih kecil. Optimasi lebih lanjut pada penyesuaian parameter, menambahkan filter tambahan, dan mengidentifikasi sinyal pembalikan tren dapat meningkatkan Faktor Keuntungan strategi.


/*backtest
start: 2022-12-04 00:00:00
end: 2023-12-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("My Ichimoku Strat", overlay=true,default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=1000, currency=currency.EUR)
// === BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2017, title = "From Year", minval = 2014)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 2014)

// === SERIES SETUP ===
//**** Inputs *******
KijunSenLag = input(6,title="KijunSen Lag",minval=1)

//Kijun-sen
//Support resistance line, buy signal when price crosses it
KijunSen = sma((high+low)/2,26)
buy2 = crossover(close,KijunSen) and (rising(KijunSen,KijunSenLag) or falling(KijunSen,KijunSenLag))
sell2= crossunder(close,KijunSen) and (rising(KijunSen,KijunSenLag) or falling(KijunSen,KijunSenLag))


//Tenkan-Sen
TenkanSen = sma((high+low)/2,9)

//Senkou Span A 
SenkouSpanA = (KijunSen + TenkanSen)/2

//Senkou Span B 
SenkouSpanB = sma((high+low)/2,52)

//Cloud conditions : ignore buy if price is under the cloud
// Huge cloud means safe support and resistance. Little cloud means danger.
buy3 = close > SenkouSpanA and close > SenkouSpanB
sell3 = close < SenkouSpanA and close < SenkouSpanB


//Chikou Span
//Buy signal : crossover(ChikouSpan,close)
//Sell Signal : crossunder(ChikouSpan,close)
ChikouSpan = close
buy1=crossover(ChikouSpan,close[26])
sell1=crossunder(ChikouSpan,close[26])

plotshape(buy1,style=shape.diamond,color=lime,size=size.small)
plotshape(sell1,style=shape.diamond,color=orange,size=size.small)

//Alerts

buyCompteur = -1
buyCompteur := nz(buyCompteur[1],-1)
buyCompteur := buy2 or buy3 ? 1 : buyCompteur
buyCompteur := buyCompteur > 0 ? buyCompteur + 1 : buyCompteur
buyCompteur := sell2 or sell3 ? -1 : buyCompteur

sellCompteur = -1
sellCompteur := nz(sellCompteur[1],-1)
sellCompteur := sell2 or sell3 ? 1 : sellCompteur
sellCompteur := sellCompteur > 0 ? sellCompteur + 1 : sellCompteur
sellCompteur := buy2 or buy3 ? -1 : sellCompteur

sell= sell2 and sell3 or (sell1 and buyCompteur <= 8)
buy=buy2 and buy3 or (buy1 and sellCompteur <=8)
plotchar(buy,char='B',size=size.small,color=lime)
plotchar(sell,char='S',size=size.small,color=orange)

//plots
plot(KijunSen,title="Kijun-Sen",color=blue,linewidth=4)
plot(TenkanSen,title="Tenkan-Sen",color=red,linewidth=2)
cloudA = plot(SenkouSpanA,title="cloud A", color=lime,offset=26,linewidth=2)
cloudB = plot(SenkouSpanB,title="cloud B", color=orange,offset=26,linewidth=2)
plot(ChikouSpan,title="lag span",color=fuchsia, linewidth=2,offset=-26)
//plot()
fill(cloudA,cloudB,color=SenkouSpanA>SenkouSpanB?lime:orange)
//plot(close,color=silver,linewidth=4)

// === ALERTS ===
strategy.entry("L", strategy.long, when=(buy and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))
strategy.close("L", when=(sell and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))))

Lebih banyak