Estrategia de negociación para el día de la nube de Ichimoku

El autor:¿ Qué pasa?, Fecha: 2023-10-16 16:10:55
Las etiquetas:

img

Resumen general

Esta estrategia implementa la negociación de acciones intradiarias utilizando líneas de la Nube Ichimoku. Pertenece a las estrategias de negociación a corto plazo. Utiliza la línea de conversión, la línea base y las líneas principales de la Nube Ichimoku para generar señales de negociación, y utiliza SAR parabólico para el seguimiento de pérdidas, logrando una doble protección.

Principios

La nube de Ichimoku consiste en la línea de conversión, la línea base, la línea principal 1 y la línea principal 2. La línea de conversión es el promedio del precio de cierre y los precios más altos y más bajos en los últimos 9 días, lo que refleja el estado de equilibrio reciente del precio de la acción. La línea base es el promedio de los precios más altos y más bajos en los últimos 26 días, lo que representa el estado de equilibrio a medio y largo plazo. La línea principal 1 es el promedio de la línea base y la línea de conversión, lo que refleja la tendencia futura. La línea principal 2 es el promedio de los precios más altos y más bajos en los últimos 52 días. Estas líneas de equilibrio se combinan para formar las señales comerciales.

Cuando el precio de cierre rompe la línea base hacia arriba y está por encima de la línea líder 2, se genera una señal de compra. Cuando el precio de cierre rompe la línea base hacia abajo y está por debajo de la línea líder 1, se genera una señal de venta.

Esta estrategia utiliza la combinación de líneas de equilibrio para determinar las tendencias futuras de precios y la sostenibilidad de la tendencia actual. Pertenece a las estrategias típicas de seguimiento de tendencias. Sigue la tendencia al operar cuando aparecen señales de compra y venta. Mientras tanto, el mecanismo SAR stop loss and take profit evita aumentar las pérdidas.

Ventajas

  1. El uso de líneas de equilibrio para determinar las tendencias futuras mejora la precisión

Las líneas de equilibrio contienen información de precios de diferentes períodos, reflejando los cambios en las tendencias de antemano.

  1. La parada trasera de SAR proporciona una doble protección

SAR puede rastrear el precio de las acciones de manera flexible para el stop loss. Combinándose con líneas de equilibrio, permite un stop loss oportuno después de tomar ganancias, evitando pérdidas ampliadas.

  1. Parámetros sencillos, fáciles de implementar

Esta estrategia tiene parámetros mínimos sin indicadores técnicos complejos como el ajuste de curvas, simple y práctico de implementar.

  1. Apto para operaciones intradiarias y de corto plazo

Identifica las señales comerciales de los cambios de precios intradiarios, adecuadas para el comercio a corto plazo.

Los riesgos

  1. Riesgo de utilización

La tendencia que sigue a la negociación conduce a una mayor reducción de las pérdidas. Los niveles razonables de stop loss deben establecerse para limitar la pérdida por operación.

  1. Riesgo de la sierra

Las señales comerciales frecuentes pueden generarse durante los mercados de rango limitado, desfavorables para la rentabilidad.

  1. Riesgo de optimización excesiva

Los parámetros simples son susceptibles a la sobre-optimización. El rendimiento comercial real puede no ser ideal. Las pruebas de robustez deben llevarse a cabo para evitar el sobreajuste.

  1. Los resultados varían según los instrumentos

El rendimiento depende de los instrumentos de negociación. Las acciones de tendencia con tendencias claras deben elegirse para maximizar la eficacia de la estrategia.

Oportunidades de mejora

  1. Añadir filtros con otros indicadores

Otros indicadores como las medias móviles se pueden agregar para filtrar señales inciertas y evitar operaciones falsas.

  1. Ajuste dinámico del stop loss

Los parámetros SAR se pueden ajustar dinámicamente en función de la volatilidad del mercado, para un stop loss más flexible.

  1. Optimización de parámetros

