Estrategia de seguimiento de la inversión de impulso

El autor:¿ Qué pasa?, Fecha: 2024-01-17 15:46:21
Las etiquetas:

img

Resumen general

Esta estrategia utiliza el indicador Parabolic SAR para identificar puntos de inflexión en las tendencias de los precios de las acciones y entra en posiciones largas o cortas cuando ocurren reversiones.

Estrategia lógica

El indicador central de esta estrategia es el SAR parabólico. Este indicador puede identificar tendencias ascendentes y descendentes en los precios de las acciones. Cuando los precios suben, los puntos SAR permanecen por debajo de los precios. Cuando los precios caen, los puntos SAR saltan por encima de los precios. La estrategia detecta el cruce entre el precio y los puntos SAR como señales comerciales.

La condición larga es:closepor encimasar, que indica que la línea de precios ha cruzado por encima de los puntos SAR desde abajo, una señal larga.closeabajosarAsí que la lógica central de esta estrategia es rastrear los puntos de inversión en el impulso de los precios y el comercio en los cruces.

Ventajas

La mayor ventaja de esta estrategia es que puede identificar automáticamente los puntos de inflexión en las tendencias de precios sin interferencia manual, evitando errores comunes como perseguir picos y matar caídas.

Además, SAR reacciona sensiblemente a los cambios de precios, capturando retrocesos menores a tiempo. Esto es importante para estrategias que apuntan a una alta tasa de ganancia y a operaciones frecuentes.

Los riesgos

El principal riesgo es que el SAR pueda reaccionar de manera exagerada a pequeñas oscilaciones de precios, generando señales falsas y causando un exceso de negociación, aumentando los costos y el deslizamiento.

Además, en tendencias alcistas o bajistas fuertes, los parámetros SAR como los valores de inicio e incremento podrían afectar la precisión y puntualidad de la captura de inversiones de tendencia.

El tamaño inadecuado de las posiciones, la reacción excesiva a las señales SAR pueden dar lugar a una exposición fluctuante, lo que aumenta las dificultades prácticas en el comercio.

Mejoramiento

La estrategia se puede optimizar en los siguientes aspectos:

  1. Optimizar los parámetros SAR para una mayor precisión de las señales

  2. Añadir filtros para evitar señales falsas causadas por SAR

  3. Emplear el tamaño adecuado de las posiciones y el stop loss para controlar los riesgos

  4. Incorporar filtros de tendencia para evitar cambios en los mercados variados

  5. Optimizar los precios de entrada y salida teniendo en cuenta los costes y el deslizamiento para mejorar la eficiencia

Conclusión

La estrategia se basa principalmente en el SAR para determinar los puntos de inversión de tendencia. Tiene una capacidad de identificación de tendencia confiable. Cuando se optimiza, puede servir como una tendencia efectiva siguiendo la estrategia ajustando automáticamente las posiciones para capturar los movimientos de precios direccionales.


/*backtest
start: 2023-12-17 00:00:00
end: 2024-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Parabolic SAR Strategy", shorttitle="PSAR", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Parabolic SAR settings
start = input(0.02, title="Start")
increment = input(0.02, title="Increment")
maximum = input(0.2, title="Maximum")

// Calculate Parabolic SAR
sar = ta.sar(start, increment, maximum)

// Plot Parabolic SAR on the chart
plot(sar, color=color.red, title="Parabolic SAR")

// Strategy logic
longCondition = ta.crossover(close, sar)
shortCondition = ta.crossunder(close, sar)

// Execute strategy orders
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

// Plot buy and sell signals on the chart
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar, text="Buy")
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar, text="Sell")

// Calculate equity manually
equity = strategy.equity
equity_str = str.tostring(equity)
equity_plot = plot(equity, title="Equity", color=color.blue, linewidth=2)

// Update equity plot only on bar close to avoid repainting issues
label.new(bar_index, na, text=equity_str, style=label.style_none, color=color.blue, yloc=yloc.abovebar)


Más.