Estrategia de ruptura de brecha de valor razonable en múltiples períodos basada en pruebas retrospectivas históricas

FVG BOS HTF RR SL
Fecha de creación: 2025-01-17 14:45:10 Última modificación: 2025-01-17 14:45:10
Copiar: 0 Número de Visitas: 454
1
Seguir
1617
Seguidores

Estrategia de ruptura de brecha de valor razonable en múltiples períodos basada en pruebas retrospectivas históricas

Descripción general de la estrategia

La estrategia es un sistema comercial integral que combina análisis de múltiples marcos temporales, brechas de valor justo (FVG) y ruptura de estructura (BOS). Identifica posibles entradas comerciales identificando rupturas en la estructura de precios en marcos temporales más altos y buscando la formación de brechas de valor justo en marcos temporales más bajos. La estrategia también integra un sistema de gestión de riesgos, incluyendo el establecimiento automático de objetivos de stop loss y de beneficios.

Principio de estrategia

La lógica central de la estrategia se basa en tres pilares principales: primero, utilizar marcos de tiempo más altos (predeterminado 1 hora o más) para identificar rupturas en la estructura de precios (BOS), que proporciona el marco básico para la dirección comercial. En segundo lugar, busque una brecha de valor razonable (FVG) en marcos temporales más bajos. La formación de una FVG indica que existe un posible desequilibrio entre la oferta y la demanda en el mercado en esta área. Finalmente, estas dos condiciones se combinan con la posición de precio actual para activar una señal comercial cuando el precio está en una posición favorable. El sistema gestiona el riesgo de cada operación a través de la relación riesgo-recompensa y el factor stop-loss.

Ventajas estratégicas

  1. Análisis multidimensional: al combinar el análisis de múltiples períodos de tiempo, se mejora la confiabilidad de las señales comerciales.
  2. Gestión de riesgos perfecta: la configuración integrada de la relación riesgo-rendimiento y el mecanismo de control de stop loss garantizan que cada transacción tenga un control de riesgo claro.
  3. Retroalimentación visual: La estrategia proporciona una retroalimentación visual clara, incluida la visualización del cuadro FVG y el marcado de posibles oportunidades comerciales.
  4. Fuerte adaptabilidad: a través del ajuste de parámetros, la estrategia puede adaptarse a diferentes condiciones del mercado y estilos comerciales.

Riesgo estratégico

  1. Riesgo de ruptura falsa: el mercado puede experimentar una ruptura falsa, lo que genera señales comerciales falsas. La solución es añadir un mecanismo de confirmación de señal.
  2. Retraso de señal: debido al uso de datos de períodos de tiempo mayores, puede haber un retraso en la señal. Se recomienda confirmar en combinación con otros indicadores técnicos.
  3. Riesgo de volatilidad del mercado: durante períodos de alta volatilidad, la formación FVG puede no ser lo suficientemente estable. Esto se puede solucionar ajustando la longitud de observación del FVG.

Dirección de optimización de la estrategia

  1. Filtrado de señales: se puede agregar un mecanismo de confirmación de volumen para confirmar la señal solo si el volumen lo admite.
  2. Parámetros dinámicos: La relación riesgo-rendimiento y el factor de stop-loss se pueden ajustar dinámicamente según la volatilidad del mercado.
  3. Filtrado de tendencias: agregue indicadores de juicio de tendencia y abra posiciones solo en la dirección de la tendencia.
  4. Filtro de tiempo: agregue filtros de períodos de tiempo de negociación para evitar operar durante horas desfavorables del mercado.

Resumir

La estrategia construye un sistema comercial completo combinando análisis de múltiples períodos de tiempo, avances en la estructura de precios y brechas de valor justo. Sus ventajas radican en sus métodos de análisis multidimensional y su mecanismo perfecto de gestión de riesgos, pero los operadores aún necesitan realizar una optimización de parámetros y un control de riesgos adecuados en función de las condiciones reales del mercado. La optimización posterior puede comenzar desde la confirmación de la señal, el ajuste dinámico de parámetros y el filtrado del entorno del mercado para mejorar aún más la estabilidad y confiabilidad de la estrategia.

Código Fuente de la Estrategia
/*backtest
start: 2024-01-17 00:00:00
end: 2025-01-15 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/

//@version=5
strategy("ICT Strategy with Historical Backtest", overlay=true)

// === Настройки ===
tf = input.timeframe("60", title="Higher Timeframe (1H or above)")  // Таймфрейм для анализа BOS
fvg_length = input(3, title="FVG Lookback Length")                   // Длина для поиска FVG
risk_reward = input(2, title="Risk-Reward Ratio")                    // Риск-вознаграждение
show_fvg_boxes = input(true, title="Show FVG Boxes")                 // Показывать FVG
stop_loss_factor = input.float(1.0, title="Stop Loss Factor")         // Множитель для стоп-лосса

// === Переменные для анализа ===
var float bos_high = na
var float bos_low = na

// Получаем данные с более старшего таймфрейма
htf_high = request.security(syminfo.tickerid, tf, high)
htf_low = request.security(syminfo.tickerid, tf, low)
htf_close = request.security(syminfo.tickerid, tf, close)

// Определение BOS (Break of Structure) на старшем таймфрейме
bos_up = ta.highest(htf_high, fvg_length) > ta.highest(htf_high[1], fvg_length)
bos_down = ta.lowest(htf_low, fvg_length) < ta.lowest(htf_low[1], fvg_length)

// Обновляем уровни BOS
if (bos_up)
    bos_high := ta.highest(htf_high, fvg_length)
if (bos_down)
    bos_low := ta.lowest(htf_low, fvg_length)

// === Определение FVG (Fair Value Gap) ===
fvg_up = low > high[1] and low[1] > high[2]
fvg_down = high < low[1] and high[1] < low[2]

// Визуализация FVG (Fair Value Gap)
// if (show_fvg_boxes)
//     if (fvg_up)
//         box.new(left=bar_index[1], top=high[1], right=bar_index, bottom=low, bgcolor=color.new(color.green, 90), border_color=color.green)
//     if (fvg_down)
//         box.new(left=bar_index[1], top=high, right=bar_index, bottom=low[1], bgcolor=color.new(color.red, 90), border_color=color.red)

// === Логика сделок ===
// Условия для входа в Лонг
long_condition = bos_up and fvg_up and close < bos_high
if (long_condition)
    strategy.entry("Long", strategy.long, stop=low * stop_loss_factor, limit=low + (high - low) * risk_reward)

// Условия для входа в Шорт
short_condition = bos_down and fvg_down and close > bos_low
if (short_condition)
    strategy.entry("Short", strategy.short, stop=high * stop_loss_factor, limit=high - (high - low) * risk_reward)

// === Надписи для прогнозируемых сделок ===
if (long_condition)
    label.new(bar_index, low, text="Potential Long", color=color.green, style=label.style_label_up, textcolor=color.white, size=size.small)

if (short_condition)
    label.new(bar_index, high, text="Potential Short", color=color.red, style=label.style_label_down, textcolor=color.white, size=size.small)