English Русский 中文 Deutsch 日本語 Português
preview
Perspectivas bursátiles a través del volumen: Confirmación de tendencias

Perspectivas bursátiles a través del volumen: Confirmación de tendencias

MetaTrader 5Sistemas comerciales |
251 4
Javier Santiago Gaston De Iriarte Cabrera
Javier Santiago Gaston De Iriarte Cabrera

Introducción

Diferenciar entre movimientos reales y falsos del mercado es una dificultad constante para los operadores en los volátiles mercados financieros actuales. Cuando se confunde con oportunidades comerciales genuinas, el ruido del mercado, que se caracteriza por fluctuaciones transitorias de precios y falsas rupturas, puede provocar pérdidas significativas. Este problema es especialmente grave en el trading de ruptura, donde el éxito depende de detectar con precisión las tendencias de precios a largo plazo.

Esta implementación ofrece un enfoque mejorado de confirmación de tendencias que combina el análisis de la evolución de los precios y el volumen para superar estos problemas. Basándose en la idea de que los cambios notables en el mercado suelen ir seguidos de un volumen de negociación superior a la media, el método utiliza el volumen como criterio de validación crucial. Ayuda a eliminar señales engañosas y a encontrar oportunidades comerciales más confiables al requerir que tanto las rupturas de precios como los aumentos de volumen estén alineados. Al garantizar que los movimientos del mercado estén respaldados por suficiente actividad comercial, esta estrategia de doble confirmación busca mejorar la calidad del comercio y aumentar la probabilidad de una dirección de precios persistente.



La técnica mejorada de confirmación de tendencias 

Para crear un sistema de trading sólido, la técnica mejorada de confirmación de tendencias combina varios elementos analíticos. Básicamente, la técnica utiliza el análisis de la tendencia de los precios observando los niveles de soporte y resistencia para encontrar posibles oportunidades de ruptura cuando la actividad de los precios supera claramente estos límites. Con el fin de adaptarse a las circunstancias cambiantes del mercado, el sistema realiza un seguimiento continuo de los movimientos de los precios a lo largo de diversos periodos y determina zonas dinámicas de soporte y resistencia basándose en el historial reciente de precios.

El método secundario de validación crucial es la confirmación del volumen, que requiere que el volumen de negociación supere un determinado nivel por encima de su media móvil para validar una señal de negociación. Debido a que confirma la intensidad y la posible persistencia de las fluctuaciones de precios, este componente del volumen es muy importante. Con el fin de garantizar que la ruptura del precio esté respaldada por una actividad sustancial del mercado, el método busca especialmente picos de volumen del 50% o más por encima del volumen normal de negociación durante un periodo retrospectivo de 20 días.

En conjunto, estos elementos conforman un sistema comercial integral. El sistema evalúa los datos de volumen asociados tan pronto como se produce una ruptura de precios. Solo cuando se cumplen todos estos factores (una ruptura clara del precio y un volumen mucho mayor) la técnica produce una señal comercial. Dado que los movimientos reales del mercado suelen mostrar tanto un impulso de precios como una mayor actividad comercial, este método de doble confirmación ayuda a eliminar rupturas falsas y configuraciones de baja probabilidad. Mediante el uso de niveles dinámicos de stop-loss y take-profit basados en cálculos del rango medio verdadero (Average True Range, ATR), el marco mejora aún más la gestión de las operaciones y garantiza que la gestión del riesgo se ajuste a la volatilidad del mercado.

Este código implementa una sofisticada estrategia de trading que combina tres componentes clave del análisis técnico para la confirmación de tendencias. En esencia, la estrategia supervisa las rupturas de volumen que superan un aumento del 50 % con respecto a la media histórica, calculada a lo largo de un periodo retrospectivo de 20 periodos. Este análisis de volumen se complementa con la confirmación de la evolución de los precios, en la que el sistema identifica los niveles de soporte y resistencia a partir del historial reciente de precios y valida las rupturas cuando el precio cierra por encima de estos niveles.

En esta técnica se utiliza una red neuronal LSTM con 32 nodos ocultos que examina los patrones de volumen para integrar el aprendizaje automático. Con cada nueva vela, esta red neuronal cambia sus predicciones, añadiendo otro nivel de verificación a las rupturas de volumen. El algoritmo ejecuta operaciones utilizando el tamaño de posición basado en ATR cuando los tres elementos están alineados: alto volumen, una ruptura de precio verificada y validación LSTM.Es esencial implementar una gestión de riesgos, y los niveles dinámicos de stop-loss y take-profit se definen utilizando el rango medio verdadero (ATR). Se obtiene una buena relación riesgo-recompensa estableciendo el objetivo de take profit en 3 ATR y el stop loss en 2 ATR desde la entrada. Además, el sistema cuenta con protecciones contra posiciones múltiples, lo que garantiza que nunca haya más de una operación activa.

