Estrategia cuantitativa: sistema de negociación heurística POMDP de fusión de múltiples indicadores

RSI STOCH MFI MACD BB POMDP TA
Fecha de creación: 2025-07-22 09:11:25 Última modificación: 2025-07-22 09:11:25
Copiar: 0 Número de Visitas: 213
2
Seguir
319
Seguidores

Estrategia cuantitativa: sistema de negociación heurística POMDP de fusión de múltiples indicadores Estrategia cuantitativa: sistema de negociación heurística POMDP de fusión de múltiples indicadores

Descripción general

La estrategia cuantitativa “Multi Indicator Fusion POMDP Inspired Trading System” es un método de negociación basado en el análisis técnico y en parte observable en el proceso de toma de decisiones de Markov (POMDP). La estrategia combina hábilmente los indicadores aleatorios relativamente fuertes y débiles (RSI estocástico), los indicadores de flujo de fondos (MFI), las bandas de Bollinger (Bollinger Bands) y el indicador de dispersión de la media móvil (MACD) para generar señales de compra y venta. La idea central de la estrategia es construir un marco de decisión de tipo POMDP para responder a la incertidumbre y la observabilidad parcial de los mercados financieros a través de la observación multidimensional del estado del mercado.

Principio de estrategia

El principio central de esta estrategia se basa en la idea del proceso de toma de decisiones de Markov parcialmente observable (POMDP), que considera al mercado como un sistema de estado parcialmente visible. El estado del mercado se observa a través de los siguientes indicadores técnicos clave:

  1. Las Bandas de Bollinger: Utiliza una media móvil simple de 20 ciclos como órbita central, con un coeficiente de diferenciación estándar de 2.0, formando una órbita ascendente y descendente para identificar el intervalo de fluctuación de los precios.

  2. Indicador aleatorio de fuerza y debilidad (RSI estocástico): Combina la ventaja del RSI y el indicador aleatorio, establece una longitud de 14 ciclos y un parámetro de suavizado de 3 ciclos para identificar el estado de sobreventa y sobreventa. Cuando el valor de K es inferior a 30 se considera como sobreventa y superior a 70 se considera como sobreventa.

  3. Indicadores de flujo de capital (MFI)El MFI inferior a 40 se considera una señal de sobreventa, y superior a 60 una señal de sobreventa.

  4. Indicadores del MACD: Utilizando la configuración de parámetros 12/26/9, la relación de la línea MACD con la línea de señal se utiliza para confirmar la dirección de la tendencia.

Las reglas de decisión de la estrategia son las siguientes:

  • ¿Qué es el Spread de Débito de Llamada?: cuando el valor de K es inferior a 30 (sobreventa) o MFI es inferior a 40 (sobreventa), mientras que la línea MACD está por encima de la línea de señal, se activa la señal de multiplicación.
  • Condiciones de desbloqueo (Put Debit Spread): cuando el valor de K es superior a 70 (sobrecompra) o el MFI es superior a 60 (sobrecompra), mientras que la línea MACD se encuentra debajo de la línea de señal, se activa la señal de brecha.

La estrategia también implementa un mecanismo de salida automática basado en el tiempo, que establece que las posiciones se liquidan automáticamente después de 5 ciclos de tenencia, lo que controla el riesgo de tiempo de tenencia.

Ventajas estratégicas

  1. Confirmación de señales multidimensionalesLa combinación de varios indicadores técnicos (Stochastic RSI, MFI, MACD) permite a la estrategia observar el estado del mercado desde diferentes ángulos, reduciendo el riesgo de señales engañosas que un solo indicador puede generar.

  2. Adaptabilidad del marco POMDPLa introducción de la idea POMDP permite a las estrategias tomar decisiones relativamente optimizadas en condiciones de incertidumbre y parcial observabilidad, más en consonancia con el entorno real del mercado.

  3. Control claro de los riesgosLa estrategia logra un control de riesgo en la dimensión temporal mediante el establecimiento de un ciclo de salida fijo (cinco ciclos) y evita la expansión de las pérdidas de una tendencia desfavorable a largo plazo.

  4. Complementariedad de los indicadores técnicosEl RSI estocástico refleja principalmente el movimiento de los precios, el MFI combina información sobre precios y volúmenes de transacciones, el MACD capta los cambios de tendencia y el Brin define el rango de fluctuación. Estos indicadores se complementan entre sí y mejoran la fiabilidad de la señal.

  5. Robustez de la implementación del código: La estrategia utiliza math.sum en lugar de ta.sum para calcular el MFI, corrigiendo posibles errores de cálculo y aumentando la estabilidad de la estrategia.

  6. Capacidad de ejecución automatizadaLa implementación de Pine Script basado en TradingView permite que las estrategias generen y ejecuten automáticamente señales de negociación, reduciendo la intervención humana y el impacto emocional.

