Logo Studenta

Portafolio_Inversion_R

¡Este material tiene más páginas!

Vista previa del material en texto

Portafolio de Inversión
con R
Finanzas
Lenguaje R
Juan Isaula
Portafolio de
Inversión
con R
Finanzas
by
Juan Isaula
Contents
1 Introduction 1
2 Variables básicas en el análisis de la cartera 4
2.1 Los pesos de la Cartera o Portafolio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1 Opciones de decisión de inversión . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.2 Ponderación de Activos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.3 Estrategias de Asignación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Rendimientos de la Cartera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.1 Valor Relativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 Análisis de Rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.1 Computo de Rendimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.2 Comprar y mantener vs reequilibrio . . . . . . . . . . . . . . . . . . . . . . . . . 8
3 Demensiones del Rendimiento de la Cartera 12
3.1 Riesgo frente a recompensa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2 Riesgo: Volatilidad de la Cartera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3 Sin compensación lineal a cambio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.4 Rendimiento Medio Geométrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.5 Explorando los rendimientos mensuales del S&P 500 . . . . . . . . . . . . . . . . . . . 13
3.5.1 La media mensual y la volatilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.6 El índice de Sharpe (anualizado) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.6.1 Equilibrio riesgo - rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.6.2 Linea de asignación de capital . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.7 Estadísticas de rendimiento en acción . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.7.1 Anualizar el rendimiento mensual . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.8 Ejercicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.8.1 Media anualizada y Volatilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.9 Variación Temporal del Rendimiento de la Cartera . . . . . . . . . . . . . . . . . . . . . 19
3.9.1 Cluster de alta y baja volatilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.9.2 Cálculo del rendimiento de rodadura . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.9.3 Elegir la longitud de la ventana . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.9.4 Análisis de rendimiento de subperiodos y la venta de función . . . . . . . . . . . 21
3.10 No normalidad de la distribución de rendimientos . . . . . . . . . . . . . . . . . . . . . . 22
3.11 Semidesviación de la rentabilidad de la cartera . . . . . . . . . . . . . . . . . . . . . . . 23
3.12 Valor en Riesgo y Deficit Esperado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.13 Forma de la distribución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.13.1 Curtosis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.14 Equilibrio de Riesgo y Recompensa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.15 Detección de no normalidad mediante asimetría y curtosis . . . . . . . . . . . . . . . . . 27
3.16 Medidas de Riesgo a la Baja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.17 Disminuciones debido a comprar caro, vender barato . . . . . . . . . . . . . . . . . . . 28
4 Controladores de Rendimientos 33
4.1 Desempeño Pasado a Predicciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Impulsores de la media y la Varianza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.3 Variación del rendimiento de la cartera . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4 Correlaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.5 Formulas para llevar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.5.1 Desempeño individual de los activos . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.5.2 La elección de los pesos de la cartera . . . . . . . . . . . . . . . . . . . . . . . . 36
i
Contents ii
4.5.3 La correlación entre los rendimientos de dos activos . . . . . . . . . . . . . . . . 37
4.5.4 Interpretación de la Correlación . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.6 Usando Notación Matricial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.6.1 Variables en juego para n activos . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.6.2 Generalizando de 2 a n activos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.6.3 Las matrices simplifican la notación . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.6.4 Hacer un diagrama de dispersión de riesgo-recompensa . . . . . . . . . . . . . 41
4.7 Presupuesto de Riesgo de la Cartera . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.8 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.8.1 ¿Quién lo hizo? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5 Optimización del Portafolio 46
5.1 Teoría moderna de la cartera de Harry Markowitz . . . . . . . . . . . . . . . . . . . . . . 46
5.1.1 Los pesos de la cartera son óptimos . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.1.2 Harry Markowitz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.1.3 Inversión basada en la varianza media en acciones de DJIA . . . . . . . . . . . 47
5.1.4 Explorando los rendimientos mensuales de las 30 acciones de DJIA . . . . . . . 48
5.1.5 Encontrar la cartera eficiente de media-varianza . . . . . . . . . . . . . . . . . . 48
5.1.6 Efecto del objetivo de retorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.1.7 Imponer restricciones de peso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.2 La Frontera Eficiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.2.1 Variación minima de la cartera . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.2.2 Cartera con ratio máximo de Sharpe . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.2.3 Practica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.3 Evaluación dentro de la muestra frente a evaluación fuera de la muestra . . . . . . . . . 56
5.3.1 Malas noticias: error de estimación . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.3.2 Oportunidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.3.3 Sin sesgo de anticipación en pesos optimizados . . . . . . . . . . . . . . . . . . 57
5.3.4 Practica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
1
Introduction
Comenzaremos nuestra introducción con la siguiente preguenta: ¿Crees que los comerciantes exi-
tosos y los administradores de cartera solo tienen suerte?
¿Es la inversión un negocio de monos?
¿Cree que una cartera de acciones seleccionada por un mono con los ojos vendados es óptima?
Bueno, yo no. Y espero que al realizar la lectura de este articulo, descubra cómo el análisis de cartera
en R puede agregar valor a la gestion de su cartera.
Diversifica para evitar pérdidas
El aviso se trata de equilibrar el riesgo y la recompensa en sus inversiones. Mi recomendación
básica es tomar las desiciones de inversión con seriedad y ser consciente de los riesgos que implica
invertir. Siempre que compre una acción o un bono a algún precio, este precio cambiara en el futuro.
Si aumenta, obtienes una ganancia.Si disminuye usted obtiene una perdida. Es la expectativa de
ganancia lo que debe equilibrarse con el riesgo de perdidas.
Trucos Sencillos
Existen dos sencillos trucos para reducir el riesgo de sufrir grandes pérdidas. El primero es buscar
la diversificación del riesgo de la cartera. Esto significa que uno no debe invertir en un solo activo, sino
invertir en muchos activos diferentes. Esta combinacion de inversiones se denomina cartera. Cuando
reviso carteras, a menudo encuentro que al elegir combinaciones de inversiones mas inteleginentes,
es posible aumentar el rendimiento esperado de la cartera y reducir el riesgo. Una segunda regla de
oro en la inversión es probar siempre la estrategia de cartera en datos historicos. Y una vez que este
negociando la estrategia, monitorear constantemente su desempeño.
Por esta razón el material esta destinado a proporcionar instrucciones en R para hacer el análisis
de cartera en la practica.
Resumen del manual
El manual se desarrollara en cuatro capitulos, capitulo 1 que hacemos referencia a esta introduc-
ción del contenido, capitulo 2 donde presentaremos las variables básicas en el análisis de la cartera,
los pesos de la cartera le indican el porcentaje del valor total invertido en cada uno de los activos. Los
rendimientos de la cartera miden el aumento relativo del valor de la cartera durante el periodo. Le
1
2
mostraré como se conectan los pesos y los rendimientos de la cartera y cómo hacer el calculo.
En el capitulo 3 aprendera como usar medidas de recompensa y riesgo para evaluar el desempeño
de la cartera. usaremos rendimientos promedio, volatilidad, indice de Sharpe e incluso medidas del
riesgo a la baja, como el valor en riesgo de la cartera y el déficit esperado.
El Capitulo 4 trata sobre impulsores del rendimiento de la cartera. Le mostrare cómo el riesgo y
las recompensas individuales de las diferentes inversiones en la cartera interactúan entre si para de-
terminar el rendimiento y el riesgo total de la cartera.
Y finalmente en el capitulo 5 le mostrare como optimizar los pesos de la cartera de tal manera que
la cartera obtenida no pueda ser suparada por ninguna otra cartera en términos de ofrecer un mayor
rendimiento esperado para el mismo o menor nivel de riesgo.
En conjunto, estos últimos cuatro capitulos le enseñan a analizar los rendimientos de la cartera en
R, que es una habilidad crucial para obtener ganancias de inversión sin correr riesgos excesivos.
Tener una idea de los Datos
La elección de la inversión es importante incluso cuando los activos de riesgo subyacentes son simi-
lares. Como primer ejemplo, consideremos el precio de las acciones deCocaCola Company y PepsiCo
desde enero de 2003 hasta finales de agosto de 2016.
La figure 1.1 muestra la razón que expresa el valor de las acciones de Coca Cola Company en
términos del precio de las acciones de Pepsico, el código con el cual se genero la la figura, es el que
se presenta a continuación:
1 """
2 Este código se utilizó para generar la Figure 1.1.
3 """
4 library(tidyquant)
5
6 ko <- getSymbols("ko", from = "2003-01-01", to = "2016-08-30", auto.assign = FALSE)
7 pep <- getSymbols("pep", from = "2003-01-01", to = "2016-08-30", auto.assign = FALSE)
8
9 # Tomamos solo el precio ajustsado de ko y pep
10
11 ko <- Ad(ko)
12 pep <- Ad(pep)
13 head(cbind(ko, pep))
14 """
15 Primero, definimos ko_pep como la razón que expresa el valor del precio de las acciones
16 de Coca Cola Company en términos del precio de las acciones de PepsiCo.
17 """
18
19
20 ko_pep <- ko/pep
21 head(ko_pep)
22
23 # Diagrama de serie de tiempo de ko_pep
24
25 plot.zoo(ko_pep)
¿Cómo decidir entre estas dos empresas? ¿Coca-cola o Pepsi? ¿30% KO y 70% PEP, o solo
100% PEP solo porque te gusta más Pepsi?
Varias estrategias disponibles para elegir:
• Poner todo dentro de una canasta (solo para novatos).
• Igual ponderación.
3
Figure 1.1: Razón que expresa el valor del precio de las acciones de Coca Cola en términos del Precio de las acciones de
PepsiCo.
• Ponderación de capitalización de mercado.
• Optimización de la media y la varianza.<- NUESTRO OBJETIVO
Para aquellos interesados en finanzas en R, definitivamente deben aprender más y aprender pro-
fundamente este paquete: PerformanceAnalytics.
El grafico de serie temporal que se presenta en la Figure 1.2, muestra la evolución del valor de
un dólar invertido en cada empresa. Como ejercicio, gráfique la serie de tiempo que muestre el valor
relativo de una inversión en la compañía Coca Cola, en comparación con el valor de una inversión
en PepsiCo. Para hacer este ejercicio, puede utilizar la serie de precios correspondiente, disponible
como las variables ko y pep que se mostraron en las lineas de código previas.
Figure 1.2: Evolución del valor de un dólar invertido en cada empresa.
2
Variables básicas en el análisis de la
cartera
2.1. Los pesos de la Cartera o Portafolio
2.1.1. Opciones de decisión de inversión
En el ejemplo que estudiamos en la introducción, elegí intencionalmente dos empresas que venden un
producto similar. Aún así, el análisis mostró que el valor de las acciones puede divergir con el tiempo.
Entonces, ¿cómo decidir entre esas dos empresas? ¿Lanza una moneda?
NO! En la mayoria de los casos, la desición racional es no invertir en ninguno de los dos. o el
otro, pero para reducir nuestro riesgo manteniendo una cartera que esta invertida en ambos. A esto
se le llama diversificar sus riesgos. Entonces, ¿que tan buena es la diversificación de su cartera?
Para responder a esta pregunta, debe investigar como las inversiones de cartera se distribuyen en
los diferentes activos. Esto se hace computando, el peso de la cartera de cada activo. Esto significa
que calculamos la relación entre el valor de una inversión, en relación con el valor total de todas las
inversiones en la cartera.
2.1.2. Ponderación de Activos
Supongamos, por ejemplo, que hay N inversiones diferentes, cada una con su propio valor Vi. En-
tonces el peso de la inversión i es igual a Vi dividio por la suma del valor de todas las inversiones de
la cartera. Para un mayor entendimiento, observe la Tabla 2.1.
El código correspondiente en R es simple, veamos:
1 """
2 Supongamos que valores es el vector que contiene los valores invertidos en los diferentes 
activos. Entonces el vector de peso correspondiente es simplemente ese vector de valores 
dividido por su suma.
3 """
4 Valores <- c(500000, 200000, 100000, 20000)
5
6 names(valores) <- c("Inv 1", "Inv 2", "Inv 3", "Inv 4")
7
8 pesos <- valores/sum(valores)
9
10 barplot(pesos)
4
2.1. Los pesos de la Cartera o Portafolio 5
Inversión Valor Inversión Peso
1 Vi w1 = V1V1+...+VN
2 V2 w2 = V2V1+...+VN
...
...
...
N VN wN = VNV1+...+VN
Table 2.1: Computo de Pesos
2.1.3. Estrategias de Asignación
En el capítulo 5 veremos como optimizar la elección de los pesos de la cartera. Mientras tanto, es im-
portante saber que existen varios enfoques para establecer los pesos de la cartera. Un primer enfoque
es concentrar la apuesta inversora en un activo riesgoso. Este enfoque es especulativo y es muy prob-
able que sea ineficiente. Cuando todos los activos son similares en términos de riesgo y recompensa,
un mejor enfoque es apuntar a la diversificación perfecta e invertir la misma cantidad en cada activo
riesgoso. Este el el llamado enfoque de igual ponderación. Otro enfoque popular es establecer pesos
proporcionales al valor del mercado del activo. Implica sobreponderar acciones de grandes empresas
e infraponderar acciones de pequeña empresa. Estos son solo algunos ejemplos de la gran cantidad
de enfoques posibles para definir los pesos de la cartera. Para nosotros, la conclusión importante a
recordar es que para evitar pérdidas extremas, difinitivamente no es una buena idea poner todos sus
huevos en una canasta.
Una de las carteras más utilizadas en la inversión es la cartera igualmente ponderada. Esto sig-
nifica que elige invertir una cantidad igual de capital en cada activo.
Los pesos de una cartera ponderadapor capitalización de mercado
En una cartera ponderada por capitalización de mercado, las ponderaciones vienen dadas por la
capitalización de mercado (o valor de mercado) de los activos individuales, dividida por la suma de
las capitalizaciones de mercado de todo los activos. Un ejemplo típico es la cartera S&P 500 invertida
en las 500 empresas más grandes que cotizan en las bolsas de valores de EE.UU. (NYSE, Nasdaq).
Tenga en cuenta que al dividir por la suma de los valores de los activos en todos los activos de la
cartera, los pesos de la cartera suman la unidad (uno).
Como ejercicio, inspeccione la distribución de ponderaciones basadas en la capitalización de mer-
cado cuando la cartera se invierte en 10 acciones. Para este ejercicio, puede utilizar capitalizaciones
de mercado de 5, 8, 9, 20, 25, 100, 100, 500, 700 y 2000 millones de USD.
1 # Definimos las capitalizaciones de mercado
2
3 capitalizaciones_mercado <- c(5,8,9,20,25,100,100,500,700,2000)
4
5 # Computo de los pesos
6
7 pesos <- capitalizaciones_mercado/sum(capitalizaciones_mercado)
8
9 # Inspeccionar estadisticas de resumen
10
11 summary(pesos)
12
13 # Crear un gráfico de barras de peso
14
15 barplot(pesos)
2.2. Rendimientos de la Cartera 6
2.2. Rendimientos de la Cartera
El análisis de los pesos de la cartera revela las apuestas de inversión. Cuanto mayor sea el peso de un
activo en la cartera, más influyente será en la determinación del valor futuro de la cartera. Al estudiar
este impacto, los inversores normalmente no analizan el cambio en el valor de la inversión en términos
absolutos, sino en términos relativos. Esto los lleva a calcular rendimientos simples, definidos como
el cambio en el valor durante el período, en relación con el valor inicial. El retorno simple es, por lo
tanto, el valor final menos el valor inicial, dividido por el valor inicial.
Retornosimple =
V alor final − V alor inicial
V alor inicial
(2.1)
2.2.1. Valor Relativo
Como ejemplo, supongamos que el valor inicial es de $100, el valor final son $120. Entonces, el
retorno de esa inversión es igual a
Retornosiemple =
120− 100
100
= 0.20× 100 = 20%
A continuación, se muestra cómo podemos aplicar esta definición para calcular los rendimientos
de la cartera. Esto implica tres pasos:
Activo1 . . . ActivoN
V alorincial Activo1 . . . V alorinicial ActivoN
V alorfinal Activo1 . . . V alorfinal ActivoN
⇓
V alorinicial Portafolio = V alorincial Activo1 + ...+ V alorincial ActivoN
V alorfinal Portafolio = V alorfinal Activo1 + ...+ V alorfinal ActivoN
⇓
RetornoPortafolio =
V alorfinal Portafolio− V alorinicial Portafolio
V alorinicial Portafolio
Como ejemplo, consideremos una cartera de 2 activos, que invierte 200 dólares en el activo 1 y
300 dólares en el activo 2. El valor final es de 180 dólares y 330 dólares.
Con base en la información previa, tenemos que:
V alorinicial Portafolio = 200 + 300 = 500
V alorfinal Portafolio = 180 + 330 = 510
por tanto,
RendimientoPortafolio =
V alorfinal Portafolio− V alorinicial Portafolio
V alorinicial Portafolio
=
510− 500
500
= 2%
Una desventaja de este método de cálculo es que no muestra cómo las ponderaciones de la cartera
determinan el rendimiento de la cartera. Consideremos por lo tanto, una fórmula diferente, la cual
en la cartera el retorno se calcula como el promedio ponderado de los rendimientos de los activos
subyacentes.
2.2. Rendimientos de la Cartera 7
Rendimientoportafolio = w1R1 + w2R2 + ...+ wnRn (2.2)
donde,
wi =
V alorActivoi∑N
j=1 V alorActivoj
Ri =
V alorfinal Activoi − V alorinicial Activoi
V alorinicial Activoi
´
Su computo procede tambien en tres pasos, como se muestran a continuación:
Activo1 . . . ActivoN
V alorincial Activo1 . . . V alorinicial ActivoN
V alorfinal Activo1 . . . V alorfinal ActivoN
⇓
Activo1 Activo2
w1 =
V alorincial Activo1
V alorPortafolio wN =
V alorincial Activon
V alorPortafolio
R1 =
V alorfinal Activo1−V alorinicial Activo1
V alorfinal Activo1
Rn =
V alorfinal Activon−V alorinicial Activon
V alorinicial Activon
⇓
Rendimientoportafolio = w1R1 + w1R2 + ...+ wnRn
Ahora, verá cómo aplicar la fórmula previa para calcular el rendimiento de nuestra cartera de ejem-
plo con dos activos.
Activo1 . . . ActivoN
V alorincial Activo1 = 200 . . . V alorinicial ActivoN = 300
V alorfinal Activo1 = 180 . . . V alorfinal ActivoN = 330
⇓
Activo1 Activo2
w1 =
200
500 wN =
300
500 = 60%
R1 =
180−200
200 = −10% R2 =
330−300
300 = 10%
⇓
Rendimientoportafolio = (0.40)(−10%) + (0.60)(10%) = 2%
Note que este resultado es exactamente el mismo que ya se habia obtenido previamente.
Impacto asimétrico de ganancias y pérdidas
Es importante ser consciente del hecho de que una rentabilidad positiva y negativa de la misma mag-
nitud relativa no se compensan entre si en términos de riqueza terminal. Matemáticamente, esto se
puede ver a partir de la identidad
(1 + x)(1− x) = 1− x2
que es menor que uno. Por lo tanto, una pérdida del 50% no se compensa con una ganancia del 50%.
Después de una pérdida del 50%,¿cuál es el rendimiento necesario para volver a estar a la par? La
repuesta es 100%.
2.3. Análisis de Rendimiento 8
2.3. Análisis de Rendimiento
En este punto, conoce los entresijos de calcular un rendimiento de la cartera en un solo periodo que
va de una fecha de inicio hasta una fecha de finalización. En la práctica necesitaremos calcular los
rendimientos de muchos periodos. De hecho, cuanto más sea el historial de rendimientos, más in-
formación tendremos sobre el rendimiento de la cartera subyacente. Por tanto, el análisis de la vida
real de los rendimientos de la cartera requiere un ciclo en las diferentes fechas. En esta sección, le
mostraré cómo hacer esto usando el paquete R PerformanceAnalytics. Este es el paquete de refer-
encia para analizar los rendimientos de cartera en R y ha sido escrito por dos analisitas cuantitativos
de la ciudad de Chicago: Peter Carl y Brian Peterson.
2.3.1. Computo de Rendimientos
Para saber como calcular la serie temporal de los rendimentos de la cartera en R, se hace fácil usando
dos funciones en R, a saber:
• Return.calculate: para calcular los rendimientos de los activos. Esto deberia venir como un
objeto de clase cts-time series, lo que significa que las filas estan ordenadas en el tiempo, en
cuanto a la estructura de la fecha se indica preferiblemente como Y Y Y −MM −DD.
• Return.portafolio: para calcular el rendimiento de la cartera.
Por defecto la función Return.calculate transforma la serie temporal de precios en una serie tempo-
ral de rendimientos, donde cada observación es el cambio porcentual en valor durante ese período.
1 """
2 Dados los rendimientos y las ponderaciones de la cartera, finalmente podemos calular
3 la serie temporal de los rendimientos de la cartera mediante la función Return.portafolio.
4 """
5 Return.portafolio <- function(R, weights = NULL,
6 rebalance_on = c(NA, "years", "quarters",
7 "months", "weeks", "days"))
8 """
9 Los argumentos, especifican:
10 1. El argumento de rendimiento de datos
11 2. El argumento de las ponderaciones
12 3. El argumento de reequilibrio que define si la cartera debe reequilibrarse y con que 
frecuencia.
13 """
2.3.2. Comprar y mantener vs reequilibrio
La elección de la inversión es importante, incluso cuando los activos de riesgo subyacentes son simi-
lares. Como ejemplo, ahora considerara el precio de las acciones de Apple y Microsoft desde enerode
2006 hasta finales de agosto de 2016. El gráfico de serie temporal le muestra la evolución del valor
de un dólar invertido en cada uno de ellos.
Para este ejercicio, su enfoque de cartera será invertir la mitad de su presupuesto en acciones de
Apple y la otra mitad de su presupuesto en acciones deMicrosoft. con el tiempo, los pesos de la cartera
cambiarán. Tendrá dos opciones como inversor. La primera opción es der pasivo y no comerciar más.
Esto se llama una estrategia de comprar y mantener. La segunda opción es comprar y negociar al
cierre de cada día, lo que da como resultado un reequilibriode la cartera de modo que su cartera esté
igualmente invertida en acciones de Microsoft y Apple. Esta es una cartera reequilibrada.
Afirmaciones ciertas a considerar:
• Al invertir en una cartera de activos de riesgo, el pago de la cartera estará entre el mínimo y el
máximo del pago de los activos de riesgo subyacentes.
• Al invertir en una cartera de activos riesgosos, el riesgo dee la rentabilidad de la cartera será
menor que el riesgo máximo de los activos riesgosos subyacentes.
• Debido a que los precios deMicrosoft y Apple han evolucionado demanera diferente, el inversion-
ista que inicialmente gasto la mitad de su riqueza en Microsoft y Apple termina con una cartera
que ya no esta igualmente invertida.
2.3. Análisis de Rendimiento 9
Afirmación Falsa:
• Un inversor necesita tener mucho capital para poder invertir en una cartera de muchos activos.
Calcular los rendimientos de un período es bastante sencillo en R. Cuando es necesario calcular
los rendimientos para diferentes fechas, las funciones Return.calculate() y Return.portafolio(), en el
paquete R PerformanceAnalytics, son extremadamente útiles. Requieren que los datos de entrada
sean de la clase xts-time series. Exploremos esto en el siguiente código:
1 # Cargar el paquete PerformanceAnalytics
2 library(PerformanceAnalytics)
3
4 # Imprimir las primeras seis filas y las últimas seis filas de precios
5 head(prices,6)
6 tail(prices,6)
7
8 # Crea una variable de rendimientos usando Return.calculate()
9 returns <- Return.calculate(prices)
10
11 # Imprime las primeras seis filas de returns
12 head(prices, 6)
13
14 # Elimiar la primera fila de rendimientos (NA)
15 returns <- returns[-|1,]
En el ejercicio previo, creó una variable llamada returns, a partir de los precios diarios de las ac-
ciones de Apple y Microsoft. En este ejercicio, creará dos carteras usando la serie de rendimientos
que creo anteriormente. Las dos carteras difieren en una forma, y esa es la ponderación.
En la última seccion se le presento dos estrategias de ponderación: la estrategia de comprar y
mantener y una estrategia de reequilibrio mensual. En este ejercicio, creara una cartera en la que no
reequilibre y otra en la que reequilibre mensualmente. A continación visualizará los rendimientos de
la cartera de ambas.
Utilizará la función Return.portafolio() para sus calculos. Para esta función, proporcionará tres ar-
gumentos: R, weights y rebalance_on. R es una serie temporal de rendimientos, weights es ujn vector
que contiene ponderaciones de activos y rebalance_on especifica en qué período de calendario se
debe reequilibrar.
Para este ejercicio, trabajara con los returns datos que estan precargados:
1 # Crea los pesos
2 pesos_eq <- c(0.5, 0.5)
3
4 # Crea una cartera usando comprar y mantener
5 pf_bh <- Returns.portafolio(R = returns, weights = pesos_eq)
6
7 # Crea un portafolio rebalanceado mensual
8 pf_rebal <- Return.portafolio(R = returns, weights = pesos_eq, rebalance_on = "months")
9
10 # Plot de series de tiempo
11 par(mfrow = c(2,1), mar = c(2,4,2,2))
12 plt.zoo(pf_bh)
13 plt.zoo(pf_rebal)
14 # Ver Figure 2.1
La serie temporal de pesos
En el código previo, exploró la funcionalidad de la Return.portafolio() y creó carteras utilizando dos
estrategias. Sin embargo, al establecer el argumento verbose = TRUE en Return.portafolio() puede
crear una lista de ponderaciones y valores al comienzo del periodo (BOP) y al final del periodo (EOP),
además de los rendimientos de la cartera y las contribuciones.
Puede acceder a estos desde el objeto de lista resultante creado a partir de Return.portafolio(). La
lista resultante contiene $returns, $contributions, $BOP.Weight, $EOP.Weight, $BOP.Value y $EOP.Value.
2.3. Análisis de Rendimiento 10
Figure 2.1: La serie temporal de los rendimientos de la cartera. Verá, según los gráficos, que reequilibrar una cartera puede
conducir a rendimientos menos extremos en cualquier dirección.
En este ejercicio, volverá a crear los portafolios que hizo en el ejercicio previo, pero los ampliará
creando una lista de cálculos usando verbose = True. A continuación visualizara los pesos de fin de
periodo de Apple.
1 # Crea los pesos
2 pesos_eq <- c(0.5, 0.5)
3
4 # Crea una cartera usando comprar y mantener
5 pf_bh <- Returns.portafolio(R = returns, weights = pesos_eq,verbose = TRUE)
6
7 # Crea un portafolio rebalanceado mensual
8 pf_rebal <- Return.portafolio(R = returns, weights = pesos_eq, rebalance_on = "months",
verbose = TRUE)
9
10 # Crea eop_pesos_bh
11 eop_pesos_bh <- pf_bh$EOP.Weight
12
13 # Crea eop_pesos_rebal
14 eop_pesos_rebal <- pf_rebal$EOP.Weight
15
16 # Plot de series de tiempo
17 par(mfrow = c(2,1), mar = c(2,4,2,2))
18 plt.zoo(eop_pesos_bh$AdjClose.aapl)
19 plt.zoo(eop_pesos_rebal$AdjClose.aapl)
20 # Ver Figure 2.2
2.3. Análisis de Rendimiento 11
Figure 2.2: Mira las dos parcelas. Observe cómo los pesos de la cartera reequilibrada se mantienen cerca del peso inicial del
50%, y cómo la estrategia de comprar y mantener tiene acciones de Apple con un peso de alrededor del 80%.
3
Demensiones del Rendimiento de la
Cartera
Cómo bien se desempeño una cartera en el pasado y lo bueno que esperamos que sea el rendimiento
en el futuro? Esta pregunta se puede responder de forma basada en datos mediante el uso de fun-
ciones estadísticas en R para analizar los rendimientos de la cartera. Esto nos permite sacar con-
clusiones sensatas sobre el rendimiento pasado de la cartera y hacer predicciones fiables sobre el
rendimiento futuro de la cartera. Es importante comprender que el rendimiento de la cartera es un
concepto general, que no se puede resumir en un número.
3.1. Riesgo frente a recompensa
En términos generales, hay dos dimensiones, a saber: recompensa y riesgo. Las recompensas nos
dicen el éxito en términos de alcanzar altos niveles de valor de cartera, mientras que el riesgo tiene
que ver con el desempeño en términos de evitar pérdidas extremas. Para realizar un análisis basado
en datos en R, primero debemos traducir el concepto de recompensa y riesgo en una fórmula.
En esta sección, nos centraremos en el rendimiento medio de la cartera como medida de recom-
pensa y en la volatilidad de la cartera como medida de riesgo. Las fórmulas que mostraremos asumen
que tenemos una muestra de T observaciones de rendimiento de cartera: R1, R2, R3, ..., RT . Entonces,
el rendimiento medio de la cartera se puede estimar como el valor promedio de esas T observaciones
de rendimiento, es decir:
µ̂ =
R1, R2, ..., RT
T
(3.1)
Esto también se llama rendimiento medio aritmético. Indica qué tan grande es el rendimiento de
la cartera en promedio. El promedio es importante: ganas algo, pierdes algo, pero en promedio, el
rendimiento de la cartera debe ser lo suficientemente alto como para compensar el riesgo de inversión.
3.2. Riesgo: Volatilidad de la Cartera
Este riesgo se origina del hecho de que los rendimientos pueden desviarse del rendimiento promedio.
Usaremos el nombre de ”rendimiento degradado” para referirnos a la diferencia entre el rendimiento
y su valor medio, Ri − µ̂. Si el rendimiento reducido es positivo, entonces el rendimiento es más alto
que el promedio. Si tomamos el promedio de los rendimientos de la cartera degradados al cuadrado,
entonces obtenemos la varianza de la cartera.
σ̂2 =
(R1 − µ̂)2 + (R2 − µ̂)2 + ...+ (RT − µ̂)2
T1
(3.2)
12
3.3. Sin compensación lineal a cambio 13
La varianza tiene valores grandes cuando el rendimiento de la cartera puede desviarse mucho de
su valor medio. La mayoría de las veces, no usamos la varianza de la cartera en si, sino su cuadrado
de su raíz lo que conocemos como desviación estándar de la cartera, la volatilidad de la cartera.
σ̂ =
√
σ̂2
Cuanto mayor sea la volatilidad, mayor será la probabilidad de un gran rendimiento positivo o
negativo en su cartera.
3.3. Sin compensación lineal a cambio
Por lo que mencionamos previamente es que la volatilidad provoca riesgo. También provoca un de-
sajuste entre el rendimiento medio y el rendimiento real de lainversión. Supongamos, por ejemplo, que
el inversor obtiene una ganancia del 50% y una pérdida del 50%. Entonces el valor medio aritmético
de esos rendimientos es
µ̂ =
0.50− 0.50
2
= 0
y el valor final es
Vfinal = Vinicial × (1 + 0.5)(1− 0.5) = 0.75× Vinicial
Entonces, podemos ver que el valor final de la inversión es solo el 75% del valor inicial. Debido a
este desajuste entre la rentabilidad media y la rentabilidad real de la inversión, los inversores prefieren
utilizar la media geométrica de rendimiento.
3.4. Rendimiento Medio Geométrico
tener en cuenta que no existe una compensación lineal en los rendimientos. El rendimiento medio
geométrico se obtiene multiplicando primero los rendimientos totales y luego elevando ese número
a la potencia de uno dividido por el número de observaciones. Si luego le restas uno a ese número,
obtienes el rendimiento de la media geométrica.
meangeom = [(1 +R1) · (1 +R2) · ... · (1 +RT )]1/T − 1 (3.3)
En nuestro ejemplo de un rendimento de más del +%50 y un rendimiento de -%50, el rendimiento
de la media geométrica es -13.4%, ya que
meangeom = [(1 + 0.50) · (1− 0.50)]1/2 − 1 =
√
0.75− 1 = -13.4%
y esto coincide, por definición, con el rendimiento de inversión efectivo promedio. Una vez que tenemos
el rendimiento y la volatilidad promedio, podemos comenzar a interpretar el rendimiento de la cartera.
En los proximos ejercicios haremos esto para la cartera S&P 500, que se invierte en las 500 acciones
estadounidenses más grandes que cotizan en bolsa, con ponderaciones que son proporcionales a la
capitalización de mercado de las acciones. La cartera S&P 500 se considera generalmente como la
cartera de referencia más importante para los inversores en acciones estadounidenses.
3.5. Explorando los rendimientos mensuales del S&P 500
Para el proximo ejercicio, examinará el rendimiento mensual del S&P 500. Una imagen vale más que
mil palabras. Esta es la razón por la que la mayoría de los análisis de rendimiento comienzan estu-
diando el gráfico de series temporales del valor de una inversión.
La Figura 3.1 muestra un gráfico del S&P 500 para el periodo de 1986 hasta agosto de 2016. Cada
observación en este gráfico es un valor al final del día. Este gráfico muestra una serie de alzas y caídas.
Eche un vistazo al gráfico, ¿ ve usted por qué la década de 2000 a menudo se llama la década perdida
de la inversión?
3.5. Explorando los rendimientos mensuales del S&P 500 14
1 library(tidyverse)
2 library(readr)
3 library(PerformanceAnalytics)
4 library(xts)
5
6 # Cargamos los datos
7 sp500 <- read_rds("sp500.Rdata")
8
9 # Convertimos la frecuencia diaria de sp500 a frecuencia sp500_mensual
10 sp500_mensual <- to.monthly(sp500)
11
12 # Imprimimos las primeras seis filas de sp500_mensual
13 print(head(sp500_mensual,6))
14
15 # Creamos sp500_rendimientos usando Return.Calculate.
16 # Usando los precios de cierre.
17 sp500_rendimientos <- Return.calculate(sp500_mensual[,4])
18
19 # Graficamos la serie de rendimientos
20 plot.zoo(sp500_rendimientos) # Ver Figura 3.4
21
22 # Producimos la tala año x mes
23 table.CalendarReturns(sp500_rendimientos)
3.5.1. La media mensual y la volatilidad
Ahora ha creado rendimientos de mes a mes para el S&P 500. A continuación, deberá realizar un
análisis descriptivo de los rendimientos. En este ejercicio, calculará la media (arimética y geométrica)
y la volatilidad (desviación estándar) de los rendimientos. Estos retornos están disponibles en el
bloque de código previo, como sp500_rendimientos.
1 # Computo de metricas
2
3 # Calculo de la media
4 mean(sp500_rendimientos, na.rm = TRUE)
5 [1] 0.007320322
6
7 # Calcule la media geometrica de los rendimientos mensuales
8 mean.geometric(sp500_rendimientos, na.rm = TRUE)
9 Geometric Mean 0.006350886
10
11 # Calculo de la desviacion estandar
12 sd(sp500_rendimientos, na.rm = TRUE)
13 [1] 0.04364617
Figure 3.1: Serie del S&P 500
3.6. El índice de Sharpe (anualizado) 15
Figure 3.2: Rendimientos sp500 precio de cierre
3.6. El índice de Sharpe (anualizado)
Ahora hemos visto cómo calcular la media y la desviación estándar de los rendimientos mensuales
de una cartera de riesgo. Para interpretar estos números necesitamos un punto de referencia para
comparar. La elección estándar de benchmark es la inversión en un activo libre de riesgo, como
una letra del Tesoro emitida por el gobierno de los Estados Unidos. Debido a que no hay riesgo, la
volatilidad de su rendimiento es cero y el rendimiento en si se denomina tasa libre de riesgo. Encuentro
útil considerar esta comparación entre el activo libre de riesgo y la cartera riesgosa en un diagrama de
dispersión, con, el eje x, la volatilidad del rendimiento de la cartera y en el eje y el rendimiento medio.
Figure 3.3
3.6.1. Equilibrio riesgo - rendimiento
Así tenemos dos puntos en la Figura 3.3. El primero es el activo libre de riesgo, para el cual la volatil-
idad es, por supuesto, cero, y para el cual el rendimiento esperado se denomina tasa libre de riesgo.
El segundo punto del gráfico es la cartera de riesgo para la rentabilidad esperada es mayor, en com-
pensación por el riesgo asumido.
3.6. El índice de Sharpe (anualizado) 16
La flecha vertical de dos lados indica la diferencia entre la rentabilidad media de la cartera de riesgo
y la tasa libre de riesgo. Esta rentabilidad se denomina exceso de rentabilidad de la cartera, le dice
cuánto rendimiento adicional puede esperar en la cartera de riesgo en comparación con la tasa libre
de riesgo.
3.6.2. Linea de asignación de capital
Figure 3.4
Veamos ahora la linea conectando los dos puntos. Esto se llama la linea de asignación de capital.
Conecta la cartera que está totalmente invertida en el activo libre de riesgo con la cartera de riesgo.
Cada punto entre esos dos portafolios es otro portafolio que se invierte tanto en el activo libre de
riesgo como en la cartera riesgosa. Yendo de izquierda a derecha, aumenta la asignación a la cartera
de riesgo. Cuando vamos más allá de la cartera riesgosa, el inversionista toma apalancamiento. Está
pidiendo dinero prestado para invertir más de los que tiene en la cartera de riesgo.
La linea de asignación de capital también es importante por su pendiente. Como puede ver en
Figura 3.5, la pendiente es igual al exceso de rendimiento medio de la cartera de riesgo, dividido por
la volatilidad de la cartera. La pendiente es, por tanto, una medida de la rentabilidad ajustada al riesgo
de la cartera: muestra la recompensa por unidad de riesgo asumido. Los inversores llaman a esto el
índice de Sharpe de la cartera y, por lo tanto, lo calculan como el exceso de rentabilidad media de la
cartera, dividido por la volatilidad de la cartera.
En total, hemos visto tres estadísticas para describir el rendimiento de la cartera en base a una
muestra de rentabilidades históricas, a saber, la rentabilidad media (tanto aritmética como geométrica),
la volatilidad y el radio de Sharpe.
3.7. Estadísticas de rendimiento en acción 17
Figure 3.5
3.7. Estadísticas de rendimiento en acción
Como ilustración, suponga que ahora que tenemos la muestra de ocho rendimientos mensuales de
cartera, como se muestra a continuación
1 library(PerformanceAnalytics)
2 muestra_rendimientos <- c(-0.02, 0.00, 0.00, 0.06, 0.02, 0.03, -0.01, 0.04)
3
4 mean_aritm <- mean(muestra_rendimientos)
5 mean_aritm
6 [1] 0.015
7
8 mean.geometric(muestra_rendimientos)
9 [1] 0.01468148
10
11 volatilidad <- sd(muestra_rendimientos)
12 volatilidad
13 [1] 0.02725541
14
15 # Asumimos una tasa libre de riesgo de 0.004, entonces
16 ratio_sharpe <- (mean_aritm - 0.004)/volatilidad
17 ratio_sharpe
18 [1] 0.4035897
Entonces con base en los resultados previos, el índice de Sharpe es de 0.4. Hay una deficiencia
de las métricas previas. Muestra el rendimiento durante un mes, mientras que en los informes de
inversión profesionales, el rendimiento suele informarse en términos de números anualizados para
que coincidan con el rendimiento durante un horizonte de inversión de un año.
3.7.1. Anualizar el rendimientomensual
Por lo tanto, necesitamos anualizar las medidas de desempeño. Para el promedio simple, la con-
vención es hacer esto multiplicando por 12. Para el enfoque de la media geométrica, obtenemos el
rendimiento anualizado elevando el producto de los rendimientos totales a la potencia 12 dividido por
el número de observaciones. Y para anualizar la volatilidad, la convención es usar la regla de la raíz
cuadrada del tiempo. Consiste en multiplicar la volatilidad mensual por la raíz cuadrada de 12.
1. meanmensual × 12
2. [(1 +R1) · (1 +R2) · ... · (1 +RT )]12/T − 1
3. V olatilidadmensual × sqrt12
3.8. Ejercicio 18
Si aplicamos esto a nuestras muestras de ocho declaraciones mensuales, obtenemos:
1 library(PerformanceAnalytics)
2 muestra_rendimientos <- c(-0.02, 0.00, 0.00, 0.06, 0.02, 0.03, -0.01, 0.04)
3
4 Return.annualized(muestra_rendimientos, scale = 12, geometric = FALSE)
5 [1] 0.18
6
7 Return.annualized(muestra_rendimientos, scale = 12, geometric = TRUE)
8 [1] 0.1911235
9
10 StdDev.annualized(muestra_rendimientos, scale = 12)
11 [1] 0.0944155
12
13 Return.annualized(muestra_rendimientos, scale = 12)/StdDev.annualized(muestra_rendimientos,
scale = 12)
14 [1] 2.024281
donde claramente se nota que no solo ha aumentado la media y la volatilidad, sino también el índice
de Sharpe. Esto es fácil de entender ya que anualizamos la media multiplicada por 12, mientras que
anualizamos la volatilidad multiplicandola por la raíz cuadrada de 12. La relación de Sharpe, siendo
la relación de ambos, aumenta con un factor igual a la raíz cuadrada de 12.
3.8. Ejercicio
Exceso de rentabilidad y ratio de Sharpe de la cartera
Acaba de aprender a crear estadísticas descriptivas de los rendimientos de su cartera. Ahora apren-
derá cómo evaluar el rendimiento de su cartera.
La evaluación del rendimiento implica comparar sus opciones de inversión con una opción de in-
versión alternativa. La mayoría de las veces, el rendimiento se compara con invertir en un activo (casi)
libre de riesgo, como la letra del Tesoro de EE.UU. se conoce como tasa libre de riesgo porque las
letras del Tesoro (T-Bills) están respaldadas por el gobierno de los EE.UU.
En este ejercicio, se le pedirá que anualice la tasa libre de riesgo utilizando la fórmula de interés
compuesto. La tasa de interés compuesta anual está dada por (1 + y)12 − 1. La tasa anual se usa
para estimar un rendimiento anual y es muy útil para hacer pronósticos.
Como recordará de las secciones previas. el índice de Sharpe es una métrica importante que nos
indica el índice de rendimiento a la volatilidad. Se calcula tomando la media de los excesos de rentabil-
idad menos la tasa libre de riesgo dividida por la volatilidad de la rentabilidad.
En el código que se muestra a continuación, el objeto rf contiene la tasa de un mes de un T-Bill.
Los rendimientos de la cartera S&P 500 todavia estan disponibles como sp500_rendimientos.
1 # Calcule la tasa libre de riesgo anualizada
2 annualized_rf <- (1 + rf)^12 - 1
3
4 # Plot de la tasa libre de riesgo anualizada
5 plot.zoo(annualized_rf) # Ver Figura 3.6
6
7 # Computo de la serie de exceso de cartera de rendimientos
8 sp500_excess <- sp500_returns - rf
9
10 # Comparativa entre la media de sp500_excess y sp500_devoluciones
11 mean(sp500_excess)
12 mean(sp500_returns)
13
14 # Calcule la relación de Sharpe
15 sp500_sharpe <- mean(sp500_excess) / sd(sp500_returns)
3.9. Variación Temporal del Rendimiento de la Cartera 19
Figure 3.6: rendimientos anualizados rf
3.8.1. Media anualizada y Volatilidad
La media y la volatilidad de los rendimientos mensuales corresponden al promedio y la desviación
estándar durante un horizonte de inversión mensual. Los inversores anualizan esas estadísticas para
mostrar el rendimiento durante un horizonte de inversión anual.
Para hacerlo, el paquetePerformanceAnalytics tiene la funciónReturn.annualized() yStdDev.annualized()
para calcular el rendimiento medio anualizado (geométricamente) y la desviación estándar anualizada
para usted.
1 # Computo de la media anualizada
2 Return.annualized(sp500_rendimientos)
3 Annualized Return 0.07892983
4 # Computo de la desviación estandar anualizada
5
6 StdDev.annualized(sp500_rendimientos)
7 Annualized Standard Deviation 0.1511948
8
9 # Computo de la relación de Sharpe Anualizada
10 ann_sharpe <- (Return.annualized(sp500_returns)-0)/StdDev.annualized(sp500_returns)
11 ann_sharpe
12 Annualized Return 0.5220407
13
14 # Computo de todo lo anterior a la vez usando la tabla table.AnnualizedReturns()
15
16 table.AnnualizedReturns(sp500_rendimientos)
17 Annualized Return 0.0789
18 Annualized Std Dev 0.1512
19 Annualized Sharpe (Rf=0%) 0.5220
3.9. Variación Temporal del Rendimiento de la Cartera
Hasta ahora, hemos adoptado una visión estática del rendimiento de la cartera. Pero, debido al ci-
clo económico, la ocurrencia de eventos inesperados y los cambios en la psicología del mercado,
el rendimiento de la cartera tienden a ser cualquier cosa menos constante a lo largo del tiempo, es
dinámico. En cuanto a la dirección del mercado, están los mercados alcistas en los que los precios de
las acciones tienden a caer.
3.9.1. Cluster de alta y baja volatilidad
Entonces, en términos de estrés del mercado, tenemos periodos en los que los mercados están tran-
quilos con una volatilidad persistentemente baja, están los regímenes más estresados con grandes
picos de volatilidad (Ver Figuras 3.7 y 3.8). Tenga en cuenta que esos regímenes son persistentes.
Una vez que la volatilidad es superior a la media, tienden a mantenerse por encima del promedio du-
rante algún tiempo. De ello se deduce que el rendimiento actual se estima mejor, cuando damos más
3.9. Variación Temporal del Rendimiento de la Cartera 20
Figure 3.7: Periodos en los que el mercado esta bajo.
peso a las observaciones más recientes que a las lejanas. El enfoque estándar para hacer esto es
mediante el uso de Muestra de Media Móvil.
Muestra de Estimación Móvil
En lugar de estimar medias de desempeño en la muestra completa, solo tomamos las k observaciones
más recientes. Esto implica que la estimación del rendimiento en el momento t viene dada por la
estadística de rendimiento calculada sobbre la muestra de rendimientos en el momento t, t − 1, t −
2, ..., t− k+1. Si luego avanzamos una observación más y estimamos el desempeño para la proxima
fecha t + 1, entonces usando las observaciones de t + 1 hasta t − k + 2, como tal avanzamos en el
tiempo agregando la observación más reciente y desechando la más lejana. En cada submuestra.
3.9.2. Cálculo del rendimiento de rodadura
Se puede calcular cualquier tipo de de medida de rendimiento. Como ejemplo, puede er aquí el gráfico
3.9 de series temporales de la media anualizada y las estimaciones de volatilidad obtenidas para los
rendimientos mensuales del S&P 500 utilizando muestras móviles de tres años.
3.9.3. Elegir la longitud de la ventana
¿Por qué elegí tres años y no un año al hacer esta trama? Esta es una cuestión de gusto. Necesita-
mos tener un número suficientemente grande de observaciones para reducir el efecto del ruido en la
estimación del rendimiento. PEro, cuanto más largo es el subperíodo, más suaviza los altibajos de los
datos, y menos informativo se vuelve sobre el rendimiento observado más reciente.
En la figura 3.10 hay dos gráficos de volatilidad anualizada móvil. Una de las parcelas tiene ven-
tanas móviles de 6 meses y la otra tiene ventanas de 24 meses. ¿ Cuál es más oportuno en términos
de reacción a la crisis reciente?
La respuesta correcta es: Volatilidad anualizada en ventana móvil de 6 meses.
3.9. Variación Temporal del Rendimiento de la Cartera 21
Figure 3.8: Periodos en los que el mercado esta alto.
1 # Calcule la media, la volatilidad y Relación de Sharpe de sp500_rendimientos.
2 returns_ann <- Return.annualized(sp500_rendimientos)
3 sd_ann <- StdDev.annualized(sp500_rendimientos)
4 sharpe_ann <- SharpeRatio.annualized(sp500_rendimientos, Rf = rf)
5
6 # Plotting de estimación móvil de 12 meses de la meda anualizada.7 chart.RollingPerformance(R = sp500_returns, width = 12, FUN = "Return.annualized")
8 # Ver Figura 3.11
9
10 # Plotting de estimación móvil de 12 meses de la volatilidad anualizada de los rendimientos
del S&P 500
11 chart.RollingPerformance(R = sp500_returns, width = 12, FUN = "StdDev.annualized")
12 # Ver Figura 3.12
13
14 # Plotting de estimacion móvil de 12 meses del índice de Sharpe anualizado de los
rendimientos del S&P 500
15 chart.RollingPerformance(R = sp500_returns, width = 12, FUN = "SharpeRatio.annualized", Rf =
rf)
16 # Ver Figura 3.13
3.9.4. Análisis de rendimiento de subperiodos y la venta de función
En el ejercicio previo, calculó la media de rendimiento en cada muestra posible de un tamaño fijo al
pasar el tiempo. A menudo, los inversores están interesados en el rendimiento de una subventana
especifica. Puede crear subbconjuntos de una serie temporal en R usando la función window(). El
primer argumento es la serie de rendimientos, que necesita subconjunto. El segundo argumento es
la fecha de inicio del subconjunto en el formato YYYY-MM-DD y el tercer argumento es la fecha de
finalización en el mismo formato.
En este ejercicio, trabajará con los rendimientos diarios del S&P 500, que estan disponibles en
sp500_rendimientos.
3.10. No normalidad de la distribución de rendimientos 22
Figure 3.9
1 # Rellene la ventana para 2008
2 sp500_2008 <- window(sp500_rendimientos, start = "2008-01-01", end = "2008-12-31")
3
4 # Crear ventana para 2014
5 sp500_2014 <- window(sp500_returns, start = "2014-01-01", end = "2014-12-31")
6
7 # Configuración del Plot
8 par( mfrow = c(1, 2) , mar=c(3, 2, 2, 2))
9 names(sp500_2008) <- "sp500_2008"
10 names(sp500_2014) <- "sp500_2014"
11
12 # Plot histograma del 2008
13 chart.Histogram(sp500_2008, methods = c("add.density", "add.normal"))
14 # Figura 3.14
15
16 # Plot histograma del 2014
17 chart.Histogram(sp500_2014, methods = c("add.density", "add.normal"))
18 # Figura 3.15
3.10. No normalidad de la distribución de rendimientos
Hasta ahora, hemos estado usando la volatilidad de la cartera como nuestra medida de riesgo. En
términos generales, la suposición subyacente es que el rendimiento de la cartera tiene una distribución
normal y, por lo tanto, su función de densidad tiene forma de campana (Figura 3.16). Es simétrico, de
modo que las ganancias son igualmente probables que las pérdidas de la misma magnitud.
Para muchos activos financieros, esta suposición de una distribución normal es incorrecta. Su
distribución tiende a estar sesgada hacia la izquierda con colasmás gruesas que los de una distribución
normal. Como consecuencia, cuando nos acercamos a la izquierda del histograma de rendimientos
financieros, a menudo encontramos que están ocurriendo más rendimientos negativos extremos de lo
que es posible bajo una distribución normal. Cuando esto sucede, un inversor ya no está satisfecho
con usar solo la desviación estáandar como medida de riesgo, sino que también debería usar una
medida de riesgo a la baja que cuantifique el riesgo de perder el dinero. Tal medida de riesgo a la baja
3.11. Semidesviación de la rentabilidad de la cartera 23
Figure 3.10
Figure 3.11
se enfoca en el lado izquierdo de la distribución de rendimiento, en lugar de considerar la distribución
completa. (Ver Figura 3.17)
3.11. Semidesviación de la rentabilidad de la cartera
Una forma sencilla de convertir la desviación estandar en una medida de riesgo a la baja es eliminar
los rendimientos superiores a la media. Obtenemos entonces la llamada Semidesviación de cartera.
Como se puede ver en la ecuación (3.5), se define como la raíz cuadrada de la variabilidad promedio
de los rendimientos inferiores al promedio entorno a la media.
SD =
√
(R1 − µ)2 + (R2 − µ)2 + ...+ (RT − µ)2)
T − 1
(3.4)
SemiDev =
√
(Z1 − µ)2 + (Z2 − µ)2 + ...+ (Zn − µ)2
n
(3.5)
3.12. Valor en Riesgo y Deficit Esperado
Además de la semidesviación, también el valor en riesgo de la cartera del 5% y el déficit esperado del
5% son medidas populares de riesgo a la baja.
3.13. Forma de la distribución 24
Figure 3.12
Figure 3.13
Cuantifican el riesgo del 5% de pérdidas más extremas. Para comprender su definición, heche un
vistazo nuevamente a la Figura 3.18 de distribución de rendimientos donde inicio su valor.
El valor en riesgo del 5% (Figura 3.18) es el rendimiento que es tan extramadamente negativo que
solo hay un 5% de posibilidades de observar un rendimiento aún más negativo.
Pero,¿qué tan severas son esas pérdidas más extremas del 5%? Esta pregunta se responde
calculando el valor promedio del 5% de los rendimientos más negativos. Este número se llama déficit
esperado del 5% (Ver Figura 3.19).
3.13. Forma de la distribución
En términos de medidas de rendimiento, hemos visto la media y la volatilidad, así como medidas de
riesgo a la baja como la semidesviación y el valor en riesgo. Por lo general, los inversores también
informan la asimetría y el exceso de curtosis de los rendimientos de su cartera para indicar dos tipos
de no normalidad en la distribución del rendimiento, a saber, la asimetría y las colas gruesas.
3.13. Forma de la distribución 25
Figure 3.14
Figure 3.15
Asimetría
La asimetría está diseñada de tal manera que es aproximadamente cero cuando la distribución es
simétrica (Ver Figura 3.20, bosquejo azul).
Cuando la asimetría es negativa, indica que los grandes rendimientos negativos ocurren con más
frecuencia que los grandes rendimientos positivos (Ver Figura 3.20, bosquejo rojo). Por lo tanto, una
asimetría negativa corresponde a una distribución con una cola izquierda larga.
Lo contrario es cierto en el caso de una asimetría positiva. Entonces, los grandes rendimientos
positivos son más probables que los grandes rendimientos negativos, y la distribución tiene una cola
larga hacia la derecha. (Ver Figura 3.20, bosquejo verde)
3.13.1. Curtosis
Además de la asimetría, también las colas gordas son una causa de no normalidad. Una distribu-
ción con colas gruesas es una distribución en la que se producen rendimientos positivos o negativos
extremadamente grandes con más frecuencia de lo que predeciría una distribución normal. Una es-
tadística útil para detectar colas gordas es el exceso de curtosis. Su valor es cero para la distribución
3.14. Equilibrio de Riesgo y Recompensa 26
Figure 3.16
normal. Cuanto mayor sea el exceso de curtosis, más gruesas serán las colas en comparación con
las colas de una distribución normal.
3.14. Equilibrio de Riesgo y Recompensa
En la Figura 3.22, verá tres distribuciones de rendimientos. El eje x corresponde al rendimiento de
un activo, y el eje y es la densidad correspondiente, lo que indica la probabilidad de ese valor de
rendimiento. Tómese un momento para revisar estos gráficos.
Observe que las distribuciones son todas simétricas y que el centro de la distribución corresponde
al rendimiento promedio.
Las distribuciones de rendimiento A y B tienen el mismo rendimiento esperado. Pero la distribu-
ción B tiene mayor volatilidad y, por lo tanto, tiene una gama más amplia de resultados posibles. Esto
indica que el riesgo de una gran desviación del rendimiento medio es mayor para invertir en B que
para invertir en A. La distribución C tiene el mismo nivel de volatilidad que la distribución A pero un
rendimiento medio más alto.
Eres el tipo de inversor al que le gustan los rendimientos pero no le gustan los riesgos. ¿Qué dis-
tribución prefieres?
Respuesta: Distribución C
3.15. Detección de no normalidad mediante asimetría y curtosis 27
Figure 3.17
3.15. Detección de no normalidad mediante asimetría y curtosis
Las devoluciones suelen ser de naturaleza no normal. Dos métricas clave para comprender la distribu-
ción de rendimientos no normales son la asimetría y la curtosis. La asimetría lo ayudará a identificar
si los rendimientos negativos o positivos ocurren con mayor frecuencia. La asimetría negativa indica
que los grandes rendimientos negativos ocurren con mayor frecuencia que los grandes positivos, y
viceversa.La curtosis será positiva si hay colas gordas en su distribución. Esto significa que se producirán
grandes rendimientos positivos o negativos con más frecuencia de lo que se puede suponer en una
distribución normal.
Los histogramas de la Figura 3.23 comparan los rendimientos diarios y mensuales del S&P 500
durante el período de 1986 hasta la actualidad. Parece haber un sesgo negativo() en estas gráficas,
y una curtosis() algo mayor de lo normal . Tenga en cuenta que, por defecto, kurtosis()informa el
exceso de curtosis (es decir, la curtosis menos tres). ¡Veamos si los números coinciden con nuestras
observaciones!
1 # Computo de asimetría
2 skewness(sp500_daily)
3 [1] -0.8251673
4 skewness(sp500_monthly)
5 [1] -0.7916028
6
7 # Computo de curtosis
8 kurtosis(sp500_daily)
9 [1] 20.88491
10 kurtosis(sp500_monthly)
11 [1] 2.435506
3.16. Medidas de Riesgo a la Baja
La desviación estándar otorga el mismo peso a los rendimientos positivos y negativos al calcular la
variabilidad del rendimiento. Cuando la distribución de la rentabilidad es asimétrica (sesgada), los in-
versores utilizan medidas de riesgo adicionales que se centran en describir las pérdidas potenciales.
Una de esas medidas de riesgo a la baja es la semidesviación. La Semidesviación es el cálculo de la
variabilidad de las rentabilidades por debajo de la rentabilidad media.
Otra medida más popular es el llamado Value-at-Risk (o VaR). En términos generales, el VaR cor-
responde al cuantil del 5% de la distribución de la rentabilidad, lo que significa que una rentabilidad
más negativa solo puede ocurrir con una probabilidad del 5%. Por ejemplo, puede preguntar: ”¿Cuál
3.17. Disminuciones debido a comprar caro, vender barato 28
Figure 3.18
es la pérdida más grande que podría tener potencialmente en el próximo trimestre de modo que solo
tenga un 5% de probabilidad de observar una pérdida aún mayor?”
El déficit esperado es otra medida de riesgo que se enfoca en la pérdida promedio por debajo del
cuantil VaR del 5%.
En este ejercicio, examinará el riesgo potencial de los rendimientos mensuales del S&P 500. Uti-
lizará las funciones SemiDeviation() , VaR() y ES() . Todas estas funciones requieren el argumento
R, que es un objeto xts, vector, matrix, data.frame, timeSeries o zoo de devoluciones de activos. Sin
embargo, el VaR(), y ES() requiere otro argumento p, o nivel de probabilidad de pérdida, que es p =
0.05 en el caso del 5% VaR y ES.
1 # Calculo de la Semidesviación
2 SemiDeviation(sp500_monthly)
3 Semi-Deviation 0.03334653
4
5 # Calculo del VaR para p = 5% y 2.5%
6 VaR(sp500_monthly,p = 0.05)
7 VaR -0.07152617
8 VaR(sp500_monthly,p = 0.025)
9 VaR -0.09775359
10
11 # Calculo del deficit esperado
12 ES(sp500_monthly, p = 0.05)
13 ES -0.1180061
14 ES(sp500_monthly, p = 0.025)
15 ES -0.1653925
3.17. Disminuciones debido a comprar caro, vender barato
La volatilidad, la semidesviación, el valor en riesgo y el déficit esperado son medidas que describen el
riesgo durante un período. Estas métricas no hacen un gran trabajo al describir el peor de los casos
3.17. Disminuciones debido a comprar caro, vender barato 29
Figure 3.19
de riesgo de comprar en un pico y vender en un mínimo. Este tipo de riesgo se puede cuantificar medi-
ante el análisis de las reducciones de la cartera o la disminución de pico a mínimo en los rendimientos
acumulados.
La función table.Drawdowns() en PerformanceAnalytics informa los cinco episodios de reducción
más grandes durante un período de muestra. El paquete también tiene otra función chart.Drawdown()
para visualizar la evolución de las reducciones de cada pico a lo largo del tiempo.
Ahora explorará los episodios históricos de reducción de los rendimientos mensuales del S&P 500.
Los rendimientos se cargan en su espacio de trabajo como sp500_monthly.
1 # Tabla de drawdowns
2 table.Drawdowns(sp500_monthly)
3 From Trough To Depth Length To Trough Recovery
4 1 2007-11-01 2009-02-02 2013-03-01 -0.5256 65 16 49
5 2 2000-09-01 2002-09-03 2007-05-01 -0.4628 81 25 56
6 3 1987-09-01 1987-11-02 1989-07-03 -0.3017 23 3 20
7 4 1990-06-01 1990-10-01 1991-02-01 -0.1584 9 5 4
8 5 1998-07-01 1998-08-03 1998-11-02 -0.1557 5 2 3
9
10 # Plot of drawdowns
11 chart.Drawdown(sp500_monthly) # Ver Figura 3.24
3.17. Disminuciones debido a comprar caro, vender barato 30
Figure 3.20: Asimetría cero, positiva y negativa
Figure 3.21: Curtosis
3.17. Disminuciones debido a comprar caro, vender barato 31
Figure 3.22: Equilibrio de riesgo y Recompensa
Figure 3.23: Histograma de rendimientos diarios y mensuales del S&P 500 durante el periodo de 1986 hasta la actualidad
3.17. Disminuciones debido a comprar caro, vender barato 32
Figure 3.24: Visualización de las disposiciones de las rentabilidades mensuales mediante chart.Drawdown()
4
Controladores de Rendimientos
Analizar portafolios en R va más allá de analizar los rendimientos de la cartera. También se trata de
comprender cómo se puede optimizar la cartera de modo que el rendimiento futuro de la cartera tenga
las propiedades deseadas en términos de media y volatilidad. Dado que estamos hablando del futuro,
primero necesito enseñarte la diferencia entre calcular promedios de rendimientos pasados y tomar
expectativas de variables aleatorias. En el capitulo 2, tomamos los rendimientos observados como da-
dos y, por lo tanto, usamos promedios de los rendimientos para describir el desempeño pasado. Pero
al optimizar una cartera, tenemos que lidiar con la incertidumbre de cuál será el rendimiento futuro.
Como su valor futuro es un resultado aleatorio, el rendimiento de la cartera es una variable aleatoria.
La transición a trabajar con rendimientos de cartera como variables aleatorias también tiene implica-
ciones sobre cómo variables aleatorias también tiene implicaciones sobre como escribimos la media
y la varianza del rendimiento de la cartera.
4.1. Desempeño Pasado a Predicciones
La rentabilidad media ya no es la media de las rentabilidades pasadas, sino la mejor predicción posible
de la rentabilidad de la cartera.
µ̂ =
R1 +R2 + ...+RT
T
Esta mejor predicción posible se denomina expectativa de rentabilidad de la cartera, o también rentabil-
idad esperada de la cartera. Cuando tomamos la expectativa de una variable aleatoria, la denotamos
con la letra mayúscula
µ = E[R]
, resultado similar se mantiene para la cartera varianza, que ya no es la varianza muestral de los
rendimientos pasados de la cartera. En cambio, la varianza de una variable aleatoria se define como
la desviación al cuadrado esperada de la rentabilidad de la cartera con respecto a su media.
σ̂ =
(R1 − µ̂)2 + (R2 − µ̂)2 + ...+ (RT − µ̂)2
T − 1
σ2 = E[(R− µ)2]
4.2. Impulsores de la media y la Varianza
Pasemos ahora a nuestra pregunta principal:
¿Cuáles son los impulsores de la media y la varianza de la cartera? Resolveré esto para el caso
de dos activos en la cartera: el activo 1 tiene un peso w1 y el activo 2 tiene un peso w2. Entonces, el
rendimiento de la cartera es el peso del activo 1 por el rendimiento del activo 1, más el peso del activo
33
4.3. Variación del rendimiento de la cartera 34
2 por el rendimiento del activo 2.
Reemplazando la fórmula del rendimiento de la cartera en la definición de la expectativa del rendimiento
de la cartera, y usando que el valor esperado de una suma es la suma de los valores esperados, ve-
mos que el rendimiento esperado de la cartera es el peso del activo 1 por el rendimiento esperado del
activo 1 más el peso del activo 2 por el rendimiento esperado del activo 2.
RendimientoPortafolio = P = w1R1 + w2R2
E[P ] = w1E[R1] + w2E[R2]
4.3. Variación del rendimiento de la cartera
El impacto de las ponderaciones en la varianza de la cartera es un poco más complejo debido al
cuadrado. Al calcular el cuadrado del rendimiento desvalorizado de la cartera, encontramos que la
varianza de la cartera es igual a la suma del peso al cuadrado de los activosmultiplicado por su varianza
individual más dos veces el producto de los pesos y el valor esperado del productoentre el valor
desvalorizado rendimiento del activo 1 y el rendimiento degradado del activo 2. La expectativa de este
producto entre los rendimientos degradados del activo 1 y el activo 2 se denomina covarianza de esos
dos rendimientos de activos. El término covarianza puede ser nuevo para usted, pero probablemente
ya haya oído hablar de las correlaciones. Si sabes de correlaciones, entonces también sabes de
covarianzas,
V ar(P ) = w21var(R1) + w
2
2var(R2) + 2 · w1 · w2 · cov(R1, R2)
donde,
Cov(R1, R2) = E[(R1 − E[R1])(R2 − E(R2))]
= StdDev(R1) · StdDev(R2) · corr(R1, R2)
4.4. Correlaciones
La correlación mide la intensidad de la relación entre los rendimientos de los activos. Si no están
relacionados, entonces la correlación es cero. Si existe, en promedio, una relación lineal positiva entre
ambos, entonces la correlación será positiva. Esto significa que, cuando el rendimiento de un activo
está por encima del promedio, el rendimiento del otro activo también tiende a estar por encima del
promedio. En el caso de una correlación negativa, entonces se dará el caso de que, si un rendimiento
está por encima del promedio, el otro tiende a estar por debajo del promedio.
4.5. Formulas para llevar
Para concluir, los impulsores de los rendimientos esperados de la cartera son el rendimiento esperado
de los activos individuales y sus pesos de cartera. Los impulsores de la varianza de la cartera son
las varianzas individuales de los rendimientos de los activos, su covarianza y las ponderaciones de la
cartera.
E[RendimientosPortafolio] = E[P ] = w1E[R1] + w2E[R2]
V ar(RendimientosPortafolio) = var(P ) = w
2
1var(R1) + w
2
2var(R2) + 2w1w2cov(R1, R2)
4.5.1. Desempeño individual de los activos
En las secciones previas, revisó los tres tipos de impulsores para el rendimiento de una cartera:
• El rendimiento individual de los activos en términos riesgo y rendimiento.
• El peso de la cartera de cada uno de los activos.
• La correlación entre los rendimientos de los activos.
4.5. Formulas para llevar 35
Figure 4.1: Tipos de Correlación
¡Ahora analicemos algunos datos para obtener una mejor comprensión de este resultado! En
este ejemplo, considerará invertir, con frecuencia mensual, en acciones y bonos estadounidenses.
Los rendimientos de cada activo se almacenan como return_equities, y returns_bounds. Además, la
cartera está invertida 60/40, lo que significa que cada mes inviertes un 60% en acciones y un 40% en
bonos. Estos rendimientos de cartera se almacenan como returns_6040.
¿Cuál de las siguientes afirmaciones sobre la relación entre el rendimiento de la cartera (invertir
tanto en acciones como en bonos) y el rendimiento de los activos individuales (invertir en solo uno de
ellos) es verdadera?
Respuesta: El rendimiento medio de la cartera es igual a la suma ponderada por posición de los
rendimientos medios de los componentes. Puedes probar esto usando
4.5. Formulas para llevar 36
all.equal(mean(returns_6040), 0.6 * mean(returns_equities) + 0.4 * mean(returns_bonds))
4.5.2. La elección de los pesos de la cartera
Los inversores pueden optimizar la elección de la ponderación para obtener la mayor rentabilidad ajus-
tada al riesgo, medida por el índice de Sharpe de la cartera.
En el caso especial de invertir el valor total de la cartera en solo dos activos, solo hay un peso para
determinar, porque el peso del segundo activo es igual a uno menos el peso del primer activo.
Hagamos esto en el caso de una cartera invertida en acciones y bonos estadounidenses. Usaremos
el enfoque de fuerza bruta de probar una gran cantidad de ponderaciones posibles y mantener la
ponderación que produzca el valor más alto para el índice de Sharpe de la cartera (suponiendo una
tasa libre de riesgo de cero).
1 # Crea un grid
2 grid <- seq(0, 1, 0.01)
3
4 # Inicializar un vector vacio para relaciones de Sharpe.
5 vsharpe <- rep(NA, times = length(grid))
6
7 # Crear un bucle for para calcular las razones de Sharpe
8 for(i in 1:length(grid)) {
9 weight <- grid[i]
10 preturns <- weight * returns_equities + (1 - weight) * returns_bonds
11 vsharpe[i] <- SharpeRatio.annualized(preturns)
12 }
13
14 # Plot de pesos y relación de Sharpe.
15 plot(grid, vsharpe, xlab = "Weights", ylab = "Ann. Sharpe ratio")
16 abline(v = grid[vsharpe == max(vsharpe)], lty = 3)
4.5. Formulas para llevar 37
4.5.3. La correlación entre los rendimientos de dos activos
El tercer impulsor del rendimiento de la cartera es la correlación entre los rendimientos de los activos.
En términos generales, la correlación le dice cómo los rendimientos de dos activos tienden a moverse
juntos.
La correlación de activos tiene consecuencias importantes en el desempeño general de la cartera.
Esta correlación es importante porque puede reducir la volatilidad mediante la diversificación o la re-
ducción de la correlación general. De hecho, cuanto menor es la correlación, más exitosa tiende a ser
la cartera en lo que respecta a compensar parcialmente grandes pérdidas en un activo con solo una
pérdida menor, o incluso una ganancia, en otro activo.
En el caso extremo de dos rendimientos de activos idénticos, la correlación será 1 y no hay po-
tencial de diversificación. En el otro caso extremo en el que, si el rendimiento de un activo está por
encima del promedio y el otro casi siempre está por debajo del promedio, la correlación es negativa.
La correlación es 0 cuando los rendimientos de los activos son linealmente independientes entre sí.
Tenga en cuenta que la interdependencia aún puede existir en un nivel no lineal incluso cuando la
correlación es 0.
Como ejercicio, suponga que tiene una cartera igualmente ponderada de dos activos. Su cor-
relación salta de 0 a 0,5. ¿Qué pasa con la varianza?
Respuesta: Aumenta
4.5.4. Interpretación de la Correlación
Ahora aprenderá a calcular la correlación entre los rendimientos de los bonos y los rendimientos de
las acciones. Al igual que las volatilidades, estas correlaciones son dinámicas. Por lo tanto, debe dis-
tinguir entre un análisis estático que calcula correlaciones sobre una muestra completa y un análisis
dinámico que calcula correlaciones sobre una muestra móvil. Este es un análisis similar al que realizó
para la evaluación del rendimiento variable en el tiempo en términos de rendimiento medio y volatilidad.
En este ejercicio, aprenderá 3 funciones nuevas del paquete PerformanceAnalytics: chart.Scatter()
, chart.Correlation() y chart.RollingCorrelation() .
1 # Crea un gráfico de dispersión
2 chart.Scatter(returns_bonds, returns_equities, xlab = "bond returns", ylab = "equity returns"
, main = "bond-equity returns")
3
4 # Encontramos la correlación
5 cor(returns_bonds, returns_equities)
6
7 # Fucionamos rendimientos_acciones y rendimientos_bonos
4.5. Formulas para llevar 38
8 returns <- merge(returns_bonds, returns_equities)
9
10 # Encuentra y visualiza la correlación usando gráfico. Correlación.
11 chart.Correlation(returns)
12
13 # Visualiza estimaciones continuas utilizando chart.RollingCorrelation()
14 chart.RollingCorrelation(returns_bonds, returns_equities, width = 24)
4.6. Usando Notación Matricial 39
4.6. Usando Notación Matricial
Acabamos de ver los impulsores de la media y la varianza de la cartera en el caso de una cartera con
dos activos. En está sección, le muestro cómo esos resultados se pueden extender al caso general
de N activos, donde N puede ser cualquier cantidad de activos.
4.6.1. Variables en juego para n activos
Cuando trabajamos con muchos activos, solo debemos tener cuidado con las muchas variables que
entran en juego. Te mostraré cómo el uso de matrices en R te ayudará a mantener bien organizado
el análisis de datos. La primera matriz que utilizamos es la matriz de pesos de cartera. Tenemos N
activos y, por lo tanto, N pesos de cartera, los apilaremos en una matriz columna de dimensión N por
1 y la llamaremos matriz w.
w =