Una optimización más sistemática y pruebas combinatorias pueden encontrar mejores conjuntos de parámetros para mejorar el rendimiento.

  1. Ajuste del tamaño de las posiciones según el régimen de mercado

El tamaño de la posición y el apalancamiento pueden ajustarse dinámicamente en función de las condiciones del mercado, como las tendencias del índice, para controlar los riesgos.

Conclusión

Esta estrategia utiliza las señales de trading de Ichimoku Cloud y Parabolic SAR para el seguimiento de stop loss. Es una estrategia de trading simple y práctica a corto plazo. Capitaliza en la capacidad de predicción de tendencias de Ichimoku Cloud para el comercio de ruptura. El mecanismo de stop loss evita aumentar las pérdidas. Se necesita un control de descenso adecuado, selección de acciones y ajuste de parámetros para la implementación.


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

//@version=3
//
//  Based on the trading strategy described at
//    http://stockcharts.com/school/doku.php?id=chart_school:trading_strategies:ichimoku_cloud
//
//  See Also:
//    - Backtesting and forwardtesting (of TradingView Strategies) <https://www.tradingview.com/wiki/Strategies#Backtesting_and_forwardtesting>
//    - 9 Mistakes Quants Make that Cause Backtests to Lie <https://blog.quantopian.com/9-mistakes-quants-make-that-cause-backtests-to-lie-by-tucker-balch-ph-d/>
//    - When Backtests Meet Reality <http://financial-hacker.com/Backtest.pdf>
//    - Why MT4 backtesting does not work <http://www.stevehopwoodforex.com/phpBB3/viewtopic.php?f=28&t=4020>
//
// 
// -----------------------------------------------------------------------------
// Copyright 2018 sherwind
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// The GNU General Public License can be found here
// <http://www.gnu.org/licenses/>.
//
// -----------------------------------------------------------------------------
//

strategy(title="Ichimoku Cloud Strategy", shorttitle="Ichimoku Strategy", overlay=true, pyramiding=3)

conversionPeriods   = input(9,  minval=1, title="Conversion Line Periods"),
basePeriods         = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement        = input(26, minval=1, title="Displacement")

usePSARTrailStop    = input(true, title="Use Parabolic SAR for Trailing Stop")
psarStart           = input(0.02, title="Parabolic SAR Start")
psarIncrement       = input(0.02, title="Parabolic SAR Increment")
psarMaximum         = input(0.2,  title="Parabolic SAR Maximum")


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

conversionLine = donchian(conversionPeriods)
baseLine  = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)
leadLineDisp1 = leadLine1[displacement]
leadLineDisp2 = leadLine2[displacement]

psar = sar(psarStart, psarIncrement, psarMaximum)

// BUY Signal:
// close > leading span b and
// leading span a > leading span b and 
// close crosses over base line and
// close > parabolic sar
buySignal = close > leadLineDisp2 and
  leadLineDisp1 > leadLineDisp2 and
  crossover(close, baseLine) and
  (usePSARTrailStop ? close > psar : not usePSARTrailStop)

// Sell Signal:
// close < leading span a and 
// leading span a < leading span b and 
// close crosses under base line and
// close < psar
sellSignal = close < leadLineDisp1 and
  leadLineDisp1 < leadLineDisp2 and
  crossunder(close, baseLine) and
  (usePSARTrailStop ? close < psar : not usePSARTrailStop)

hasLong  = strategy.position_size > 0
hasShort = strategy.position_size < 0


strategy.entry("ichimoku-long", strategy.long, when = buySignal)
strategy.entry("ichimoku-short", strategy.short, when = sellSignal)

strategy.exit("trailstop-long", "ichimoku-long", stop = psar, when = hasLong and usePSARTrailStop)
strategy.exit("trailstop-short", "ichimoku-short", stop = psar, when = hasShort and usePSARTrailStop)


Más.