En la carga de los recursos... Cargando...

Estrategia de comercio de Ichimoku

El autor:¿ Qué pasa?, Fecha: 14 de septiembre de 2023 16:13:33
Las etiquetas:

Estrategia lógica

Esta estrategia LONG-ONLY utiliza el sistema Ichimoku Kinko Hyo para las operaciones. Combina múltiples factores Ichimoku para ir largo cuando se cumplen los criterios.

La lógica de negociación es:

  1. Calcular la conversión, la línea de base, los tramos principales 1 y 2

  2. Considere largo cuando el cierre está por encima de la nube y la nube está aumentando, con la conversión por encima de la línea de base

  3. Además, el lapso de retraso debe estar por encima de la nube y el precio para la confirmación de tendencia alcista

  4. Cuando todos los criterios se cumplen, ir largo

  5. Si el lapso de retraso cae por debajo del precio o de la nube, cierre largo

La estrategia utiliza los indicadores de Ichimoku para confirmar la tendencia, con la nube como paradas dinámicas para el control de riesgos.

Ventajas

  • Ichimoku sintetiza múltiples factores para la determinación de la tendencia

  • Paradas dinámicas para maximizar el bloqueo de ganancias

  • Normas sencillas y claras para una fácil aplicación

Los riesgos

  • Ichimoku es lento y puede perder oportunidades.

  • Se requiere una optimización cuidadosa de los períodos de revisión

  • Solo por mucho tiempo, así que buenas oportunidades cortas perdidas

Resumen de las actividades

Esta estrategia aprovecha la síntesis de indicadores de Ichimoku para definir la dirección de la tendencia. Con parámetros optimizados, proporciona un sistema simple de solo largo.


/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Ichimoku Cloud", shorttitle="Doubled Ichimoku", overlay=true, initial_capital=1000, default_qty_value=100, default_qty_type=strategy.percent_of_equity)
conversionPeriods = input(20, minval=1, title="Conversion Line Length")
basePeriods = input(60, minval=1, title="Base Line Length")
laggingSpan2Periods = input(120, minval=1, title="Leading Span B Length")
displacement = input(30, minval=1, title="Displacement")
Stoploss = input(1, minval=0.1, title="Stoploss (% below cloud)") 
donchian(len) => avg(lowest(len), highest(len))
conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
plot(conversionLine, color=#2962FF, title="Conversion Line")
plot(baseLine, color=#B71C1C, title="Base Line")
plot(close, offset = -displacement + 1, color=#43A047, title="Lagging Span")

p1 = plot(leadLine1, offset = displacement - 1, color=#A5D6A7,
	 title="Leading Span A")
p2 = plot(leadLine2, offset = displacement - 1, color=#EF9A9A,
	 title="Leading Span B")
fill(p1, p2, color = leadLine1 > leadLine2 ? color.rgb(67, 160, 71, 90) : color.rgb(244, 67, 54, 90))

bool TKcross = conversionLine > baseLine
bool aboveCloud = close > leadLine1 and close > leadLine2
bool greenCloud = leadLine1 > leadLine2
bool lagLong = close > leadLine1[2*displacement+1] and close > leadLine2[2*displacement+1] and close > close[displacement]
bool longCondition = false
bool close_trade = crossover(leadLine1[displacement], close) or crossover (leadLine2[displacement], close) or close < close[displacement] or crossover(baseLine, close)
var position_count = 0 

if (TKcross and aboveCloud and greenCloud and lagLong and position_count==0)
    position_count = 1
    strategy.entry(id="buy", long=true)

if (close_trade)
    strategy.close_all()
   // strategy.entry(id="sell", long=false)
    position_count = 0

    
//if (longCondition)
   
//    strategy.close("long", when=exit_trade)
//    strategy.exit("exit","long",stop=stop_level,limit=profit_level)

Más.