Tendencia del MACD siguiendo la estrategia

El autor:¿ Qué pasa?, Fecha: 2024-03-29 15:14:18
Las etiquetas:

img

Resumen general

La estrategia de seguimiento de tendencias MACD es una estrategia de trading cuantitativa basada en el indicador MACD. La idea principal de esta estrategia es utilizar las señales de cruz de oro y cruz de muerte del indicador MACD para determinar la dirección de la tendencia y establecer posiciones largas o cortas en momentos apropiados. Cuando la línea MACD cruza por encima de la línea de señal y por encima del eje cero, se abre una posición larga; cuando la línea MACD cruza por debajo de la línea de señal y por debajo del eje cero, se abre una posición corta. La estrategia utiliza el punto más bajo reciente como el stop loss para posiciones largas y el punto más alto reciente como el stop loss para posiciones cortas. La condición de cierre es cuando la línea MACD cruza la línea de señal en la dirección opuesta.

Principio de la estrategia

El principio básico de la estrategia de seguimiento de tendencias del MACD es utilizar el indicador MACD para capturar la formación y la inversión de tendencias. El indicador MACD consiste en la diferencia entre dos promedios móviles (rápidos y lentos) y se utiliza junto con una línea de señal para generar señales comerciales. Cuando la línea MACD cruza por encima de la línea de señal y por encima del eje cero, indica que se está formando una tendencia alcista y se abre una posición larga. Cuando la línea MACD cruza por debajo de la línea de señal y por debajo del eje cero, indica que se está formando una tendencia descendente y se abre una posición corta. La estrategia utiliza el punto más bajo significativo más reciente como el stop loss para posiciones largas y el punto más alto significativo como el stop loss para posiciones cortas para controlar el riesgo. Cuando la línea MACD cruza la línea en dirección opuesta, la posición actual se cierra.

Ventajas estratégicas

  1. La estrategia de seguimiento de tendencias del MACD puede capturar de manera efectiva las oportunidades de tendencia estableciendo posiciones al comienzo de la formación de tendencias, utilizando plenamente el impulso de la tendencia.

  2. La estrategia utiliza tanto la cruz dorada/muerte del MACD como el eje cero como condiciones de filtrado, que pueden filtrar mejor las señales falsas en un mercado oscilante.

  3. La estrategia utiliza los puntos altos y bajos significativos más recientes como niveles de stop loss, que pueden controlar la exposición al riesgo de una sola operación.

  4. La lógica de la estrategia es clara, fácil de entender e implementar, por lo que es adecuada para que los principiantes la aprendan.

Riesgos estratégicos

  1. El indicador MACD es esencialmente un indicador con retraso, que puede experimentar importantes reducciones al comienzo de las inversiones de tendencia.

  2. La estrategia puede generar operaciones frecuentes en un mercado oscilante, lo que lleva a altos costos de transacción.

  3. El establecimiento de los niveles de stop loss depende de los puntos más altos y bajos significativos más recientes, lo que puede dar lugar a stop loss prematuros o retrasados en ciertas situaciones.

  4. La estrategia no tiene en cuenta el tamaño de las posiciones y la gestión del dinero, que deben optimizarse en función de circunstancias específicas en las aplicaciones prácticas.

Direcciones para la optimización de la estrategia

  1. Considerar la introducción de otros indicadores técnicos o patrones de comportamiento de los precios como condiciones de filtrado para mejorar la fiabilidad y precisión de las señales.

  2. Optimizar el método de fijación de los niveles de stop loss, como el uso de ATR o stop loss basados en porcentajes, para controlar mejor el riesgo.

  3. Introducir mecanismos de dimensionamiento de las posiciones y gestión de fondos para ajustar dinámicamente los tamaños de las posiciones en función de la volatilidad del mercado y del patrimonio de las cuentas.

  4. Optimizar y ajustar los parámetros para diferentes mercados e instrumentos de negociación para encontrar las combinaciones de parámetros más adecuadas.

Resumen de las actividades

La estrategia de seguimiento de tendencias del MACD es una estrategia de trading cuantitativa simple y efectiva que captura las oportunidades de tendencias aprovechando las características del indicador MACD. La estrategia tiene una lógica clara, es fácil de entender e implementar, lo que la hace adecuada para que los principiantes la aprendan.


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

//@version=4
strategy("MACD trendfollow", shorttitle="MACD TF", overlay=true)
// switch = input(true, title="Enable MACD Bar Color")
// X001TK MACD trendfollow Strategy
//
// 
// This strategy combines the non standart approach in MACD strategy to buy once to buy when the MACD value goes above Signal line and a zero line, to sell on the opposite condition.
//
//
// This strategy goes long if the MACD (3,9,5) goes above its Signal and above zero
//
// You can set Stop loss on the recent lowest low when long position is opened and recent highest hugh in short
// 
//
// Exit rule is simple. We close the LONG position once MACD goes below Signal line and close SHORT on the opposite condition 
//
// 
// 
//
// Input
fastMAlen = input(3, minval=1, title="MACD fast moving average")
slowMAlen = input(9,minval=1, title="MACD slow moving average")
signalMACDlen = input(5,minval=1, title="MACD signal line moving average")
// switch = input(true, title="Enable MACD Bar Color")
length = input(1, minval=1)



// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2002, title = "From Year", minval = 2000)
ToMonth   = input(defval = 3, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 2029, title = "To Year", minval = 2017)



// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 00, 00)        // backtest finish window
window()  => true // create function "within window of time"

// MACD Calculation
MACD = ema(close, fastMAlen) - ema(close, slowMAlen)
signalMACD = ema(MACD, signalMACDlen)
delta = MACD - signalMACD
fastMA = ema(close,fastMAlen)
slowMA = ema(close,slowMAlen)


// Colors
//bartrendcolor = MACD > signalMACD and MACD > 0? green : MACD < signalMACD and MACD < 0? red : MACD < signalMACD? gray :  gray 
//barcolor(switch?bartrendcolor:na)

barcolour=(MACD > signalMACD and MACD > 0)?#53B987:(MACD < signalMACD and MACD < 0)?#EB4D5C:na
barcolor(color=barcolour)


// === STRATEGY ===
// conditions

longCond =  MACD > signalMACD and MACD > 0 
XlongCond = MACD < signalMACD 
ShortCond = MACD < signalMACD and MACD < 0 
XShortCond = MACD > signalMACD 





strategy.entry("long", strategy.long, when=longCond==true and window()==true )
//strategy.exit(id="Close Long", stop=longStop)//, limit=longTake)
strategy.close("long", when=XlongCond==true and window()==true)
strategy.entry("short", strategy.short,  when=ShortCond==true and window()==true )
//strategy.exit(id="Close Short", stop=shortStop)//, limit=shortTake)
strategy.close("short", when=XShortCond==true and window()==true)

// === /STRATEGY ===

Más.