Estrategia de arbitraje de pares de oro y plata
ZSCORE, RSI, ATR, SMA, EMA
Arbitraje Estadístico con Z-Score: El Juego Matemático de la Relación Oro/Plata
No es una estrategia de seguimiento de tendencias común. La estrategia de arbitraje estadístico XAG/XAU se basa en una premisa central: existe una relación de reversión a la media a largo plazo entre los precios del oro y la plata. Cuando el Z-Score supera las ±2 desviaciones estándar, la desviación del precio alcanza un valor extremo desde el punto de vista estadístico, momento en el que se ingresa para capturar la oportunidad de reversión. Los datos de backtesting muestran que este método de arbitraje estadístico presenta una clara ventaja en términos de rendimiento ajustado al riesgo en el mercado de metales preciosos.
Ratio Normalizado de 20 Períodos: Más Preciso que el Análisis de Correlación Tradicional
El núcleo de la estrategia es construir un modelo de ratio de precios normalizado. Se normalizan XAG y XAU por separado mediante una SMA de 20 períodos, luego se calcula el ratio y se suaviza con una EMA de 3 períodos. Este tratamiento es más estable que un simple ratio de precios y filtra eficazmente el ruido de corto plazo. Cuando el Z-Score del ratio normalizado supera el intervalo de ±2, indica que la desviación actual del precio respecto a su media histórica supera las 2 desviaciones estándar, lo que desde el punto de vista estadístico es un evento de baja probabilidad, proporcionando una oportunidad de entrada para la reversión a la media.
Filtro RSI: El Uso Inteligente de la Línea de 50
A diferencia de las señales tradicionales de sobrecompra/sobreventa del RSI, aquí se utiliza RSI = 50 como condición de filtro para largos y cortos. RSI < 50 permite tomar posiciones largas, y RSI > 50 permite tomar posiciones cortas. La lógica de este diseño es clara: comprar cuando el mercado está relativamente débil, esperando un rebote; vender cuando está relativamente fuerte, esperando una corrección. Este mecanismo de filtro reduce eficazmente el riesgo de operar en contra de la tendencia y mejora la calidad de las señales.
Relación Riesgo/Beneficio ATR de 3:8: Esperanza Matemática Positiva
El take profit se fija en 3 veces el ATR, y el stop loss en 8 veces el ATR, con una relación riesgo/beneficio de 1:2,67. Este diseño se basa en las características del arbitraje estadístico: la probabilidad de reversión a la media es alta, pero se necesita un margen de tolerancia suficiente. El ATR de 14 períodos asegura que los niveles de stop loss y take profit se adapten a los cambios en la volatilidad del mercado. Los backtest históricos muestran que esta proporción genera una expectativa de beneficio positiva en el trading de pares de metales preciosos.
Escenario de Aplicación: Mejor en Mercados Laterales que en Tendencias
La estrategia de arbitraje estadístico rinde mejor en mercados laterales o de consolidación, donde las características de reversión a la media son más evidentes. En mercados con tendencias direccionales, los precios pueden desviarse durante períodos prolongados, lo que expone la estrategia a un mayor riesgo de drawdown. Se recomienda utilizarla cuando la volatilidad del mercado sea moderada y no haya una tendencia clara. También hay que tener en cuenta que el mercado de metales preciosos está muy influenciado por factores macroeconómicos; debe usarse con precaución durante eventos importantes.
Advertencia de Riesgo: Limitaciones del Modelo Estadístico
Las relaciones estadísticas históricas no garantizan que se mantengan en el futuro. La relación de precios oro/plata puede desviarse a largo plazo debido a cambios en la estructura de oferta y demanda, diferencias en las políticas monetarias, etc. La estrategia conlleva el riesgo de pérdidas consecutivas, especialmente durante cambios estructurales del mercado. Se recomienda implementar una gestión de riesgos estricta, limitar el riesgo por operación a no más del 2% del capital de la cuenta y evaluar periódicamente la eficacia de la estrategia.
//@version=6
strategy("Stat Arb(xag & xau)")
// ══════════════════════════════════════════════════════════════
// BENCHMARK DATA
// ══════════════════════════════════════════════════════════════
float benchClose = request.security("XAG_USDT.swap", timeframe.period, close)
// ══════════════════════════════════════════════════════════════
// HELPER FUNCTIONS
// ══════════════════════════════════════════════════════════════
f_cov(float src1, float src2, int len) =>- 1