Diagrama de flujo



Aplicación de la estrategia

El Asesor Experto utiliza una serie de elementos esenciales para llevar a cabo una estrategia metódica de trading de ruptura. Para cuantificar la volatilidad, el código establece primero los indicadores ATR y los parámetros de análisis de volumen. Para evitar el procesamiento duplicado, el método OnTick() actúa como punto de entrada principal durante toda la ejecución, iniciando el análisis solo al comienzo de nuevas barras de precios.

La lógica central sigue un árbol de decisión estructurado:

La validación de ruptura de volumen mediante IsVolumeBreakout() comprueba si el volumen actual supera el promedio histórico en el umbral especificado (por defecto, el 50%).

bool IsVolumeBreakout()
{
    double currentVolume = iVolume(_Symbol, PERIOD_CURRENT, 1);
    double avgVolume = 0;
    
    for(int i = 1; i <= VOLUME_LOOKBACK; i++)
    {
        avgVolume += iVolume(_Symbol, PERIOD_CURRENT, i);
    }
    avgVolume = avgVolume / VOLUME_LOOKBACK;
    
    .....
    
    return (currentVolume > avgVolume * VOLUME_THRESHOLD);
}

La confirmación de la ruptura del precio mediante IsPriceBreakout() analiza la evolución reciente del precio para identificar rupturas por encima de los niveles de resistencia o por debajo de los niveles de soporte.

bool IsPriceBreakout(bool &isLong)
{
    double high[], low[], close[];
    ArraySetAsSeries(high, true);
    ArraySetAsSeries(low, true);
    ArraySetAsSeries(close, true);
    
    if(CopyHigh(_Symbol, PERIOD_CURRENT, 0, 10, high) <= 0) return false;
    if(CopyLow(_Symbol, PERIOD_CURRENT, 0, 10, low) <= 0) return false;
    if(CopyClose(_Symbol, PERIOD_CURRENT, 0, 10, close) <= 0) return false;
    
    double resistance = high[1];
    double support = low[1];
    
    for(int i = 2; i < 10; i++)
    {
        if(high[i] > resistance) resistance = high[i];
        if(low[i] < support) support = low[i];
    }
    
    ....
    
    if(close[0] > resistance && close[1] <= resistance)
    {
        isLong = true;
        Print("BREAKOUT ALCISTA DETECTADO");
        return true;
    }
    else if(close[0] < support && close[1] >= support)
    {
        isLong = false;
        Print("BREAKOUT BAJISTA DETECTADO");
        return true;
    }
    
    return false;
}

La ejecución de la operación a través de PlaceOrder() solo se produce cuando se cumplen las condiciones de volumen y precio.

La gestión de riesgos se integra a través de múltiples mecanismos:

  • El tamaño de la posición se fija en 0,1 lotes por operación.
  • Los niveles de stop-loss se calculan dinámicamente utilizando multiplicadores ATR (por defecto, 2,0 ATR).
  • Los objetivos de take-profit se fijan en 3,0 veces el ATR desde la entrada.
  • El sistema evita que haya varias posiciones simultáneas.
  • El requisito mínimo de confirmación de velas (por defecto, 2 velas) ayuda a evitar falsas rupturas.

Las salidas comerciales se rigen por:

  • Niveles predefinidos de stop-loss y take-profit basados en el ATR.
  • El límite de posición única garantiza ciclos de entrada/salida limpios.
  • Todos los cálculos utilizan valores de precios normalizados para mantener la precisión entre los diferentes instrumentos.
