Strategi ini menggabungkan ATR dan T3 moving average untuk penentuan dan pelacakan tren. ATR membentuk saluran harga untuk menilai arah tren secara keseluruhan.
ATR membentuk saluran harga, arah saluran menentukan tren utama.
Rata-rata bergerak T3 membantu menentukan waktu masuk tertentu, membeli pada garis price breaking T3.
Penembusan harga di bawah band bawah memicu stop loss exit; penembusan di atas band atas mengambil keuntungan.
Opsi untuk perdagangan hanya panjang atau dua arah.
Optimasi parameter dikombinasikan dengan sifat indikator untuk menemukan pengaturan optimal.
Saluran ATR memberikan identifikasi tren dan arah yang jelas.
Parameter T3 yang dapat disesuaikan untuk menangkap tren pada tingkat yang berbeda.
Aturan stop loss dan take profit yang konsisten menghindari keluarnya yang sewenang-wenang.
Frekuensi perdagangan yang rendah sesuai dengan strategi kepemilikan jangka panjang.
Perbedaan indikator dapat menyebabkan perdagangan yang salah.
Tidak mempertimbangkan pola volatilitas saham individu berisiko overfit.
Frekuensi perdagangan yang rendah berisiko kehilangan peluang dan potensi keuntungan yang terbatas.
Penguasaan posisi berat membawa risiko slippage akhir hari.
Tambahkan indikator lain untuk memastikan validitas perdagangan.
Pengaturan parameter untuk produk yang berbeda meningkatkan kemampuan beradaptasi.
Mengoptimalkan ukuran posisi untuk menyeimbangkan frekuensi dan risiko.
Pertimbangkan stop loss yang dinamis dan mengambil keuntungan untuk memperluas ruang keuntungan.
Tambahkan Filter tingkat strategi untuk meningkatkan ketahanan.
Strategi ini mengintegrasikan ATR dan T3 moving average untuk pelacakan tren yang sederhana dan efektif.
/*backtest start: 2023-09-09 00:00:00 end: 2023-09-16 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //Author - CryptoJoncis strategy("ATR and T3 strategy", shorttitle="AT3S_CryptoJoncis", overlay=true) shorting = input(false, title="shorts on?") precentage_diff = input(5,title="Precantage")/100 Lengthx = input(25, title="Lenght of T3") //For best results use 0.7 or 0.618 Vfactx = input(0.72, minval=0.01,step=0.01, title="Volume Factor of T3 with HA source") Source_of_T3_Normal = close Source_of_T3 = Source_of_T3_Normal FirstEMAx = ema(Source_of_T3, Lengthx) SecondEMAx = ema(FirstEMAx, Lengthx) ThirdEMAx = ema(SecondEMAx, Lengthx) FourthEMAx = ema(ThirdEMAx, Lengthx) FifthEMAx = ema(FourthEMAx, Lengthx) SixthEMAx = ema(FifthEMAx, Lengthx) //Doing all the calculations which are from c1x = -Vfactx*Vfactx*Vfactx c2x = 3*Vfactx*Vfactx + 3*Vfactx*Vfactx*Vfactx c3x = -6*Vfactx*Vfactx -3*Vfactx -3*Vfactx*Vfactx*Vfactx c4x = 1 + 3*Vfactx + Vfactx*Vfactx*Vfactx + 3*Vfactx*Vfactx //Assigning EMAS to T3 Moving average T3MAx = c1x * SixthEMAx + c2x * FifthEMAx + c3x * FourthEMAx + c4x * ThirdEMAx color_of_Tilson_Moving_Average = T3MAx > T3MAx[1] ? lime : red plot(T3MAx, title="Tilson Moving Average(ema)", color=color_of_Tilson_Moving_Average) t_up = T3MAx + (T3MAx * precentage_diff) t_dn = T3MAx - (T3MAx * precentage_diff) x=plot(t_up, color=color_of_Tilson_Moving_Average) z=plot(t_dn, color=color_of_Tilson_Moving_Average) fill(x,z, color= T3MAx[1] < T3MAx ? lime : gray) Factor=input(5, minval=1) Pd=input(5, minval=1) // Up=hl2-(Factor*atr(Pd)) Dn=hl2+(Factor*atr(Pd)) TrendUp=close[1]>TrendUp[1]? max(Up,TrendUp[1]) : Up TrendDown=close[1]<TrendDown[1]? min(Dn,TrendDown[1]) : Dn Trend = close > TrendDown[1] ? 1: close< TrendUp[1]? -1: nz(Trend[1],1) Tsl = Trend==1? TrendUp: TrendDown linecolor = Trend == 1 ? green : red // b=plot(Tsl, color = linecolor , style = line , linewidth = 2,title = "") Factor1=input(1, minval=1) Pd1=input(1, minval=1) // Up1=hl2-(Factor1*atr(Pd1)) Dn1=hl2+(Factor1*atr(Pd1)) TrendUp1=close[1]>TrendUp1[1]? max(Up1,TrendUp1[1]) : Up1 TrendDown1=close[1]<TrendDown1[1]? min(Dn1,TrendDown1[1]) : Dn1 Trend1 = close > TrendDown1[1] ? 1: close< TrendUp1[1]? -1: nz(Trend1[1],1) Tsl1 = Trend1==1? TrendUp1: TrendDown1 linecolor1 = Trend1 == 1 ? green : red // a=plot(Tsl1, color = linecolor1 , style = line , linewidth = 2,title = "") long = (close > Tsl and close > Tsl1 and close > T3MAx) short = (close < Tsl and close < Tsl1 and close < T3MAx) if(shorting==true) strategy.entry("MacdSE", strategy.short, comment="Open Short", when=short) strategy.entry("MacdLE", strategy.long, comment="Open Long", when=long) strategy.close("MacdLE", when=hl2 < t_dn) strategy.close("MacdSE", when=hl2 > t_up) if(shorting==false) strategy.entry("MacdLE", strategy.long, comment="Open Long", when=long) strategy.close("MacdLE", when=hl2 < t_dn) fill(a,b,color=linecolor)