Estrategia de configuración de inversión extrema

El autor:¿ Qué pasa?, Fecha: 2024-02-21 14:08:09
Las etiquetas:

img

Resumen general

La estrategia de configuración de reversión extrema es una estrategia que utiliza reversiones extremas de la línea K. Juzgará sobre la base del tamaño de la entidad de la última línea K y el valor promedio, y generará señales comerciales cuando el tamaño de la entidad sea mayor que el valor promedio y ocurra una reversión.

Principio de la estrategia

Esta estrategia juzga principalmente el tamaño de la entidad de la línea K actual y el tamaño general de la línea K.

Se registrará el tamaño de la entidad (diferencia entre la apertura y el cierre) de la última línea K y el tamaño total de la línea K (diferencia entre la más alta y la más baja).

Luego utilizará la media móvil de rango verdadero (RMA) para calcular el tamaño promedio de la entidad y el tamaño de la línea K de las últimas 20 líneas K.

Cuando la última línea K se eleva y el tamaño de la entidad es mayor que el tamaño promedio de la entidad, y el tamaño total de la línea K también es mayor de 2 veces el tamaño promedio de la línea K, se genera una señal larga.

Por el contrario, cuando la última línea K cae y el tamaño de la entidad también cumple con las condiciones anteriores, se genera una señal corta.

Es decir, las señales comerciales se generan cuando las líneas K extremas se invierten, juzgando con valores promedio.

Análisis de ventajas

Las principales ventajas de esta estrategia son las siguientes:

  1. Utilice características extremas de la línea K para una fácil inversión
  2. Comparar los valores extremos del tamaño de la entidad y el tamaño global de la línea K para encontrar valores atípicos
  3. Utilizar RMA para calcular promedios dinámicos adaptables a los cambios del mercado
  4. Combinar con patrones de inversión para señales más confiables

Análisis de riesgos

Esta estrategia también tiene algunos riesgos:

  1. Las líneas K extremas no necesariamente se invierten, pueden continuar funcionando
  2. La configuración incorrecta de los parámetros puede causar demasiado sensibilidad o opacidad
  3. Requiere suficiente volatilidad del mercado para apoyar, no adecuado para la consolidación
  4. Puede generar señales comerciales frecuentes, aumentando los costes de transacción y los riesgos de deslizamiento

Para reducir los riesgos, los parámetros se pueden ajustar adecuadamente o se puede añadir un stop loss a las pérdidas de control.

Direcciones de optimización

Esta estrategia puede optimizarse en los siguientes aspectos:

  1. Añadir un filtro de volumen para evitar fallas
  2. Utilice indicadores de volatilidad para optimizar dinámicamente la configuración de parámetros
  3. Combinar indicadores de tendencia para evitar la inversión de largo y corto
  4. Añadir modelos de aprendizaje automático para juzgar la probabilidad de inversión de la línea K
  5. Añadir el mecanismo de stop loss

Resumen de las actividades

La estrategia de configuración de reversión extrema genera señales comerciales cuando ocurren reversiones al juzgar situaciones extremas de la última línea K. Tiene la ventaja de usar características extremas excepcionales de la línea K, pero también tiene algunos riesgos. Se puede obtener un mejor rendimiento de la estrategia a través de la optimización de parámetros y medidas de control de riesgos.


/*backtest
start: 2024-02-13 00:00:00
end: 2024-02-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Extreme Reversal Setup", overlay=true)

bodySize = input(defval=0.75)
barsBack = input(title="Lookback Period", type=input.integer, defval=20, minval=0)
bodyMultiplier = input(title="Bar ATR Multiplier", type=input.float, defval=2.0, minval=0)

myBodySize = abs(close - open)
averageBody = rma(myBodySize, barsBack)
myCandleSize = abs(high - low)
averageCandle = rma(myCandleSize, barsBack)

signal_long = open[1]-close[1] >= bodySize*(high[1]-low[1]) and 
   high[1]-low[1] > averageCandle*bodyMultiplier and 
   open[1]-close[1] > averageBody and close > open
signal_short = close[1]-open[1] >= bodySize*(high[1]-low[1]) and 
   high[1]-low[1] > averageCandle*bodyMultiplier and 
   close[1]-open[1] > averageBody and open > close

plotshape(signal_long, "LONG", shape.triangleup, location.belowbar, size=size.normal)
plotshape(signal_short, "SHORT", shape.triangledown, location.belowbar, size=size.normal)

strategy.entry("LONG", strategy.long, when=signal_long)
strategy.entry("SHORT", strategy.short, when=signal_short)

Más.