Estrategia de reversión de la brecha de valor razonable


Fecha de creación: 2025-07-03 11:29:05 Última modificación: 2025-07-04 11:38:50
Copiar: 0 Número de Visitas: 290
2
Seguir
319
Seguidores

Estrategia de reversión de la brecha de valor razonable Estrategia de reversión de la brecha de valor razonable

Descripción general de la estrategia

La estrategia es un sistema de negociación basado en el Inverted Fair Value Gap (IFVG), que combina la confirmación de tendencias y el seguimiento dinámico de las paradas. La estrategia primero identifica las brechas de valor justo en el mercado, luego busca señales de reversión de estas brechas, al mismo tiempo que confirma la tendencia general del mercado con una media móvil simple (SMA), y finalmente establece un seguimiento dinámico de las paradas para optimizar la gestión del riesgo a través de la media real (ATR).

Principio de estrategia

El núcleo de la estrategia es la identificación y aprovechamiento de la brecha de valor justo (FVG) para invertirla. Los principios de la estrategia se pueden dividir en los siguientes pasos clave:

  1. Identificación del FVGLa estrategia comienza por detectar brechas de valor justo, es decir, las áreas de precios que se forman cuando el precio mínimo de una línea K es superior al precio máximo de la línea K anterior (FVG de alza) o cuando el precio máximo de una línea K es inferior al precio mínimo de la línea K anterior (FVG de baja). Estas áreas representan niveles de precios no negociados cuando el mercado se mueve rápidamente.

  2. Confirmado por el IFVG: Cuando el precio regresa a la zona de FVG y se produce una señal de reversión, se forma una brecha de valor justo inversa ((IFVG)). En concreto, el IFVG se confirma cuando el precio es superior al punto alto de un FVG bajista y el precio de cierre es superior al precio de apertura, o cuando el precio es inferior al punto bajo de un FVG bajista y el precio de cierre es inferior al precio de apertura.

  3. Confirmación de la tendencia: La estrategia utiliza un promedio móvil simple (SMA) de 50 y 200 ciclos para determinar la tendencia del mercado. Cuando el SMA corto (SMA de 50 ciclos) es superior al SMA largo (SMA de 200 ciclos), se confirma una tendencia alcista; al contrario, se confirma una tendencia bajista.

  4. Condiciones de ingreso:

    • Multicondicionamiento: cuando se forma un IFVG, el precio es inferior al punto más bajo del IFVG y el mercado está en tendencia ascendente
    • Condiciones de vacío: cuando se forma un IFVG, el precio es superior al punto más alto del IFVG y el mercado está en una tendencia a la baja
  5. Gestión de riesgos:

    • El límite inicial de pérdidas se fija en el 0,5% del precio de entrada.
    • El objetivo del Stop-Loss es el 1.5% del precio de entrada.
    • Iniciar el seguimiento dinámico del stop loss cuando las ganancias alcancen la mitad del objetivo de stop loss (el 0,75%)
    • Ajuste dinámico del trazado de pérdidas basado en el ATR 14 para asegurar un mayor amortiguamiento de precios en caso de una mayor volatilidad del mercado

Ventajas estratégicas

  1. Mecanismo de confirmación múltipleLa estrategia combina la estructura de precios (IFVG), la dirección de la tendencia (SMA) y la gestión dinámica del riesgo (ATR) para formar un sistema de filtrado multicapa que reduce significativamente las falsas señales.

  2. La estructura del mercado lo impulsaA través de la identificación de FVG e IFVG, la estrategia es capaz de capturar los cambios en la microestructura del mercado, que a menudo representan desequilibrios en las fuerzas de compra y venta en el corto plazo y posibles oportunidades direccionales.

  3. Consistencia de las tendencias: Confirma la dirección de la tendencia general a través de la cruz SMA, la estrategia solo opera en la dirección de la tendencia, evitando el alto riesgo de operaciones en contra.

  4. Gestión de riesgos dinámicosLa estrategia no solo establece niveles fijos de stop loss y stop loss, sino que también implementa un stop loss de seguimiento dinámico basado en ATR, capaz de adaptarse a los niveles de protección según la volatilidad del mercado.

  5. Protección de las ganancias: Cuando el comercio alcanza la mitad de la ganancia predeterminada, el stop loss se mueve automáticamente por encima de la posición de garantía, asegurando que el comercio no se convierta de ganancias en pérdidas.

  6. Flexibilidad del marco de tiempo: A pesar de que la retracción se realiza en períodos de 1 minuto, la lógica central de la estrategia (FVG, confirmación de tendencia y deterioro dinámico) se puede aplicar en varios marcos de tiempo.

