Русский Português
preview
Indicador del modelo CAPM en el mercado Forex

Indicador del modelo CAPM en el mercado Forex

MetaTrader 5Asesores Expertos |
44 0
Yevgeniy Koshtenko
Yevgeniy Koshtenko

Desarrollo histórico del modelo CAPM

El surgimiento del modelo de valoración de activos financieros (CAPM) fue el resultado de cambios revolucionarios en la comprensión de la relación entre el riesgo y el retorno en los mercados financieros. A principios de los 60, la ciencia financiera atravesaba un periodo de intenso desarrollo, mientras los investigadores buscaban crear modelos matemáticamente rigurosos para explicar los precios de los activos.

Las bases para la creación del CAPM se sentaron en el trabajo de Harry Markowitz, que introdujo la teoría de cartera moderna en 1952. Markowitz demostró cómo los inversores pueden optimizar la relación riesgo-retorno diversificando sus carteras. Su concepto de frontera eficiente se convirtió en la base de posteriores desarrollos teóricos en finanzas.

William Sharpe, mientras desarrollaba las ideas de Markowitz, se encontró con el problema práctico de la complejidad computacional en la optimización de carteras. En ese momento, el poder de las computadoras era limitado y calcular la matriz de covarianza para un gran número de activos presentaba un serio desafío técnico. Esto impulsó a Sharpe a buscar un modelo simplificado que conservara el rigor teórico pero fuera más práctico en su aplicación.

En 1964, Sharp publicó su famoso artículo, "Capital Asset Prices: A Theory of Market Equilibrium under Conditions of Risk", donde se presentó por primera vez el modelo CAPM. Independientemente de Sharpe, John Lintner y Jan Mossin desarrollaron ideas similares que confirmaron la naturaleza fundamental de los patrones descubiertos. Por sus contribuciones a la teoría financiera, Sharpe recibió el Premio Nobel de Economía en 1990.

El modelo ganó rápidamente aceptación en los círculos académicos y se convirtió en la base de multitud de aplicaciones prácticas en la gestión de inversiones. En la década de 1970, el CAPM ya era ampliamente usado por fondos de inversión y corporaciones para estimar el coste del capital y tomar decisiones de inversión.


La estructura matemática del modelo CAPM clásico

El modelo CAPM clásico se basa en una serie de supuestos clave que definen su estructura matemática y aplicabilidad práctica. La fórmula central del modelo expresa el retorno esperado de un activo a través de un sistema de parámetros interrelacionados:

E(Ri) = Rf + βi × (E(Rm) - Rf)

donde E(Ri) representa el retorno esperado del activo i, Rf denota la tasa de retorno libre de riesgo, βi es el coeficiente beta del activo i y E(Rm) es el retorno esperado de la cartera de mercado.

El coeficiente beta juega un papel central en el modelo y se define como la relación entre la covarianza del retorno del activo con el retorno del mercado y la varianza del retorno del mercado:

βi = Cov(Ri, Rm) / Var(Rm)

Este indicador mide la sensibilidad de los retornos de un activo particular a los cambios en los retornos generales del mercado. Los activos con una beta superior a uno exhiben mayor volatilidad que el mercado, mientras que los activos con una beta inferior a uno son menos volátiles.

El modelo supone que existe una relación lineal entre el riesgo sistemático (medido por beta) y el retorno esperado. Esta relación está representada gráficamente por la línea del mercado de valores (Security Market Line), que muestra la relación de equilibrio entre el riesgo y el retorno de todos los activos de la economía.

Los supuestos fundamentales del CAPM incluyen competitividad perfecta en los mercados, ausencia de costos de transacción, que todos los inversores tengan las mismas expectativas de retornos futuros, la capacidad de prestar y tomar prestado a una tasa libre de riesgo y una distribución normal de los retornos de los activos.

El modelo también supone que todos los inversores son maximizadores racionales de la utilidad que toman decisiones basándose únicamente en el retorno esperado y el riesgo de la cartera. Además, se supone que los inversores tienen el mismo horizonte de inversión y la misma información del mercado.

