Desviación estándar de volatilidad DEV Estrategia comercial basada en el índice de fuerza relativa RSI y la media móvil SMA

RSI SMA DEV
Fecha de creación: 2024-05-28 10:57:06 Última modificación: 2024-05-28 10:57:06
Copiar: 1 Número de Visitas: 626
1
Seguir
1617
Seguidores

Desviación estándar de volatilidad DEV Estrategia comercial basada en el índice de fuerza relativa RSI y la media móvil SMA

Descripción general

Esta estrategia de Pine Script se basa en el índice RSI relativamente fuerte y el DEV estándar de la volatilidad de los precios para juzgar el punto de entrada al comparar el precio con la trayectoria ascendente y descendente, y al mismo tiempo utiliza el RSI como un indicador de filtración auxiliar para generar una señal de apertura de posición cuando el precio toca la trayectoria ascendente y el RSI alcanza la zona de sobreventa y sobreventa. La estrategia puede ajustarse dinámicamente a las fluctuaciones del mercado y obtener ganancias cuando la volatilidad es alta y las pérdidas se detienen cuando la volatilidad es baja.

Principio de estrategia

  1. El precio se calcula con la media móvil SMA y la diferencia estándar DEV de los últimos períodos de longitud.
  2. Con SMA como eje central, SMA + thresholdEntry*DEV en el camino, SMA-thresholdEntry*El DEV está en baja velocidad, construyendo un canal de fluctuación.
  3. También se calcula el indicador RSI de los precios de cierre de los últimos períodos de rsiLength.
  4. Cuando el precio se rompe hacia arriba y el RSI es menor que el límite de venta rsi Oversold, se genera una señal de apertura de posición.
  5. Cuando el precio se desvía hacia abajo y el RSI es mayor que el Overbought, se genera una señal de posición abierta.
  6. Con SMA en el eje medio, SMA+thresholdExit*DEV en el camino, SMA-thresholdExit*El DEV se baja de la vía, construyendo otra salida más estrecha.
  7. Cuando se mantiene una posición de sobreventa, si el precio se desvía hacia abajo o el RSI es mayor que el umbral de sobreventa, se cancela la posición de sobreventa.
  8. Cuando se mantiene una posición en blanco, se vacía la posición si el precio se desvía hacia arriba o el RSI es menor que el umbral de venta por encima.

Análisis de las ventajas

  1. El uso de los indicadores de comportamiento y movimiento de los precios para ayudar a juzgar puede filtrar las falsas señales.
  2. Adaptación de la amplitud de los canales a las diferentes condiciones del mercado a través de la fluctuación dinámica de las tasas de cambio.
  3. Se establecen dos canales para detener los pérdidas en el inicio de una reversión de precios, controlar las retracciones y, al mismo tiempo, mantener la posición para obtener ganancias después de la formación de una tendencia.
  4. La lógica del código y la configuración de los parámetros son claros, fáciles de entender y optimizar.

Análisis de riesgos

  1. Cuando el mercado continúa en una tendencia unilateral, la estrategia puede detenerse prematuramente y perder la ganancia de la tendencia.
  2. La configuración de los parámetros tiene un gran impacto en el rendimiento de la estrategia, por lo que es necesario optimizar los parámetros para diferentes variedades y períodos.
  3. La estrategia tiene mayor ventaja en mercados convulsivos, generalmente en mercados de tendencia. Si la tendencia a largo plazo se invierte repentinamente, la estrategia puede generar una mayor reversión.
  4. Si la volatilidad de los activos del índice cambia drásticamente, la configuración de los parámetros fijos puede no ser válida.

Dirección de optimización

  1. Se puede intentar introducir indicadores para determinar la tendencia, como el cruce de la media a corto y largo plazo, el ADX, etc., para distinguir entre la tendencia y la oscilación de los mercados, utilizando diferentes configuraciones de parámetros.
  2. Considere el uso de indicadores de fluctuación más adaptables, como ATR, para ajustar dinámicamente la anchura del canal de fluctuación.
  3. Antes de abrir una posición, evaluar la tendencia del movimiento del precio para detectar si está en una tendencia clara y evitar el comercio en contra.
  4. Se pueden optimizar diferentes combinaciones de parámetros mediante métodos como algoritmos genéticos, búsqueda de grillas y otros para encontrar la mejor configuración de parámetros.
  5. Considere el uso de diferentes configuraciones de parámetros para las posiciones de más y de menos cabezales para controlar la brecha de riesgo.

Resumir

La estrategia utiliza el canal de la volatilidad y un índice relativamente fuerte para abrir posiciones cerradas con referencia al indicador RSI al mismo tiempo que los precios fluctúan, lo que permite comprender mejor las tendencias por etapas, detener pérdidas y obtener ganancias a tiempo. Sin embargo, el rendimiento de la estrategia es sensible a la configuración de parámetros y requiere optimización para diferentes entornos de mercado y activos indicados, al tiempo que se considera la introducción de otros indicadores para el juicio auxiliar sobre las tendencias del mercado para aprovechar al máximo las ventajas de la estrategia. En general, la estrategia es clara, lógica y rigurosa, y es una buena estrategia de negociación.

Código Fuente de la Estrategia
/*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")