Strategi ini adalah strategi trend following yang dikembangkan menggunakan Ichimoku Cloud dan stop order. Strategi ini memanfaatkan garis konversi, garis dasar dan rentang lag dari Ichimoku Cloud untuk menentukan arah tren dan menetapkan stop order di tepi atas dan bawah band awan untuk stop loss.
Strategi ini didasarkan pada prinsip-prinsip berikut:
Garis konversi adalah rata-rata harga tertinggi dan terendah selama 9 hari terakhir, mencerminkan perubahan harga rata-rata baru-baru ini.
Garis dasar adalah rata-rata harga tertinggi dan terendah selama 26 hari terakhir, mencerminkan perubahan harga rata-rata jangka menengah.
Jangka waktu keterlambatan adalah rata-rata harga tertinggi dan terendah selama 52 hari terakhir, mencerminkan perubahan harga rata-rata jangka panjang.
Rata-rata konversi dan garis dasar membentuk rentang utama 1, dan rentang tertinggal membentuk rentang utama 2. Area antara dua rentang utama membentuk pita awan.
Ketika harga menembus band awan, pergi panjang.
Tetapkan perintah stop loss di tepi atas dan bawah pita awan untuk mengikuti tren.
Secara khusus, strategi mendefinisikan tiga garis Ichimoku, menghitung rata-rata mereka untuk mendapatkan rentang utama 1 dan 2. Kemudian menentukan arah tren berdasarkan harga yang menembus batas band awan atas atau bawah. Setelah mengambil posisi panjang atau pendek, ia menetapkan perintah stop loss berdasarkan harga band awan untuk mengikuti tren dengan stop loss di tempat.
Keuntungan dari strategi ini adalah:
Ichimoku Cloud dapat diandalkan menentukan arah tren dengan menggabungkan informasi harga dari beberapa kerangka waktu, menyaring kebisingan pasar.
Penggunaan tepi pita awan memungkinkan untuk jangkauan stop loss yang tepat dan tren yang baik.
Strategi ini stabil dan dapat diandalkan. Ichimoku Cloud menyaring kebisingan dan stop loss mengendalikan risiko.
Pengaturan parameter yang fleksibel. Konversi, basis, dan periode rentang keterlambatan dapat disesuaikan untuk adaptasi pasar.
Logika yang jelas dan mudah dimengerti.
Risiko dari strategi ini meliputi:
Risiko stop loss breakout. pergerakan harga yang tidak menentu dapat memicu stop loss dan keluar posisi menguntungkan.
Whipsaws di pasar yang berbeda, sering memicu stop loss menyebabkan overtrading.
Risiko parameter: pengaturan konversi, dasar dan rentang keterlambatan yang tidak tepat dapat menyebabkan rentang stop loss terlalu luas atau sempit.
Biaya slippage dalam futures. pesanan yang sering dapat menyebabkan biaya slippage yang berlebihan yang mempengaruhi keuntungan.
Risiko perdagangan algoritma. downtime, masalah jaringan, bug dapat mempengaruhi eksekusi perdagangan.
Untuk mengatasi risiko ini, optimasi parameter, algoritma stop loss, peningkatan stabilitas server, manajemen risiko yang tepat, dan pengujian strategi yang menyeluruh harus dilakukan.
Strategi dapat dioptimalkan dalam aspek berikut:
Mengoptimalkan pengaturan parameter dengan menguji kombinasi periode yang berbeda untuk menemukan nilai optimal.
Meningkatkan algoritma stop loss dengan trailing stop, volatility stop dll untuk mengurangi pemicu stop loss.
Menggabungkan indikator tambahan seperti MACD, KDJ untuk meningkatkan pengambilan keputusan.
Tambahkan fungsi penutupan kerugian otomatis untuk membatasi kerugian.
Mengimplementasikan mekanisme re-entry setelah stop loss exit.
Mengoptimalkan pengelolaan uang melalui ukuran posisi dinamis.
Secara keseluruhan, strategi ini memiliki logika yang jelas, menggunakan Ichimoku Cloud untuk arah tren dan band awan untuk stop loss trailing, secara efektif mengendalikan risiko dan memiliki utilitas praktis.
/*backtest start: 2022-10-27 00:00:00 end: 2023-11-02 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title = "Noro's Ichimoku Stop Strategy", shorttitle = "Ichimoku Stop Strategy", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") conversionPeriods = input(9, minval = 1, title = "Conversion Periods") basePeriods = input(26, minval = 1, title = "Base Periods") laggingSpan2Periods = input(52, minval = 1, title = "Lagging Span") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //Ichimoku donchian(len) => avg(lowest(len), highest(len)) conversionLine = donchian(conversionPeriods) baseLine = donchian(basePeriods) leadLine1 = avg(conversionLine, baseLine) leadLine2 = donchian(laggingSpan2Periods) //Cloud p1 = plot(leadLine1, offset = basePeriods, color=color.green, title="Lead 1", transp = 100) p2 = plot(leadLine2, offset = basePeriods, color=color.red, title="Lead 2", transp = 100) fill(p1, p2) //Signals max = max(leadLine1[basePeriods], leadLine2[basePeriods]) min = min(leadLine1[basePeriods], leadLine2[basePeriods]) up = low > max dn = high < min if max > 0 strategy.entry("Long", strategy.long, needlong ? na : 0, stop = max) strategy.entry("Short", strategy.short, needshort ? na : 0, stop = min)