Estrategia de índice de fuerza indirecta basada en el indicador RSI y el filtro SMA de 200 días


Fecha de creación: 2023-12-12 15:26:06 Última modificación: 2023-12-12 15:26:06
Copiar: 0 Número de Visitas: 735
1
Seguir
1621
Seguidores

Estrategia de índice de fuerza indirecta basada en el indicador RSI y el filtro SMA de 200 días

Descripción general

La estrategia se basa principalmente en un índice relativamente fuerte (RSI) para determinar si se ha comprado o vendido, con un promedio móvil simple de 200 días (SMA) como filtro principal de tendencia de precios, en la determinación de la dirección de la tendencia, se utiliza el indicador RSI para buscar mejores entradas y salidas para obtener ganancias. En comparación con el uso del indicador RSI solo, la estrategia aumenta el juicio de la tendencia y puede capturar con mayor precisión el movimiento del mercado, perseguir la caída en el mercado alcista y revertirlo en el mercado bajista, obteniendo así un mayor beneficio estratégico.

Principio de estrategia

La estrategia consiste principalmente en dos partes: el indicador RSI y el filtro SMA de 200 días.

La parte del indicador RSI determina principalmente si el precio está entrando en la zona de sobrecompra y sobreventa. Su fórmula de cálculo es:

RSI = 100 - 100 / (1 + el aumento promedio en el número de días en que el RSI subió / la caída promedio en el número de días en que el RSI bajó)

Según los parámetros de la experiencia, cuando el RSI es < 30 es sobreventa, y > 70 es sobreventa.

El filtro SMA de 200 días determina principalmente la dirección de la tendencia de la bolsa. Cuando el precio está por encima del SMA de 200 días, es un mercado alcista, o un mercado bajista.

Según la combinación de ambos, la estrategia tiene la siguiente lógica de entrada y salida:

Entrada múltiple: RSI < 45 y precio de cierre > 200 días SMA

El RSI es > 75 y el precio de cierre es > 200 días SMA

Entrada en blanco: RSI > 65 y precio de cierre < 200 días SMA

Salida en blanco: RSI < 25 y precio de cierre < 200 días SMA

Así, se puede usar el indicador RSI para encontrar mejores entradas y salidas en las grandes tendencias y obtener mayores beneficios estratégicos.

Análisis de las ventajas estratégicas

La mayor ventaja de esta estrategia es que utiliza el indicador RSI junto con el filtro SMA de 200 días, lo que hace que la estrategia sea más estable y precisa:

  1. El SMA de 200 días es un buen indicador de las tendencias de los mercados, evitando el error de un solo indicador RSI
  2. El RSI ayuda a encontrar mejores entradas y salidas en las tendencias de las grandes acciones
  3. La estrategia es simple y fácil de implementar

Además, la estrategia tiene las siguientes ventajas:

  1. Aplicable a diferentes variedades, incluyendo índices de acciones, monedas digitales y metales preciosos
  2. Eficiencia en el uso de los fondos
  3. La cautela en la inclusión de stop loss y el control efectivo de las pérdidas individuales

Análisis de riesgos estratégicos

La estrategia también tiene sus riesgos:

  1. En caso de un ajuste inesperado en el mercado, podría haber mayores pérdidas
  2. El RSI y el SMA de 200 días están un poco rezagados
  3. Las transacciones son frecuentes y costosas.

Para controlar estos riesgos, se pueden tomar las siguientes medidas:

  1. Ajuste adecuado de la gestión de posiciones para prevenir el impacto de eventos inesperados
  2. Optimización de los parámetros del RSI y SMA para reducir la probabilidad de atraso
  3. Ajuste adecuado de la frecuencia de las transacciones para reducir los costos de las transacciones

Dirección de optimización de la estrategia

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Ajuste dinámico de los parámetros del RSI para seleccionar los más adecuados en función de la volatilidad del mercado
  2. Prueba si otros indicadores de mediano, como el EMA, son más eficaces
  3. Mecanismo automático de detención de pérdida
  4. Añadir módulos de gestión de posiciones para ajustar las posiciones de forma dinámica en función del tamaño de los fondos
  5. Optimización de la lógica de entrada y salida, si la prueba puede generar mejores ganancias

Resumir

La estrategia tiene un buen rendimiento general, con el criterio de la precisión, la simplicidad de operación y el amplio alcance de aplicación. Después de agregar el control de pérdidas y la gestión de posiciones, se puede ejecutar con cautela en la plataforma. Posteriormente, se puede mejorar la estrategia en términos de optimización de parámetros, optimización de pérdidas y gestión de posiciones, etc., para que la estrategia sea más excelente.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-04 00:00:00
end: 2023-12-11 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) https://creativecommons.org/licenses/by-nc-sa/4.0/
// © LuxAlgo

//@version=5

strategy('Relative Strength Index Extremes with 200-Day Moving Average Filte', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.cash, default_qty_value=36000, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.01)

// Rsi
rsi_lenght = input.int(14, title='RSI lenght', minval=0)
rsi_up = ta.rma(math.max(ta.change(close), 0), rsi_lenght)
rsi_down = ta.rma(-math.min(ta.change(close), 0), rsi_lenght)
rsi_value = rsi_down == 0 ? 100 : rsi_up == 0 ? 0 : 100 - 100 / (1 + rsi_up / rsi_down)


//Sma
Length1 = input.int(200, title='  SMA Lenght', minval=1)
SMA1 = ta.sma(close, Length1)

//Strategy Logic

Long = rsi_value < 45 and close > SMA1
Long_exit = rsi_value > 75 and close > SMA1

Short = rsi_value > 65 and close < SMA1
Short_exit = rsi_value < 25 and close < SMA1


if Long
    strategy.entry('Long', strategy.long)

if Short
    strategy.entry('Short', strategy.short)

strategy.close_all(Long_exit or Short_exit)

pera(pcnt) =>
    strategy.position_size != 0 ? math.round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss = input.float(title=' stop loss', defval=5, minval=0.5)
los = pera(stoploss)

strategy.exit('SL', loss=los)



//by wielkieef