Estrategia de optimización de la tasa de cambio

El autor:¿ Qué pasa?, Fecha: 2024-02-20 13:54:49
Las etiquetas:

img

Resumen general

Esta estrategia optimiza la estrategia original de tasa de cambio (ROC).

  1. Introducir el valor máximo histórico de ROC para la comparación dinámica con el ROC actual para obtener el valor relativo de impulso.
  2. Limpia el valor de momento relativo para generar señales.
  3. Añadir los umbrales de las señales de compra y venta.

A través de estas medidas de optimización, se pueden filtrar muchas señales inválidas para hacer que la estrategia sea más estable y confiable.

Principio de la estrategia

El indicador central de esta estrategia es la tasa de cambio (ROC). ROC mide la tasa de cambio en los precios de las acciones durante un cierto período. Esta estrategia primero calcula el valor de ROC durante un período de 9. Luego registra el valor máximo de este indicador de ROC en los últimos 200 períodos y calcula el ROC actual como un porcentaje del ROC histórico máximo para obtener la fuerza relativa del impulso. Por ejemplo, si el ROC más alto en los últimos 200 días alcanzó el 100, entonces la fuerza relativa es del 80% cuando el ROC de hoy es 80.

La fuerza relativa se suaviza con una SMA de 10 períodos para filtrar las fluctuaciones a corto plazo y obtener una curva suave. Cuando la curva suave aumenta continuamente durante 3 días y el valor está por debajo del -80%, se considera que la caída del precio de la acción comienza a desacelerarse y aparece el signo de fondo, así que vaya largo; cuando la curva suave cae continuamente durante 3 días y el valor está por encima del 80%, se considera que el aumento del precio de la acción comienza a desacelerarse y aparece el signo superior, por lo que la posición cercana.

Análisis de ventajas

En comparación con la estrategia original de ROC, esta estrategia presenta las siguientes ventajas principales:

  1. La introducción de la comparación de los valores históricos máximos de ROC puede medir eficazmente el nivel relativo de los indicadores de impulso y filtrar las señales no válidas con valores absolutos que no son lo suficientemente altos.
  2. El procesamiento suavizado filtra el ruido y hace que las señales sean más estables y confiables.
  3. El establecimiento de umbrales de compra y venta reduce las transacciones inválidas.

En general, esta estrategia procesa eficazmente el indicador ROC para hacerlo más adecuado para el comercio en vivo.

Análisis de riesgos

Los principales riesgos de esta estrategia son:

  1. El indicador ROC no puede determinar las tendencias del mercado y hay algunos engaños.
  2. Los umbrales de compra y venta no son perfectos. Establecer los umbrales demasiado altos o demasiado bajos afectará el rendimiento de la estrategia.
  3. La configuración incorrecta de los parámetros SMA también afectará a los resultados de la estrategia.

Para reducir los riesgos anteriores, considere combinar indicadores de tendencia para determinar las tendencias principales; ajustar los parámetros de umbral y probar los parámetros óptimos; optimizar los parámetros del ciclo SMA.

Direcciones de optimización

La estrategia se puede optimizar de las siguientes maneras:

  1. Combinar indicadores de tendencia para determinar la dirección general del mercado y evitar fallos durante la conversión alcista.
  2. Prueba los parámetros de longitud del ROC y los parámetros de umbral de compra y venta para encontrar las combinaciones óptimas de parámetros.
  3. Optimizar los parámetros de suavizado SMA para encontrar los mejores parámetros.
  4. Aumentar el mecanismo de stop loss.

Resumen de las actividades

Esta es una estrategia de optimización basada en el desarrollo secundario del indicador ROC. Introduce medios como comparación de valores máximos históricos, suavización de SMA y umbrales de compra y venta para filtrar señales inválidas y hacer que la estrategia sea más estable. La principal ventaja es la alta calidad de la señal, que es adecuada para el comercio en vivo. Se pueden realizar mejoras de seguimiento combinando tendencias, optimización de parámetros y así sucesivamente para mejorar aún más el rendimiento de la estrategia.


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

//@version=5
strategy(title="Rate Of Change Mod Strategy", shorttitle="ROC", format=format.price, precision=2)
//length = input.int(9, minval=1)
//source = input(close, "Source")
//roc = 100 * (source - source[length])/source[length]
//plot(roc, color=#2962FF, title="ROC")
//hline(0, color=#787B86, title="Zero Line")

length = input.int(9, minval=1, title="Length")
maxHistory = input(200, title="Max Historical Period for ROC")
lenghtSmooth = input.int(10, minval=1, title="Length Smoothed ROC")
lenghtBUY = input.int(-80, title="Buy Threshold")
lenghtSELL = input.int(80, title="Buy Threshold")

source = close
roc = 100 * (source - source[length]) / source[length]

// Calculate the maximum ROC value in the historical period
maxRoc = ta.highest(roc, maxHistory)

// Calculate current ROC as a percentage of the maximum historical ROC
rocPercentage = (roc / maxRoc) * 100


rocPercentageS = ta.sma(rocPercentage, lenghtSmooth)
if ta.rising(rocPercentageS, 3) and rocPercentageS < lenghtBUY
    strategy.entry("Buy", strategy.long)

if ta.falling(rocPercentageS, 3) and rocPercentageS > lenghtSELL
    strategy.close("Buy")


plot(rocPercentage, color=color.new(color.blue, 0), title="Percentage ROC")
plot(rocPercentageS, color=color.new(#21f32c, 0), title="Percentage ROC")
hline(0, color=color.new(color.gray, 0), title="Zero Line")


Más.