Estrategia de Stop Loss de Ichimoku

El autor:¿ Qué pasa?, fecha: 2023-11-03 17:05:40
Las etiquetas:

img

Resumen general

Esta estrategia es una estrategia de seguimiento de tendencias desarrollada utilizando la nube de Ichimoku y las órdenes de parada. Utiliza la línea de conversión, la línea base y el lapso de retraso de la nube de Ichimoku para determinar la dirección de la tendencia y establece órdenes de parada en los bordes superior e inferior de las bandas de la nube para detener la pérdida.

Estrategia lógica

La estrategia se basa en los siguientes principios:

  1. La línea de conversión es la media de los precios más altos y más bajos durante los últimos 9 días, que refleja los cambios medios de precios recientes.

  2. La línea base es el promedio de los precios más altos y más bajos durante los últimos 26 días, que refleja los cambios medios de precios a medio plazo.

  3. El lapso de retraso es el promedio de los precios más altos y más bajos durante los últimos 52 días, que refleja los cambios medios de los precios a largo plazo.

  4. El promedio de la conversión y las líneas de base forman el tramo principal 1, y el tramo rezagado forma el tramo principal 2. El área entre los dos tramos principales forma las bandas de nubes.

  5. Cuando el precio se rompe por encima de las bandas de nubes, ir largo.

  6. Establezca órdenes de stop loss en los bordes superior e inferior de las bandas de nubes para seguir la tendencia.

Específicamente, la estrategia define las tres líneas de Ichimoku, calcula sus promedios para obtener el intervalo líder 1 y 2. Luego determina la dirección de la tendencia en función de la ruptura del precio a través de los límites superiores o inferiores de la banda de nubes. Después de tomar posiciones largas o cortas, establece órdenes de stop loss basadas en los precios de la banda de nubes para seguir la tendencia con stop loss en su lugar.

Análisis de ventajas

Las ventajas de esta estrategia son:

  1. Ichimoku Cloud determina confiablemente la dirección de la tendencia al incorporar información de precios de múltiples marcos de tiempo, filtrando el ruido del mercado.

  2. El uso de los bordes de la banda de nubes permite un rango de stop loss adecuado y un buen seguimiento de la tendencia.

  3. La estrategia es estable y confiable, Ichimoku Cloud filtra el ruido y controla el riesgo de pérdida.

  4. Ajuste flexible de los parámetros: se pueden ajustar los períodos de conversión, base y lapso de retraso para adaptarse al mercado.

  5. La lógica es clara y fácil de entender.

Análisis de riesgos

Los riesgos de la estrategia incluyen:

  1. Los movimientos de precios volátiles pueden desencadenar el stop loss y la salida de posiciones rentables.

  2. Las sacas en los mercados variados, los disparadores de stop loss frecuentes conducen a un exceso de operaciones.

  3. Riesgo de parámetros: la configuración incorrecta de los intervalos de conversión, base y retraso puede hacer que el intervalo de pérdida de parada sea demasiado amplio o estrecho.

  4. Costo de deslizamiento en futuros: las órdenes frecuentes pueden llevar a costos de deslizamiento excesivos que afectan a las ganancias.

  5. Tiempo de inactividad, problemas de red, errores pueden afectar la ejecución de la operación.

Para hacer frente a estos riesgos, se debe optimizar los parámetros, los algoritmos de stop loss, mejorar la estabilidad del servidor, la gestión adecuada del riesgo y realizar pruebas de estrategia exhaustivas.

Direcciones de optimización

La estrategia se puede optimizar en los siguientes aspectos:

  1. Optimizar la configuración de los parámetros probando diferentes combinaciones de períodos para encontrar valores óptimos.

  2. Mejorar los algoritmos de stop loss con trailing stops, volatility stops, etc. para reducir los factores que desencadenan los stop loss.

  3. Incorporar indicadores adicionales como MACD, KDJ para mejorar la toma de decisiones.

  4. Añadir la función de cierre automático de pérdidas para limitar las pérdidas.

  5. Implementar el mecanismo de reentrada después de la salida de stop loss.

  6. Optimizar la gestión del dinero mediante el dimensionamiento dinámico de las posiciones.

Conclusión

En general, la estrategia tiene una lógica clara, utiliza la nube Ichimoku para la dirección de la tendencia y bandas de nube para el seguimiento de stop loss, controlando eficazmente el riesgo y teniendo utilidad práctica.


/*backtest
start: 2022-10-27 00:00:00
end: 2023-11-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title = "Noro's Ichimoku Stop Strategy", shorttitle = "Ichimoku Stop Strategy", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
conversionPeriods = input(9, minval = 1, title = "Conversion Periods")
basePeriods = input(26, minval = 1, title = "Base Periods")
laggingSpan2Periods = input(52, minval = 1, title = "Lagging Span")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//Ichimoku
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

//Cloud
p1 = plot(leadLine1, offset = basePeriods, color=color.green, title="Lead 1", transp = 100)
p2 = plot(leadLine2, offset = basePeriods, color=color.red, title="Lead 2", transp = 100)
fill(p1, p2)

//Signals
max = max(leadLine1[basePeriods], leadLine2[basePeriods])
min = min(leadLine1[basePeriods], leadLine2[basePeriods])
up = low > max
dn = high < min

if max > 0
    strategy.entry("Long", strategy.long, needlong ? na : 0, stop = max)
    strategy.entry("Short", strategy.short, needshort ? na : 0, stop = min)

Más.