Ichimoku Trend Mengikuti Strategi

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

img

Ringkasan

Strategi ini direka berdasarkan penunjuk Ichimoku untuk perdagangan trend berikut dan keseimbangan, bertujuan untuk menangkap trend harga jangka sederhana 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 trend harga dan tahap sokongan / rintangan.

  1. Apabila persimpangan dekat di atas Kijun-sen dan Kijun-sen tidak rata, isyarat beli dicetuskan.
  2. Apabila persimpangan dekat di bawah Kijun-sen dan Kijun-sen tidak rata, isyarat jual dicetuskan.
  3. Apabila penutupan di atas awan, kecairan adalah baik untuk mengambil kedudukan.
  4. Apabila penutupan berada di bawah awan, kecairan rendah dan mengambil kedudukan harus dielakkan.
  5. Apabila Chikou Span melintasi penutupan, isyarat beli diaktifkan.
  6. Apabila Chikou Span melintasi di bawah penutupan, isyarat jual diaktifkan.

Isyarat perdagangan di atas digabungkan untuk menentukan masa kemasukan akhir.

Analisis Kelebihan

Kelebihan strategi ini termasuk:

  1. Menggunakan Ichimoku untuk menentukan trend boleh menapis bunyi pasaran dan menangkap trend jangka sederhana hingga panjang.
  2. Memasukkan keadaan awan mengelakkan mengambil kedudukan dalam kecairan yang lemah.
  3. Chikou Span bertindak sebagai pengesahan untuk mengelakkan pelarian palsu.
  4. Peraturan adalah mudah dan jelas untuk dilaksanakan.

Analisis Risiko

Risiko strategi ini melibatkan:

  1. Tetapan parameter yang tidak sesuai boleh menyebabkan peluang perdagangan hilang.
  2. Penghakiman trend mungkin terlambat apabila trend bermutasi, tidak dapat memotong kerugian dalam masa.
  3. Risiko kerugian yang lebih tinggi untuk kedudukan panjang.

Risiko ini boleh ditangani dengan mengoptimumkan parameter, menggabungkan dengan penunjuk lain untuk menentukan perubahan trend, dan stop loss yang ketat.

Arahan pengoptimuman

Strategi ini boleh dioptimumkan lagi dari aspek berikut:

  1. Mengoptimumkan parameter Ichimoku untuk mencari kombinasi terbaik.
  2. Tambah penapis harga & jumlah untuk mengelakkan penyimpangan trend.
  3. Masukkan penunjuk turun naik untuk mengenal pasti titik pembalikan.
  4. Tambah model pembelajaran mesin untuk menentukan status trend.

Ringkasan

Strategi ini memanfaatkan Ichimoku untuk menentukan trend harga dan keadaan kecairan untuk mengikuti trend, yang secara berkesan dapat menapis bunyi bising dan menangkap trend jangka menengah hingga panjang dengan penarikan yang lebih kecil. Pengoptimuman lanjut pada penyesuaian parameter, menambah penapis tambahan, dan mengenal pasti isyarat pembalikan trend 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 lanjut