El riesgo no sistemático en el CAPM se elimina completamente gracias a la diversificación de la cartera, por lo que los inversores solo son compensados por asumir el riesgo sistemático. Esto significa que, en equilibrio, todas las carteras eficientes deberían estar en la misma línea recta en las coordenadas riesgo-retorno.


Fundamentos teóricos de la adaptación del CAPM al mercado de divisas

La fórmula clásica CAPM expresa el retorno esperado de un activo en cuanto a la tasa libre de riesgo y una prima de riesgo sistemático. En el contexto de los pares de divisas, este concepto adquiere un significado particular, ya que cada par de divisas representa el valor relativo de dos economías nacionales con todos los riesgos macroeconómicos que ello conlleva.

En nuestra implementación para la plataforma MetaTrader 5, modificamos el enfoque clásico reemplazando el coeficiente beta con una prima de riesgo dinámica basada en la volatilidad histórica del par de divisas. Esta decisión está motivada por la naturaleza concreta del mercado de divisas, donde el riesgo sistemático se manifiesta a través de la variabilidad de las fluctuaciones del tipo de cambio más que a través de la correlación con la cartera del mercado.

//--- input parameters
input int      InpPeriod = 20;              // Период для расчета
input double   InpRiskFreeRate = 0.05;      // Безрисковая ставка (годовая)
input double   InpRiskPremium = 0.02;       // Премия за риск валютной пары
input bool     InpShowInfo = true;          // Показывать информационную панель

//--- indicator buffers
double ExpectedReturnBuffer[];
double RiskPremiumBuffer[];

Una característica clave de la implementación es el uso de un enfoque sólido para calcular la dispersión de los retornos. Nosotros usamos una estimación de varianza imparcial y gestionamos la escasez de datos con elegancia, lo que resulta fundamental para mantener la estabilidad de los cálculos frente a perturbaciones del mercado o baja liquidez.

La anualización de la volatilidad se realiza utilizando el coeficiente estándar de la raíz cuadrada de 252, que corresponde al número de días de negociación al año. Este enfoque permite llevar los indicadores de volatilidad a una escala comparable con las tasas libres de riesgo, que tradicionalmente se cotizan sobre una base anual.

//--- аннуализируем показатели (252 торговых дня)
double annual_volatility = volatility * MathSqrt(252.0);
double annual_return = mean_return * 252.0;

//--- рассчитываем премию за риск на основе волатильности
double dynamic_risk_premium = InpRiskPremium * (annual_volatility / 0.15);


Interpretación económica de los resultados del indicador

El aspecto más interesante del indicador desarrollado es su comportamiento en distintas condiciones de mercado. Las observaciones empíricas muestran que los retornos esperados y las primas de riesgo muestran una tendencia pronunciada a aumentar precisamente durante periodos de extremos del mercado. Este fenómeno tiene raíces económicas profundas y refleja los principios fundamentales de la fijación de precios en los mercados financieros.

Durante la formación de picos locales, la volatilidad de un par de divisas aumenta naturalmente conforme los participantes del mercado revisan sus expectativas con respecto a los movimientos futuros del tipo de cambio. El aumento de la incertidumbre provoca un aumento de la prima de riesgo que los inversores exigen por poseer un determinado activo. Una situación similar se observa durante la formación de los mínimos del mercado, cuando el pánico y la liquidación masiva de posiciones con pérdidas generan una rentabilidad futura excesiva.

void ShowInfoPanel(int current_bar)
{
    string info = "";
    info += "=== CAPM Forex Model ===\n";
    info += StringFormat("Risk Premium: %.2f%%\n", RiskPremiumBuffer[current_bar] * 100);
    info += StringFormat("Expected Return: %.2f%%\n", ExpectedReturnBuffer[current_bar] * 100);
    
    if(current_volatility > 0.20)
        info += "Status: HIGH RISK\n";
    else if(current_volatility > 0.10)
        info += "Status: MEDIUM RISK\n";
    else
        info += "Status: LOW RISK\n";
}

