Indikator deviasi tren K-line dikombinasikan dengan strategi gelombang rata-rata bergerak


Tanggal Pembuatan: 2023-11-06 14:46:40 Akhirnya memodifikasi: 2023-11-06 14:46:40
menyalin: 0 Jumlah klik: 677
1
fokus pada
1617
Pengikut

Indikator deviasi tren K-line dikombinasikan dengan strategi gelombang rata-rata bergerak

Ringkasan

Strategi ini menggunakan perhitungan harga yang menyimpang dari indikator TSI, kemudian melakukan pengolahan rata-rata bergerak untuk membentuk rata-rata bergerak dari indikator TSI. Dengan menggunakan arah garis K dari harga, menentukan apakah harga saham saat ini sedang naik atau turun, menghasilkan sinyal beli dan jual.

Prinsip

Strategi ini terdiri dari beberapa langkah:

  1. Perhitungan perubahan harga pct
  2. Pc ditangani dengan HMA ganda, dan hasilnya adalah double_smoothed_pc
  3. HMA ganda dari nilai mutlak pct, yang diperoleh dengan double_smoothed_abs_pc
  4. Menghitung nilai TSI: 100*(double_smoothed_pc / double_smoothed_abs_pc))
  5. Pengolahan rata-rata bergerak HMA dari nilai TSI untuk mendapatkan rata-rata bergerak TSI tsihmaline
  6. Bandingkan hubungan antara nilai TSI dan rata-rata bergerak TSI, dengan tren naik saat nilai TSI lebih tinggi dari rata-rata bergerak, dan tren turun saat nilai TSI lebih rendah dari rata-rata bergerak
  7. Pada saat tren naik, sinyal beli akan dihasilkan jika harga juga naik
  8. Pada saat tren turun, sinyal jual muncul jika harga juga turun

Melalui langkah-langkah di atas, Anda dapat mengetahui arah tren umum saat ini, yang dikombinasikan dengan pergerakan harga yang sebenarnya, untuk menghasilkan sinyal perdagangan.

Keunggulan

  1. Pengolahan halus HMA ganda, dapat secara efektif menyaring kebisingan jangka pendek, mengunci tren utama
  2. TSI dengan rata-rata bergerak dapat menentukan arah tren keseluruhan
  3. Kombinasi arah garis K harga, menghindari false breakout, meningkatkan keandalan sinyal
  4. Parameter dapat disesuaikan, dapat menyesuaikan parameter smoothing sesuai dengan pasar, untuk menyesuaikan dengan siklus yang berbeda
  5. Grafik intuitif, hijau untuk tren naik, merah untuk tren turun

Risiko

  1. Ketika terjadi gempa, sinyal yang salah akan muncul berulang kali.
  2. Pada titik perputaran tren, rata-rata bergerak tertinggal dan mungkin melewatkan titik masuk terbaik
  3. Perlu sering menyesuaikan parameter untuk menyesuaikan dengan perubahan pasar
  4. Strategi ini hanya didasarkan pada satu indikator TSI dan dapat dioptimalkan dengan kombinasi indikator lain

Arah optimasi

  1. Filter dapat ditambahkan untuk menghindari sinyal yang salah saat bergoyang.
  2. Indikator lain dapat digabungkan untuk mengkonfirmasi titik balik tren.
  3. Parameter dapat dioptimalkan secara otomatis melalui metode seperti pembelajaran mesin
  4. Strategi Stop Loss dapat diperkenalkan untuk mengendalikan kerugian tunggal.

Meringkaskan

Strategi ini menggunakan indikator TSI untuk menentukan arah tren, dan digabungkan dengan garis K harga untuk menghasilkan sinyal perdagangan, dapat secara efektif menangkap tren, membeli tren naik, menjual tren turun. Namun, ada juga risiko tertentu, perlu dioptimalkan untuk meningkatkan stabilitas. Secara keseluruhan, strategi ini mudah dimengerti dan cocok untuk digunakan oleh pedagang yang akrab dengan indikator teknis.

Kode Sumber Strategi
/*backtest
start: 2023-10-29 00:00:00
end: 2023-11-05 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="TSIHULLBOT", shorttitle="TSICCIHULL", default_qty_type=strategy.percent_of_equity, default_qty_value=100)
long = input(title="Long Length", type=input.integer, defval=50)
short = input(title="Short Length", type=input.integer, defval=50)
signal = input(title="Signal Length", type=input.integer, defval=7)
price = input(title="Source",type=input.source,defval=open)
lineupper = input(title="Upper Line", type=input.integer, defval=250)
linelower = input(title="Lower Line", type=input.integer, defval=-250)
double_smooth(price, long, short) =>
    fist_smooth = hma(price, long)
    hma(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_value = (100 * (double_smoothed_pc / double_smoothed_abs_pc))*5
tsihmaline=(hma(tsi_value,signal))*5
clr = tsihmaline < tsi_value ? color.red : color.lime
clr2 = tsi_value < tsi_value[1] ? color.red : color.lime
i1=plot(lineupper+3, color=color.black, linewidth=3)
i2=plot(linelower+3, color=color.black, linewidth=3)
i3=plot(lineupper, color=clr)
i4=plot(linelower, color=clr)
trendv=tsihmaline/5.6
plot(trendv, linewidth=7,  color=color.black)
plot(trendv, linewidth=4,  color=color.yellow)
j1=plot(tsi_value, linewidth=5, color=color.black)
j2=plot(tsi_value[1], linewidth=5, color=color.black)
j3=plot(tsi_value, color=clr2)
j4=plot(tsi_value[1], color=clr2)
fill(i3,i4,color=clr,transp=90)
fill(j3,j4,color=clr2,transp=15)
longCondition = tsihmaline>tsihmaline[1] and price>price[1]
if (longCondition)
    strategy.entry("Buy ⤴️", strategy.long)
shortCondition = tsihmaline<tsihmaline[1] and price<price[1]
if (shortCondition)
    strategy.entry("Sell ⤵️", strategy.short)