Estrategia de seguimiento de tendencias basada en rupturas y filtrado de frecuencia (solo posiciones largas)

EMA AO
Fecha de creación: 2024-05-28 14:00:24 Última modificación: 2024-05-28 14:00:24
Copiar: 0 Número de Visitas: 501
1
Seguir
1617
Seguidores

Estrategia de seguimiento de tendencias basada en rupturas y filtrado de frecuencia (solo posiciones largas)

Descripción general

La estrategia es una estrategia de seguimiento de tendencias basada en brechas y filtraciones de frecuencia, que solo realiza operaciones múltiples. La idea principal de la estrategia es usar el indicador EMA para determinar la dirección de la tendencia actual, generar señales múltiples cuando el precio supera el precio más alto dentro de un rango determinado, y usar un filtro de frecuencia para controlar la frecuencia de las operaciones, evitando abrir posiciones con demasiada frecuencia.

Principio de estrategia

  1. Calcular el indicador EMA para determinar la dirección de la tendencia actual. Cuando el precio de cierre está por encima de la EMA, se considera que la tendencia actual es de varios puntos.
  2. Se calcula el precio máximo dentro de un determinado intervalo, como condición de ruptura. Cuando el precio de cierre y cierre supera el precio máximo dentro del período de retroceso más corto o el período de retroceso más largo, y la tendencia actual es múltiple, se genera una señal de multiplicación.
  3. Introducción de un filtro de frecuencia para controlar el mínimo intervalo de apertura de posiciones consecutivas y evitar una frecuencia de transacción excesiva.
  4. Establecer un punto de parada, cerrar una posición cuando el precio cae por debajo del precio de parada, controlar el riesgo.
  5. Definir la señal de fin de tendencia, cuando el precio de cierre cae por debajo de la EMA, se considera que la tendencia ha terminado, en este momento, si tiene más de una orden, se cerrará.

Ventajas estratégicas

  1. Seguimiento de tendencias: los indicadores EMA ayudan a determinar la dirección de las tendencias y a operar de acuerdo con ellas, lo que ayuda a mejorar los beneficios de la estrategia.
  2. Confirmación de ruptura: utiliza la ruptura de precio como señal de entrada para entrar a tiempo en el inicio de la tendencia y capturar más espacio de ganancias.
  3. Control de la frecuencia: Introducción de filtros de frecuencia para controlar el intervalo de tiempo de apertura de posiciones, evitar el comercio demasiado frecuente, reducir los costos de transacción y el riesgo.
  4. Protección contra pérdidas: Establece un punto de parada, que se detiene a tiempo cuando el precio se invierte y alcanza una cierta amplitud, para controlar eficazmente el riesgo de caída.
  5. Posicionamiento dinámico: Posicionamiento dinámico de acuerdo con la señal de cierre de la tendencia, que permite bloquear los beneficios obtenidos a tiempo y evitar las pérdidas provocadas por la reversión de la tendencia.

Riesgo estratégico

  1. Sensibilidad a los parámetros: el rendimiento de la estrategia es sensible a la selección de parámetros, y diferentes configuraciones de parámetros pueden causar grandes diferencias en el rendimiento de la estrategia. Se requiere una respuesta y optimización adecuadas de los parámetros.
  2. Fracaso de ruptura: La ruptura de precio no garantiza la continuidad de la tendencia, y es posible que se produzca un fracaso de ruptura, lo que lleva a pérdidas continuas en la estrategia.
  3. Identificación de tendencias: la estrategia depende de los indicadores de EMA para determinar las tendencias, pero los indicadores de EMA pueden estar atrasados o erróneos, lo que afecta la precisión de la estrategia.
  4. Negociación frecuente: A pesar de la introducción de un filtro de frecuencia en las estrategias, es posible que se produzca una apertura y cierre frecuentes de posiciones en momentos de gran volatilidad en el mercado, lo que aumenta los costos de negociación.
  5. Riesgo de pérdidas: la configuración de puntos de pérdidas no puede evitar completamente la retirada máxima de la estrategia, y en casos extremos, aún puede haber grandes pérdidas.

