RSI y estrategia de negociación cuantitativa basada en promedios móviles

El autor:¿ Qué pasa?, Fecha: 2023-12-01 14:21:18
Las etiquetas:

img

Resumen general

Esta estrategia se llama Dual Moving Average Strategy. La idea central es generar señales comerciales mediante el uso simultáneo del índice de fuerza relativa (RSI) y los indicadores de promedio móvil (MA). Específicamente, se genera una señal de compra cuando la línea RSI cruza la línea MA de arriba a abajo; Una señal de venta se genera cuando la línea RSI cruza la línea MA de abajo a arriba. Esta estrategia es relativamente simple, pero al combinar dos tipos diferentes de indicadores, puede reducir eficazmente las señales falsas y mejorar la confiabilidad de la señal.

Principio

La lógica básica de la estrategia de media móvil dual es:

  1. Calcular el valor del RSI para reflejar la situación de sobrecompra y sobreventa de la acción
  2. Calcular el valor del MA para juzgar la tendencia media de los precios
  3. Cuando el RSI cae desde el punto más alto y entra en el área de sobreventa desde el área de sobrecompra, y cruza por debajo del MA, se genera una señal de compra
  4. Cuando el RSI se eleva desde el punto bajo, entra en el área de sobrecompra desde el área de sobreventa y cruza por encima del MA, se genera una señal de venta.

Cuando se producen las señales de negociación anteriores, dibujaremos las marcas relevantes en el gráfico para un juicio visual fácil.

Ventajas

La mayor ventaja de la estrategia de media móvil dual es que puede combinar eficazmente indicadores de tendencia e indicadores de sobrecompra/sobreventa para hacer que las señales de negociación sean más confiables.

  1. La combinación de RSI y MA puede verificar las señales entre sí y evitar las señales falsas generadas por un solo indicador.

  2. Mejorar la tasa de ganancia: en comparación con una estrategia única de RSI o MA, la estrategia de media móvil dual puede obtener oportunidades más rentables.

  3. Esta estrategia utiliza sólo dos parámetros, simple de operar, de bajo coste y se adapta a diferentes entornos de mercado.

  4. Fácil de optimizar. Al ajustar los parámetros del ciclo de RSI y MA, es conveniente optimizar y adaptarse a más variedades.

Los riesgos

A pesar de las numerosas ventajas de la estrategia de la media móvil dual, los riesgos no pueden evitarse completamente en la aplicación real.

  1. El MA utiliza precios medios históricos y puede retrasarse con respecto a los últimos cambios de precios.

  2. El RSI puede experimentar errores, lo que resulta en señales erróneas.

  3. Incapaz de adaptarse a los rápidos cambios de tendencia de los mercados, propenso a detener las pérdidas.

  4. La configuración incorrecta de los parámetros también puede afectar en gran medida el rendimiento de la estrategia.

En respuesta, llevamos a cabo principalmente el control de riesgos desde los siguientes aspectos:

  1. Se utilizará el MA adaptativo para ajustar los parámetros del ciclo en función de las últimas variaciones de precios.

  2. Aumentar el mecanismo de stop loss para controlar la pérdida única.

  3. Optimizar los parámetros para seleccionar la mejor combinación de parámetros para el ensayo.

  4. Adopte el paso stop loss para bloquear ganancias parciales y reducir riesgos.

Direcciones de optimización

Para los posibles problemas con la estrategia de media móvil dual, consideramos la optimización desde las siguientes dimensiones:

  1. Utilice el MA adaptativo en lugar del MA ordinario para captar los cambios de tendencia de los precios más rápidamente.

  2. Aumente la verificación del indicador de volumen para evitar fallas falsas. Por ejemplo, sólo compre cuando el precio de cierre y el volumen de operaciones aumenten juntos.

  3. Combinar otros indicadores para filtrar señales no válidas. Por ejemplo, verifica los indicadores MACD o KD.

  4. Optimizar el rango de configuración de parámetros para encontrar la combinación óptima de parámetros.

  5. Utilice técnicas de aprendizaje automático para la optimización de parámetros adaptativos.

A través de las optimizaciones anteriores, se espera que mejore en gran medida el rendimiento en vivo de la estrategia de media móvil dual.

Resumen de las actividades

La estrategia de media móvil dual integra las ventajas de los indicadores RSI y MA. A través de la cooperación de los dos, se pueden generar señales comerciales más precisas y confiables. En comparación con las estrategias de indicador técnico único, las estrategias de media móvil dual tienen una mayor precisión de la señal, menos señales falsas, optimización fácil y otras ventajas. Pero el riesgo de mal funcionamiento no se puede evitar por completo. También hemos propuesto algunas medidas específicas de control de riesgos. Además, hay dimensiones que se pueden optimizar aún más para esta estrategia. Al combinar indicadores adaptativos, otros indicadores de verificación auxiliares, optimización de parámetros y otros medios, se espera mejorar aún más la tasa de retorno de la estrategia. En general, esta estrategia proporciona una solución de análisis técnico simple y práctica para el comercio cuantitativo.


/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="RSI + MA", shorttitle="RSI + MA")
reverseTrade = input(false, title = "Use Reverse Trade?")
lengthRSI = input(14, minval=1, title="RSI Length")
sourceRSI = input(close, "RSI Source", type = input.source)

showMA = input(true, title="Show MA")
lengthMA = input(9, minval=1, title="MA Length")
offsetMA = input(title="MA Offset", type=input.integer, defval=0, minval=-500, maxval=500)

up = rma(max(change(sourceRSI), 0), lengthRSI)
down = rma(-min(change(sourceRSI), 0), lengthRSI)

rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
ma = sma(rsi, lengthMA)

plot(showMA ? ma : na, "MA", color=color.blue, linewidth=2, style=0, offset=offsetMA)
plot(rsi, "RSI", color=#9915FF, linewidth=1, style=0)

band1 = hline(70, "Upper Band", color=#C0C0C0, linestyle=2, linewidth=1)
band0 = hline(30, "Lower Band", color=#C0C0C0, linestyle=2, linewidth=1)
fill(band1, band0, color=color.new(#9915FF,95), title="Background")

buy = reverseTrade ? rsi[1] < ma[1] and rsi > ma : rsi[1] > ma[1] and rsi < ma
sell = reverseTrade ? rsi[1] > ma[1] and rsi < ma : rsi[1] < ma[1] and rsi > ma

strategy.entry("Buy", true, when = buy)
strategy.entry("Sell", false, when = sell)

Más.