Tendencia de las nubes tempranas de Ichimoku siguiendo la estrategia

El autor:¿ Qué pasa?, Fecha: 2023-12-12 16:11:09
Las etiquetas:

img

Resumen general

La estrategia de seguimiento de tendencias de la nube temprana de Ichimoku es una estrategia de seguimiento de tendencias basada en el popular indicador de la nube de Ichimoku. Utiliza las líneas de cruce de la nube de Ichimoku para generar señales de entrada tempranas y capturar tendencias con anticipación.

Estrategia lógica

La estrategia se basa principalmente en los siguientes elementos:

  1. Construye la Nube Ichimoku usando la Línea de Conversión y la Línea de Base, y traza la nube con un desplazamiento de 26 períodos.

  2. Activar una señal larga cuando se rompe cerca por encima de la parte superior de la nube; activar una señal corta cuando se rompe cerca por debajo de la parte inferior de la nube.

  3. Requiere cerrar también romper el máximo/min de las líneas de conversión y base para filtrar las falsas rupturas.

  4. Opcionalmente establecer un stop loss del 5% basado en el precio de entrada.

Con este tipo de filtrado de múltiples capas, puede identificar eficazmente los puntos de inversión de tendencia y capturar oportunamente las oportunidades comerciales emergentes.

Ventajas

La estrategia tiene las siguientes ventajas:

  1. Las líneas de cruce de la nube de Ichimoku tienen una clara indicación temprana antes de la inversión de tendencia.
  2. La inclusión de medias móviles evita una falsa ruptura debido a brechas durante la noche.
  3. Las condiciones de filtro múltiples reducen las señales falsas y mejoran la calidad de la señal.
  4. Los períodos de retención más largos resultan en reducciones de los retiros y en una obtención más fácil de beneficios.
  5. Aplicable a diferentes productos, especialmente a los instrumentos de tendencia.

Los riesgos

También hay algunos riesgos a tener en cuenta:

  1. Funciona mejor para los mercados de tendencia; puede generar más señales falsas durante los períodos de rango.
  2. Los parámetros de Ichimoku necesitan ser optimizados para diferentes productos.
  3. La colocación de stop loss requiere precaución para evitar una salida prematura.
  4. Relativamente baja frecuencia de señal, tiende a perder oportunidades a corto plazo.

Los riesgos pueden reducirse:

  1. Seleccione productos con tendencias fuertes, evite productos variados.
  2. Optimice los parámetros de Ichimoku para diferentes plazos para encontrar las mejores combinaciones.
  3. Emplear el stop loss para controlar las pérdidas en operaciones individuales.
  4. Añadir otros indicadores para aumentar la frecuencia de la señal.

Mejoras

La estrategia puede mejorarse aún más en los siguientes aspectos:

  1. Añadir el tamaño de la posición a la cantidad de control negociada programáticamente a través destrategy.position_size.

  2. Añadir filtro de seguridad universo para detectar automáticamente la fuerza de la tendencia a través desecurity().

  3. Incorporar técnicas de toma de pérdidas/ganancias para la gestión del riesgo.

  4. Construir un sistema de múltiples indicadores que combine indicadores como bandas de Bollinger y RSI para mejorar la calidad de la señal.

  5. Aplicar el aprendizaje automático para juzgar la confiabilidad de la señal y ajustar dinámicamente las cantidades de pedido.

Conclusión

La estrategia de seguimiento de tendencias de la nube temprana de Ichimoku utiliza la nube de Ichimoku para la identificación temprana de tendencias, reforzada por filtros de promedio móvil, para detectar de manera confiable oportunidades comerciales de alta calidad.


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © QuantCT

//@version=4
strategy("Ichimoku Cloud Strategy Idea",
         shorttitle="Ichimoku", 
         overlay=true,
         pyramiding=0,     
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=99, 
         initial_capital=1000,           
         commission_type=strategy.commission.percent, 
         commission_value=0.1)

// ____ Inputs

conversion_period = input(9, minval=1, title="Conversion Line Period")
base_period = input(26, minval=1, title="Base Line Period")
lagging_span2_period = input(52, minval=1, title="Lagging Span 2 Period")
displacement = input(26, minval=1, title="Displacement")
long_only = input(title="Long Only", defval=false)
slp = input(title="Stop-loss (%)", minval=1.0, maxval=25.0, defval=5.0)
use_sl = input(title="Use Stop-Loss", defval=false)

// ____ Logic

donchian(len) => avg(lowest(len), highest(len))

conversion_line = donchian(conversion_period)
base_line = donchian(base_period)
lead_line1 = avg(conversion_line, base_line)
lead_line2 = donchian(lagging_span2_period)
chikou = close

chikou_free_long = close > high[displacement] and close > max(lead_line1[2 * displacement], lead_line2[2 * displacement])
enter_long = chikou_free_long and close > max(lead_line1[displacement], lead_line2[displacement])
exit_long = close < lead_line1[displacement] or close < lead_line2[displacement]

chikou_free_short = close < low[displacement] and  close < min(lead_line1[2 * displacement], lead_line2[2 * displacement])
enter_short = chikou_free_short and close < min(lead_line1[displacement], lead_line2[displacement])
exit_short = close > lead_line1[displacement] or close > lead_line2[displacement]

strategy.entry("Long", strategy.long, when=enter_long)
strategy.close("Long", when=exit_long) 
if (not long_only)
    strategy.entry("Short", strategy.short, when=enter_short)
    strategy.close("Short", when=exit_short) 

// ____ SL

sl_long = strategy.position_avg_price * (1- (slp/100))
sl_short = strategy.position_avg_price * (1 + (slp/100))
if (use_sl)
    strategy.exit(id="SL", from_entry="Long", stop=sl_long)
    strategy.exit(id="SL", from_entry="Short", stop=sl_short)

// ____ Plots

colors = 
 enter_long ? #27D600 :
 enter_short ? #E30202 :
 color.orange
 
p1 = plot(lead_line1, offset = displacement, color=colors,
	 title="Lead 1")
p2 = plot(lead_line2, offset = displacement, color=colors,
	 title="Lead 2")
fill(p1, p2, color = colors)
plot(chikou, offset = -displacement, color=color.blue)



Más.