Riesgo estratégico

  1. Problemas de fiabilidad de FVG: En un mercado de alta volatilidad, los FVG pueden aparecer con frecuencia pero no necesariamente con valor de negociación, lo que puede conducir a una sobre-negociación. La solución es agregar condiciones de filtración adicionales, como requerir que los FVG tengan una anchura mínima o se formen cerca de los niveles de precios clave.

  2. Las tendencias definen las limitaciones: El uso de solo dos SMA para definir una tendencia puede generar una señal errónea en un mercado convulso. La solución es agregar un indicador de confirmación de tendencia adicional, como el ADX (indicador de dirección promedio) para medir la fuerza de la tendencia.

  3. El riesgo de pérdidas demasiado estrechasEl 0.5% de stop-loss fijo puede ser demasiado estrecho en algunas variedades de alta volatilidad y puede ser fácilmente activado por el ruido del mercado. La solución es conectar la configuración de stop-loss con el ATR para adaptarla a las características de volatilidad de las diferentes variedades.

  4. La falta de gestión de las retiradas: Cuando el mercado se invierte repentinamente, el tracking stop loss puede no responder rápidamente, lo que hace que la retirada se amplíe. La solución es establecer el límite máximo aceptable de retirada, y salir de inmediato si se supera.

  5. Sensibilidad de los parámetros: La estrategia de rendimiento es altamente sensible a parámetros como el ciclo SMA, el índice de pérdidas y el multiplicador ATR. La solución es encontrar una combinación de parámetros sólida mediante la optimización de la retrospectiva y la reevaluación periódica.

Dirección de optimización de la estrategia

  1. Integración de análisis de múltiples marcos de tiempoIncorporar información de FVG y tendencia de un marco de tiempo más alto en el proceso de toma de decisiones puede mejorar la calidad de la señal. Por ejemplo, se puede requerir que la señal en el gráfico de 1 minuto coincida con la dirección de FVG y tendencia en el gráfico de 15 minutos o 1 hora.

  2. Mecanismo de frenado dinámicoLas estrategias actuales utilizan paradas de proporción fija, que se pueden mejorar para paradas dinámicas basadas en el ATR, o para paradas de ajuste automático de objetivos en combinación con la volatilidad del mercado.

  3. Adaptabilidad a la reversión y la consolidación del mercado: Agregar la lógica de identificación del entorno del mercado, usar la estrategia actual en períodos de tendencia clara, y usar diferentes criterios de entrada y salida en períodos de recuperación.

  4. Confirmación de la transacción: Integración de análisis de volumen de transacciones para verificar la efectividad de FVG e IFVG. Las brechas de precios realmente significativas suelen ir acompañadas de cambios significativos en el volumen de transacciones.

  5. Mejoras en el aprendizaje automáticoUtiliza algoritmos de aprendizaje automático para identificar la combinación de características de FVG más predictiva, como el tamaño de la abertura, la velocidad de formación y la relación con el soporte/resistencia.

  6. Ajuste de los parámetros de adaptación: Desarrollar un mecanismo que permita a la estrategia ajustar automáticamente sus parámetros en función del desempeño reciente del mercado, como ampliar el margen de stop loss cuando aumenta la volatilidad.

  7. Aumentar la gestión de las posicionesLas estrategias actuales utilizan posiciones fijas (de 10 unidades) que pueden ser mejoradas para un sistema de gestión de posiciones dinámico basado en la volatilidad y las medidas de riesgo, aumentando las posiciones en señales de alto grado de certeza y reduciendo la exposición en mercados de alta incertidumbre.

Resumir

La estrategia de brecha de valor justo inversa de confirmación de tendencia y el stop loss de seguimiento dinámico es un sistema de negociación de varios niveles que combina orgánicamente el análisis de la estructura de precios (FVG e IFVG), la confirmación de tendencias (SMA) y la gestión de riesgos dinámicos (ATR tracking stop loss). La principal ventaja de la estrategia reside en su mecanismo de confirmación múltiple y la gestión de riesgos de adaptación, que filtra eficazmente las señales de baja calidad y protege los beneficios obtenidos.

Sin embargo, la estrategia también se enfrenta a desafíos como la fiabilidad de los FVG, las limitaciones de la definición de tendencias y la sensibilidad de los parámetros. Las direcciones de optimización futuras incluyen la integración de análisis de marcos de tiempo múltiples, el desarrollo de mecanismos de detención dinámica, la mejora de la adaptabilidad en diferentes entornos de mercado y la introducción de tecnologías de aprendizaje automático para optimizar la calidad de la señal y la selección de parámetros.

