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