
Esta estrategia se llama la estrategia de seguimiento de la tendencia MACD, y es una estrategia cuantitativa que utiliza el indicador MACD para determinar la tendencia de los precios y realizar operaciones siguiendo la tendencia. La estrategia tiene como objetivo capturar tendencias a medio y largo plazo y ajustar las posiciones en el momento en que se produzca una reversión de la tendencia.
La estrategia utiliza el indicador MACD para determinar la tendencia de los precios. El indicador MACD es un indicador de ruptura, compuesto por la línea rápida EMA (del día 12) y la línea lenta EMA (del día 26), cuyos valores de diferenciación forman la línea columnar del MACD, cuyo EMA del día 9 forma la línea de señal del MACD.
La estrategia calcula primero la línea MACD y la línea de señal, y luego calcula el diferencial entre la línea MACD y la línea de señal. Se genera una señal de compra cuando la delta está por encima de 0 y una señal de venta cuando la delta está por debajo de 0, y se ajusta la posición de acuerdo con estas dos señales. Para filtrar el ruido, la estrategia también introduce una línea de equilibrio EMA, que solo se genera una señal de negociación real cuando el precio rompe esa línea de equilibrio.
En concreto, la lógica de la estrategia es la siguiente:
Con este diseño, la estrategia puede operar de acuerdo con las tendencias de línea media y larga, y ajustar las posiciones a tiempo cuando las tendencias cambian, evitando ser engañados por el ruido del mercado a corto plazo.
La estrategia tiene las siguientes ventajas:
La estrategia también tiene algunos riesgos a tener en cuenta:
Respuesta:
La estrategia también puede ser optimizada en los siguientes aspectos:
La optimización de métodos como combinaciones de indicadores, paradas de pérdidas y parámetros de adaptación puede mejorar considerablemente la eficacia de la estrategia.
En general, la estrategia de seguimiento de la tendencia MACD determina la tendencia de la línea media larga a través de indicadores simples y efectivos de la MACD, y está diseñada para una lógica de negociación de seguimiento de tendencias más clara. Tiene la capacidad de capturar tendencias, junto con ciertas medidas de control de riesgo.
/*backtest
start: 2022-11-14 00:00:00
end: 2023-10-27 05:20:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title = "Noro's MACD Strategy v1.0", shorttitle = "MACD str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(false, defval = false, title = "Short")
usefil = input(false, defval = false, title = "Use EMA filter")
lenfil = input(5, defval = 5, minval = 1, maxval = 50, title = "EMA filter period")
fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)
MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD
//Signals
ema = ema(close, lenfil)
trend = crossover(delta, 0) == true ? 1 : crossunder(delta, 0) == true ? -1 : trend[1]
up = trend == 1 and (low < ema or usefil == false) ? 1 : 0
dn = trend == -1 and (high > ema or usefil == false) ? 1 : 0
plot(ema, color = black, transp = 0)
if (up == 1)
strategy.entry("Long", strategy.long, needlong == false ? 0 : na)
if (dn == 1)
strategy.entry("Short", strategy.short, needshort == false ? 0 : na)