void PlaceOrder(bool isLong)
{
    CTrade trade;
    double price = isLong ? SymbolInfoDouble(_Symbol, SYMBOL_ASK) : SymbolInfoDouble(_Symbol, SYMBOL_BID);
        
    double atr[], close[];
    ArraySetAsSeries(atr, true);
    ArraySetAsSeries(close, true);
    
    if(CopyBuffer(atr_handle, 0, 0, 1, atr) <= 0) return;
    if(CopyClose(_Symbol, PERIOD_CURRENT, 0, 1, close) <= 0) return;
    
    double stopLoss = isLong ? price - (atr[0] * SL_ATR_MULTIPLIER) : price + (atr[0] * SL_ATR_MULTIPLIER);
    double takeProfit = isLong ? price + (atr[0] * TP_ATR_MULTIPLIER) : price - (atr[0] * TP_ATR_MULTIPLIER);
    
    stopLoss = NormalizeDouble(stopLoss, _Digits);
    takeProfit = NormalizeDouble(takeProfit, _Digits);
    
    ENUM_ORDER_TYPE orderType = isLong ? ORDER_TYPE_BUY : ORDER_TYPE_SELL;
    
    ....
    
    if(PositionsTotal() > 0)
    {
        Print("Ya hay posiciones abiertas, saliendo...");
        return;
    }
    
    if(!trade.PositionOpen(_Symbol, orderType, 0.1, price, stopLoss, takeProfit))
    {
        ...
        return;
    }
    
    Print("Orden colocada exitosamente. Dirección: ", isLong ? "LONG" : "SHORT");
}



Adaptabilidad y flexibilidad

El método de validación multicomponente de la técnica es lo que la hace flexible. Las rupturas de volumen en los mercados de divisas podrían sugerir la participación de grandes operadores del mercado, mientras que en el caso de las acciones suelen implicar actividad institucional. Este método funciona especialmente bien en los mercados de materias primas, ya que los picos de volumen suelen preceder a los grandes cambios de tendencia.

Para obtener los mejores resultados, es necesario realizar una calibración específica para cada mercado. El umbral de volumen, que actualmente está fijado en 1,5 veces, puede ser necesario ajustarlo en mercados extremadamente líquidos, como los principales pares de divisas, con el fin de filtrar el ruido. La configuración MIN_CANDLES_CONFIRM resulta esencial para los instrumentos menos líquidos con el fin de evitar falsas rupturas. El parámetro HIDDEN_SIZE del componente LSTM debe escalarse de acuerdo con los patrones de volumen habituales del mercado; cuanto mayor sea, mejor para mercados más complejos como el de las criptomonedas.El dimensionamiento de posiciones basado en ATR también ofrece una adaptación orgánica al mercado. Las paradas y objetivos dinámicos SL_ATR_MULTIPLIER y TP_ATR_MULTIPLIER se adaptan dinámicamente al perfil de volatilidad de cada instrumento. Por ejemplo, los índices grandes pueden beneficiarse de ajustes más estrictos, mientras que los mercados más volátiles, como las acciones de pequeña capitalización, pueden beneficiarse de stops más amplios (multiplicador más alto).

Configuración

Entradas

Gráfico

Pruebas retrospectivas

Con una estrategia sólida que combina el análisis de volumen, el reconocimiento de tendencias y las predicciones de la red neuronal LSTM, el EA muestra resultados alentadores. Aunque puede haber margen de mejora, la estabilidad de la curva de capital indica que el sistema de gestión de riesgos está funcionando de manera eficiente. El componente de beneficio relativamente bajo sugiere una estrategia comercial cautelosa, lo que suele ser beneficioso para la sostenibilidad a largo plazo.

La capacidad del sistema para mantener un rendimiento estable a pesar de la complejidad del mercado EURUSD es bastante intrigante. Las predicciones LSTM, el análisis de tendencias y el umbral de volumen son tres variables de confirmación que parecen funcionar bien juntas para filtrar las señales erróneas. El uso del reconocimiento de patrones de engulfing y la detección de falsas rupturas de barras pin proporciona un grado adicional de seguridad.

Sin embargo, hay margen para mejorar. Parece que los criterios de entrada/salida podrían mejorarse, como lo indica la tasa de éxito de aproximadamente el 50%. Una opción es utilizar una estrategia de salida más compleja que el recuento de barras actual y la detección de falsas rupturas. Además, podría ser ventajoso añadir modificaciones por volatilidad del mercado a los cálculos del umbral de volumen del sistema.

Aunque son manejables, los niveles de reducción pueden disminuirse incorporando análisis de correlación con otros pares de divisas significativos para evitar una exposición excesiva durante movimientos del mercado fuertemente vinculados, o introduciendo un tamaño de posición dinámico en función de las condiciones del mercado.

El tamaño muy reducido de la entrada y los períodos de retrospectiva de la implementación LSTM sugieren un enfoque en la actividad actual del mercado. Aunque esto parece funcionar eficazmente en la configuración actual, ampliar los períodos retrospectivos podría ayudar a identificar las tendencias del mercado a más largo plazo y aumentar la precisión de las previsiones durante cambios significativos en las tendencias.

