Strategi ini mengoptimalkan strategi Rate of Change (ROC) asli. Dibandingkan dengan strategi ROC asli, strategi ini memiliki optimasi berikut:
Melalui langkah-langkah optimasi ini, banyak sinyal yang tidak valid dapat disaring untuk membuat strategi lebih stabil dan dapat diandalkan.
Indikator inti dari strategi ini adalah Rate of Change (ROC). ROC mengukur tingkat perubahan harga saham selama periode tertentu. Strategi ini pertama menghitung nilai ROC selama periode 9. Kemudian mencatat nilai maksimum indikator ROC ini dalam 200 periode terakhir dan menghitung ROC saat ini sebagai persentase dari ROC historis maksimum untuk mendapatkan kekuatan relatif momentum. Misalnya, jika ROC tertinggi dalam 200 hari terakhir mencapai 100, maka kekuatan relatif adalah 80% ketika ROC hari ini adalah 80.
Kekuatan relatif dihaluskan oleh SMA 10 periode untuk menyaring fluktuasi jangka pendek dan mendapatkan kurva halus. Ketika kurva halus meningkat terus menerus selama 3 hari dan nilainya di bawah -80%, dianggap bahwa penurunan harga saham mulai melambat dan tanda bawah muncul, jadi pergi panjang; ketika kurva halus turun terus menerus selama 3 hari dan nilainya di atas 80%, dianggap bahwa kenaikan harga saham mulai melambat dan tanda atas muncul, jadi posisi dekat.
Dibandingkan dengan strategi ROC asli, strategi ini memiliki keuntungan utama sebagai berikut:
Secara umum, strategi ini secara efektif memproses indikator ROC untuk membuatnya lebih cocok untuk perdagangan langsung.
Risiko utama dari strategi ini adalah:
Untuk mengurangi risiko di atas, pertimbangkan untuk menggabungkan indikator tren untuk menentukan tren utama; menyesuaikan parameter ambang dan menguji parameter optimal; mengoptimalkan parameter siklus SMA.
Strategi dapat dioptimalkan dengan cara berikut:
Ini adalah strategi pengoptimalan berdasarkan pengembangan sekunder dari indikator ROC. Ini memperkenalkan sarana seperti perbandingan nilai maksimum historis, smoothing SMA, dan buy and sell threshold untuk menyaring sinyal yang tidak valid dan membuat strategi lebih stabil. Keuntungan utama adalah kualitas sinyal yang tinggi yang cocok untuk perdagangan langsung. Peningkatan tindak lanjut dapat dilakukan dari menggabungkan tren, pengoptimalan parameter dan sebagainya untuk meningkatkan kinerja strategi lebih lanjut.
/*backtest start: 2024-02-12 00:00:00 end: 2024-02-19 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Rate Of Change Mod Strategy", shorttitle="ROC", format=format.price, precision=2) //length = input.int(9, minval=1) //source = input(close, "Source") //roc = 100 * (source - source[length])/source[length] //plot(roc, color=#2962FF, title="ROC") //hline(0, color=#787B86, title="Zero Line") length = input.int(9, minval=1, title="Length") maxHistory = input(200, title="Max Historical Period for ROC") lenghtSmooth = input.int(10, minval=1, title="Length Smoothed ROC") lenghtBUY = input.int(-80, title="Buy Threshold") lenghtSELL = input.int(80, title="Buy Threshold") source = close roc = 100 * (source - source[length]) / source[length] // Calculate the maximum ROC value in the historical period maxRoc = ta.highest(roc, maxHistory) // Calculate current ROC as a percentage of the maximum historical ROC rocPercentage = (roc / maxRoc) * 100 rocPercentageS = ta.sma(rocPercentage, lenghtSmooth) if ta.rising(rocPercentageS, 3) and rocPercentageS < lenghtBUY strategy.entry("Buy", strategy.long) if ta.falling(rocPercentageS, 3) and rocPercentageS > lenghtSELL strategy.close("Buy") plot(rocPercentage, color=color.new(color.blue, 0), title="Percentage ROC") plot(rocPercentageS, color=color.new(#21f32c, 0), title="Percentage ROC") hline(0, color=color.new(color.gray, 0), title="Zero Line")