Este comportamiento del indicador es consistente con la teoría clásica de los mercados eficientes, según la cual un mayor riesgo debería ser compensado por mayores retornos esperados. En el contexto del comercio de divisas, esto significa que los periodos de mayor volatilidad ofrecen potencialmente oportunidades más favorables para obtener ganancias, pero requieren un enfoque correspondientemente más cauteloso en la gestión de riesgos.


Implementación técnica y aspectos computacionales

La arquitectura del indicador se basa en el uso de dos búferes de datos principales, cada uno de los cuales realiza una función analítica específica. ExpectedReturnBuffer contiene valores de retorno esperados calculados según la fórmula CAPM modificada, mientras que RiskPremiumBuffer refleja la dinámica de la prima de riesgo en función de los cambios en la volatilidad.

//--- plot Expected Return
#property indicator_label1  "Expected Return"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrBlue
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2

//--- plot Risk Premium
#property indicator_label2  "Risk Premium"
#property indicator_type2   DRAW_LINE
#property indicator_color2  clrRed
#property indicator_style2  STYLE_DASH
#property indicator_width2  1
La función CalculateCurrentVolatility supone una implementación optimizada del algoritmo de cálculo de volatilidad actual que utiliza funciones integradas de MetaTrader 5 para trabajar con datos históricos. El uso de la función CopyClose proporciona un acceso eficiente a los datos de precios sin necesidad de iterar a través de todo el conjunto de cotizaciones.
double CalculateCurrentVolatility(int current_bar)
{
    if(current_bar < InpPeriod) 
        return 0.0;
    
    double returns_sum = 0.0;
    double returns_sq_sum = 0.0;
    int valid_count = 0;
    
    // Получаем данные цен закрытия для расчета
    double prices[];
    int copied = CopyClose(Symbol(), PERIOD_CURRENT, current_bar - InpPeriod, InpPeriod + 1, prices);
    
    if(copied <= InpPeriod)
        return 0.0;
    
    // Рассчитываем доходности
    for(int j = 1; j < ArraySize(prices); j++)
    {
        if(prices[j-1] > 0)
        {
            double daily_return = (prices[j] - prices[j-1]) / prices[j-1];
            returns_sum += daily_return;
            returns_sq_sum += daily_return * daily_return;
            valid_count++;
        }
    }
    
    if(valid_count < 2) 
        return 0.0;
    
    double mean_return = returns_sum / valid_count;
    double variance = (returns_sq_sum / valid_count) - (mean_return * mean_return);
    double volatility = MathSqrt(MathMax(variance, 0.0));
    
    return volatility * MathSqrt(252.0); // аннуализированная волатильность
}


Importancia práctica del indicador en los sistemas de trading

El indicador CAPM desarrollado demuestra un alto valor práctico, precisamente debido a su capacidad de evaluar cuantitativamente los cambios en la relación riesgo-retorno en las dinámicas del mercado. Cuando un par de divisas se acerca a niveles críticos de soporte o resistencia, el indicador registra un aumento en la volatilidad y, en consecuencia, aumenta la estimación del retorno esperado.

Esta característica hace que el indicador resulte especialmente útil para los tráders que utilizan estrategias de contra tendencia. Un aumento de los indicadores de riesgo y retorno en los extremos puede servir como señal para buscar puntos de entrada contra la tendencia actual, ya que una mayor volatilidad a menudo precede a los movimientos de reversión.

Para las estrategias de seguimiento de tendencias, el indicador ofrece información sobre qué tan bien se corresponde el movimiento de precios actual con una evaluación de riesgos justa. Si el movimiento real excede significativamente el retorno esperado calculado por el indicador, esto puede indicar la formación de una burbuja especulativa o una reacción exagerada del mercado a las noticias.


Desventajas del modelo y direcciones de desarrollo

A pesar de su utilidad práctica, el modelo CAPM adaptado al mercado de divisas presenta una serie de limitaciones conceptuales que deben tenerse en cuenta al interpretar los resultados. El supuesto básico de la distribución normal de los retornos no siempre coincide con las características reales de los mercados de divisas, especialmente en periodos de choques macroeconómicos o crisis políticas.