Aunque los descubrimientos de la estrategia conservadora de recogida de beneficios sugieren estabilidad, puede haber oportunidades para ampliar posiciones durante períodos de fuerte impulso con el fin de optimizar los beneficios en circunstancias de mercado especialmente ventajosas.

La arquitectura de este asesor experto, que se centra en características universales del mercado como el análisis del volumen y las tendencias de los precios, lo hace muy flexible para operar con una variedad de instrumentos financieros además del EURUSD.

Dado que la red neuronal LSTM se basa en fluctuaciones relativas de volumen y patrones de precios, en lugar de factores específicos de cada divisa, su arquitectura es especialmente adaptable. Esto implica que podría utilizarse con éxito con otros pares de divisas importantes, materias primas o incluso índices bursátiles, en los que el movimiento de los precios está muy influenciado por el volumen.

Es fundamental recordar que los diferentes instrumentos pueden requerir ajustes en los períodos retrospectivos y el multiplicador del umbral de volumen. Por ejemplo, dadas sus características comerciales distintivas y sus perfiles de volumen habituales, pares como el USDJPY o el GBPUSD pueden necesitar diversos criterios de volumen. Del mismo modo, debido a su dinámica de mercado distintiva, materias primas como el oro o el petróleo pueden beneficiarse de períodos de retrospectiva prolongados.

Dado que las barras pin y los patrones envolventes son comunes en todos los mercados financieros, la técnica de detección de falsas rupturas que los utiliza es muy difícil de eludir. Sin embargo, la eficacia puede variar en función de la volatilidad normal de cada instrumento. Por ejemplo, puede ser necesario ampliar los umbrales para la identificación de patrones en el caso de los instrumentos más volátiles.

Aunque los resultados actuales del EURUSD ofrecen un punto de partida sólido, los operadores que utilicen este enfoque en otros símbolos deben prever un período de cambios en factores como los umbrales de volumen y el tamaño de la capa oculta LSTM. Una de las ventajas de la estrategia es su flexibilidad, pero es importante tener en cuenta que cada mercado tiene una «personalidad» y unas características comerciales únicas que deben tenerse en cuenta al ajustar la configuración de los parámetros.

Se podría pensar en desarrollar un mecanismo de autoajuste que calibre los parámetros importantes según el perfil de volumen y el historial de volatilidad de cada instrumento individual, con el fin de lograr los mejores resultados en diversos símbolos. Esto aumentaría aún más la adaptabilidad y la resiliencia de la estrategia a diversos instrumentos y situaciones del mercado.

Configuración GBPUSD

Entradas GBPUSD

Gráfico GBPUSD

Backtesting GBPUSD


Configuración Oro

Entradas Oro

Gráfico Oro

Backtest Oro



Conclusión

En resumen, este enfoque comercial tiene una serie de ventajas importantes que lo convierten en un instrumento útil para los operadores del mercado. La estrategia metódica aprovecha las tendencias y la volatilidad previstas del mercado, al tiempo que reduce la toma de decisiones emocionales. Mediante la integración de varios indicadores técnicos y sólidos procedimientos de gestión de riesgos, este enfoque ofrece un marco completo que es lo suficientemente flexible como para adaptarse a las circunstancias cambiantes del mercado. Al tiempo que permiten una participación significativa en tendencias rentables, las medidas de protección integradas, como las directrices sobre el tamaño de las posiciones y los mecanismos de stop-loss, ayudan a proteger el dinero durante movimientos desfavorables del mercado.

Por encima de todo, los operadores deben comprender que este método no es una tarea que se pueda «configurar y olvidar». Para tener éxito, es necesario realizar una observación continua y ajustar los parámetros con frecuencia, con el fin de mantener la eficacia a medida que cambian las condiciones del mercado. Los operadores deben llevar registros exhaustivos de todas sus transacciones, evaluar los indicadores de rendimiento con frecuencia y estar preparados para realizar cambios basados en datos en los parámetros de riesgo, el tamaño de las posiciones y la configuración de los indicadores. El éxito a largo plazo depende de esta dedicación a la adaptación y el desarrollo constantes.

