En la carga de los recursos... Cargando...

Múltiples marcos de tiempo y estrategias de seguimiento de tendencias con filtros de 200 EMA - sólo más

El autor:¿ Qué pasa?, Fecha: 2024-05-23 18:07:50
Las etiquetas:El EMA

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

Resumen

La estrategia es una estrategia de seguimiento de tendencias basada en la media móvil del índice de múltiples marcos de tiempo (EMA) y filtros de EMA de 200 días. Su idea principal es utilizar EMA de diferentes marcos de tiempo para identificar la dirección de la tendencia del mercado y establecer múltiples posiciones cuando la tendencia es alta y el precio está por encima de la EMA de 200 días.

La estrategia utiliza tres marcos de tiempo de 5 minutos, 15 minutos y 30 minutos para calcular la EMA rápida y la EMA lenta. Se puede determinar la dirección de la tendencia en cada marco de tiempo comparando la EMA rápida y la EMA lenta. Luego se suman las señales de tendencia de los tres marcos de tiempo para obtener una señal de tendencia integral.

Principios estratégicos

  1. Se calcula el EMA rápido (sección 9 por defecto) y el EMA lento (sección 21 por defecto) en los marcos de tiempo de 5 minutos, 15 minutos y 30 minutos, respectivamente.
  2. Se calcula el EMA de 200 días en un marco de tiempo de 5 minutos, como un filtro de tendencia.
  3. Para cada marco de tiempo, compara el tamaño de la EMA rápida con el de la EMA lenta, con una tendencia alcista rápida y una tendencia bajista lenta.
  4. Si se suman las señales de tendencia de los tres marcos de tiempo, se obtiene una señal de tendencia integral con un intervalo de [-3, 3].
  5. Cuando la señal de tendencia global es igual a 3 (aumento de la fuerza) y el precio de cierre actual está por encima de la EMA de 200 minutos de 5 minutos, se abre más.
  6. Cuando la señal de tendencia global es menor que 3 (la tendencia alcista se debilita) o el precio cae por debajo de la EMA de 5 minutos 200, el parado.
  7. Cuando se abre una posición, el stop loss está situado en el 1% por debajo del precio de apertura y el stop loss está situado en el 3% por encima del precio de apertura.

Análisis de ventajas

  1. El uso de señales de tendencia en varios marcos de tiempo permite juzgar las tendencias del mercado de manera más completa y reducir las falsas señales.
  2. El filtro EMA de 200 días garantiza que las operaciones se realicen solo en tendencias al alza fuertes, lo que mejora las tasas de éxito.
  3. Las condiciones estrictas de liquidación abierta y los límites de stop loss ayudan a controlar el riesgo y a aumentar la rentabilidad del riesgo.
  4. Los parámetros son ajustables y se adaptan a diferentes mercados y estilos de negociación.

Análisis de riesgos

  1. Las reacciones en los puntos de inflexión de la tendencia pueden ser más lentas y perder el momento óptimo para construir el almacén.
  2. Las operaciones de liquidación frecuentes pueden aumentar los costos de transacción.
  3. La posición del stop loss es fija, y puede ser eliminada antes de tiempo en mercados con mayor volatilidad.
  4. Los juicios de tendencia basados en datos históricos pueden ser una reacción prematura a las fluctuaciones de precios causadas por eventos repentinos.

Dirección de optimización

  1. Introducir más marcos de tiempo o optar por optimizar los existentes para mejorar la precisión y la puntualidad de los juicios de tendencias.
  2. Optimización de las posiciones de stop-loss y stop-locking, por ejemplo, introducción de stop-loss de seguimiento o stop-locking dinámico para adaptarse a diferentes condiciones del mercado.
  3. Además de las señales de tendencia, la introducción de otras señales como volumen de transacción, movimiento, etc., crea condiciones de equilibrio multifactorial para mejorar la solidez estratégica.
  4. Optimiza los parámetros para encontrar la combinación de parámetros que mejor se adapte al mercado actual.
  5. En este sentido, el gobierno de la República de China ha decidido que el país debería incorporarse al mecanismo de vacío para ampliar su alcance.

Resumen

La estrategia determina la dirección de la tendencia mediante la comparación de EMAs en varios marcos de tiempo, y utiliza la EMA de 200 días como filtro de tendencia para establecer múltiples posiciones cuando la tendencia es claramente superior y el precio está por encima de la media a largo plazo para captar la tendencia de los mercados. Las condiciones de aplazamiento estrictas y el par de stop loss fijos ayudan a controlar el riesgo. En el futuro, se puede mejorar la adaptabilidad y robustez de la estrategia mediante la introducción de más marcos de tiempo, la optimización de los contenedores de stop loss, la incorporación de más señales de negociación, la optimización de parámetros, etc. para que pueda aprovechar mejor las oportunidades del mercado y controlar los riesgos.


/*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")


Contenido relacionado

Más contenido