Estrategia de confirmación de la tendencia Heikin-Ashi sin repintado

HA NRTS TCS EQTY MGMT
Fecha de creación: 2025-03-28 17:35:26 Última modificación: 2025-03-28 17:35:26
Copiar: 2 Número de Visitas: 416
2
Seguir
319
Seguidores

Estrategia de confirmación de la tendencia Heikin-Ashi sin repintado Estrategia de confirmación de la tendencia Heikin-Ashi sin repintado

Descripción general

Se trata de una innovadora estrategia de confirmación de tendencias Heikin-Ashi, sin replantear, que tiene como objetivo resolver el problema de replantear la estrategia de Heikin-Ashi en el TradingView tradicional. La estrategia ofrece un método de negociación más fiable y transparente mediante el cálculo manual de Heikin-Ashi y el mecanismo de confirmación de tendencias múltiples.

Principio de estrategia

El principio central de la estrategia incluye tres pasos clave:

  1. El cálculo de las cuentas de Hacanásio no se realizó manualmente:

    • El precio de cierre, el precio de apertura, el precio más alto y el precio más bajo se calculan con una fórmula única
    • Asegurar que los datos de precios históricos se mantengan estables en las actualizaciones posteriores de la línea K
    • Evitar los problemas de replanteo que suelen surgir en las estrategias tradicionales de Haikanasi
  2. Las múltiples tendencias confirman:

    • La demanda de una serie de fuentes de confirmación de tendencias
    • Se necesita una serie de X-rays para ver si hay una señal de entrada larga.
    • Se necesita una raíz X de bajadas continuas
    • Mejorar la fiabilidad de las estrategias mediante la filtración de señales falsas mediante múltiples confirmaciones
  3. Modelo de negociación flexible:

    • Apoyo al modelo tradicional de seguir la tendencia
    • Ofrecer opciones de cambio de tendencia
    • Modos de transacción personalizados (todo, sólo más, sólo vacío)

Ventajas estratégicas

  1. Eliminación de los problemas de replanteo: los datos históricos se mantienen estables y los resultados de las respuestas son altamente coherentes con la ejecución en disco
  2. Confirmación de múltiples tendencias: Reducción de transacciones innecesarias mediante filtración continua de señales falsas
  3. La altura se puede personalizar:
    • Ajustes flexibles de entrada y salida
    • Apoyo al seguimiento de la tendencia y al cambio de tendencia
    • Se puede ocultar la línea K estándar para proporcionar una visión clara
  4. Apto para operaciones a medio y largo plazo: especialmente para operaciones de oscilación y seguimiento de tendencias

Riesgo estratégico

  1. Limitaciones de rendimiento:

    • No es adecuado para el comercio de alta frecuencia de scalping
    • El rendimiento de los mercados convulsionados puede ser peor cuando no hay una tendencia clara.
    • Se requiere ajuste de parámetros para diferentes marcos de tiempo
  2. Control de riesgos potenciales:

    • Se recomienda la creación de mecanismos adecuados de prevención de daños
    • Parámetros de optimización continua en diferentes condiciones de mercado
    • Verificación cruzada con otros indicadores técnicos

Dirección de optimización de la estrategia

  1. Ajuste dinámico de los parámetros:

    • Desarrollo de algoritmos de entrada y salida adaptados
    • Ajuste en tiempo real del número de tiros consecutivos en función de la volatilidad del mercado
    • Introducción de algoritmos de aprendizaje automático para optimizar la selección de parámetros
  2. Mejoras en la gestión de riesgos:

    • Gestión de posiciones dinámica integrada
    • Añadir un filtro de relevancia
    • Desarrollo de mecanismos más inteligentes para detener los daños
  3. Combinación de indicadores:

    • Combinado con otros indicadores técnicos (como el RSI, el MACD)
    • Desarrollo de sistemas de reconocimiento de múltiples indicadores
    • Mejora de la precisión y fiabilidad de la señal

Resumir

La estrategia de confirmación de tendencias de replanteo de Haikansa en África del Sur ofrece a los comerciantes una herramienta de negociación más fiable y transparente a través de su innovador cálculo de la cuota y sus métodos de confirmación de tendencias múltiples. La estrategia muestra el potencial de innovación tecnológica en el comercio cuantitativo al eliminar problemas de replanteo, filtrar falsas señales y proporcionar un modelo de negociación flexible.

