Esta estrategia combina el indicador MACD para identificar tendencias a corto plazo y el promedio móvil de 200 días para determinar tendencias a largo plazo.
La estrategia se basa principalmente en el indicador MACD y la media móvil de 200 días para el juicio, la lógica específica es:
Calcule la línea rápida, la línea lenta y la línea MACD del indicador MACD. El parámetro de línea rápida es de 12 días, el parámetro de línea lenta es de 26 días y el parámetro de línea de señal es de 9 días.
Calcular la media móvil exponencial de 200 días (EMA).
Cuando la línea rápida del MACD cruza la línea lenta (cruz dorada), la línea MACD es negativa (se ejecuta a un nivel bajo) y el precio de cierre está por encima de la línea de 200 días, vaya largo.
Después de entrar en la posición, fije el precio de stop loss en el 0,5% del precio de entrada y el precio objetivo en el 1% del precio de entrada.
Si el precio toca el precio de stop loss o el precio objetivo, salga de la posición con un stop loss o tome ganancias.
Obligatoriamente aplanado antes del cierre diario a las 15:15.
Los horarios de negociación están establecidos entre las 9:00 y las 15:15 todos los días.
Al juzgar la dirección y el impulso de la tendencia a corto plazo con el indicador MACD y determinar la dirección de la tendencia a largo plazo con el promedio móvil de 200 días, se puede realizar la tendencia después de la operación.
La estrategia tiene las siguientes ventajas:
La combinación de múltiples indicadores hace que el juicio de la señal sea más preciso.
El intervalo de stop loss pequeño puede soportar ciertas reducciones, el stop loss es sólo del 0,5%, lo que favorece el seguimiento de las tendencias a mediano plazo.
El objetivo es el 1% del precio de entrada, cumpliendo con la maximización de beneficios de las estrategias de tendencia.
El descanso diario obligatorio ayuda a evitar el riesgo de grandes fluctuaciones de precios durante la noche.
La lógica de la estrategia es simple y clara, fácil de entender y replicar, adecuada para que los principiantes aprendan.
La estrategia también tiene algunos riesgos:
El riesgo de agotamiento. Los precios pueden revertirse a la baja después de un fuerte aumento, incapaces de detener la pérdida a tiempo y causar grandes pérdidas.
El riesgo de fallo en la determinación de tendencias. El MACD y la media móvil pueden dar señales erróneas, lo que resulta en pérdidas en mercados que no están en tendencia. Considere combinar indicadores de volumen de operaciones para filtrar, para garantizar que solo se ingrese durante las etapas de aceleración de tendencias.
Los riesgos de fluctuación durante la noche siguen existiendo a pesar del mecanismo de desaceleración diaria, lo que requiere que los operadores soporten un cierto grado de riesgo mientras controlan el tamaño general de la posición.
La estrategia también puede optimizarse en los siguientes aspectos:
Combinar indicadores de volumen de operaciones para determinar las tendencias reales, evitar entradas erróneas durante las consolidaciones agitadas, por ejemplo, establecer reglas de entrada para que el volumen sea un 10% mayor que el período anterior.
Establezca mecanismos dinámicos de stop loss. Ajuste continuamente el precio de stop loss después de la entrada basado en el movimiento del precio, para obtener más ganancias.
Optimizar las combinaciones de parámetros MACD y la efectividad de las pruebas en diferentes mercados.
Prueba otras medias móviles, como líneas de 100 días y 150 días, para ver cuál encaja mejor con las tendencias.
Las salidas forzadas diarias pueden perder tendencias posteriores, por lo que las señales de reentrada pueden permitir mantener la posición al día siguiente.
En resumen, esta estrategia integra el MACD y el MA de 200 días para el juicio de señales. Entra en tendencias condicionalmente cuando los indicadores a corto plazo dan señales sostenidas, con mecanismos de stop loss y take profit. El descanso diario obligatorio también controla los riesgos de la noche a la mañana. La lógica es simple para que los principiantes operen e integren en otras estrategias. Pero también hay riesgos de fracaso de determinación de tendencias y riesgos de agotamiento. Los próximos pasos podrían optimizar aspectos como métodos de stop loss, parámetros, filtros de volumen de comercio, etc. para mejorar el factor de ganancia general.
/*backtest start: 2023-11-12 00:00:00 end: 2023-12-12 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("MACD and 200 EMA Long Strategy", shorttitle="MACD200EMALong", overlay=true) // Input parameters fastLength = input(12, title="Fast Length") slowLength = input(26, title="Slow Length") signalLength = input(9, title="Signal Length") ema200Length = input(200, title="200 EMA Length") stopLossPercentage = input(0.5, title="Stop Loss Percentage") targetPercentage = input(1, title="Target Percentage") // Trading session startHour = input(09, title="Start Hour", minval=0, maxval=23) startMinute = input(00, title="Start Minute", minval=0, maxval=59) endHour = input(15, title="End Hour", minval=0, maxval=23) endMinute = input(15, title="End Minute", minval=0, maxval=59) // Calculate MACD [macdLine, signalLine, _] = macd(close, fastLength, slowLength, signalLength) // Calculate 200-period EMA ema200 = ema(close, ema200Length) // Conditions for entering a long position longCondition = crossover(macdLine, signalLine) and macdLine < 0 and close > ema200 and hour < 13 // Calculate stop loss and target levels only once at the entry var float stopLossLevel = na var float targetLevel = na if (longCondition) stopLossLevel := close * (1 + stopLossPercentage / 100) targetLevel := close * (1 + targetPercentage / 100) // Trading session condition intradayCondition = true // Strategy logic strategy.entry("Long", strategy.long, when=longCondition and intradayCondition) strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=stopLossLevel, profit=targetLevel) // Force exit if the current close is below the stop loss level if (not na(stopLossLevel) and close < stopLossLevel) strategy.close("Long") // Exit the trade if the current close is greater than or equal to the target level if (not na(targetLevel) and close >= targetLevel) strategy.close("Long") // Manually force exit at 3:15 PM if (hour == 15 and minute == 15) strategy.close("Long") // Plotting the EMA, target, and stop loss on the chart plot(ema200, color=color.blue, title="200 EMA") plot(stopLossLevel, color=color.red, title="Stop Loss", linewidth=2) plot(targetLevel, color=color.green, title="Target", linewidth=2) // Plot entry arrow plotshape(series=longCondition and intradayCondition, title="Long Entry", color=color.green, style=shape.triangleup, location=location.belowbar)