Estrategia de trading cuantitativo híbrido de medición de distancia de indicadores técnicos y reversión de MACD

RSI MACD EMA momentum Euclidean Distance Centroid volatility REVERSAL PATTERN TREND FOLLOWING
Fecha de creación: 2025-04-16 15:19:46 Última modificación: 2025-04-16 15:19:46
Copiar: 1 Número de Visitas: 379
2
Seguir
319
Seguidores

Estrategia de trading cuantitativo híbrido de medición de distancia de indicadores técnicos y reversión de MACD Estrategia de trading cuantitativo híbrido de medición de distancia de indicadores técnicos y reversión de MACD

Descripción general de la estrategia

Esta estrategia es una estrategia de comercio cuantitativa híbrida que combina la medición de la distancia de los indicadores técnicos y la señal de reversión del MACD. Calcula la distancia de los eclitros entre el estado actual del mercado y los puntos centrales predefinidos de los mercados alcista y bajista, junto con la señal de cruce del indicador MACD, para formar una estrategia combinada que capta la dinámica de la tendencia y identifica el potencial de reversión. La particularidad de esta estrategia consiste en combinar varios indicadores técnicos (EMA, volatilidad, dinámica, RSI y MACD) con vectores característicos para producir una señal de comercio más precisa mediante la medición matemática de la similitud del estado del mercado con las condiciones previas.

Principio de estrategia

La estrategia se basa en dos mecanismos principales:

  1. Mecanismo de medición de la distanciaLa estrategia primero construye un vector característico compuesto por 6 indicadores técnicos, incluyendo el precio, la EMA, la volatilidad, la dinámica, el RSI, la línea MACD y el gráfico en forma de columna MACD. Al mismo tiempo, se predefinen dos vectores de puntos centrales en el mercado alcista y en el mercado bajista, que representan el estado ideal en el que el mercado se encuentra en una tendencia alcista y bajista, respectivamente.

  2. Mecanismo de señales cruzadas MACDComo confirmación de segundo nivel, la estrategia utiliza la señal de cruce del indicador MACD para juzgar el cambio de la dinámica del mercado. La línea de señal de cruce en línea MACD se considera una señal de compra, mientras que la línea de señal de cruce en línea MACD se considera una señal de venta.

La combinación de estos dos mecanismos forma un sistema de doble confirmación: por un lado, la tendencia general del mercado se determina mediante la medición de la distancia, y por otro lado, la variación de la dinámica a corto plazo se determina mediante el cruce de MACD. La estrategia puede utilizar tanto la confirmación conjunta de los dos mecanismos (la medición de la distancia y el MACD dan la misma señal al mismo tiempo) como el comercio basado en señales generadas independientemente por cualquiera de los mecanismos, aumentando la diversidad de señales y la frecuencia de captura de oportunidades.

Ventajas estratégicas

  1. Evaluación del estado de los mercados multidimensionalesAl combinar varios indicadores técnicos en un vector de características, la estrategia permite evaluar el estado del mercado desde varias dimensiones, en lugar de depender solo de un indicador, lo que reduce el riesgo de falsas señales.

  2. Mecanismo de generación de señales flexibleLa estrategia utiliza la medición de la distancia y el cruce de MACD para generar señales que pueden capturar el movimiento continuo en el comportamiento de la tendencia y detectar en tiempo oportuno los posibles puntos de reversión, con una mayor adaptabilidad.

  3. La objetividad de los modelos matemáticosEl cálculo de la distancia eclídica proporciona un método objetivo y matemático para evaluar el estado del mercado, reduciendo la influencia de factores de juicio subjetivos.

  4. Mecanismo automático de liquidación: La estrategia automáticamente elimina las posiciones en la dirección opuesta cuando se produce una nueva señal, lo que ayuda a detener los pérdidas a tiempo y a cambiar la dirección de la posición para adaptarse a los mercados que cambian rápidamente.

  5. Funciones de monitoreo de rendimiento: La estrategia tiene una función de seguimiento y visualización de ganancias y pérdidas de las operaciones, lo que facilita la evaluación en tiempo real del rendimiento de la estrategia y el ajuste de los parámetros necesarios.