Código Fuente de la Estrategia
/*backtest
start: 2025-03-15 00:00:00
end: 2025-03-27 00:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
//© PineIndicators

strategy("Heikin-Ashi Non-Repainting Strategy [PineIndicators]", overlay=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, max_boxes_count=500, max_labels_count=500, max_lines_count=500, commission_value=0.01, process_orders_on_close=true, slippage= 2, behind_chart=false)

//====================================
// INPUTS
//====================================
// Number of consecutive candles required for entry and exit
openThreshold = input.int(title="Number of Candles for Entry", defval=2, minval=1)
exitThreshold = input.int(title="Number of Candles for Exit", defval=2, minval=1)
// Trade mode selection: "Long & Short", "Only Long", or "Only Short"
tradeMode = input.string(title="Trade Mode", defval="Only Long", options=["Long & Short", "Only Long", "Only Short"])
// Option to invert the trading logic (bullish signals become short signals, and vice versa)
invertTrades = input.bool(title="Invert Trading Logic (Long ↔ Short)", defval=false)
// Option to hide the standard candles (bodies only)
hideStandard = input.bool(title="Hide Standard Candles", defval=true)
// Heikin-Ashi transparency is fixed (0 = fully opaque)
heikinTransparency = 0

//====================================
// HIDE STANDARD CANDLES
//====================================
// Hide the body of the standard candles by setting them to 100% transparent.
// Note: The wicks of the standard candles cannot be hidden via code.
barcolor(hideStandard ? color.new(color.black, 100) : na)

//====================================
// HEIKIN-ASHI CALCULATION
//====================================
// Calculate Heikin-Ashi values manually
haClose = (open + high + low + close) / 4
var float haOpen = na
haOpen := na(haOpen[1]) ? (open + close) / 2 : (haOpen[1] + haClose[1]) / 2
haHigh = math.max(high, math.max(haOpen, haClose))
haLow  = math.min(low, math.min(haOpen, haClose))

// Define colors for Heikin-Ashi candles (using fixed transparency)
bullColor = color.new(#0097a7, heikinTransparency)
bearColor = color.new(#ff195f, heikinTransparency)

//====================================
// PLOT HEIKIN-ASHI CANDLES
//====================================
// Plot the manually calculated Heikin-Ashi candles over the chart.
// The candle body, wicks, and borders will be colored based on whether the candle is bullish or bearish.
plotcandle(haOpen, haHigh, haLow, haClose, title="Heikin-Ashi", 
     color       = haClose >= haOpen ? bullColor : bearColor,
     wickcolor   = haClose >= haOpen ? bullColor : bearColor,
     bordercolor = haClose >= haOpen ? bullColor : bearColor,
     force_overlay = true)

//====================================
// COUNT CONSECUTIVE TREND CANDLES
//====================================
// Count the number of consecutive bullish or bearish Heikin-Ashi candles.
var int bullishCount = 0
var int bearishCount = 0

if haClose > haOpen
    bullishCount := bullishCount + 1
    bearishCount := 0
else if haClose < haOpen
    bearishCount := bearishCount + 1
    bullishCount := 0
else
    bullishCount := 0
    bearishCount := 0

//====================================
// DEFINE ENTRY & EXIT SIGNALS
//====================================
// The signals are based on the number of consecutive trend candles.
// In normal logic: bullish candles trigger a long entry and bearish candles trigger a short entry.
// If invertTrades is enabled, the signals are swapped.
var bool longEntrySignal  = false
var bool shortEntrySignal = false
var bool exitLongSignal   = false
var bool exitShortSignal  = false

if not invertTrades
    longEntrySignal  := bullishCount >= openThreshold
    shortEntrySignal := bearishCount >= openThreshold
    exitLongSignal   := bearishCount >= exitThreshold
    exitShortSignal  := bullishCount >= exitThreshold
else
    // Inverted logic: bullish candles trigger short entries and bearish candles trigger long entries.
    longEntrySignal  := bearishCount >= openThreshold
    shortEntrySignal := bullishCount >= openThreshold
    exitLongSignal   := bullishCount >= exitThreshold
    exitShortSignal  := bearishCount >= exitThreshold

//====================================
// APPLY TRADE MODE RESTRICTIONS
//====================================
// If the user selects "Only Long", disable short signals (and vice versa).
if tradeMode == "Only Long"
    shortEntrySignal := false
    exitShortSignal  := false
else if tradeMode == "Only Short"
    longEntrySignal  := false
    exitLongSignal   := false

//====================================
// TRADING STRATEGY LOGIC
//====================================
// Execute trades based on the calculated signals.

// If a long position is open:
if strategy.position_size > 0
    if shortEntrySignal
        strategy.close("Long", comment="Reverse Long")
        strategy.entry("Short", strategy.short, comment="Enter Short")
    else if exitLongSignal
        strategy.close("Long", comment="Exit Long")

// If a short position is open:
if strategy.position_size < 0
    if longEntrySignal
        strategy.close("Short", comment="Reverse Short")
        strategy.entry("Long", strategy.long, comment="Enter Long")
    else if exitShortSignal
        strategy.close("Short", comment="Exit Short")

// If no position is open:
if strategy.position_size == 0
    if longEntrySignal
        strategy.entry("Long", strategy.long, comment="Enter Long")
    else if shortEntrySignal
        strategy.entry("Short", strategy.short, comment="Enter Short")