Se recomienda que los operadores que deseen utilizar esta técnica comiencen con operaciones simuladas para familiarizarse con el momento y la mecánica de las entradas y salidas. Empiece con posiciones más pequeñas una vez que se sienta cómodo y, a medida que demuestre una ejecución fiable, aumente progresivamente su tamaño. Recuerde que ninguna estrategia es eficaz en todas las situaciones del mercado; en su lugar, establezca reglas precisas sobre cuándo limitar la exposición o retirarse temporalmente de una estrategia en circunstancias negativas. Establezca una práctica sólida de análisis diario del mercado y siga las directrices establecidas, manteniendo al mismo tiempo la flexibilidad necesaria para adaptarse a las condiciones cambiantes. Al final, lo que conduce al éxito es una ejecución centrada y una modificación rigurosa del enfoque basada en un análisis exhaustivo de los resultados.
Archivos Ruta donde guardar los archivos
.mqh Guarde este ML en "MQL5/Include/", recuerde modificar el EA para que la raíz coincida.
.mq5 Guarde este EA en "MQL5/Expert/".

Traducción del inglés realizada por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/en/articles/16573

Anil Varma
Anil Varma | 16 ene 2025 en 16:06

Hola Javier

Gracias por el EA basado en " el uso de una red neuronal LSTM para la confirmación adicional".

Sin embargo no he encontrado dónde y cómo se utiliza por encima de confirmación adicional en la EA.

Puede usted elaborar por favor.

Fernando Carreiro
Fernando Carreiro | 16 ene 2025 en 16:12
@Anil Varma #: Hola Javier. Gracias por el EA basado en " el uso de una red neuronal LSTM para la confirmación adicional". Sin embargo, no he encontrado dónde y cómo se utiliza por encima de confirmación adicional en la EA. Puede elaborar por favor.
El autor está actualmente prohibido (no sé por cuánto tiempo) y no será capaz de responder a usted.
Anil Varma
Anil Varma | 17 ene 2025 en 06:54
Fernando Carreiro #:
El autor está actualmente baneado (no sé por cuánto tiempo) y no podrá responderte.

Gracias por la actualización @Fernando Carreiro

Me preguntaba por qué su nombre estaba tachado.

ceejay1962
ceejay1962 | 17 ene 2025 en 12:22
Anil Varma #:

Hola Javier

Gracias por el EA basado en " mientras que el uso de una red neuronal LSTM para la confirmación adicional ".

Sin embargo no he encontrado dónde y cómo utilizó por encima de confirmación adicional en la EA.

Puede elaborar por favor.

Estoy un poco confundido acerca de esto también - Parece que la EA crea el objeto predictor de volumen con VolumePredictor *volumePredictor; y posteriormente llama volumePredictor.UpdateHistoricalData(volumes); para actualizar la predicción. Pero no puedo encontrar ninguna llamada a volumePredictor.PredictNextVolume();

Análisis de la negociación a posteriori: ajustando el TrailingStop y los nuevos stops en el simulador de estrategias Análisis de la negociación a posteriori: ajustando el TrailingStop y los nuevos stops en el simulador de estrategias
Continuamos con el tema del análisis de las transacciones completadas en el simulador de estrategias para mejorar la calidad de la negociación. Hoy veremos cómo el uso de diferentes trailings puede ayudar a cambiar los resultados comerciales ya obtenidos.
Redes neuronales en el trading: Aprendizaje contextual aumentado por memoria (Final) Redes neuronales en el trading: Aprendizaje contextual aumentado por memoria (Final)
Hoy finalizaremos la implementación del framework MacroHFT para el comercio de criptomonedas de alta frecuencia, que utiliza el aprendizaje de refuerzo consciente del contexto y el aprendizaje con memoria para adaptarse a las condiciones dinámicas del mercado. Y al final de este artículo, probaremos los enfoques aplicados con datos históricos reales para evaluar su eficacia.
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 4): Analytics Forecaster EA Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 4): Analytics Forecaster EA
Estamos pasando de simplemente ver las métricas analizadas en gráficos a una perspectiva más amplia que incluye la integración de Telegram. Esta mejora permite que los resultados importantes se envíen directamente a tu dispositivo móvil a través de la aplicación Telegram. Acompáñenos en este viaje que exploraremos juntos en este artículo.
Métodos de discretización de los movimientos de precios en Python Métodos de discretización de los movimientos de precios en Python
Hoy analizaremos varios métodos de discretización de precios en Python + MQL5. En este artículo compartiré mi experiencia práctica en el desarrollo de una biblioteca Python que implementa toda una gama de enfoques para la formación de barras: desde las clásicas Volume y Range bars hasta métodos más exóticos como Renko y Kagi, velas de ruptura de tres líneas, barras de Rango; ¿cuáles son sus estadísticas, de qué otra forma se pueden representar los precios de forma discreta?