
Ini adalah strategi yang menggunakan kombinasi dari indikator Stochastics ganda dan rata-rata bergerak berimbang untuk mengidentifikasi tren. Strategi ini menggunakan indikator Stochastics dari dua periode yang berbeda, satu untuk periode pendek dan satu untuk periode panjang, dan kemudian menggabungkan rata-rata bergerak berimbang untuk menilai arah tren saat ini.
Strategi ini didasarkan pada beberapa bagian untuk menilai tren:
Hitung indikator Stochastics untuk periode pendek, dengan panjang periode input 30 dan parameter smoothing 2
Menghitung indikator Stochastics untuk periode panjang dengan panjang siklus input (90), dan parameter smoothing 2
Tambahkan indikator Stochastics periode pendek dan periode panjang untuk mendapatkan kurva Stochastics kompleks ts
Perhitungan rata-rata bergerak berat transisi tsl pada kurva tsl dengan panjang siklus input 30
Bandingkan nilai tsl saat ini dengan nilai 1 siklus sebelumnya, ketika tsl naik, dianggap sebagai tren naik, ketika tsl turun, dianggap sebagai tren turun
Kemudian digabungkan dengan posisi dari kurva Stochastics untuk menentukan apakah sinyal adalah multihead atau kosong.
Strategi ini menggabungkan penilaian tren dan penilaian overbought dan oversold untuk mengidentifikasi arah tren dengan lebih andal. Keuntungan spesifiknya adalah sebagai berikut:
Indikator Stochastics Ganda dapat mencerminkan overbought dan oversold dalam jangka pendek dan jangka panjang, menghindari kehilangan sinyal tertentu
Peningkatan volume transaksi dapat memfilter beberapa sinyal terobosan palsu
Posisi dari kurva stochastics sekali lagi membuktikan keandalan sinyal tren
Parameter dapat disesuaikan, dapat disesuaikan dengan panjang siklus sesuai dengan pasar yang berbeda
Strategi yang jelas, ringkas, mudah dipahami dan dimodifikasi
Strategi ini juga memiliki beberapa risiko yang perlu diperhatikan:
Indikator Stochastics mudah untuk mengirim sinyal palsu, yang perlu digabungkan dengan filter indikator periode yang lebih panjang
Parameter siklus tetap tidak cocok untuk semua situasi pasar, parameter optimasi dinamis dapat dipertimbangkan
Meningkatkan akurasi berdasarkan indikator teknis saja, dikombinasikan dengan faktor fundamental
Data pengiriman yang tidak akurat juga dapat mempengaruhi hasil, perlu untuk memverifikasi kualitas data pengiriman
Tidak ada waktu yang cukup untuk mendeteksi, butuh data sejarah yang lebih lama untuk memverifikasi efeknya.
Optimalkan titik masuk, sekarang adalah crosses under minimal nilai langsung melakukan lebih, dapat mengatur zona penyangga
Secara keseluruhan, strategi ini menggunakan indikator ganda Stochastics dan volume transaksi rata-rata bergerak untuk menilai tren, secara teoritis dapat secara andal mengidentifikasi titik-titik perubahan tren. Namun, pengaturan parameter perlu dioptimalkan untuk pasar tertentu, dan ada risiko sinyal palsu tertentu.
/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="Trend Finder V2", shorttitle="TFV2", format=format.price, precision=2, overlay = true)
//----------Indicator------------//
periodK = input(30)
periodD = 3
smoothK = 2
periodK_two = input(90)
periodD_two = 3
smoothK_two = 2
k = sma(stoch(close, high, low, periodK), smoothK)
d = sma(k, periodD)
k_two = sma(stoch(close, high, low, periodK_two), smoothK_two)
d_two = sma(k, periodD_two)
ts = k + k_two
tsl = vwma(ts, input(30, title = "VWMA Length"))
//--------Label parameter--------//
up_label = tsl[1] < 100 and tsl > 100 ? 1 : 0
down_label = tsl[1] > 100 and tsl < 100 ? 1 : 0
//----------Color Code-----------//
//tsl_col = tsl > 100 and tsl > tsl[1] ? color.aqua : tsl > 100 and tsl < tsl[1] ? color.green : tsl < 100 and tsl > tsl[1] ? color.maroon : tsl < 100 and tsl < tsl[1] ? color.red : color.silver
//tsl_col = tsl > 100 and ts < 100 and ts > ts[1] ? color.aqua : tsl > 100 and ts > 100 and (ts > ts[1] or ts < ts[1]) ? color.green : tsl < 100 and ts > 100 and ts < ts[1] ? color.red : tsl < 100 and ts < 100 and (ts < ts[1] or ts > ts[1]) ? color.maroon : color.purple
tsl_col = ts > ts[1] and tsl > tsl[1] ? color.lime : ts < ts[1] and tsl < tsl[1] ? color.red : color.yellow
ts_col = (tsl_col == color.lime or tsl_col == color.maroon) and (k>k[1] and k < 30) ? color.lime : (tsl_col == color.green or tsl_col == color.red) and (k < k[1] and k > 70) ? color.red : color.silver
//-------------Plots-------------//
buy = tsl_col[1] == color.yellow and tsl_col == color.lime ? 1 : 0
sell = tsl_col[1] == color.yellow and tsl_col == color.red ? -1 : 0
plotcandle(open,high,low,close, color=tsl_col)
strategy.entry("Long", strategy.long,when=buy==1)
strategy.close("Long", when=sell==-1)