Riesgo estratégico

  1. Riesgo de sensibilidad de los parámetrosLos indicadores como EMA, RSI y MACD utilizados en la estrategia dependen de una configuración específica de parámetros. Si estos parámetros no se ajustan a las condiciones actuales del mercado, puede generarse una señal errónea. La solución es encontrar la combinación óptima de parámetros mediante el retroceso y reevaluar periódicamente la eficacia de los parámetros.

  2. El riesgo de sobrecomercializaciónDado que las estrategias pueden generar señales independientemente en función de dos mecanismos diferentes, en mercados con mayor volatilidad puede generarse demasiadas señales de negociación, lo que aumenta los costos de negociación. Se puede reducir la cantidad de transacciones innecesarias agregando un mecanismo de filtración de señales o ajustando la lógica de generación de señales.

  3. Tendencia y conflicto de juicioEn ciertas condiciones de mercado, la medición de la distancia y la señal MACD pueden dar instrucciones contradictorias, causando inconsistencia en el comportamiento de la estrategia. Se recomienda establecer reglas claras de prioridad de la señal o introducir mecanismos de confirmación adicionales.

  4. Estabilidad de la configuración del punto central: Parte de los parámetros de los puntos centrales de las tendencias alcistas en las estrategias actuales son de configuración estática (como los valores del RSI) y pueden no adaptarse a todas las circunstancias del mercado. Se puede considerar la introducción de un mecanismo de adaptación que ajuste dinámicamente la posición de los puntos centrales en función de los datos históricos.

  5. Limitaciones de un solo marco de tiempo: La estrategia sólo funciona en un único marco de tiempo, y puede perderse una señal importante en un marco de tiempo mayor o menor. Considerar la posibilidad de extender la estrategia a varios marcos de tiempo puede mejorar la fiabilidad de la señal.

Dirección de optimización de la estrategia

  1. Diseño de puntos centrales de adaptación: Los parámetros de los puntos centrales de los mercados actuales son fijos y se pueden mejorar para que sean puntos centrales dinámicos calculados automáticamente en base a datos históricos. Por ejemplo, los datos de los últimos N ciclos se pueden usar para determinar el estado ideal de los mercados alcista y bajista, lo que permite que los puntos centrales se ajusten automáticamente a las condiciones del mercado.

  2. Prioridad de la señal y mecanismo de filtradoIntroducir un sistema de prioridad de señales basado en el entorno del mercado, por ejemplo, priorizar la señal de reversión en un entorno de alta frecuencia de onda, priorizar la señal de medición de distancia en un entorno de tendencia de baja frecuencia de onda. Al mismo tiempo, se puede agregar un filtro de señal basado en la frecuencia de onda o la cantidad de transacciones, para reducir la señal de ruido.

  3. Mecanismo de objetivos de pérdidas y gananciasLa estrategia actual carece de un claro establecimiento de objetivos de pérdidas y ganancias, y se puede agregar un mecanismo de pérdidas basado en el ATR o en un porcentaje fijo, y un establecimiento de objetivos de ganancias basados en el nivel de soporte/resistencia o en el índice de rentabilidad del riesgo.

  4. Integración de análisis de múltiples marcos de tiempo: Integración de la información de tendencia de los marcos de tiempo más grandes en la estrategia actual, por ejemplo, la ejecución de señales de negociación a nivel horario sólo en caso de que la tendencia de la línea del sol sea coherente, para mejorar la fiabilidad de la señal.

  5. Ajuste dinámico de las ponderaciones de característicasAsignación de peso dinámico a los diferentes indicadores en el vector de características, ajustando automáticamente su impacto en función de la capacidad de predicción de cada indicador en diferentes condiciones de mercado, para mejorar la precisión de los cálculos de distancia.

  6. Aprendizaje automáticoSe puede considerar la introducción de algoritmos simples de aprendizaje automático para optimizar la posición del punto central o el peso de las características, o incluso se puede usar un algoritmo de agrupación para descubrir automáticamente los puntos centrales de varios estados del mercado, en lugar de solo dos estados simples de los toros y los osos.

Resumir

La estrategia de comercio cuantitativo híbrido de medición de distancia de indicadores técnicos y reversión MACD es un método de comercio cuantitativo innovador que integra varios indicadores técnicos de uso común en un sistema unificado de evaluación del estado del mercado a través de la tecnología de cálculo de la distancia de los eclitros, y se combina con la señal cruzada de MACD para formar un mecanismo de doble confirmación. Este método puede capturar el dinamismo en una tendencia continua y identificar posibles reveses en el mercado, con una gran adaptabilidad y flexibilidad.

