estrategia · código abierto
Estrategia de ruptura de la nube de Ichimoku (9 / 26 / 52)
Estrategia Ichimoku: compra el cruce Tenkan/Kijun alcista sobre la nube y sal cuando el precio cierra bajo ella. Reglas, código y backtest con costes reales. Deepwick Script ejecuta un subconjunto de Pine Script.
Reglas de entrada y salida
- Solo largos y una posición a la vez (
strategy.position_size == 0antes de entrar). Las señales se evalúan al cierre de la vela; Deepwick ejecuta las órdenes de mercado en la apertura de la vela siguiente. - Tenkan = punto medio del máximo/mínimo de 9 velas; Kijun = de 26 velas; Span A = (Tenkan + Kijun) / 2; Span B = punto medio de 52 velas. Techo/suelo de la nube = máx/mín de Span A y B.
- Entrada: sin posición, Tenkan cruza por encima de Kijun y el cierre está sobre el techo de la nube → compra en la apertura siguiente.
- Señal de salida: cierre por debajo del suelo de la nube → cierre.
- Bracket de protección desde el precio medio de entrada: stop-loss un 2% por debajo y take-profit un 6% por encima (inputs
Stop Loss %yTake Profit %; Take Profit % = 0 desactiva el objetivo). Stops y objetivos se comprueban siguiendo el recorrido de la vela (apertura → extremo más cercano → extremo más lejano → cierre). - Tamaño y costes en
strategy(): capital inicial 10.000, 10% del capital por operación, comisión del 0,05% por ejecución, slippage no definido (0 por defecto). Los backtests guardados pagan además medio spread real en cada ejecución de mercado y de stop.
Referencia del lenguaje: Deepwick Script.
Ajustes por defecto
| Ajuste | Valor | Mín. | Máx. |
|---|---|---|---|
Tenkan Length | 9 | 5 | 50 |
Kijun Length | 26 | 10 | 100 |
Senkou Span Length | 52 | 20 | 200 |
Stop Loss % | 2 | 0.5 | 10 |
Take Profit % | 6 | 0 | 20 |
Cómo ejecuta Deepwick esta estrategia
- Las órdenes de mercado se ejecutan en la apertura de la vela siguiente.
- Stops y límites siguen el recorrido de la vela: apertura → extremo más cercano → extremo más lejano → cierre.
- Los gaps se ejecutan en la apertura.
- La comisión se cobra en cada ejecución, y el slippage se aplica a las órdenes de mercado y de stop, según lo definido en
strategy().
Código fuente
Deepwick Script (un subconjunto de Pine Script)
//@version=5
strategy("Ichimoku Cloud Breakout", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=10, commission_type=strategy.commission.percent, commission_value=0.05)
conv = input.int(9, "Tenkan Length", minval=5, maxval=50, step=1)
base = input.int(26, "Kijun Length", minval=10, maxval=100, step=1)
span = input.int(52, "Senkou Span Length", minval=20, maxval=200, step=1)
stopPct = input.float(2, "Stop Loss %", minval=0.5, maxval=10, step=0.1)
tpPct = input.float(6, "Take Profit %", minval=0, maxval=20, step=0.1)
colorLine = input.color("color.blue", "Color Line")
colorDown = input.color("color.red", "Color Down")
colorUp = input.color("color.green", "Color Up")
tenkan = (ta.highest(high, conv) + ta.lowest(low, conv)) / 2
kijun = (ta.highest(high, base) + ta.lowest(low, base)) / 2
spanA = (tenkan + kijun) / 2
spanB = (ta.highest(high, span) + ta.lowest(low, span)) / 2
cloudTop = math.max(spanA, spanB)
cloudBot = math.min(spanA, spanB)
longSignal = strategy.position_size == 0 and ta.crossover(tenkan, kijun) and close > cloudTop
exitSignal = strategy.position_size > 0 and close < cloudBot
if longSignal
strategy.entry("Long", strategy.long)
if strategy.position_size > 0
strategy.exit("Risk", stop=stopPct > 0 ? strategy.position_avg_price * (1 - stopPct / 100) : na, limit=tpPct > 0 ? strategy.position_avg_price * (1 + tpPct / 100) : na)
if exitSignal
strategy.close("Long", comment="Cloud re-entry")
p_Tenkan = plot(tenkan, "Tenkan", color=colorLine, linewidth=1)
p_Kijun = plot(kijun, "Kijun", color=colorDown, linewidth=1)
p_Span_A = plot(spanA, "Span A", color=colorUp, linewidth=1)
p_Span_B = plot(spanB, "Span B", color=colorDown, linewidth=1)
fill(p_Span_A, p_Span_B, color=color.new(colorUp, 80))
plotshape(longSignal, "Long", style=shape.triangleup, location=location.belowbar, color=colorUp, text="L")
plotshape(exitSignal, "Exit", style=shape.triangledown, location=location.abovebar, color=colorDown, text="X")
alertcondition(longSignal, "Ichimoku long entry", "Tenkan crossed above Kijun above the cloud")
alertcondition(exitSignal, "Ichimoku exit", "Price re-entered the cloud from below")
Pruébala en Deepwick
- Abre un gráfico de cualquier cripto o CFD.
- Pulsa «Scripts» y añade esta estrategia.
- Pulsa «Run» y revisa las operaciones en el Strategy Tester.
Preguntas frecuentes
¿Qué ajustes de Ichimoku usa?
Los clásicos 9 / 26 / 52. Los tres son inputs: puedes probar otros, por ejemplo para cripto 24/7.
¿Por qué sale solo por debajo de la nube?
Volver dentro de la nube no basta; el script espera un cierre bajo el suelo, lo que da aire a la tendencia pero retrasa la salida. A menudo el stop del 2% actúa antes.