Стратегия двойного движущегося среднего тренда - это стратегия, которая использует два движущихся средних для определения тренда цены. Она генерирует длинные и короткие сигналы, когда короткие и длинные периоды движущихся средних выравниваются в одном направлении.
Стратегия использует две скользящие средние для определения направления тренда.
Вычислить среднюю линию для короткого периода p1 и длинного периода p2.
Определите, находится ли цена выше или ниже средней линии, генерируя значения bool вверх и вниз.
Использовать SMA для сглаживания значения вверх и вниз, определяя направление тренда и trend_2.
Когда тренд и trend_2 согласуются, генерируются длинные или короткие сигналы.
Цветные полоски визуально указывают на тенденцию.
Вступайте в сделки, когда краткосрочные и долгосрочные тенденции согласуются.
Двойная сравнение скользящей средней создает основную логику. Торговля с соглашением тренда на двух временных рамках уменьшает ложные прорывы. Согласующиеся тенденции указывают на высокий убедительный ход, снижая риск по входам.
Основными преимуществами этой стратегии являются:
Двойная скользящая средняя уменьшает ложные прорывы и обеспечивает надежные сигналы входа.
Использование двух временных рамок обеспечивает лучшую точность в определении тренда.
Захватывает более длительные тенденции, используя при этом краткосрочные отступления.
Простая и понятная логика подходит для всех трейдеров.
Настраиваемые скользящие средние периоды позволяют оптимизировать для любого рынка.
Визуальное цветение панели обеспечивает интуитивное направление тренда.
Некоторые риски следует учитывать:
Неправильные настройки периода могут привести к чрезмерным изменениям позиции, увеличивая расходы.
Ушибки происходят, когда рынки колеблются по скользящим средним.
Подумайте о более коротких периодах или дополнительных стратегиях.
Неправильное размещение стоп-лосса может привести к большим потерям, когда тенденции внезапно меняются.
Не учитывается фундаментальный анализ. Используйте дискрецию при применении сигналов.
Некоторые способы улучшения стратегии:
Добавьте дополнительные фильтры, такие как громкость или импульс, чтобы избежать ударов.
Используйте адаптивные периоды, которые корректируются в зависимости от рыночных условий.
Добавить правила размещения позиций на основе силы тренда для руководства.
Используйте модули остановки потери, такие как остановки отслеживания или временные выходы, чтобы ограничить потери.
Подумайте о машинном обучении для оценки точности тренда и улучшения логики входа/выхода.
Включайте фундаментальные факторы, такие как прибыль, события, чтобы избежать торговли против более крупных тенденций.
В целом, стратегия Dual Moving Average Trend Following обеспечивает простой и практичный подход к определению тренда. Сочетая краткосрочные и долгосрочные перспективы, она генерирует высокодоверчивые сигналы входа, подходящие для большинства трейдеров тренда. Риски существуют и могут быть смягчены путем оптимизации, управления рисками и дискреции. В целом, стратегия двойной движущейся средней остается надежным, классическим подходом к тренду.
/*backtest start: 2022-10-01 00:00:00 end: 2023-10-07 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 // My Tradingview Scripts : https://bit.ly/2HKtr7k strategy("UniDir Strategy", overlay=true, initial_capital=50000, default_qty_value=50000, default_qty_type=strategy.cash, slippage=3, commission_type=strategy.commission.percent, commission_value=0.075, pyramiding=0) p1=input(14) p2=input(21) Price = close mid = (highest(high, p1)+lowest(low, p1)) / 2 mid_2 = (highest(high, p2)+lowest(low, p2)) / 2 //Trend up = Price > mid ? 1 : 0 up_2 = Price > mid_2 ? 1 : 0 down = Price < mid ? 1 : 0 down_2 = Price < mid_2 ? 1 : 0 trend = sma(up, 2) == 1 ? 1 : sma(down, 2) == 1 ? -1 : nz(trend[1]) trend_2 = sma(up_2, 2) == 1 ? 1 : sma(down_2, 2) == 1 ? -1 : nz(trend_2[1]) dir1=trend==1 ? lime : red dir2=trend_2==1 ? lime : red dir_all=trend==1 and trend_2==1 ? lime : red top_p=plot(1) hi_p=plot(0.4) mid_p=plot(0.2) lo_p=plot(0) fill(hi_p,mid_p,color=dir1,transp=80) fill(lo_p,mid_p,color=dir2,transp=80) fill(top_p,hi_p,color=dir_all,transp=0) // Entry long_cond = trend==1 and trend_2==1 short_cond = trend==-1 and trend_2==-1 if long_cond strategy.entry("Long",strategy.long) if short_cond strategy.entry("Short",strategy.short)