Эта стратегия сочетает в себе движущуюся среднюю ATR и T3 для определения и отслеживания тренда. ATR формирует ценовые каналы для оценки общего направления тренда.
ATR формирует ценовые каналы, направление канала определяет основной тренд.
Движущаяся средняя T3 помогает определить конкретное время входа, покупая на ценовой линии T3.
Прорыв цены ниже нижнего диапазона запускает выход стоп-лосса; прорыв выше верхнего диапазона приводит к прибыли.
Опционы на длинную или двунаправленную торговлю.
Оптимизация параметров в сочетании с характером индикатора для поиска оптимальных настроек.
ATR-каналы дают четкое определение тренда и направления.
Регулируемые параметры T3 для отслеживания тенденций на разных уровнях.
Последовательные правила остановки потерь и получения прибыли избегают произвольных выходов.
Низкая частота торговли подходит для долгосрочных стратегий хелдинга.
Дивергенция показателей может привести к неправильным сделкам.
Если не учитывать индивидуальные модели волатильности акций, то возникает риск перенастройки.
Низкая частота торгов рискует потерять возможности и ограниченный потенциал прибыли.
Большие позиции приводят к риску сдвига в конце дня.
Добавить другие показатели для обеспечения действительности торговли.
Настройка параметров для различных продуктов улучшает адаптивность.
Оптимизируйте размер позиций, чтобы сбалансировать частоту и риск.
Подумайте о динамическом стоп-лосе и получении прибыли для расширения возможности получения прибыли.
Добавить фильтры на уровне стратегии для повышения надежности.
Стратегия объединяет движущиеся средние ATR и T3 для простого и эффективного отслеживания тренда.
/*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)