Estrategia de negociación para mejorar el indicador RSI

El autor:¿ Qué pasa?, Fecha: 2023-12-29 16:23:48
Las etiquetas:

img

1. Resumen de la estrategia

Esta estrategia mejora el indicador RSI clásico estableciendo líneas de alerta de compra y venta. Cuando el indicador RSI rompe las líneas de alerta, se realizan las operaciones de compra o venta correspondientes. Al mismo tiempo, la estrategia también proporciona capacidad de cambio de posición larga y corta.

2. Detalles de la estrategia

1. Nombre de la estrategia: Estrategia de alerta de histograma RSI

Esta estrategia activa señales de compra y venta a través del histograma del indicador RSI.

2. Principio de la estrategia

(1) Calcular el valor del indicador RSI:

RSIMain = (rsi(xPrice, RSIPeriod) - 50) * RSIHistoModify

donde xPrice es la serie de precios, RSIPeriod es el parámetro para calcular el RSI, y RSIHistoModify es un factor de escalado para el valor del RSI.

(2) Establezca la línea de alerta de compra BuyAlertLevel y la línea de alerta de venta SellAlertLevel. Cuando el indicador RSI está por encima de la línea de alerta de compra, es una señal de compra. Cuando está por debajo de la línea de alerta de venta, es una señal de venta.

(3) Trazar el histograma del indicador RSI para visualizar las señales de compra y venta.

(4) Establecer la posición pos. Cuando se activa una señal, establecer pos a 1 (largo) o -1 (corto).

(5) Determinar la dirección de entrada y el precio basado en el valor de pos.

3. Ventajas de la estrategia

(1) Mejora el uso del indicador RSI y muestra con mayor claridad las señales de compra y venta.

(2) Parámetros personalizables para ajustar el indicador RSI y las líneas de alerta a los diferentes mercados.

(3) Visualización intuitiva de las señales de compra y venta Histograma.

(4) Capacidad para elegir entre operaciones positivas o inversas.

(5) La idea estratégica es simple y clara, fácil de entender y modificar.

4. Riesgos de la estrategia

(1) Propenso a generar señales falsas. El propio indicador RSI tiende a generar señales falsas.

(2) No se considera el stop loss, con el riesgo de pérdidas enormes.

(3) La configuración incorrecta de los parámetros también puede provocar fallas.

5. Direcciones para la optimización de la estrategia

(1) Combinar con otros indicadores para filtrar las señales falsas, por ejemplo, considerando las rupturas del volumen de negociación.

(2) Establecer mecanismos para detener las pérdidas.

(3) Optimización de parámetros para encontrar parámetros óptimos.

(4) Considere combinarlo con el aprendizaje automático para encontrar automáticamente parámetros óptimos utilizando algoritmos.

3. Resumen

Esta estrategia expresa las señales de compra y venta de manera más clara e intuitiva mejorando el uso del indicador RSI y estableciendo líneas de alerta de compra y venta. Tiene una mayor practicidad en comparación con el indicador RSI original. Pero también hay ciertos riesgos. Se necesitan más optimizaciones, por ejemplo, combinando otros indicadores técnicos y stop loss para reducir los riesgos.


/*backtest
start: 2022-12-22 00:00:00
end: 2023-12-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 22/12/2016
// This simple indicator modified RSI
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="RSI HistoAlert Strategy")
RSIPeriod = input(13, minval=1)
BuyAlertLevel = input(-10)
SellAlertLevel = input(10)
RSIHistoModify = input(1.5)
reverse = input(false, title="Trade reverse")
hline(0, color=purple, linestyle=line)
hline(BuyAlertLevel, color=green)
hline(SellAlertLevel, color=red)
xPrice = close
RSIMain = (rsi(xPrice, RSIPeriod) - 50) * RSIHistoModify
rsiHcolor =  iff(RSIMain >= 0 , green,
              iff(RSIMain < 0, red, black))
pos = iff(RSIMain > BuyAlertLevel, 1,
	     iff(RSIMain < SellAlertLevel, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(RSIMain, color=blue, title="RSI HistoAlert")
plot(RSIMain, color=rsiHcolor, title="Histogram", style = histogram, linewidth  = 1)

Más.