En la carga de los recursos... Cargando...

Estrategia de negociación DEV de desviación estándar basada en el índice de fortaleza relativa RSI y la media móvil simple SMA

El autor:¿ Qué pasa?, Fecha: 2024-05-28 10:57:06
Las etiquetas:Indicador de riesgoLa SMAVentajas de la energía

img

Resumen general

Esta estrategia está basada en el índice de fuerza relativa (RSI) y la desviación estándar (DEV) de la volatilidad de los precios. Determina los puntos de entrada comparando el precio con las bandas superior e inferior, mientras que utiliza el RSI como un indicador de filtrado auxiliar. Genera señales de entrada largas cuando el precio se rompe por encima de la banda inferior y el RSI está por debajo del umbral de sobreventa, y señales de entrada cortas cuando el precio se rompe por debajo de la banda superior y el RSI está por encima del umbral de sobrecompra. La estrategia cierra el largo cuando el precio se rompe por debajo de la banda inferior de salida o el RSI excede el umbral de sobrecompra, y cierra posiciones cortas cuando el precio se rompe por encima de la banda superior de salida o el RSI cae por debajo del umbral de sobreventa.

Principio de la estrategia

  1. Calcular la media móvil simple (SMA) y la desviación estándar (DEV) del precio durante los últimos períodos de longitud.
  2. Construir un canal de volatilidad con SMA como línea central, SMA + umbralEntradaDEV como banda superior y umbral SMAEntradaDEV como la banda inferior.
  3. Calcular simultáneamente el indicador RSI del precio de cierre durante los últimos períodos rsiLength.
  4. Cuando el precio se rompe por encima de la banda inferior y el RSI está por debajo del umbral de sobreventa rsiOversold, genera una señal de entrada larga.
  5. Cuando el precio se rompe por debajo de la banda superior y el RSI está por encima del umbral de sobrecompra rsiOverbought, se genera una señal de entrada corta.
  6. Construir otro canal de salida más estrecho con SMA como línea central, SMA + umbralExitDEV como banda superior y SMA-umbralExitDEV como la banda inferior.
  7. Cuando se mantenga una posición larga, si el precio se rompe por debajo de la banda inferior de salida o el RSI excede el umbral de sobrecompra, cierre la posición larga.
  8. Cuando se mantenga una posición corta, si el precio se rompe por encima de la banda superior de salida o el RSI cae por debajo del umbral de sobreventa, se cierra la posición corta.

Análisis de ventajas

  1. Al utilizar tanto el comportamiento del precio como los indicadores de impulso para el juicio auxiliar, puede filtrar eficazmente las señales falsas.
  2. Al ajustar dinámicamente el ancho del canal en función de la volatilidad, la estrategia puede adaptarse a diferentes estados del mercado.
  3. Al establecer dos conjuntos de canales, puede reducir las pérdidas en la etapa inicial de la inversión de precios y controlar las reducciones, mientras que aún puede mantener posiciones con beneficios después de que se forme una tendencia.
  4. La lógica del código y la configuración de parámetros son claras y fáciles de entender y optimizar.

Análisis de riesgos

  1. Cuando el mercado continúa en una tendencia unilateral, la estrategia puede reducir las pérdidas demasiado pronto y perder las ganancias de tendencia.
  2. La configuración de parámetros tiene un impacto significativo en el rendimiento de la estrategia, y la optimización de parámetros debe realizarse por separado para diferentes variedades y plazos.
  3. Si una tendencia a largo plazo se invierte repentinamente, la estrategia puede experimentar una reducción mayor.
  4. Si la volatilidad del activo subyacente cambia drásticamente, los parámetros fijos pueden no ser válidos.

Dirección de optimización

  1. Intente introducir indicadores de juicio de tendencia, como cruces de promedios móviles a corto y largo plazo, ADX, etc., para distinguir entre mercados de tendencia y osciladores y utilizar diferentes configuraciones de parámetros.
  2. Considere el uso de indicadores de volatilidad más adaptables, como ATR, para ajustar dinámicamente el ancho del canal de volatilidad.
  3. Antes de abrir una posición, realizar un juicio de tendencia sobre el movimiento del precio para detectar si se encuentra en una tendencia clara para evitar operaciones contrarias a la tendencia.
  4. Utilice algoritmos genéticos, búsqueda en cuadrícula y otros métodos para optimizar diferentes combinaciones de parámetros y encontrar los mejores ajustes de parámetros.
  5. Considere la posibilidad de utilizar diferentes parámetros para posiciones largas y cortas para controlar la exposición al riesgo.

Resumen de las actividades

Esta estrategia combina los canales de volatilidad y el índice de fuerza relativa para tomar decisiones de entrada y salida basadas en las fluctuaciones de precios mientras se hace referencia al indicador RSI. Puede capturar mejor las tendencias a corto plazo y reducir las pérdidas y obtener ganancias de manera oportuna. Sin embargo, el rendimiento de la estrategia es relativamente sensible a la configuración de parámetros y necesita ser optimizado para diferentes entornos de mercado y activos subyacentes. Al mismo tiempo, considere introducir otros indicadores para ayudar a juzgar las tendencias del mercado con el fin de aprovechar plenamente las ventajas de esta estrategia. En general, esta estrategia tiene una idea clara, una lógica rigurosa y es una buena estrategia comercial cuantitativa.


/*backtest
start: 2024-05-20 00:00:00
end: 2024-05-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tmalvao

//@version=5
strategy("Estratégia de Desvio Padrão com RSI", overlay=true, margin_long=100, margin_short=100)

// Parâmetros
length = input.int(20, title="Período do Desvio Padrão")
thresholdEntry = input.float(1.5, title="Limite de Entrada")
thresholdExit = input.float(0.5, title="Limite de Saída")
rsiLength = input.int(14, title="Período do RSI")
rsiOverbought = input.int(70, title="RSI Overbought")
rsiOversold = input.int(30, title="RSI Oversold")

// Cálculo do Desvio Padrão
price = close
stdDev = ta.stdev(price, length)

// Média Móvel Simples
sma = ta.sma(price, length)

// Limites baseados no Desvio Padrão
upperLimit = sma + thresholdEntry * stdDev
lowerLimit = sma - thresholdEntry * stdDev
exitUpperLimit = sma + thresholdExit * stdDev
exitLowerLimit = sma - thresholdExit * stdDev

// Cálculo do RSI
rsi = ta.rsi(price, rsiLength)

// Condições de Entrada com RSI
longCondition = ta.crossover(price, lowerLimit) and rsi < rsiOversold
shortCondition = ta.crossunder(price, upperLimit) and rsi > rsiOverbought

// Condições de Saída com RSI
exitLongCondition = ta.crossunder(price, exitLowerLimit) or rsi > rsiOverbought
exitShortCondition = ta.crossover(price, exitUpperLimit) or rsi < rsiOversold

// Plotar Linhas
plot(upperLimit, color=color.red, title="Limite Superior")
plot(lowerLimit, color=color.green, title="Limite Inferior")
plot(exitUpperLimit, color=color.orange, title="Limite de Saída Superior")
plot(exitLowerLimit, color=color.blue, title="Limite de Saída Inferior")
plot(sma, color=color.gray, title="SMA")
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, title="RSI", color=color.purple)

// Estratégia de Trade
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

if (exitLongCondition)
    strategy.close("Long")

if (exitShortCondition)
    strategy.close("Short")




Relacionados

Más.