
Strategi ini disebut sebagai Ichimoku Kinko Hyo Strategy, yaitu strategi sistem garis rata-rata satu mata. Ini adalah strategi perdagangan BTC yang didasarkan pada garis rata-rata satu mata yang dikombinasikan dengan indikator teknis lainnya.
Strategi ini didasarkan pada sistem garis rata-rata satu mata, yang merupakan sistem strategi perdagangan tren dari berbagai indikator teknis yang komprehensif. Ini terutama mencakup indikator berikut:
Reference Line (Kijun Sen): Melambangkan arah tren pasar, adalah titik tengah dari titik tinggi dan rendah selama 26 hari terakhir, yang dapat digunakan sebagai garis dukungan dan resistensi. Ketika harga close out menembus garis referensi, menghasilkan sinyal beli dan jual.
Garis konversi ((Tenkan Sen): mewakili pergerakan harga saham, adalah titik tengah dari titik tinggi dan rendah selama 9 hari terakhir, yang dapat digunakan untuk menentukan kapan membeli atau menjual.
SPAN masa depan A: garis tengah yang mewakili garis rata-rata pertama, adalah rata-rata garis acuan dan garis konversi, dapat digunakan sebagai garis peringatan untuk garis rata-rata pertama.
SPAN B di masa depan: mewakili garis tren jangka panjang, adalah titik tengah dari 52 hari terakhir, yang dapat membentuk grafik awan untuk menilai tren jangka pendek.
Selain itu, strategi ini juga menggabungkan indikator RSI untuk memberikan sinyal perdagangan di zona overbought dan oversold.
Sebuah sinyal beli dihasilkan ketika harga close out menembus garis acuan dan berada di atas grafik awan; dan sinyal jual dihasilkan ketika harga close out jatuh di bawah garis acuan dan berada di bawah grafik awan.
Sistem garis rata-rata melihat tren dengan akurat, dan memiliki tingkat kemenangan yang tinggi
Menggabungkan berbagai indikator untuk menghindari kehilangan kesempatan
Indeks RSI dapat digunakan untuk menentukan titik balik
Grafik awan menunjukkan tren jangka pendek dan panjang
Sistem garis rata-rata satu mata lebih terbelakang dan perlu bekerja sama dengan penilaian indikator lainnya
Pasar tren bekerja dengan baik, tetapi pasar goyah biasanya tampil baik
Pengaturan parameter RSI perlu disesuaikan dengan pasar
Cloud Map lebih kompleks dan membutuhkan keterampilan dalam penggunaannya
Hal ini dapat dioptimalkan dengan menyesuaikan parameter garis rata-rata, atau menggabungkan lebih banyak indikator teknis.
Pengoptimalan parameter garis rata-rata untuk menilai tren lebih cepat
Menambahkan indikator seperti moving averages untuk meningkatkan akurasi sinyal
Pengaturan parameter RSI yang disesuaikan dengan berbagai pasar
“Mengambil langkah-langkah untuk mencegah kerugian dan mengendalikan risiko”.
Strategi ini menggabungkan beberapa indikator penilaian tren seperti garis rata-rata, RSI, dan lain-lain, dan memiliki akurasi yang lebih tinggi dalam menilai tren naik. Namun, sistem garis rata-rata agak terbelakang dan tidak dapat menilai getaran, yang merupakan risiko utama dari strategi ini. Dengan pengaturan parameter yang dioptimalkan, atau menambahkan indikator lain, Anda dapat memperbaiki kekurangan ini dengan baik, membuat strategi lebih stabil dan dapat diandalkan.
/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("My Ichimoku Strat v2", overlay=true,default_qty_type=strategy.fixed, default_qty_value=1, initial_capital=1000, currency=currency.EUR,commission_type=strategy.commission.percent,commission_value=0.05)
// === BACKTEST RANGE ===
FromMonth = input(defval = 3, title = "From Month", minval = 1)
FromDay = input(defval = 1, title = "From Day", minval = 1)
FromYear = input(defval = 2018, 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
//RSI
src = close, len = input(14, minval=1, title="RSI Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
buyRSI = crossover(rsi,40) and close > TenkanSen and rsi[5]<30 and (rsi-rsi[1])>5
sellRSI = crossunder(rsi,60) and close < TenkanSen and rsi[5]>70 and (rsi[1]-rsi)>5
plotshape(buyRSI,style=shape.triangleup,color=lime,transp=0,location=location.belowbar,size=size.small)
sell= sell2 and sell3 or (sell1 and buyCompteur <= 8) or sellRSI
buy=buy2 and buy3 or (buy1 and sellCompteur <=8) or buyRSI
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))))