A través de estas mejoras, la estrategia tiene el potencial de convertirse en un sistema de negociación más robusto y adaptable, capaz de mantener un rendimiento consistente en una variedad de condiciones de mercado. En particular, mediante el aumento de su capacidad de respuesta a los cambios en la estructura y la volatilidad del mercado, la estrategia puede adaptarse mejor a un entorno de mercado cambiante, mejorar la rentabilidad a largo plazo y la estabilidad del crecimiento de los fondos.

Código Fuente de la Estrategia
/*backtest
start: 2025-05-31 00:00:00
end: 2025-06-30 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BNB_USDT"}]
args: [["RunMode",1,358374]]
*/

//@version=6
strategy("Inverted FVG Strategy with Trend Check and Trailing Stops", default_qty_value = 10, overlay=true)

// Function to detect FVG
fvgDetected(src, high, low) =>
    float prevHigh = na
    float prevLow = na
    float prevClose = na
    float fvgHigh = na
    float fvgLow = na
    bool fvg = false
    if (not na(src[3]))
        prevHigh := high[3]
        prevLow := low[3]
        prevClose := src[3]
        if (src[2] > prevClose and low[2] > prevHigh) or (src[2] < prevClose and high[2] < prevLow)
            fvg := true
            fvgHigh := low[2] > prevHigh ? high[2] : na
            fvgLow := high[2] < prevLow ? low[2] : na
    [fvg, fvgHigh, fvgLow]

// Detect FVG on the chart
[fvg, fvgHigh, fvgLow] = fvgDetected(close, high, low)

// Detect IFVG - Inversion of FVG
bool ifvg = false
float ifvgHigh = na
float ifvgLow = na

if (fvg)    
    if (high[1] > fvgHigh and close[1] > open[1]) or (high[1] < fvgLow and close[1] < open[1])
        ifvg := true
        ifvgHigh := close[1] > open[1] ? high[1] : na
        ifvgLow := close[1] <  open[1] ? low[1] : na

// Plot FVG and IFVG zones for visualization
plot(ifvgHigh, title="IFVG High", color=color.red, linewidth=2, style=plot.style_cross)
plot(ifvgLow, title="IFVG Low", color=color.red, linewidth=2, style=plot.style_cross)

// Trend Check using Simple Moving Averages
smaShort = ta.sma(close, 50)  // Short term SMA
smaLong = ta.sma(close, 200)  // Long term SMA
bool uptrend = false
bool downtrend = false

uptrend := smaShort > smaLong  // Up trend if short SMA is above long SMA
downtrend := smaShort < smaLong  // Down trend if short SMA is below long SMA

// Plot SMAs for visualization
plot(smaShort, title="SMA Short", color=color.blue, linewidth=1)
plot(smaLong, title="SMA Long", color=color.orange, linewidth=1)

// Trading logic with trend confirmation
longCondition = ifvg and close < ifvgLow and uptrend
shortCondition = ifvg and close > ifvgHigh and downtrend

// Risk Definition - 使用百分比
stopLoss = 0.005   // 0.5% 止损
takeProfit = 0.015  // 1.5% 止盈

if (longCondition and strategy.position_size == 0)
    strategy.entry("Long", strategy.long)
    stopPrice = close * (1 - stopLoss)
    limitPrice = close * (1 + takeProfit)
    strategy.exit("Initial Long Exit", "Long", stop=stopPrice, limit=limitPrice)

if (shortCondition and strategy.position_size == 0)
    strategy.entry("Short", strategy.short)
    stopPrice = close * (1 + stopLoss)
    limitPrice = close * (1 - takeProfit)
    strategy.exit("Initial Short Exit", "Short", stop=stopPrice, limit=limitPrice)

// ATR for dynamic trailing stop
atr = ta.atr(14)

// Trailing Stop for Long Position if the trade has moved > 0.5% (half of takeProfit)
if (strategy.position_size > 0)
    profitThreshold = takeProfit * 0.5  // 1.5% profit threshold
    if (close - strategy.position_avg_price >= strategy.position_avg_price * profitThreshold)
        // 将止损移动到盈亏平衡点加上一点利润
        trailingStopLong = math.max(strategy.position_avg_price * (1 + profitThreshold), close - (atr * 2))
        strategy.exit("Trailing Stop Long", "Long", stop=trailingStopLong)

// Trailing Stop for Short Position if the trade has moved > 0.5% (half of takeProfit)
if (strategy.position_size < 0)
    profitThreshold = takeProfit * 0.5  // 1.5% profit threshold
    if (strategy.position_avg_price - close >= strategy.position_avg_price * profitThreshold)
        // 将止损移动到盈亏平衡点加上一点利润
        trailingStopShort = math.min(strategy.position_avg_price * (1 - profitThreshold), close + (atr * 2))
        strategy.exit("Trailing Stop Short", "Short", stop=trailingStopShort)