Estrategia de tendencia basada en el cruce de la SMA completa y la EMA

El autor:¿ Qué pasa?, Fecha: 2023-10-30 12:32:38
Las etiquetas:

img

Resumen general

Esta estrategia genera señales de compra y venta mediante el cálculo del cruce entre la línea de la media móvil suavizada HULL y la línea de la media móvil exponencial para determinar la dirección de la tendencia del mercado.

Estrategia lógica

  1. Calcule la media móvil suavizada HULL (HULL SMA) de 5 períodos.

  2. Calcule la media móvil exponencial (EMA) de 5 períodos.

  3. Generar señales de compra y venta basadas en el cruce entre HULL SMA y EMA.

  • Cuando el HULL SMA cruza por encima de la EMA, se genera una señal de compra, lo que indica que la tendencia a corto plazo se rompe por encima de la tendencia a largo plazo, lo que sugiere un movimiento al alza de los precios.

  • Cuando el HULL SMA cruza por debajo de la EMA, se genera una señal de venta, que indica la tendencia a corto plazo a la baja, lo que sugiere un movimiento de precios a la baja.

  1. Utilice HULL SMA como línea rápida y EMA como línea lenta para determinar los cambios en las tendencias a corto y mediano plazo basándose en el cruce, generando señales de negociación.

Análisis de ventajas

  1. La SMA HULL es sensible a los cambios de precios y puede detectar los cambios de tendencia antes.

  2. La EMA suaviza el ruido del mercado y sigue las tendencias a largo plazo.

  3. Las señales de cruce atrapan los puntos de inflexión de tendencia de manera oportuna.

  4. Los parámetros pueden ajustarse para diferentes plazos de negociación.

  5. Captura las tendencias al alza y a la baja de forma flexible.

Análisis de riesgos

  1. Más señales falsas pueden ocurrir durante los mercados de rango.

  2. La imposibilidad de determinar la fuerza de la tendencia puede conducir a pérdidas repetidas en tendencias débiles.

  3. Los movimientos de precios entre los intervalos de medición pueden pasarse por alto.

  4. Los parámetros incorrectos afectan la calidad de la señal.

  5. La alta frecuencia de negociación aumenta los costes y los riesgos de deslizamiento.

Las mejoras pueden realizarse mediante el filtrado de señales, la evaluación de la fuerza de la tendencia, la optimización de parámetros, la gestión de riesgos, etc.

Direcciones de optimización

  1. Agregue indicadores como MACD, RSI para confirmar la señal.

  2. Incorporar indicadores de fuerza de tendencia como ADX para evitar el comercio de tendencias débiles.

  3. Optimizar los parámetros de la media móvil para obtener las mejores combinaciones.

  4. Implementar un stop loss para controlar las pérdidas de una sola operación.

  5. Gestionar la frecuencia y los costos del comercio.

  6. Incorporar análisis de marcos de tiempo múltiples para identificar las tendencias transversales.

  7. Desarrollar programas de optimización de parámetros automáticos.

Resumen de las actividades

Esta estrategia juzga la tendencia basada en el cruce entre el SMA HULL rápido y el EMA lento. Es un sistema típico de cruce de promedios móviles. En comparación con los promedios móviles tradicionales, el SMA HULL más sensible proporciona una detección más temprana del cambio de tendencia. Pero los parámetros e indicadores suplementarios deben optimizarse para reducir las señales falsas. Con una gestión adecuada del riesgo y el dinero, esta estrategia puede ser un sistema eficiente de seguimiento de tendencias a mediano plazo.


/*backtest
start: 2022-10-23 00:00:00
end: 2023-10-29 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("HULL EMA Crossover", overlay = true, process_orders_on_close = true)

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © spiritedPerson95700

inSession = true


HULL_INP = input.int(5, "Hull EMA Value")
EMA_INP = input(5, "EMA Value")

/// Indicator
HULL_EMA = ta.hma(close, HULL_INP)
EMA = ta.ema(close, EMA_INP)

prevSignal = ''
if (prevSignal == '')  
    prevSignal := HULL_EMA > EMA ? 'buy' : 'sell'

/// buy and sell signal
buy = ta.crossover(HULL_EMA, EMA)
short = ta.crossover(EMA, HULL_EMA)

sell = short
cover = buy

if inSession
    if buy 
        prevSignal := 'na'
        strategy.entry("long", direction = strategy.long, comment = "Buy")

    if sell
        prevSignal := 'na'
        strategy.close("long", comment = "Sell")

    if short
        strategy.entry("short", direction = strategy.short, comment = "Short")

    if cover
        strategy.close("short", comment = "Cover")


plot(HULL_EMA, color = color.green)
plot(EMA, color = color.blue)

// if ( hour(time) == 15 and minute(time) > 25  )  
//     strategy.close("long", comment="EOD")
//     strategy.close("short", comment="EOD")
//     buy := false
//     sell := false
//     prevSignal := ''


Más.