La principal ventaja de esta estrategia reside en su capacidad para evaluar mercados multidimensionales y la objetividad de los modelos matemáticos, pero también se enfrenta a riesgos como la sensibilidad de los parámetros, el exceso de transacciones y los conflictos de señales. La estrategia tiene un gran espacio para la optimización y la mejora mediante la introducción de un diseño de punto central adaptativo, la optimización de un sistema de prioridad de señales, el aumento de mecanismos de parada, la integración de análisis de marcos de tiempo múltiples y la aplicación de técnicas de aprendizaje automático.

Esta estrategia, que combina métodos tradicionales de análisis técnico con modelos matemáticos, ofrece una nueva dirección que vale la pena explorar para los operadores cuantitativos, especialmente para aquellos que desean mantener la interpretabilidad de la estrategia y aumentar la objetividad de las decisiones comerciales.

Código Fuente de la Estrategia
/*backtest
start: 2024-04-15 00:00:00
end: 2024-12-31 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Bysq-Distance Reversal Entry - BTCUSDT (v6)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10, margin_long=0, margin_short=0)

// ========== FEATURE ENGINEERING ==========
price = close
priceNorm = ta.ema(price, 5)
volatility = ta.stdev(price, 20)
momentum = ta.ema(close - close[5], 5)
rsi = ta.rsi(close, 14)
macdLine = ta.ema(close, 12) - ta.ema(close, 26)
signalLine = ta.ema(macdLine, 9)
macdHist = macdLine - signalLine

// Fitur sebagai vector
featureVector = array.new_float(6)
array.set(featureVector, 0, priceNorm)
array.set(featureVector, 1, volatility)
array.set(featureVector, 2, momentum)
array.set(featureVector, 3, rsi)
array.set(featureVector, 4, macdLine)
array.set(featureVector, 5, macdHist)

// Centroid bullish
bullishCentroid = array.new_float(6)
array.set(bullishCentroid, 0, price)
array.set(bullishCentroid, 1, volatility)
array.set(bullishCentroid, 2, momentum)
array.set(bullishCentroid, 3, 60.0)
array.set(bullishCentroid, 4, macdLine)
array.set(bullishCentroid, 5, macdHist)

// Centroid bearish
bearishCentroid = array.new_float(6)
array.set(bearishCentroid, 0, price)
array.set(bearishCentroid, 1, volatility)
array.set(bearishCentroid, 2, momentum)
array.set(bearishCentroid, 3, 40.0)
array.set(bearishCentroid, 4, macdLine)
array.set(bearishCentroid, 5, macdHist)

// Fungsi Euclidean Distance
euclideanDistance(arr1, arr2) =>
    dist = 0.0
    for i = 0 to array.size(arr1) - 1
        a = array.get(arr1, i)
        b = array.get(arr2, i)
        dist += math.pow((a - b), 2)
    math.sqrt(dist)

// Hitung jarak ke centroid
distToBullish = euclideanDistance(featureVector, bullishCentroid)
distToBearish = euclideanDistance(featureVector, bearishCentroid)

// ========== SINYAL ==========
// Original distance strategy signals
isDistanceBuySignal = distToBullish < distToBearish and ta.crossover(macdLine, signalLine)
isDistanceSellSignal = distToBearish < distToBullish and ta.crossunder(macdLine, signalLine)

// Reversal strategy signals
isReversalBuySignal = ta.crossover(macdLine, signalLine)
isReversalSellSignal = ta.crossunder(macdLine, signalLine)

// Combined signals - using both strategies
isBuySignal = isDistanceBuySignal or isReversalBuySignal
isSellSignal = isDistanceSellSignal or isReversalSellSignal

// ========== EKSEKUSI ==========
if isBuySignal
    strategy.close("Sell")         // Close any sell position first (from reversal strategy)
    strategy.entry("Buy", strategy.long)
    
if isSellSignal
    strategy.close("Buy")          // Close any buy position first (from reversal strategy)
    strategy.entry("Sell", strategy.short)

// ========== METRIK KINERJA ==========
float lastOpenTradeProfit = na
if strategy.opentrades > 0
    lastOpenTradeProfit := strategy.opentrades.profit(strategy.opentrades - 1)

float lastClosedTradeProfit = na
if strategy.closedtrades > 0
    lastClosedTradeProfit := strategy.closedtrades.profit(strategy.closedtrades - 1)

// Plot info
plot(lastOpenTradeProfit, title="Last Open Trade Profit", color=color.blue)
plot(lastClosedTradeProfit, title="Last Closed Trade Profit", color=color.orange)