Strategi ini adalah strategi identifikasi tren dan perdagangan berdasarkan indikator Ichimoku Cloud dikombinasikan dengan Rasio Fibonacci. Strategi ini menggunakan Garis Konversi, Garis Dasar, Awan Kumo, dan Lagging Span dari indikator Ichimoku Cloud untuk menentukan tren pasar saat ini, dan menggabungkan Rasio 1.618 dan 0.618 Fibonacci untuk mengatur tingkat stop-loss dan mengidentifikasi pasar sampingan. Selain itu, strategi ini memperkenalkan dua garis tengah tambahan untuk menyaring sinyal palsu.
Indikator Awan Ichimoku terdiri dari empat komponen: Garis Konversi, Garis Dasar, Awan Kumo, dan Lagging Span. Garis Konversi dan Garis Dasar dihitung dengan menggunakan rata-rata tertinggi tertinggi dan terendah terendah selama periode waktu yang berbeda. Awan Kumo terbentuk dengan memindahkan Garis Dasar ke depan 26 periode, dan Garis Dasar adalah harga penutupan yang dipindahkan ke belakang 26 periode.
Kondisi panjang untuk strategi ini adalah sebagai berikut:
Kondisi masuk pendek adalah kebalikan dari kondisi masuk panjang.
Stop-loss level ditetapkan menggunakan rasio 1.618 dan 0.618 Fibonacci. Untuk posisi panjang, stop-loss adalah tepi atas awan dikurangi 1.618 kali jarak antara tepi atas dan bawah. Untuk posisi pendek, sebaliknya. Garis 0.618 digunakan untuk mengidentifikasi pasar sampingan. Ketika awan hijau dan garis 0.618 berada di bawah level stop-loss 1.618, pasar dianggap berada dalam keadaan sampingan.
Selain indikator Ichimoku Cloud, strategi ini memperkenalkan dua garis tengah untuk lebih menyaring sinyal palsu.
Strategi ini secara inovatif menggabungkan indikator Ichimoku Cloud dengan Rasio Fibonacci untuk membentuk sistem identifikasi dan perdagangan tren yang lengkap. Pengenalan garis tengah tambahan untuk penyaringan dapat meningkatkan kualitas sinyal sampai batas tertentu. Keuntungan strategi ini terletak pada kemampuannya untuk beradaptasi dengan baik dengan tren dan kondisi pasar yang berkisar, dan untuk mengendalikan risiko melalui stop-loss dinamis. Namun, strategi ini juga memiliki beberapa kekurangan, seperti kurangnya dukungan teoritis dan overfit potensial dalam optimasi parameter. Di masa depan, strategi dapat ditingkatkan dengan memperkenalkan lebih banyak indikator, mengoptimalkan stop-loss dan ukuran posisi, dan menggunakan pembelajaran mesin untuk optimasi parameter. Secara keseluruhan, strategi ini memiliki pendekatan inovatif dan layak dirujuk, tetapi pengujian dan optimalisasi lebih lanjut diperlukan untuk aplikasi praktis.
/*backtest start: 2023-03-13 00:00:00 end: 2024-03-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © manoharbauskar //@version=5 // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © manoharbauskar //@version=5 strategy("Advanced_Ichimoku_Cloud_Strategy", overlay=true, margin_long=100, margin_short=100) conversionPeriods = input.int(9, minval=1, title="Conversion Line Length") basePeriods = input.int(26, minval=1, title="Base Line Length") laggingSpanPeriods = input.int(52, minval=1, title="Leading Span B Length") pivotPeriods1 = input.int(17,minval = 1,title = "PPL1") pivotPeriods2 = input.int(39,minval = 1,title = "PPL2") displacement = input.int(26, minval=1, title="Lagging Span") donchian(len) => math.avg(ta.lowest(len), ta.highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) midLine1 = donchian(pivotPeriods1) midLine2 = donchian(pivotPeriods2) midLine3 = donchian(laggingSpanPeriods) leadLine1 = math.avg(conversionLine, baseLine, midLine1) leadLine2 = math.avg(midLine2 , midLine3) plot(conversionLine, color=#2962FF, title="Conversion Line") plot(baseLine, color=#B71C1C, title="Base Line") plot(close, offset = -displacement + 1, color=color.yellow, title="Lagging Span") p1 = plot(leadLine1, offset = displacement - 1, color=#A5D6A7, title="Leading Span A") p2 = plot(leadLine2, offset = displacement - 1, color=#EF9A9A, title="Leading Span B") plot(leadLine1 > leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Upper Line", display = display.none) plot(leadLine1 < leadLine2 ? leadLine1 : leadLine2, offset = displacement - 1, title = "Kumo Cloud Lower Line", display = display.none) fill(p1, p2, color = leadLine1 > leadLine2 ? color.rgb(67, 160, 71, 90) : color.rgb(244, 67, 54, 90)) //stoploss calculating mult1 = input.float(1.618, "Mult1") mult2 = input.float(0.618, "Mult2") stoploss1 = leadLine1 - (leadLine1 - leadLine2)*mult1 stoploss2 = leadLine1 - (leadLine1 - leadLine2)*mult2 plot(stoploss1,"Sl", color = color.fuchsia, linewidth = 2, style = plot.style_line, offset = displacement - 1) plot(stoploss2,"S2", color = color.lime, linewidth = 2, style = plot.style_line, offset = displacement - 1) longCondition = leadLine1 > leadLine2 if (longCondition) strategy.entry("Buy", strategy.long) shortCondition = leadLine1 < leadLine2 if (shortCondition) strategy.entry("Sell", strategy.short)