Dirección de optimización de la estrategia

  1. Optimización de parámetros: optimización de los parámetros clave de la estrategia, como la longitud del EMA, la longitud del período de retroceso y el porcentaje de pérdidas, para buscar la combinación óptima de parámetros y mejorar la estabilidad y rentabilidad de la estrategia.
  2. Filtración de la señal: Después de la generación de la señal de ruptura, se pueden introducir otros indicadores técnicos o condiciones para la segunda confirmación de la señal, para mejorar la calidad de la señal y reducir los errores de juicio y las señales falsas.
  3. Determinación de tendencias: se puede intentar usar otros indicadores de determinación de tendencias como MACD, DMI, etc., o combinar varios indicadores para determinar las tendencias y mejorar la precisión de la identificación de tendencias.
  4. Paradas dinámicas: ajuste dinámico de los puntos de parada en función de las fluctuaciones del mercado, por ejemplo, mediante el uso de indicadores ATR para calcular el precio de parada dinámica, o la introducción de estrategias de seguimiento de paradas para un mejor control del riesgo.
  5. Gestión de posiciones: optimización de las estrategias de gestión de posiciones, ajuste dinámico del tamaño de las posiciones en función de las fluctuaciones del mercado y la situación de los fondos de las cuentas, control de la abertura de riesgo de una sola operación y mejora de la eficiencia de la utilización de los fondos.

Resumir

La estrategia es una estrategia de seguimiento de tendencias basada en breakouts y filtraciones de frecuencia, que determina la dirección de la tendencia a través de los indicadores EMA, utiliza los breakouts de precios como señal de entrada, y al mismo tiempo introduce un filtro de frecuencia para controlar la frecuencia de las operaciones y configurar el riesgo de control de los puntos de parada. La ventaja de la estrategia reside en el seguimiento de la tendencia, la confirmación de breakouts, el control de la frecuencia, la protección de los puntos de parada y el equilibrio dinámico.

Código Fuente de la Estrategia
/*backtest
start: 2023-05-22 00:00:00
end: 2024-05-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Trend Following with Breakout and Frequency Filter (Long Only)", overlay=true)

// 输入参数
emaLength = input.int(50, title="EMA长度")
lookbackPeriodMin = input.int(80, title="最短回溯期")
lookbackPeriodMax = input.int(120, title="最长回溯期")
stopLossPct = input.float(2, title="止损百分比") / 100  // 止损百分比
minHoldBars = input.int(10, title="最小持仓K线数量")  // 最小持仓K线数量

// 计算EMA
ema = ta.ema(close, emaLength)

// 计算最高价和最低价
highestHigh = ta.highest(high, lookbackPeriodMax)
lowestLow = ta.lowest(low, lookbackPeriodMax)

// 定义趋势方向
isBullish = close > ema

// 定义突破信号
breakoutCondition = (ta.crossover(close, highestHigh[lookbackPeriodMin]) or ta.crossover(close, highestHigh[lookbackPeriodMax])) and isBullish

// 计算止损点
stopLossLevelLong = close * (1 - stopLossPct)

// 绘制EMA
plot(ema, title="EMA", color=color.blue)

// 记录上次开仓时间
var float lastEntryTime = na

// 策略执行并标注信号
if (breakoutCondition and (na(lastEntryTime) or (time - lastEntryTime) > minHoldBars * timeframe.multiplier))
    strategy.entry("做多", strategy.long)
    label.new(bar_index, high, text="买入", style=label.style_label_up, color=color.green, textcolor=color.white)
    strategy.exit("止损", from_entry="做多", stop=stopLossLevelLong)
    lastEntryTime := time

// 定义趋势结束信号
exitCondition = close < ema

if (exitCondition and (strategy.position_size > 0) and (time - lastEntryTime) > minHoldBars * timeframe.multiplier)
    strategy.close("做多")
    label.new(bar_index, low, text="卖出", style=label.style_label_down, color=color.red, textcolor=color.white)