Trend Mengikuti Strategi Berdasarkan Purata Bergerak Multi Timeframe dan RSI

Penulis:ChaoZhang, Tarikh: 2024-01-08 16:57:29
Tag:

img

Ringkasan

Strategi ini mengenal pasti arah trend berdasarkan purata bergerak pelbagai jangka masa dan menilai situasi overbought / oversold dengan RSI untuk menjana isyarat perdagangan. Apabila garis MA panjang, sederhana dan pendek berada dalam arah yang sama, ia dianggap sebagai trend. Pada ketika ini, RSI digunakan untuk menentukan sama ada ia overbought / oversold dan isyarat perdagangan dihasilkan. Di samping itu, strategi ini juga menggunakan stop loss untuk mengawal risiko.

Logika Strategi

Strategi ini menggunakan logik yang berbeza untuk melihat sama ada jangka panjang, sederhana dan pendek berada dalam arah yang sama. Jika mereka semua lembu atau beruang, isyarat perdagangan dihasilkan. Di samping itu, RSI membantu mengelakkan kehilangan stop loss pada titik infleksi. Stop loss yang mengikuti menetapkan offset tertentu untuk membiarkan keuntungan berjalan sambil mengawal risiko.

Analisis Kelebihan

  1. Menggunakan pelbagai jangka masa untuk menentukan trend dapat menyaring bunyi pasaran jangka pendek dan mengenal pasti trend jangka menengah dan panjang.

  2. RSI membantu mengelakkan bersikeras pada arah asal pada titik perubahan dan kehilangan stop loss.

  3. Penghentian kerugian menyusul mempertimbangkan kedua-dua pertumbuhan keuntungan dan kawalan risiko, yang membawa kepada nisbah pulangan / risiko yang tinggi.

Analisis Risiko

  1. Penentuan pelbagai jangka masa mungkin mempunyai kelewatan masa, mengakibatkan kemasukan lewat dan kehilangan fasa awal trend.

  2. RSI hanya menilai status overbought / oversold. Ia tidak berfungsi dengan baik dalam menentukan titik infleksi apabila pembalikan tajam berlaku.

  3. Pengaturan stop loss offset yang tidak betul boleh menyebabkan tingkah laku yang terlalu agresif atau konservatif.

Arahan pengoptimuman

  1. Pertimbangkan untuk menggabungkan lebih banyak penunjuk seperti Bollinger Bands dan KDJ untuk menjana isyarat perdagangan yang lebih tepat.

  2. Mengguna pakai stop loss yang dinamik yang menyesuaikan offset berdasarkan turun naik pasaran dan selera risiko.

  3. Menggunakan logik yang sama dalam jangka masa yang lebih pendek untuk memanfaatkan modal dengan lebih baik.

Ringkasan

Secara umum, strategi ini mempunyai lebih banyak kebaikan daripada keburukan. Ia menentukan dengan tepat trend jangka menengah dan panjang dan memberikan pulangan / risiko yang tinggi. Sebagai sistem mengikuti trend, ia dapat mengenal pasti arah trend utama di tengah-tengah penyatuan. Penambahbaikan lanjut pada parameter dan penunjuk dapat meningkatkan kestabilan dan keuntungan.


/*backtest
start: 2023-01-01 00:00:00
end: 2024-01-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Cryptocurrency Trading Tools by XMAXPRO
//ATA INDIKATORU
//Test 4.0v Tarih:23.02.2020
//

strategy("MTF+MA+RSI+TSL", overlay=false, shorttitle="ATA v4 Strategy")
src = input(title="kaynak", type=input.source, defval=close)
fast = input(title="hızlıbarlar", type=input.integer, defval=21)
slow = input(title="yavaşbarlar", type=input.integer, defval=34)

//MTF source
long = input(title="uzunvade", type=input.resolution, defval="240")
mid = input(title="ortavade", type=input.resolution, defval="60")
short = input(title="kısavade", type=input.resolution, defval="5")

//MTF Grafikleri
ln = security(syminfo.ticker, long, src)
md = security(syminfo.ticker, mid, src)
sh = security(syminfo.ticker, short, src)

//0
lnma = ema(ln, fast) - ema(ln, slow)
mdma = ema(sh, fast) - ema(md, slow)
shma = ema(sh, fast) - ema(sh, slow)

//Makeup
uzunrenk = lnma > 0 ? color.white : color.red
ortarenk = mdma > 0 ? color.white : color.red
kisarenk = shma > 0 ? color.white : color.red

l1 = 1
m1 = 2
s1 = 3

plot(l1, style=plot.style_line, color=uzunrenk, linewidth=25)
plot(m1, style=plot.style_line, color=ortarenk, linewidth=25)
plot(s1, style=plot.style_line, color=kisarenk, linewidth=25)

atarsi = rsi(close, 14)
rsiob = input(title="aşırıalım", type=input.integer, defval=60)
rsios = input(title="aşırısatış", type=input.integer, defval=25)

sell = atarsi > rsiob and lnma > 0 and mdma > 0 and shma > 0
buy = atarsi < rsios and lnma < 0 and mdma < 0 and shma < 0

barcolor(sell ? color.white : color.red)
barcolor(buy ? color.white : color.red)

//strateji
strategy.entry("long", strategy.long, comment = "BULL", when = sell)
strategy.entry("short", strategy.short, comment = "BEAR", when = buy)

//kompleks alarm
//alertcondition(sell, title = "ATA LONG SIGNAL", message = "btc/usd ata long sinyali")
//alertcondition(buy, title = "ATA SHORT SIGNAL", message = "btc/usd ata short sinyali")

//iz sürücü TSL
strategy.exit ("Bull TSL", "long", trail_points=close * 0.02 / syminfo.mintick, trail_offset=close * 0.02/syminfo.mintick)
strategy.exit ("Bear TSL", "short", trail_points=close * 0.02 / syminfo.mintick, trail_offset=close * 0.02/syminfo.mintick)

Lebih lanjut