El modelo tampoco considera los efectos de autocorrelación en las series de retorno, que pueden ser significativos para datos de alta frecuencia. Además, el uso de una tasa fija libre de riesgo puede no reflejar la dinámica real de las tasas de interés del banco central, sobre todo durante periodos de política monetaria activa.

Una dirección prometedora para el desarrollo del indicador es la integración con datos macroeconómicos para el ajuste dinámico de la tasa libre de riesgo de acuerdo con las decisiones actuales de los bancos centrales. También resulta de interés la implementación de algoritmos adaptativos para el ajuste automático de los parámetros del modelo según el régimen de volatilidad de un par de divisas particular.

La incorporación de elementos de aprendizaje automático puede permitir que el indicador se adapte a las condiciones cambiantes del mercado y mejore la precisión en la predicción de los retornos esperados. Este enfoque resulta particularmente relevante en el contexto de los sistemas de trading algorítmico modernos, donde la velocidad de adaptación a nuevos modos de mercado es un factor crítico para el éxito.

El indicador CAPM desarrollado representa un intento exitoso de aplicar la teoría financiera clásica a los detalles concretos del comercio de divisas. Su capacidad para cuantificar la dinámica de las operaciones de riesgo-recompensa lo convierte en una herramienta valiosa para tomar decisiones comerciales informadas en un entorno de mercado en cambio constante.


Conclusión

El estudio ha demostrado que la adaptación del modelo CAPM al mercado de divisas puede implementarse eficazmente como indicador para MetaTrader 5. La herramienta desarrollada estima de forma dinámica el retorno esperado de los pares de divisas según la volatilidad e identifica con éxito periodos de mayor riesgo y potencial.

El indicador demuestra que los modelos clásicos, cuando se implementan técnicamente de forma adecuada, siguen siendo relevantes en el trading moderno y pueden mejorar la calidad de las decisiones comerciales.


Traducción del ruso hecha por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/ru/articles/18281

Archivos adjuntos |
CAPM_Model.mq5 (17.75 KB)
Desarrollamos un asesor experto multidivisas (Parte 27): Componente para mostrar textos de varias líneas Desarrollamos un asesor experto multidivisas (Parte 27): Componente para mostrar textos de varias líneas
Si es necesario mostrar información textual en un gráfico, podemos utilizar la función Comment(), pero sus capacidades son bastante limitadas. Por ello, en este artículo, crearemos nuestro propio componente: un cuadro de diálogo de pantalla completa capaz de mostrar texto de varias líneas con configuraciones de fuente flexibles y soporte de desplazamiento.
Reimaginando las estrategias clásicas (Parte 14): Configuraciones de alta probabilidad Reimaginando las estrategias clásicas (Parte 14): Configuraciones de alta probabilidad
Las configuraciones de alta probabilidad son bien conocidas en nuestra comunidad de trading, pero lamentablemente no están bien definidas. En este artículo, nuestro objetivo será encontrar una forma empírica y algorítmica de definir con precisión qué constituye una configuración de alta probabilidad, identificándolas y explotándolas. Mediante el uso de árboles de potenciación de gradiente, demostramos cómo el lector puede mejorar el rendimiento de una estrategia de negociación arbitraria y comunicar mejor la tarea exacta que debe realizarse a nuestro ordenador de una manera más significativa y explícita.
Particularidades del trabajo con números del tipo double en MQL4 Particularidades del trabajo con números del tipo double en MQL4
En estos apuntes hemos reunido consejos para resolver los errores más frecuentes al trabajar con números del tipo double en los programas en MQL4.
Negociamos con opciones sin opciones (Parte 1): Teoría básica y emulación a través de activos subyacentes Negociamos con opciones sin opciones (Parte 1): Teoría básica y emulación a través de activos subyacentes
El artículo describe una variante de emulación de opciones a través de un activo subyacente, implementada en el lenguaje de programación MQL5. Asimismo, se comparan las ventajas y desventajas del enfoque elegido con opciones bursátiles reales utilizando el ejemplo del mercado de futuros FORTS de la bolsa de Moscú MOEX y la bolsa de criptomonedas Bybit.