w1
w2
...
wN

N×1
La siguientematriz que usamos es la matriz de rendimiento de activos. Para cada uno de los activos
tenemosun rendimiento, que denotamos como R1, R2 hasta RN. Nuevamente, estos rendimientos se
pueden apilar en una matriz de columnas de dimensión N por 1 que llamo R.
R =

R1
R2
...
RN

N×1
Para cada activo, también tenemos un rendimiento esperado. Los denotaré como µi. Entonces
µ1 es el rendimiento esperado del activo 1, µ2 es el rendimiento esperado del activo 2, y así sucesiva-
mente. Apilar los N rendimientos esperados en la matriz de columna µ nos da la matriz de rendimientos
esperados µ.
µ =

µ1
µ2
...
µN

N×1
Por último, pero no menos importante, está la matriz de covarianza. Para cada uno de los activos,
tenemos la varianza de su rendimiento, que denotaré por σ2i . Para cada par de rendimientos de activos
i y j, tenemos una covarianza, que denotaré por σij . Tenemos así N varianzas, y para cada par de
activos, tenemos una covarianza. Para manejar todas esas varianzas y covarianzas, es útil juntarlas
en la llamada matriz de covarianza. Esta es una matriz cuadrada con N filas y N columnas. Los
elementos de la diagonal son las varianzas de cada uno de los rendimientos. Fuera de la diagonal
están las covarianzas. Por ejemplo, en la fila 2, columna 1, tenemos la covarianza entre el rendimiento
de activos 2 y el rendimiento de activos 1. existe la matriz de covarianza. Para cada uno de los
activos, tenemos la varianza de su rendimiento, que denotaré por sigma cuadrado i. Para cada par
de rendimientos de activos i y j, tenemos una covarianza, que denotaré por σij . Tenemos así N
varianzas, y para cada par de activos, tenemos una covarianza. Para manejar todas esas varianzas y
covarianzas, es útil juntarlas en la llamada matriz de covarianza. Esta es una matriz cuadrada con N
filas y N columnas. Los elementos de la diagonal son las varianzas de cada uno de los rendimientos.
Fuera de la diagonal están las covarianzas. Por ejemplo, en la fila 2, columna 1, tenemos la covarianza
entre el rendimiento de activos 2 y el rendimiento de activos 1. existe la matriz de covarianza. Para
cada uno de los activos, tenemos la varianza de su rendimiento, que denotaré por sigma cuadrado
i. Para cada par de rendimientos de activos i y j, tenemos una covarianza, que denotaré con σij .
Tenemos así N varianzas, y para cada par de activos, tenemos una covarianza. Para manejar todas
esas varianzas y covarianzas, es útil juntarlas en la llamada matriz de covarianza. Esta es una matriz
cuadrada conN filas yN columnas. Los elementos de la diagonal son las varianzas de cada uno de los
rendimientos. Fuera de la diagonal están las covarianzas. Por ejemplo, en la fila 2, columna 1, tenemos
4.6. Usando Notación Matricial 40
la covarianza entre el rendimiento de activos 2 y el rendimiento de activos 1. tenemos una covarianza,
que denoto por σij . Tenemos así N varianzas, y para cada par de activos, tenemos una covarianza.
Para manejar todas esas varianzas y covarianzas, es útil juntarlas en la llamada matriz de covarianza.
Esta es una matriz cuadrada con N filas y N columnas. Los elementos de la diagonal son las varianzas
de cada uno de los rendimientos. Fuera de la diagonal están las covarianzas. Por ejemplo, en la fila
2, columna 1, tenemos la covarianza entre el rendimiento de activos 2 y el rendimiento de activos 1.
tenemos una covarianza, que denoto por σij . Tenemos así N varianzas, y para cada par de activos,
tenemos una covarianza. Para manejar todas esas varianzas y covarianzas, es útil juntarlas en la
llamada matriz de covarianza. Esta es una matriz cuadrada con N filas y N columnas. Los elementos
de la diagonal son las varianzas de cada uno de los rendimientos. Fuera de la diagonal están las
covarianzas. Por ejemplo, en la fila 2, columna 1, tenemos la covarianza entre el rendimiento de
activos 2 y el rendimiento de activos 1. Los elementos de la diagonal son las varianzas de cada uno
de los rendimientos. Fuera de la diagonal están las covarianzas. Por ejemplo, en la fila 2, columna 1,
tenemos la covarianza entre el rendimiento de activos 2 y el rendimiento de activos 1. Los elementos
de la diagonal son las varianzas de cada uno de los rendimientos. Fuera de la diagonal están las
covarianzas. Por ejemplo, en la fila 2, columna 1, tenemos la covarianza entre el rendimiento de
activos 2 y el rendimiento de activos 1.
w =

