Penunjuk sisihan trend K-line digabungkan dengan strategi gelombang purata bergerak


Tarikh penciptaan: 2023-11-06 14:46:40 Akhirnya diubah suai: 2023-11-06 14:46:40
Salin: 0 Bilangan klik: 677
1
fokus pada
1617
Pengikut

Penunjuk sisihan trend K-line digabungkan dengan strategi gelombang purata bergerak

Gambaran keseluruhan

Strategi ini menggunakan pengiraan trend harga yang menyimpang dari TSI, kemudian memproses TSI dengan purata bergerak untuk membentuk purata bergerak TSI. Dengan arah K-line harga, anda dapat menentukan sama ada harga saham sedang naik atau turun, menghasilkan isyarat beli dan jual.

Prinsip

Strategi ini terdiri daripada beberapa langkah utama:

  1. Perkiraan perubahan harga pct
  2. PcT diproses dengan dua kali ganda HMA dan double_smoothed_pc
  3. HMA dua kali ganda untuk nilai mutlak pct, yang diperoleh dengan double_smoothed_abs_pc
  4. Hitung nilai TSI: 100*(double_smoothed_pc / double_smoothed_abs_pc))
  5. Pengolahan purata bergerak HMA terhadap nilai TSI untuk mendapatkan purata bergerak TSI tsihmaline
  6. Bandingkan hubungan antara nilai TSI dan purata bergerak TSI, trend naik apabila nilai TSI lebih tinggi daripada purata bergerak, trend menurun apabila nilai TSI lebih rendah daripada purata bergerak
  7. Apabila harga naik, ia akan menghasilkan isyarat beli.
  8. Apabila harga turun, ia akan menghasilkan isyarat jual jika harga juga turun.

Melalui langkah-langkah di atas, anda boleh menentukan arah trend keseluruhan semasa, digabungkan dengan pergerakan sebenar harga, menghasilkan isyarat perdagangan.

Kelebihan

  1. Pengendalian lancar HMA berganda, boleh menyaring kebisingan jangka pendek dengan berkesan, mengunci trend utama
  2. TSI menggabungkan purata bergerak untuk menentukan arah trend keseluruhan
  3. Gabungan arah garis K harga, mengelakkan penembusan palsu, meningkatkan kebolehpercayaan isyarat
  4. Parameter boleh disesuaikan, parameter kelancaran boleh disesuaikan mengikut pasaran, menyesuaikan diri dengan kitaran yang berbeza
  5. Grafik intuitif, hijau menunjukkan peningkatan, merah menunjukkan penurunan

Risiko

  1. Apabila gempa bumi berlaku, ia akan menghasilkan banyak isyarat yang salah.
  2. Pada titik perubahan trend, purata bergerak terlewat dan mungkin terlepas titik kemasukan terbaik
  3. Keperluan untuk menyesuaikan parameter dengan perubahan pasaran
  4. Strategi ini hanya berasaskan kepada satu-satu petunjuk TSI dan boleh dioptimumkan dengan gabungan petunjuk lain

Arah pengoptimuman

  1. Penapis boleh dimasukkan untuk mengelakkan isyarat yang salah
  2. Ia juga boleh digunakan untuk menentukan titik perubahan trend.
  3. Parameter boleh dioptimumkan secara automatik melalui pembelajaran mesin dan sebagainya
  4. Anda boleh memperkenalkan strategi hentikan kerugian untuk mengawal kerugian tunggal.

ringkaskan

Strategi ini menggunakan petunjuk TSI untuk menentukan arah trend, dan digabungkan dengan garis K harga untuk menghasilkan isyarat perdagangan, yang dapat menangkap trend dengan berkesan, membeli dalam trend menaik, menjual dalam trend menurun. Tetapi ada risiko tertentu yang perlu dioptimumkan untuk meningkatkan kestabilan. Secara keseluruhan, strategi ini mudah difahami dan sesuai untuk digunakan oleh peniaga yang biasa dengan petunjuk teknikal.

Kod 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)