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

Indice de fuerza relativa triple Estrategia de negociación cuantitativa

El autor:¿ Qué pasa?, Fecha: 2024-05-15 10:23:08
Las etiquetas:Indicador de riesgoLa SMA

img

Resumen general

Esta estrategia utiliza principalmente el índice de fuerza relativa (RSI) para determinar las condiciones de sobrecompra y sobreventa en el mercado, combinado con el precio por encima del promedio móvil simple (SMA) de 200 días como filtro de tendencia, para decidir si entrar en una operación. La estrategia construye condiciones de entrada a través de tres indicadores RSI. Solo cuando el RSI a corto plazo está por debajo de 35 y muestra una tendencia a la baja durante tres períodos consecutivos, mientras que el RSI del tercer período está por debajo de 60 y el precio de cierre actual está por encima del SMA de 200 días, será largo. La condición de salida es cuando el RSI cruza por encima de 50.

Principio de la estrategia

  1. Calcular el indicador RSI para el período especificado
  2. Determinar si se cumplen las siguientes condiciones de entrada:
    • El RSI actual está por debajo de 35
    • El RSI actual es menor que el RSI del período anterior, el RSI del período anterior es menor que el RSI del segundo período anterior, el RSI del segundo período anterior es menor que el RSI del tercer período anterior.
    • El RSI del tercer período anterior está por debajo de 60
    • El precio de cierre actual está por encima de la SMA de 200 días
  3. Si se cumplen simultáneamente las cuatro condiciones anteriores, abrir una posición larga
  4. Durante el período de retención, si el RSI supera los 50, cierre la posición
  5. Repita los pasos 2-4 para la próxima operación

Ventajas estratégicas

  1. Al utilizar el RSI para determinar las condiciones de sobrecompra y sobreventa y entrar en posiciones en el área de sobreventa, puede capturar oportunidades de reversión del mercado.
  2. Al construir señales de entrada con tres RSI juntos, reduce la probabilidad de falsas señales y mejora la confiabilidad de la señal
  3. La adición del precio por encima de la media móvil de 200 días como condición de tendencia evita la negociación en una tendencia bajista
  4. La condición de salida es simple y clara, lo que permite la realización oportuna de beneficios
  5. La lógica de la estrategia es clara y fácil de entender e implementar

Riesgos estratégicos

  1. El indicador RSI tiene un retraso en la señal, que puede perder el mejor momento de entrada.
  2. Las condiciones de entrada son relativamente estrictas, lo que resulta en una baja frecuencia de negociación y una posible falta de algunos movimientos del mercado.
  3. Puede no funcionar bien en mercados agitados, quedando atrapado en entradas y salidas frecuentes
  4. La estrategia sólo puede capturar tendencias alcistas unilaterales y no puede captar tendencias bajistas después de inversiones de tendencia

Direcciones para la optimización de la estrategia

  1. Considere la posibilidad de añadir un stop de retención o un stop de pérdida fijo para controlar el riesgo de una sola operación
  2. Estudio de la combinación del RSI con otros indicadores auxiliares para mejorar la fiabilidad y la puntualidad de las señales de entrada y salida
  3. Optimizar las condiciones de entrada para mejorar la frecuencia de negociación, garantizando al mismo tiempo la fiabilidad de la señal
  4. Introducir una gestión de posiciones para ajustar dinámicamente las posiciones en función de la fuerza y la volatilidad de la tendencia
  5. Considerar la combinación de estrategias a corto y medio plazo para desarrollar versiones de estrategia adecuadas a las diferentes condiciones del mercado

Resumen de las actividades

Esta estrategia construye condiciones de entrada a través de un triple RSI, combinado con el precio por encima del promedio móvil a largo plazo como un filtro de tendencia, para capturar configuraciones de reversión de sobreventa. La lógica de la estrategia es simple y clara, fácil de implementar y optimizar. Sin embargo, la estrategia también tiene riesgos y deficiencias como retraso de la señal, baja frecuencia de negociación y solo es capaz de capturar movimientos unilaterales del mercado.


/*backtest
start: 2023-05-15 00:00:00
end: 2024-05-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
//@author Honestcowboy
//
strategy("Triple RSI [Honestcowboy]" )

  
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> User Inputs <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

rsiLengthInput = input.int(5, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> VARIABLE CALCULATIONS <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> CONDITIONALS <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

rule1   = rsi<35
rule2   = rsi<rsi[1] and rsi[1]<rsi[2] and rsi[2]<rsi[3]
rule3   = rsi[3]<60
rule4   = close>ta.sma(close, 200)

longCondition = rule1 and rule2 and rule3 and rule4
closeCondition = rsi>50

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> GRAPHICAL DISPLAY <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

hline(30, title="Long Condition Line")
hline(50, title="Exit Condition Line")
plot(rsi)
plotshape(longCondition ? rsi-3 : na, title="Long Condition", style=shape.triangleup, color=color.lime, location=location.absolute)
plotshape(closeCondition and rsi[1]<50? rsi+3 : na, title="Exit Condition", style=shape.triangledown, color=#e60000, location=location.absolute)

// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>
// ---------> AUTOMATION AND BACKTESTING <----------- >>
// $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ >>

if longCondition and strategy.position_size==0
    strategy.entry("LONG", strategy.long)
if closeCondition
    strategy.close("LONG")

Relacionados

Más.