σ21 σ12 · · · σ1N
σ21 σ
2
2 · · · σ2N
· · · · · · · · · · · ·
σN1 σN2 · · · σ2N

Σ:N×N
4.6.2. Generalizando de 2 a n activos
El objetivo de esta sección es mostrarle los impulsores de la media y la varianza de la cartera en el
caso general de N activos. La pregunta a responder es, por lo tanto, cómo todos estos rendimientos
esperados, varianzas y covarianzas afectan la media y la varianza de la cartera. Te muestro esto en
la tabla de la diapositiva. Muestra en la primera columna los resultados para el caso de dos activos,
generaliza al caso de N activos. Vemos que, en el caso general, el rendimiento de la cartera es el
promedio ponderado de los rendimientos de todos los N activos. De ello se deduce que el rendimiento
esperado de la cartera es el promedio ponderado de los rendimientos esperados de todos los N activos.
Finalmente, tenemos que la varianza del rendimiento de la cartera es la suma de los pesos al cuadrado
por la varianza de todos los N activos, más, para cada par de activos, el producto entre sus pesos y
su covarianza.
w1R1 + w2R2 −→ w1R1 + w2R2 + ...+ wNRN RendimientoPortafolio
w1µ1 + w2µ2 −→ w1µ1 + w2µ2 + ...+ wNµN E(RendimientoPortafolio)
w21var(R1) + w
2
2var(R2) + 2w1w2cov(R1, R2) −→ w21var(R1) + ...+ w2Nvar(RN ) + 2w1w2cov(R1, R2) + ...
+ 2wN−1wNcov(RN−1, RN )) V (Portafolio)
4.6.3. Las matrices simplifican la notación
Hay un gran número de términos en cada expresión. Estos pueden evitarse utilizando la notación
matricial. Recuerde que tenemos cuatro matrices: los pesos w, los rendimientos R, los rendimientos
esperados mu y la matriz de covarianza sigma. También usaré la transposición de la matriz columna
de pesos N por 1. Esta es la matriz de filas 1 veces N de pesos. Entonces tenemos los siguientes
resultados: el rendimiento de la cartera es igual a la transposición de los pesos de la cartera y la matriz
de rendimientos. De ello se deduce que el rendimiento esperado de la cartera es la transpuesta de los
pesos por la matriz de rendimientos esperados. Finalmente, se puede demostrar que la varianza del
rendimiento de la cartera es igual al número que obtiene al calcular el producto de la transposición de
los pesos por la matriz de covarianza por los pesos nuevamente. Si esto es nuevo para usted, estos
resultados pueden parecer abrumadores, pero verá en los ejercicios que el uso de matrices simplifica
mucho la gestión de datos al analizar grandes carteras en R.
4.6. Usando Notación Matricial 41
w1R1 + ...+ wNRN −→ w′R
w1µ1 + ...+ wNµN −→ w′µ
w21var(R1) + ...+ w
2
Nvar(RN ) + 2w1w2cov(R1, R2) + ...+ 2wN−1wNcov(RN−1, RN ) −→ w′Σw
Si esto es nuevo para usted, estos resultados pueden parecer abrumadores, pero verá en los
ejercicios que el uso de matrices simplifica la gestión de datos al analizar grandes carteras en R.
4.6.4. Hacer un diagrama de dispersión de riesgo-recompensa
En este ejemplo, ha decidido ampliar su oportunidad de inversión mediante la creación de una cartera
que consta de ETF de acciones de EE. UU. (SPY), ETF de bonos de EE. UU. (AGG), un fideicomiso
de inversión en bienes raíces (VNQ) y un seguimiento de ETF en las materias primas GSCI. índice
(GSG). La trama en el entorno muestra el rendimiento de estas inversiones.
También puede visualizar el atractivo relativo de las inversiones haciendo un diagrama de disper-
sión de los rendimientos promedio frente a las volatilidades de la cartera. Para hacer esto, debe
calcular los promedios y las volatilidades de cada activo. Esto corresponde a cada columna de la serie
de rendimientos.
Estos cálculos se facilitan mediante el uso de la función apply() con el primer argumento como
datos de retorno, el segundo argumento es el valor 2que indica que el cálculo debe ser por columnas,

Continuar navegando