Estrategia de cruce de la media móvil entrelazada

El autor:¿ Qué pasa?, Fecha: 2024-02-19 14:21:10
Las etiquetas:

img

Resumen general

Esta estrategia genera señales comerciales basadas en el cruce de promedios móviles simples y promedios móviles ponderados, combinados con stop loss y take profit para gestionar posiciones.

Estrategia lógica

La lógica central es calcular dos promedios móviles con períodos diferentes, uno es el promedio móvil simple de 9 días y el otro es el promedio móvil ponderado de 21 días. Cuando el SMA de 9 días de corto período cruza por encima del WMA de 21 días de largo período, se genera una señal de compra. Cuando la línea de corto período cruza por debajo de la línea de largo período, se genera una señal de venta.

Después de recibir la señal, las órdenes se colocan de acuerdo con las tasas de stop loss y take profit establecidas. Por ejemplo, si la tasa de stop loss se establece en el 5%, entonces el precio de stop loss se establecerá en el 95% del precio de entrada. Si la tasa de take profit es del 5%, entonces el precio de take profit se establecerá en el 105% del precio de entrada. Esto realiza la fusión de factores dinámicos (cruce de promedio móvil que decide el momento de entrada y salida) y factores estáticos (tasas de stop loss y take profit fijas).

Análisis de ventajas

La estrategia combina indicadores técnicos dinámicos y parámetros de estrategia estáticos, que poseen los beneficios de los sistemas dinámicos y estáticos. Los indicadores técnicos pueden capturar dinámicamente las características del mercado, lo que es beneficioso para detectar tendencias.

En comparación con los sistemas puramente dinámicos, esta estrategia es más robusta en la gestión de posiciones, lo que reduce el impacto de las decisiones irracionales. En comparación con los sistemas puramente estáticos, esta estrategia es más flexible en las selecciones de entrada, lo que se adapta mejor a los cambios del mercado. Por lo tanto, esta estrategia tiene una buena robustez y rentabilidad general.

Análisis de riesgos

Los riesgos de esta estrategia provienen principalmente de dos aspectos. Primero, la posibilidad de señales erróneas de los promedios móviles. Cuando el mercado está limitado al rango, los promedios móviles pueden tener cruces frecuentes, lo que hace que la estrategia se desvíe.

En segundo lugar, el riesgo de que el stop loss fijo y el take profit no puedan adaptarse a condiciones extremas de mercado.

Las contramedidas son: en primer lugar, evitar los nodos de tiempo clave para reducir la probabilidad de señales erróneas; en segundo lugar, habilitar algoritmos de stop loss adaptativos de acuerdo con la volatilidad del mercado y eventos especiales, haciendo que el stop loss y el take profit se ajusten con el mercado.

Direcciones de optimización

Esta estrategia se puede optimizar a partir de los siguientes aspectos:

  1. ensayar diferentes combinaciones de parámetros para encontrar los parámetros óptimos;

  2. Añadir condiciones de filtrado para evitar señales no válidas;

  3. Aplicar algoritmos de stop loss adaptativos para moverse con el mercado;

  4. Incorporar otros indicadores para evaluar la fuerza de la tendencia, evitando los mercados de rango;

  5. Utilice métodos de aprendizaje automático para optimizar automáticamente los parámetros.

Mediante la prueba de parámetros, la adición de filtros, la mejora de las paradas, la evaluación de las tendencias, etc., la estabilidad y la rentabilidad de la estrategia pueden mejorarse aún más.

Resumen de las actividades

La estrategia combina con éxito indicadores dinámicos y parámetros estáticos, equilibrando flexibilidad y robustez. En comparación con las estrategias dinámicas y estáticas puras, esta estrategia tiene un mejor rendimiento en general. Por supuesto, todavía hay espacio para la optimización mediante el ajuste de parámetros, la adición de filtros, paradas adaptativas, aprendizaje automático, etc., para hacer que la estrategia sea más efectiva.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("WMA vs MMA Crossover Strategy with SL/TP", shorttitle="WMA_MMA_Cross_SL_TP", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Définition des périodes pour les moyennes mobiles
wmaLength = input.int(9, title="WMA Length")
mmaLength = input.int(21, title="MMA Length")

// Paramètres de Stop Loss et Take Profit en pourcentage
stopLossPercentage = input.float(5, title="Stop Loss (%)") / 100
takeProfitPercentage = input.float(5, title="Take Profit (%)") / 100

// Calcul des moyennes mobiles
wmaValue = ta.wma(close, wmaLength)
mmaValue = ta.sma(close, mmaLength)

// Conditions pour les signaux d'achat et de vente
buySignal = ta.crossover(wmaValue, mmaValue)
sellSignal = ta.crossunder(wmaValue, mmaValue)

// Génération des ordres en fonction des signaux
if buySignal
    strategy.entry("Buy", strategy.long)
    strategy.exit("Exit Buy", "Buy", stop=strategy.position_avg_price * (1 - stopLossPercentage), limit=strategy.position_avg_price * (1 + takeProfitPercentage))

if sellSignal
    strategy.entry("Sell", strategy.short)
    strategy.exit("Exit Sell", "Sell", stop=strategy.position_avg_price * (1 + stopLossPercentage), limit=strategy.position_avg_price * (1 - takeProfitPercentage))

// Affichage des moyennes mobiles sur le graphique
plot(wmaValue, color=color.blue, title="WMA")
plot(mmaValue, color=color.red, title="MMA")

// Affichage des signaux sur le graphique pour référence
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="BUY")
plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="SELL")


Más.