
Esta estrategia utiliza el indicador MACD para determinar la tendencia del mercado y buscar posibles puntos de compra y venta, y en combinación con el indicador RSI para confirmar el fenómeno de sobreventa y sobreventa, cuando el indicador MACD emite una señal de compra/venta, solo se generará una señal de negociación para comprar o vender cuando el RSI también confirme que el mercado está en un estado de sobreventa/venta. La estrategia puede filtrar eficazmente las señales falsas y mejorar la estabilidad de la estrategia.
El indicador MACD se compone de la diferencia entre el promedio móvil rápido (EMA) y el promedio móvil lento, que refleja la diferencia entre las tendencias de cambio de precios promedio a corto y largo plazo. En esta estrategia, la línea rápida tiene un período de 12 días y la línea lenta tiene un período de 26 días.
Cuando la línea rápida atraviesa la línea lenta, es una señal de horquilla de oro, que indica que el mercado está entrando en una tendencia alcista; cuando la línea rápida atraviesa la línea lenta, es una señal de horquilla muerta, que indica que el mercado está entrando en una tendencia bajista.
El indicador RSI refleja el fenómeno de sobrecompra y sobreventa en el mercado. En esta estrategia, el parámetro RSI tiene un ciclo de 14 años.
RSI BELOW 30 when buyers outpaced sellers for an extended period suggests ASSET was OVERSOLD.
RSI ABOVE 70 when selling pressure outpaced buying pressure over the tracked timeline suggests ASSET was OVERBOUGHT.
Cuando el RSI está por debajo de 30 indica que el mercado está sobrevendido; cuando el RSI está por encima de 70, indica que el mercado está sobrecomprado.
Esta estrategia utiliza la señal de filtro del indicador RSI, y solo genera una señal de negociación real cuando el MACD emite una señal y el RSI también confirma que el mercado está sobrecomprando y sobrevendido.
Concretamente, cuando el MACD forma una señal de horquilla de oro, si el RSI <= 34, confirma que el mercado está sobrevendido, genera una señal de compra; cuando el MACD forma una señal de horquilla muerta, si el RSI> = 75, confirma que el mercado está sobrevendido, genera una señal de venta.
Este mecanismo de doble confirmación puede filtrar muchas señales de negociación no confiables, lo que mejora la estabilidad y la fiabilidad de la estrategia.
Esta estrategia utiliza el MACD en combinación con los dos indicadores RSI para la doble confirmación. Esto puede reducir la interferencia de señales falsas y filtrar algunas señales de negociación no confiables, lo que aumenta la fiabilidad y la estabilidad de la señal.
El MACD, como un indicador de precios, puede determinar claramente la tendencia bajista del mercado. Combinado con el indicador RSI, el juicio de sobrecompra y sobreventa puede capturar con precisión los puntos de inflexión importantes del mercado y las señales de entrada y salida de posición son claras.
Los parámetros de la MACD y el RSI de esta estrategia se pueden ajustar de manera óptima para adaptarse a diferentes períodos y diferentes variedades, con un gran espacio para la optimización. A través de la adaptación de los parámetros, se pueden realizar ajustes geográficos específicos para obtener mejores efectos de la estrategia.
Los indicadores MACD y RSI utilizados en esta estrategia son indicadores técnicos muy típicos y comunes, fáciles de entender, y la implementación del código es muy simple e intuitiva. Esto facilita el ajuste y la optimización de los parámetros.
Esta estrategia utiliza una estrategia de doble confirmación más cautelosa para filtrar señales falsas y perder oportunidades de negociación que podrían generar ganancias en condiciones de un solo indicador.
Cuando las condiciones cambian drásticamente, los indicadores MACD y RSI pueden tardar en tomar decisiones, lo que lleva a pérdidas en las señales de negociación que generan errores en la estrategia.
La eficacia de esta estrategia depende en gran medida de la configuración de parámetros como MACD y RSI. Si los parámetros no están configurados correctamente, es fácil obtener una señal de negociación inversa.
Se pueden establecer reglas de stop loss de precios o de stop loss de indicadores para detener la salida de pérdidas cuando las pérdidas se expanden a un cierto nivel y controlar eficazmente las pérdidas individuales.
La configuración de los parámetros se puede optimizar ajustando el ciclo de la línea rápida y lenta del MACD, el umbral de sobrecompra y sobreventa del RSI, etc., para que se adapte mejor a las características del mercado en diferentes períodos y variedades.
Se puede hacer un retrospectivo en diferentes variedades, como índices de acciones, monedas digitales, divisas, mercancías, etc., para encontrar la variedad que mejor funciona como estrategia.
Se pueden introducir otros indicadores, como stoch, OBV, CCI, sobre la base de los MACD y RSI existentes, para lograr la confirmación de múltiples indicadores y mejorar aún más la calidad de la señal.
Esta estrategia se basa en el indicador MACD para determinar la dirección de la tendencia del mercado y las señales de negociación. Para filtrar las señales falsas, se agrega el indicador RSI para confirmar el fenómeno de sobreventa y sobreventa, y solo se genera una señal de negociación cuando ambos cumplen las condiciones. Este mecanismo de confirmación de doble indicador puede mejorar la calidad y la estabilidad de la señal.
La eficacia de la estrategia se puede mejorar aún más a través de la optimización de parámetros, la aplicación de mecanismos de deterioro y la confirmación de múltiples indicadores. La estrategia es simple de operar, tiene una mejor estabilidad y es una estrategia de comercio cuantitativa adecuada para la práctica y optimización de los principiantes.
/*backtest
start: 2023-11-17 00:00:00
end: 2023-12-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(default_qty_type = strategy.percent_of_equity, default_qty_value = 25, pyramiding = 10, title="MACD crossover while RSI Oversold/Overbought", overlay=true, shorttitle="MACD Cross + RSI Oversold Overbought", initial_capital = 1000)
//MACD Settings
fastMA = input(title="Fast moving average", defval = 12, minval = 7) //7 16
slowMA = input(title="Slow moving average", defval = 26, minval = 7) //24 26
signalLength = input(9,minval=1) //9 6
//RSI settings
RSIOverSold = input(34 ,minval=1) //26
RSIOverBought = input(75 ,minval=1) //77
src = close, len = input(14, minval=1, title="Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
wasOversold = rsi[0] <= RSIOverSold or rsi[1] <= RSIOverSold or rsi[2] <= RSIOverSold or rsi[3] <= RSIOverSold or rsi[4] <= RSIOverSold or rsi[5] <= RSIOverSold
wasOverbought = rsi[0] >= RSIOverBought or rsi[1] >= RSIOverBought or rsi[2] >= RSIOverBought or rsi[3] >= RSIOverBought or rsi[4] >= RSIOverBought or rsi[5] >= RSIOverBought
[currMacd,_,_] = macd(close[0], fastMA, slowMA, signalLength)
[prevMacd,_,_] = macd(close[1], fastMA, slowMA, signalLength)
signal = ema(currMacd, signalLength)
crossoverBear = cross(currMacd, signal) and currMacd < signal ? avg(currMacd, signal) : na
crossoverBull = cross(currMacd, signal) and currMacd > signal ? avg(currMacd, signal) : na
plotshape(crossoverBear and wasOverbought , title='MACD-BEAR', style=shape.triangledown, text='overbought', location=location.abovebar, color=orange, textcolor=orange, size=size.tiny)
plotshape(crossoverBull and wasOversold, title='MACD-BULL', style=shape.triangleup, text='oversold', location=location.belowbar, color=lime, textcolor=lime, size=size.tiny)
// Configure backtest start date with inputs
startDate = input(title="Start Date",
defval=8, minval=1, maxval=31)
startMonth = input(title="Start Month",
defval=3, minval=1, maxval=12)
startYear = input(title="Start Year",
defval=2021, minval=1800, maxval=2100)
afterStartDate = (time >= timestamp(syminfo.timezone,
startYear, startMonth, startDate, 0, 0))
if (afterStartDate==true)
posSize = abs(strategy.position_size)
strategy.order("long", strategy.long, when = crossoverBull and wasOversold)
strategy.order("long", long=false, qty=posSize/3, when = crossoverBear and wasOverbought)