В процессе загрузки ресурсов... загрузка...

Многочасовые рамки и стратегии отслеживания трендов с фильтрами 200 EMA - просто больше

Автор:Чао Чжан, Дата: 2024-05-23 18:07:50
Тэги:ЕМА

多时间框架与200EMA过滤器的趋势跟踪策略 - 仅做多

Обзор

Эта стратегия является стратегией отслеживания тренда, основанной на движущейся средней (EMA) и фильтре 200-дневных EMA. Основная идея заключается в том, чтобы использовать EMA различных временных рамок для определения направления тренда на рынке и установить несколько позиций, когда тренд выше и цена выше 200-дневных EMA. Это гарантирует, что торговля будет вестись только в сильных тенденциях к росту, чтобы понять продолжающийся рост рынка, а также использовать механизмы сдерживания потерь и сдерживания риска.

Стратегия использует три 5-минутные, 15-минутные и 30-минутные временные рамки для вычисления быстрой ЭМА и медленной ЭМА; путем сравнения быстрой ЭМА и медленной ЭМА в каждой временной рамке можно определить направление тренда в данной временной рамке; затем суммировать трендовые сигналы всех трех временных рамок, чтобы получить комплексный трендовый сигнал. Стратегия открывается, когда комплексный трендовый сигнал 3 (т.е. все временные рамки являются тенденцией к росту) и текущая цена закрытия находится выше ЭМА за 5 200 минут; когда комплексный трендовый сигнал больше, чем 3 или цена упала за 5 200 минут; стратегическая позиция закрывается, когда комплексный трендовый сигнал меньше 3 или цена упала за 5 200 минут.

Принципы стратегии

  1. Быстрая ЭМА (по умолчанию 9-й период) и медленная ЭМА (по умолчанию 21-й период) рассчитываются на 5-минутную, 15-минутную и 30-минутную временные рамки соответственно.
  2. 200-дневная ЭМА рассчитывается на 5-минутную временную рамку в качестве фильтра тренда.
  3. Для каждой временной рамки, сравнивая размеры быстрой ЭМА и медленной ЭМА, быстрая верхняя тенденция к росту (+1), медленная верхняя тенденция к падению (+-1).
  4. Суммируя трендовые сигналы трех временных рамок, получается комплексный трендовый сигнал с интервалом в [-3, 3].
  5. Если сигнал совокупного тренда равен 3, а текущая цена закрытия находится выше 200-минутной ЭМА, то открыть позицию больше.
  6. Когда сигнал совокупного тренда меньше 3, или когда цена опускается ниже 5-минутного 200-минутного ЭМА, то цена выживает.
  7. При открытии позиции стоп-лосс установлен на 1% ниже цены открытия и стоп-лосс установлен на 3% выше цены открытия.

Анализ преимуществ

  1. Использование трендовых сигналов с несколькими временными рамками позволяет более полно оценивать тенденции рынка и уменьшить количество ложных сигналов.
  2. Фильтр EMA 200 гарантирует, что торговля будет вестись только в условиях сильного тренда, что повысит шансы на успех.
  3. Строгие условия открытия и прекращения ликвидации помогают контролировать риск и повышать риск-прибыль.
  4. Параметры могут быть настроены для различных рынков и стилей торговли.

Анализ рисков

  1. Реакция может быть медленной в момент перелома тренда, и лучшее время для закладки может быть упущено.
  2. Частое открытие позиций может увеличить стоимость сделки.
  3. Стоп-дозы фиксированы и могут быть выведены на более высокий уровень волатильности.
  4. Тенденционные суждения, основанные на исторических данных, могут быть преждевременными для реагирования на колебания цен, вызванные внезапными событиями.

Оптимизация

  1. Внедрение дополнительных временных рамок или оптимальное использование существующих временных рамок для повышения точности и своевременности определения тенденций.
  2. Оптимизировать позиции остановки и остановки, например, внедряя отслеживание остановки или динамическое остановки, чтобы адаптироваться к различным рыночным условиям.
  3. В дополнение к сигналам тренда, внедрение других сигналов, таких как объем сделок, динамика и т. д., создает многофакторные условия для открытия баланса, повышая стабильность стратегии.
  4. Оптимизируйте параметры, чтобы найти наиболее подходящую комбинацию параметров для текущего рынка.
  5. Посмотрите на возможность вступления в механизм безработицы, чтобы расширить сферу применения.

Подведение итогов

Эта стратегия определяет направление тренда путем сравнения ЭМА на нескольких временных рамках, а также использует 200-дневную ЭМА в качестве фильтра тренда, чтобы установить много позиций, чтобы уловить сильные рыночные позиции, когда тренд явно выше и цена выше длительного среднего. Строгие условия открытия и фиксированные условия остановки помогают контролировать риск. Однако эта стратегия может быть медленной в реакции на точки перелома тренда, а фиксированные позиции остановки имеют ограничения в ответ на внезапные колебания рынка. В будущем можно повысить гибкость и устойчивость стратегии путем внедрения большего количества временных рамок, оптимизации стоп-лосса, включения большего количества торговых сигналов, оптимизации параметров и т. д., что позволит ей лучше улавливать рыночные возможности и контролировать риски.


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

//@version=5
strategy("Multi-Timeframe Trend Following with 200 EMA Filter - Longs Only", shorttitle="MTF_TF_200EMA_Longs", overlay=true, initial_capital=1000, default_qty_type=strategy.fixed, default_qty_value=1)

// Inputs
fast_length = input.int(9, title="Fast EMA Length", minval=1)
slow_length = input.int(21, title="Slow EMA Length", minval=1)
filter_length_200 = input.int(200, title="200 EMA Length", minval=1)
stop_loss_perc = input.float(1.0, title="Stop Loss Percentage", minval=0.1) / 100
take_profit_perc = input.float(3.0, title="Take Profit Percentage", minval=0.1) / 100

// Calculate EMAs for 5-minute, 15-minute, and 30-minute timeframes
ema_fast_5min = request.security(syminfo.tickerid, "5", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_5min = request.security(syminfo.tickerid, "5", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)

ema_fast_15min = request.security(syminfo.tickerid, "15", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_15min = request.security(syminfo.tickerid, "15", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)

ema_fast_30min = request.security(syminfo.tickerid, "30", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_30min = request.security(syminfo.tickerid, "30", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)

// Calculate 200 EMA for the 5-minute timeframe
ema_200_5min = ta.ema(close, filter_length_200)

// Determine the trend for each timeframe
trend_5min = ema_fast_5min > ema_slow_5min ? 1 : -1
trend_15min = ema_fast_15min > ema_slow_15min ? 1 : -1
trend_30min = ema_fast_30min > ema_slow_30min ? 1 : -1

// Combine trend signals
combined_trend = trend_5min + trend_15min + trend_30min

// Define entry and exit conditions with 200 EMA filter
enter_long = combined_trend == 3 and close > ema_200_5min
exit_long = combined_trend < 3 or close < ema_200_5min

// Plot EMAs for the 5-minute timeframe
plot(ema_fast_5min, color=color.blue, linewidth=2, title="Fast EMA 5min")
plot(ema_slow_5min, color=color.red, linewidth=2, title="Slow EMA 5min")
plot(ema_200_5min, color=color.green, linewidth=2, title="200 EMA 5min")

// Strategy execution
if (enter_long)
    strategy.entry("Long", strategy.long, stop=close * (1 - stop_loss_perc), limit=close * (1 + take_profit_perc))
if (exit_long)
    strategy.close("Long")


Содержание

Больше информации