Riesgo estratégico

  1. Las limitaciones de los límites de sobreventaLa estrategia utiliza los límites fijos de sobreventa y sobreventa (3070 para el RSI estocástico y 4060 para el MFI), que pueden no ser siempre óptimos en diferentes entornos de mercado y diferentes productos, lo que puede reducir la calidad de la señal.

  2. El tiempo es una espada de doble filo para el mecanismo de salida.El mecanismo de salida de 5 ciclos fijos, aunque controla el riesgo, también puede salir prematuramente de una tendencia favorable, limitando los beneficios potenciales.

  3. Riesgo de redundancia en varios indicadoresAunque varios indicadores proporcionan una confirmación multidimensional, puede haber cierta correlación y redundancia entre los indicadores, lo que en ciertas condiciones de mercado puede conducir a una desviación de la potenciación de la señal.

  4. La falta de adaptabilidad de los mercados de tendenciaLa estrategia se basa principalmente en señales de sobreventa y reversión, que pueden generar demasiadas señales erróneas en un mercado de fuerte tendencia, lo que lleva a transacciones frecuentes y costos innecesarios.

  5. Parámetros para optimizar la dependenciaLa eficacia de las estrategias depende en gran medida de la configuración de los parámetros de los indicadores, y las diferentes condiciones del mercado pueden requerir diferentes combinaciones de parámetros, lo que aumenta la complejidad de mantener y ajustar las estrategias.

  6. Falta de mecanismos para adaptarse a la volatilidad: La estrategia no tiene mecanismos de adaptación a los cambios en la volatilidad del mercado, lo que podría generar más señales falsas en un entorno de alta volatilidad.

Dirección de optimización de la estrategia

  1. Mecanismo de ajuste de parámetros dinámicosIntroducción de mecanismos de adaptación de parámetros basados en el estado del mercado, como el ajuste de la diferencia estándar de las bandas de Bryn en función de la volatilidad o el ajuste de los umbrales de sobrecompra y sobreventa en función de la intensidad de las tendencias del mercado, para mejorar la adaptabilidad de las estrategias en diferentes entornos de mercado.

  2. Mecanismo de stop loss perfectoAdemás de la dimensión temporal del mecanismo de salida, se añade un mecanismo de parada de pérdidas basado en el cambio de precio, por ejemplo, el establecimiento de puntos de parada basados en el ATR, para mejorar la integralidad de la gestión de riesgos.

  3. El filtro del entorno del mercadoAumentar los módulos de identificación del entorno del mercado, como el indicador de la intensidad de la tendencia o el indicador de la volatilidad, para reducir o suspender el comercio en un entorno del mercado que no es adecuado para la estrategia y evitar el exceso de comercio en condiciones desfavorables.

  4. Sistema de calificación de la calidad de la señalDesarrollar un mecanismo de calificación de la calidad de la señal que califique las señales según el grado de consistencia de varios indicadores, el entorno del mercado, el éxito histórico de la señal, etc. Ejecutar solo señales de alta calidad para mejorar la eficacia de la estrategia.

  5. Aprendizaje automáticoCombinar el marco POMDP con métodos de aprendizaje automático para optimizar la estrategia de toma de decisiones a través del entrenamiento de datos históricos, permitiendo a los sistemas aprender y mejorar de transacciones pasadas.

  6. Optimización de las estrategias de gestión de fondosIntroducción de un mecanismo de gestión de posiciones dinámicas que ajuste el tamaño de las operaciones según la intensidad de la señal, el estado del mercado y el riesgo de la cuenta, para lograr una gestión de fondos más científica.

Resumir

El “sistema de comercio iluminado por POMDP de integración de múltiples indicadores” es una estrategia de comercio cuantitativa que combina varios indicadores técnicos con el marco de decisión de POMDP. La estrategia, a través de la sinergia de indicadores como el RSI estocástico, el MFI, el MACD y el cinturón de Brin, resuelve en parte el problema de la observabilidad parcial del mercado y proporciona una confirmación de señales multidimensional para la toma de decisiones comerciales.

La principal ventaja de la estrategia reside en su capacidad de observación del mercado desde múltiples ángulos y su mecanismo de control de riesgos claro, pero también enfrenta los desafíos de la dependencia de la optimización de parámetros y la insuficiente adaptabilidad a ciertos entornos del mercado. La estrategia tiene el potencial de mejorar aún más su robustez y adaptabilidad mediante la introducción de direcciones de optimización como el ajuste de parámetros dinámicos, la mejora de los mecanismos de suspensión de pérdidas y el aumento de filtros de entornos del mercado.

En general, se trata de un sistema de comercio cuantitativo de diseño razonable, claro y lógico, especialmente adecuado para los comerciantes que tienen cierta capacidad de predicción del mercado pero que desean controlar el riesgo. Mediante la optimización continua y la adaptación a diferentes entornos de mercado, la estrategia puede convertirse en una herramienta eficaz en la caja de herramientas de los comerciantes.

Código Fuente de la Estrategia
/*backtest
start: 2024-07-22 00:00:00
end: 2025-07-20 08:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":2000000}]
*/

//@version=6
strategy("Debit Spread POMDP‑Inspired Strategy", overlay=true, margin_long=100, margin_short=100)

// ——— Constants
const int K_OVERSOLD      = 30
const int K_OVERBOUGHT    = 70
const int MFI_OVERSOLD    = 40
const int MFI_OVERBOUGHT  = 60
const int EXIT_BARS       = 5

// ——— User inputs
stochLength  = input.int(14,  "Stochastic RSI length")
stochSmooth  = input.int(3,   "Stochastic smoothing")
mfiLength    = input.int(14,  "MFI length")
bbLength     = input.int(20,  "Bollinger length")
bbStdDev     = input.float(2.0, "Bollinger std dev")
macdFast     = input.int(12,  "MACD fast length")
macdSlow     = input.int(26,  "MACD slow length")
macdSignal   = input.int(9,   "MACD signal length")

// ——— Bar index tracking for exits
var int callEntryBar = na
var int putEntryBar = na

// ——— Bollinger Bands
basis   = ta.sma(close, bbLength)
upper   = basis + bbStdDev * ta.stdev(close, bbLength)
lower   = basis - bbStdDev * ta.stdev(close, bbLength)

// ——— Stochastic RSI
rsi      = ta.rsi(close, stochLength)
k        = ta.sma(ta.stoch(rsi, rsi, rsi, stochLength), stochSmooth)
d        = ta.sma(k, stochSmooth)

// ——— Manual MFI calculation (FIXED: using math.sum)
tp        = (high + low + close) / 3.0
rawMF     = tp * volume
posFlow   = (tp > tp[1] ? rawMF : 0.0)
negFlow   = (tp < tp[1] ? rawMF : 0.0)
posMF     = math.sum(posFlow, mfiLength)  // FIXED: math.sum instead of ta.sum
negMF     = math.sum(negFlow, mfiLength)  // FIXED: math.sum instead of ta.sum
moneyRatio = negMF != 0 ? posMF / negMF : 0.0
mfi       = negMF != 0 ? 100 - 100 / (1 + moneyRatio) : 0.0

// ——— Manual MACD calculation
fastMA     = ta.ema(close, macdFast)
slowMA     = ta.ema(close, macdSlow)
macdLine   = fastMA - slowMA
signalLine = ta.ema(macdLine, macdSignal)

// ——— POMDP‑inspired decision rules
bullCondition = ((k < K_OVERSOLD) or (mfi < MFI_OVERSOLD)) and (macdLine > signalLine)
bearCondition = ((k > K_OVERBOUGHT) or (mfi > MFI_OVERBOUGHT)) and (macdLine < signalLine)

if bullCondition
    strategy.entry("CallDebit", strategy.long)
    callEntryBar := bar_index  // Track entry bar

if bearCondition
    strategy.entry("PutDebit", strategy.short)
    putEntryBar := bar_index   // Track entry bar

// FIXED: Manual time-based exits using bar_index
if not na(callEntryBar) and bar_index >= callEntryBar + EXIT_BARS
    strategy.close("CallDebit")
    callEntryBar := na

if not na(putEntryBar) and bar_index >= putEntryBar + EXIT_BARS
    strategy.close("PutDebit")
    putEntryBar := na

// ——— Plots
plot(basis, color=color.gray, linewidth=1, title="BB Basis")
plot(upper, color=color.orange, linewidth=1, title="BB Upper")
plot(lower, color=color.orange, linewidth=1, title="BB Lower")
plot(k, title="%K", color=color.blue)
plot(d, title="%D", color=color.purple)
plot(mfi, title="MFI", color=color.green)
plot(macdLine - signalLine, title="MACD Histogram", color=color.red, style=plot.style_columns)