En esta publicación, realizaremos un breve ejemplo de cómo llevar a cabo un trade-off en R Studio, basado en tres activos. El primero de ellos es un instrumento libre de riesgo, como lo los ETF, que consisten en TBILL, bonos de gobierno con madurez de 1 a 3 meses. Por otro lado, utilizaremos un activo con riesgo, el cual es el índice Standard & Poor’s y por último tenemos un activo de una empresa con alta presencia en el mundo y en el mercado de valores como es “Microsoft Corporation” el cual va a ser denominado “MSFT”.
En este análisis, exploraremos cómo se pueden comparar y contrastar estos tres tipos de activos en términos de rendimiento, volatilidad y otras métricas relevantes. Además, examinaremos cómo se pueden tomar decisiones informadas al considerar tanto la seguridad como el potencial de retorno en una estrategia de inversión.
Para llevar a cabo todo el proceso mencionado anteriormente, vamos a utilizar la teoría planteada por Harry Markowitz, ganador del Premio Nobel de Economía. La teoría moderna de carteras de Markowitz, también conocida como teoría de la cartera. La cual, proporciona un marco sólido para la toma de decisiones de inversión al considerar la relación entre el riesgo y el rendimiento de los activos.
Con la ayuda de la teoría de Markowitz, podremos construir y analizar carteras óptimas que equilibren el riesgo y el rendimiento de manera eficiente. Este enfoque nos permitirá evaluar cómo se pueden combinar los activos libres de riesgo, como los ETF de TBILL, con activos de riesgo, como el índice Standard & Poor’s, para maximizar el rendimiento esperado dado un nivel de riesgo tolerable.
Al aplicar los principios fundamentales de la teoría de la cartera, podremos tomar decisiones de inversión más informadas y construir carteras que se ajusten a nuestros objetivos financieros y tolerancia al riesgo.para ello tomaremos la siguiente formula
\[ \sigma^2=\frac{1}{T-1} \sum_{i=1}^{T}(r_i - \bar{r})^2 \]
Dada la función anterior podemos obterner que la desviación estandar es la siguiente:
\[ Sd = \sqrt{\sigma^2} = \sigma \] Ahora que hemos revisado brevemente la teoría, procederemos con un ejemplo práctico utilizando los activos mencionados. Abordaremos el proceso paso a paso:
En esta fase, examinaremos los retornos individuales de cada activo. Calcularemos y analizaremos los rendimientos históricos para comprender cómo se han comportado en el pasado.
dicho lo anterior, comenzaremos a analizar los dos activos entre el periodo 31 de dic de 2014 hasta 01 de enero de 2024 en R studio a partir del siguiente código
data_spy=getSymbols("SPY",from="2014-12-31",
to="2020-01-01",
auto.assign = FALSE)
head(data_spy)
## SPY.Open SPY.High SPY.Low SPY.Close SPY.Volume SPY.Adjusted
## 2014-12-31 207.99 208.19 205.39 205.54 130333800 174.3587
## 2015-01-02 206.38 206.88 204.18 205.43 121465900 174.2654
## 2015-01-05 204.17 204.37 201.35 201.72 169632600 171.1182
## 2015-01-06 202.09 202.72 198.86 199.82 209151400 169.5064
## 2015-01-07 201.42 202.72 200.88 202.31 125346700 171.6186
## 2015-01-08 204.01 206.16 203.99 205.90 147217800 174.6641
tail(data_spy)
## SPY.Open SPY.High SPY.Low SPY.Close SPY.Volume SPY.Adjusted
## 2019-12-23 321.59 321.65 321.06 321.22 52990000 300.6967
## 2019-12-24 321.47 321.52 320.90 321.23 20270000 300.7061
## 2019-12-26 321.65 322.95 321.64 322.94 30911200 302.3069
## 2019-12-27 323.74 323.80 322.28 322.86 42528800 302.2320
## 2019-12-30 322.95 323.10 320.55 321.08 49729100 300.5657
## 2019-12-31 320.53 322.13 320.15 321.86 57077300 301.2959
data_TBill=getSymbols("BIL",from="2014-12-31",
to="2020-01-01",
auto.assign = FALSE)
head(data_TBill)
## BIL.Open BIL.High BIL.Low BIL.Close BIL.Volume BIL.Adjusted
## 2014-12-31 91.48 91.48 91.46 91.48 348100 81.25819
## 2015-01-02 91.46 91.48 91.46 91.46 341000 81.24043
## 2015-01-05 91.46 91.48 91.46 91.48 2518350 81.25819
## 2015-01-06 91.46 91.48 91.46 91.46 541250 81.24043
## 2015-01-07 91.48 91.48 91.46 91.46 153800 81.24043
## 2015-01-08 91.48 91.48 91.46 91.46 236450 81.24043
tail(data_TBill)
## BIL.Open BIL.High BIL.Low BIL.Close BIL.Volume BIL.Adjusted
## 2019-12-23 91.40 91.41 91.40 91.41 2846500 84.89384
## 2019-12-24 91.42 91.42 91.41 91.42 1042700 84.90311
## 2019-12-26 91.41 91.43 91.41 91.43 956200 84.91242
## 2019-12-27 91.42 91.43 91.42 91.42 1325600 84.90311
## 2019-12-30 91.44 91.44 91.43 91.43 1381300 84.91242
## 2019-12-31 91.45 91.45 91.43 91.43 1406200 84.91242
data_TMSFT=getSymbols("MSFT",from="2014-12-31",
to="2020-01-01",
auto.assign = FALSE)
head(data_TMSFT)
## MSFT.Open MSFT.High MSFT.Low MSFT.Close MSFT.Volume MSFT.Adjusted
## 2014-12-31 46.73 47.44 46.45 46.45 21552500 40.11038
## 2015-01-02 46.66 47.42 46.54 46.76 27913900 40.37806
## 2015-01-05 46.37 46.73 46.25 46.33 39673900 40.00676
## 2015-01-06 46.38 46.75 45.54 45.65 36447900 39.41956
## 2015-01-07 45.98 46.46 45.49 46.23 29114100 39.92040
## 2015-01-08 46.75 47.75 46.72 47.59 29645200 41.09479
tail(data_TMSFT)
## MSFT.Open MSFT.High MSFT.Low MSFT.Close MSFT.Volume MSFT.Adjusted
## 2019-12-23 158.12 158.12 157.27 157.41 17718200 151.4063
## 2019-12-24 157.48 157.71 157.12 157.38 8989200 151.3774
## 2019-12-26 157.56 158.73 157.40 158.67 14520600 152.6182
## 2019-12-27 159.45 159.55 158.22 158.96 18412800 152.8972
## 2019-12-30 158.99 159.02 156.73 157.59 16348400 151.5794
## 2019-12-31 156.77 157.77 156.45 157.70 18369400 151.6852
Obteniendo las matrices de los dos activos ahora vamos a realizar el proceso de obtener los retornos y retornos acumulados
##Retornos
ret_spy=Delt(data_spy$SPY.Adjusted)
ret_TBill=Delt(data_TBill$BIL.Adjusted)
ret_MSFT = Delt(data_TMSFT$MSFT.Adjusted)
rets=cbind(ret_spy,ret_TBill, ret_MSFT)
names(rets)=c("SPY","TBill", "MSFT")
head(rets,6)
## SPY TBill MSFT
## 2014-12-31 NA NA NA
## 2015-01-02 -0.0005351469 -0.0002185777 0.006673612
## 2015-01-05 -0.0180596488 0.0002186255 -0.009195675
## 2015-01-06 -0.0094190497 -0.0002185777 -0.014677524
## 2015-01-07 0.0124610533 0.0000000000 0.012705445
## 2015-01-08 0.0177453071 0.0000000000 0.029418263
###Retornos acumulados
rets[1,]=c(0,0,0)
gross_ret=1+rets
head(rets)
## SPY TBill MSFT
## 2014-12-31 0.0000000000 0.0000000000 0.000000000
## 2015-01-02 -0.0005351469 -0.0002185777 0.006673612
## 2015-01-05 -0.0180596488 0.0002186255 -0.009195675
## 2015-01-06 -0.0094190497 -0.0002185777 -0.014677524
## 2015-01-07 0.0124610533 0.0000000000 0.012705445
## 2015-01-08 0.0177453071 0.0000000000 0.029418263
head(gross_ret)
## SPY TBill MSFT
## 2014-12-31 1.0000000 1.0000000 1.0000000
## 2015-01-02 0.9994649 0.9997814 1.0066736
## 2015-01-05 0.9819404 1.0002186 0.9908043
## 2015-01-06 0.9905810 0.9997814 0.9853225
## 2015-01-07 1.0124611 1.0000000 1.0127054
## 2015-01-08 1.0177453 1.0000000 1.0294183
cum_rets=cumprod(gross_ret)
head(cum_rets)
## SPY TBill MSFT
## 2014-12-31 1.0000000 1.0000000 1.0000000
## 2015-01-02 0.9994649 0.9997814 1.0066736
## 2015-01-05 0.9814149 1.0000000 0.9974166
## 2015-01-06 0.9721709 0.9997814 0.9827770
## 2015-01-07 0.9842851 0.9997814 0.9952636
## 2015-01-08 1.0017516 0.9997814 1.0245425
tail(cum_rets)
## SPY TBill MSFT
## 2019-12-23 1.724587 1.044742 3.774740
## 2019-12-24 1.724641 1.044856 3.774020
## 2019-12-26 1.733822 1.044971 3.804956
## 2019-12-27 1.733392 1.044856 3.811910
## 2019-12-30 1.723836 1.044971 3.779057
## 2019-12-31 1.728024 1.044971 3.781695
plot(rets$SPY,col="red",main="Retornos de S&P y Tbills",
legend(legend = c("MSFT","TBILL","S&P")))
lines(ret_TBill, col = "blue", lwd = 4)
lines(ret_MSFT, col = "red", lwd = 4)
plot(cum_rets$SPY, col = "red", main = "Retornos acumulados de los activos")
lines(cum_rets$TBill, col = "blue", lwd = 2)
lines(cum_rets$MSFT, col = "gray", lwd = 2)
addLegend(legend.loc = "bottomleft", legend = c("SPY", "TBill", "MSFT"), col = c("red", "blue", "gray"), lty = 100, lwd = 2 )
en conclusión podemos observar gráficamente que el activo con mayor retorno efectivamente es el de la empresa privada “MSFT” con una alta diferencia dado que, los retornos casi duplican los del activo del S&P y por último el que genera menor retorno de los activos es el TBILL, algo que, se aplica a la teoría ya que el retorno TBILL es un bono de gobierno los cuales no manejan perdidas pero al ser tan seguro su rentabilidad hace que sea muy menos comparado a los demás.
En este paso, nos adentraremos en el análisis del riesgo asociado a nuestro portafolio. Mediante diversas métricas y técnicas, exploraremos la volatilidad y la variabilidad de los retornos de cada activo y cómo se combinan para formar nuestro portafolio.
######### Riesgos
head (rets)
## SPY TBill MSFT
## 2014-12-31 0.0000000000 0.0000000000 0.000000000
## 2015-01-02 -0.0005351469 -0.0002185777 0.006673612
## 2015-01-05 -0.0180596488 0.0002186255 -0.009195675
## 2015-01-06 -0.0094190497 -0.0002185777 -0.014677524
## 2015-01-07 0.0124610533 0.0000000000 0.012705445
## 2015-01-08 0.0177453071 0.0000000000 0.029418263
returns = rets [-1,]
head(returns)
## SPY TBill MSFT
## 2015-01-02 -0.0005351469 -0.0002185777 0.006673612
## 2015-01-05 -0.0180596488 0.0002186255 -0.009195675
## 2015-01-06 -0.0094190497 -0.0002185777 -0.014677524
## 2015-01-07 0.0124610533 0.0000000000 0.012705445
## 2015-01-08 0.0177453071 0.0000000000 0.029418263
## 2015-01-09 -0.0080137792 0.0000000000 -0.008405094
Sd_spy = sd(returns$SPY)
Sd_spy
## [1] 0.00845519
Sd_bill= sd(returns$TBill)
Sd_bill
## [1] 0.0001624932
Sd_MSFT= sd(returns$MSFT)
Sd_MSFT
## [1] 0.0146808
Dado el análisis de las desviaciones estándar de los rendimientos, se observa que el activo MSFT presenta la mayor variabilidad con una desviación estándar de 0.0146808, lo que indica un mayor riesgo en comparación con el SPY y el TBill, con desviaciones estándar de 0.008455195 y 0.0001624642 respectivamente. Por lo tanto, en términos de riesgo, el activo MSFT se destaca como el más riesgoso entre los tres activos analizados.
Para validar lo mencionado anteriormente, podemos generar los siguientes gráfico. Estos nos permitira visualizar la dispersión de los datos, representando la desviación estándar de los retornos de cada activo en color azul. Al analizar los resultados proporcionados por estos gráficos, podemos observar claramente la variabilidad en los rendimientos de cada activo, lo que nos permite hacer comparaciones y tomar decisiones informadas sobre su riesgo relativo.
Sd_spy/Sd_bill
## [1] 52.03413
hist(returns$SPY, breaks = 50)
curve(dnorm(x, mean = mean(returns$SPY), sd = sd(returns$SPY)),
col = "cyan", lwd =2, add =TRUE)
legend("topright", legend = paste("SD =", round(sd(returns$SPY), digits = 4)), col = "cyan", lwd = 1)
En este gráfico, hemos segmentado el rango de valores en 50 intervalos
para facilitar la apreciación de la distribución de los datos. Este
enfoque revela que la mayoría de los retornos se concentran entre -0.02
y 0.02, lo que destaca la tendencia central de la distribución de los
datos.
hist(returns$TBill, breaks = 10)
curve(dnorm(x, mean = mean(returns$TBill), sd = sd(returns$TBill)),
col = "cyan", lwd =2, add =TRUE)
legend("topright", legend = paste("SD =", round(sd(returns$TBill), digits = 4)), col = "cyan", lwd = 1)
Además, al examinar los retornos del activo TBILL, se evidencia una
desviación muy reducida, lo que resulta en la concentración de la
mayoría de los datos en un estrecho rango de apenas 10 intervalos.
hist(returns$MSFT, breaks = 200)
curve(dnorm(x, mean = mean(returns$MSFT), sd = sd(returns$MSFT)),
col = "cyan", lwd =2, add =TRUE)
legend("topright", legend = paste("SD =", round(sd(returns$MSFT), digits = 4)), col = "cyan", lwd = 1)
Finalmente, se puede observar que los retornos de los activos para
Microsoft pueden distribuirse en un amplio rango de hasta 200
intervalos, lo que evidencia la notable variabilidad en los rendimientos
de esta empresa.
La desviación estándar de los activos ofrece valiosa información acerca de su comportamiento a lo largo del tiempo. Dicha medida nos permite discernir entre activos altamente volátiles y aquellos más consistentes. En este análisis, nos enfocaremos en examinar la desviación de los retornos del portafolio compuesto por estos tres activos a lo largo del tiempo. De esta manera, podremos visualizar y cuantificar de manera tanto gráfica como numérica, cuál de estos activos exhibió un mayor nivel de riesgo durante los años estudiados.
######## Desv EST 2015
head(returns)
## SPY TBill MSFT
## 2015-01-02 -0.0005351469 -0.0002185777 0.006673612
## 2015-01-05 -0.0180596488 0.0002186255 -0.009195675
## 2015-01-06 -0.0094190497 -0.0002185777 -0.014677524
## 2015-01-07 0.0124610533 0.0000000000 0.012705445
## 2015-01-08 0.0177453071 0.0000000000 0.029418263
## 2015-01-09 -0.0080137792 0.0000000000 -0.008405094
index(returns)
## [1] "2015-01-02" "2015-01-05" "2015-01-06" "2015-01-07" "2015-01-08"
## [6] "2015-01-09" "2015-01-12" "2015-01-13" "2015-01-14" "2015-01-15"
## [11] "2015-01-16" "2015-01-20" "2015-01-21" "2015-01-22" "2015-01-23"
## [16] "2015-01-26" "2015-01-27" "2015-01-28" "2015-01-29" "2015-01-30"
## [21] "2015-02-02" "2015-02-03" "2015-02-04" "2015-02-05" "2015-02-06"
## [26] "2015-02-09" "2015-02-10" "2015-02-11" "2015-02-12" "2015-02-13"
## [31] "2015-02-17" "2015-02-18" "2015-02-19" "2015-02-20" "2015-02-23"
## [36] "2015-02-24" "2015-02-25" "2015-02-26" "2015-02-27" "2015-03-02"
## [41] "2015-03-03" "2015-03-04" "2015-03-05" "2015-03-06" "2015-03-09"
## [46] "2015-03-10" "2015-03-11" "2015-03-12" "2015-03-13" "2015-03-16"
## [51] "2015-03-17" "2015-03-18" "2015-03-19" "2015-03-20" "2015-03-23"
## [56] "2015-03-24" "2015-03-25" "2015-03-26" "2015-03-27" "2015-03-30"
## [61] "2015-03-31" "2015-04-01" "2015-04-02" "2015-04-06" "2015-04-07"
## [66] "2015-04-08" "2015-04-09" "2015-04-10" "2015-04-13" "2015-04-14"
## [71] "2015-04-15" "2015-04-16" "2015-04-17" "2015-04-20" "2015-04-21"
## [76] "2015-04-22" "2015-04-23" "2015-04-24" "2015-04-27" "2015-04-28"
## [81] "2015-04-29" "2015-04-30" "2015-05-01" "2015-05-04" "2015-05-05"
## [86] "2015-05-06" "2015-05-07" "2015-05-08" "2015-05-11" "2015-05-12"
## [91] "2015-05-13" "2015-05-14" "2015-05-15" "2015-05-18" "2015-05-19"
## [96] "2015-05-20" "2015-05-21" "2015-05-22" "2015-05-26" "2015-05-27"
## [101] "2015-05-28" "2015-05-29" "2015-06-01" "2015-06-02" "2015-06-03"
## [106] "2015-06-04" "2015-06-05" "2015-06-08" "2015-06-09" "2015-06-10"
## [111] "2015-06-11" "2015-06-12" "2015-06-15" "2015-06-16" "2015-06-17"
## [116] "2015-06-18" "2015-06-19" "2015-06-22" "2015-06-23" "2015-06-24"
## [121] "2015-06-25" "2015-06-26" "2015-06-29" "2015-06-30" "2015-07-01"
## [126] "2015-07-02" "2015-07-06" "2015-07-07" "2015-07-08" "2015-07-09"
## [131] "2015-07-10" "2015-07-13" "2015-07-14" "2015-07-15" "2015-07-16"
## [136] "2015-07-17" "2015-07-20" "2015-07-21" "2015-07-22" "2015-07-23"
## [141] "2015-07-24" "2015-07-27" "2015-07-28" "2015-07-29" "2015-07-30"
## [146] "2015-07-31" "2015-08-03" "2015-08-04" "2015-08-05" "2015-08-06"
## [151] "2015-08-07" "2015-08-10" "2015-08-11" "2015-08-12" "2015-08-13"
## [156] "2015-08-14" "2015-08-17" "2015-08-18" "2015-08-19" "2015-08-20"
## [161] "2015-08-21" "2015-08-24" "2015-08-25" "2015-08-26" "2015-08-27"
## [166] "2015-08-28" "2015-08-31" "2015-09-01" "2015-09-02" "2015-09-03"
## [171] "2015-09-04" "2015-09-08" "2015-09-09" "2015-09-10" "2015-09-11"
## [176] "2015-09-14" "2015-09-15" "2015-09-16" "2015-09-17" "2015-09-18"
## [181] "2015-09-21" "2015-09-22" "2015-09-23" "2015-09-24" "2015-09-25"
## [186] "2015-09-28" "2015-09-29" "2015-09-30" "2015-10-01" "2015-10-02"
## [191] "2015-10-05" "2015-10-06" "2015-10-07" "2015-10-08" "2015-10-09"
## [196] "2015-10-12" "2015-10-13" "2015-10-14" "2015-10-15" "2015-10-16"
## [201] "2015-10-19" "2015-10-20" "2015-10-21" "2015-10-22" "2015-10-23"
## [206] "2015-10-26" "2015-10-27" "2015-10-28" "2015-10-29" "2015-10-30"
## [211] "2015-11-02" "2015-11-03" "2015-11-04" "2015-11-05" "2015-11-06"
## [216] "2015-11-09" "2015-11-10" "2015-11-11" "2015-11-12" "2015-11-13"
## [221] "2015-11-16" "2015-11-17" "2015-11-18" "2015-11-19" "2015-11-20"
## [226] "2015-11-23" "2015-11-24" "2015-11-25" "2015-11-27" "2015-11-30"
## [231] "2015-12-01" "2015-12-02" "2015-12-03" "2015-12-04" "2015-12-07"
## [236] "2015-12-08" "2015-12-09" "2015-12-10" "2015-12-11" "2015-12-14"
## [241] "2015-12-15" "2015-12-16" "2015-12-17" "2015-12-18" "2015-12-21"
## [246] "2015-12-22" "2015-12-23" "2015-12-24" "2015-12-28" "2015-12-29"
## [251] "2015-12-30" "2015-12-31" "2016-01-04" "2016-01-05" "2016-01-06"
## [256] "2016-01-07" "2016-01-08" "2016-01-11" "2016-01-12" "2016-01-13"
## [261] "2016-01-14" "2016-01-15" "2016-01-19" "2016-01-20" "2016-01-21"
## [266] "2016-01-22" "2016-01-25" "2016-01-26" "2016-01-27" "2016-01-28"
## [271] "2016-01-29" "2016-02-01" "2016-02-02" "2016-02-03" "2016-02-04"
## [276] "2016-02-05" "2016-02-08" "2016-02-09" "2016-02-10" "2016-02-11"
## [281] "2016-02-12" "2016-02-16" "2016-02-17" "2016-02-18" "2016-02-19"
## [286] "2016-02-22" "2016-02-23" "2016-02-24" "2016-02-25" "2016-02-26"
## [291] "2016-02-29" "2016-03-01" "2016-03-02" "2016-03-03" "2016-03-04"
## [296] "2016-03-07" "2016-03-08" "2016-03-09" "2016-03-10" "2016-03-11"
## [301] "2016-03-14" "2016-03-15" "2016-03-16" "2016-03-17" "2016-03-18"
## [306] "2016-03-21" "2016-03-22" "2016-03-23" "2016-03-24" "2016-03-28"
## [311] "2016-03-29" "2016-03-30" "2016-03-31" "2016-04-01" "2016-04-04"
## [316] "2016-04-05" "2016-04-06" "2016-04-07" "2016-04-08" "2016-04-11"
## [321] "2016-04-12" "2016-04-13" "2016-04-14" "2016-04-15" "2016-04-18"
## [326] "2016-04-19" "2016-04-20" "2016-04-21" "2016-04-22" "2016-04-25"
## [331] "2016-04-26" "2016-04-27" "2016-04-28" "2016-04-29" "2016-05-02"
## [336] "2016-05-03" "2016-05-04" "2016-05-05" "2016-05-06" "2016-05-09"
## [341] "2016-05-10" "2016-05-11" "2016-05-12" "2016-05-13" "2016-05-16"
## [346] "2016-05-17" "2016-05-18" "2016-05-19" "2016-05-20" "2016-05-23"
## [351] "2016-05-24" "2016-05-25" "2016-05-26" "2016-05-27" "2016-05-31"
## [356] "2016-06-01" "2016-06-02" "2016-06-03" "2016-06-06" "2016-06-07"
## [361] "2016-06-08" "2016-06-09" "2016-06-10" "2016-06-13" "2016-06-14"
## [366] "2016-06-15" "2016-06-16" "2016-06-17" "2016-06-20" "2016-06-21"
## [371] "2016-06-22" "2016-06-23" "2016-06-24" "2016-06-27" "2016-06-28"
## [376] "2016-06-29" "2016-06-30" "2016-07-01" "2016-07-05" "2016-07-06"
## [381] "2016-07-07" "2016-07-08" "2016-07-11" "2016-07-12" "2016-07-13"
## [386] "2016-07-14" "2016-07-15" "2016-07-18" "2016-07-19" "2016-07-20"
## [391] "2016-07-21" "2016-07-22" "2016-07-25" "2016-07-26" "2016-07-27"
## [396] "2016-07-28" "2016-07-29" "2016-08-01" "2016-08-02" "2016-08-03"
## [401] "2016-08-04" "2016-08-05" "2016-08-08" "2016-08-09" "2016-08-10"
## [406] "2016-08-11" "2016-08-12" "2016-08-15" "2016-08-16" "2016-08-17"
## [411] "2016-08-18" "2016-08-19" "2016-08-22" "2016-08-23" "2016-08-24"
## [416] "2016-08-25" "2016-08-26" "2016-08-29" "2016-08-30" "2016-08-31"
## [421] "2016-09-01" "2016-09-02" "2016-09-06" "2016-09-07" "2016-09-08"
## [426] "2016-09-09" "2016-09-12" "2016-09-13" "2016-09-14" "2016-09-15"
## [431] "2016-09-16" "2016-09-19" "2016-09-20" "2016-09-21" "2016-09-22"
## [436] "2016-09-23" "2016-09-26" "2016-09-27" "2016-09-28" "2016-09-29"
## [441] "2016-09-30" "2016-10-03" "2016-10-04" "2016-10-05" "2016-10-06"
## [446] "2016-10-07" "2016-10-10" "2016-10-11" "2016-10-12" "2016-10-13"
## [451] "2016-10-14" "2016-10-17" "2016-10-18" "2016-10-19" "2016-10-20"
## [456] "2016-10-21" "2016-10-24" "2016-10-25" "2016-10-26" "2016-10-27"
## [461] "2016-10-28" "2016-10-31" "2016-11-01" "2016-11-02" "2016-11-03"
## [466] "2016-11-04" "2016-11-07" "2016-11-08" "2016-11-09" "2016-11-10"
## [471] "2016-11-11" "2016-11-14" "2016-11-15" "2016-11-16" "2016-11-17"
## [476] "2016-11-18" "2016-11-21" "2016-11-22" "2016-11-23" "2016-11-25"
## [481] "2016-11-28" "2016-11-29" "2016-11-30" "2016-12-01" "2016-12-02"
## [486] "2016-12-05" "2016-12-06" "2016-12-07" "2016-12-08" "2016-12-09"
## [491] "2016-12-12" "2016-12-13" "2016-12-14" "2016-12-15" "2016-12-16"
## [496] "2016-12-19" "2016-12-20" "2016-12-21" "2016-12-22" "2016-12-23"
## [501] "2016-12-27" "2016-12-28" "2016-12-29" "2016-12-30" "2017-01-03"
## [506] "2017-01-04" "2017-01-05" "2017-01-06" "2017-01-09" "2017-01-10"
## [511] "2017-01-11" "2017-01-12" "2017-01-13" "2017-01-17" "2017-01-18"
## [516] "2017-01-19" "2017-01-20" "2017-01-23" "2017-01-24" "2017-01-25"
## [521] "2017-01-26" "2017-01-27" "2017-01-30" "2017-01-31" "2017-02-01"
## [526] "2017-02-02" "2017-02-03" "2017-02-06" "2017-02-07" "2017-02-08"
## [531] "2017-02-09" "2017-02-10" "2017-02-13" "2017-02-14" "2017-02-15"
## [536] "2017-02-16" "2017-02-17" "2017-02-21" "2017-02-22" "2017-02-23"
## [541] "2017-02-24" "2017-02-27" "2017-02-28" "2017-03-01" "2017-03-02"
## [546] "2017-03-03" "2017-03-06" "2017-03-07" "2017-03-08" "2017-03-09"
## [551] "2017-03-10" "2017-03-13" "2017-03-14" "2017-03-15" "2017-03-16"
## [556] "2017-03-17" "2017-03-20" "2017-03-21" "2017-03-22" "2017-03-23"
## [561] "2017-03-24" "2017-03-27" "2017-03-28" "2017-03-29" "2017-03-30"
## [566] "2017-03-31" "2017-04-03" "2017-04-04" "2017-04-05" "2017-04-06"
## [571] "2017-04-07" "2017-04-10" "2017-04-11" "2017-04-12" "2017-04-13"
## [576] "2017-04-17" "2017-04-18" "2017-04-19" "2017-04-20" "2017-04-21"
## [581] "2017-04-24" "2017-04-25" "2017-04-26" "2017-04-27" "2017-04-28"
## [586] "2017-05-01" "2017-05-02" "2017-05-03" "2017-05-04" "2017-05-05"
## [591] "2017-05-08" "2017-05-09" "2017-05-10" "2017-05-11" "2017-05-12"
## [596] "2017-05-15" "2017-05-16" "2017-05-17" "2017-05-18" "2017-05-19"
## [601] "2017-05-22" "2017-05-23" "2017-05-24" "2017-05-25" "2017-05-26"
## [606] "2017-05-30" "2017-05-31" "2017-06-01" "2017-06-02" "2017-06-05"
## [611] "2017-06-06" "2017-06-07" "2017-06-08" "2017-06-09" "2017-06-12"
## [616] "2017-06-13" "2017-06-14" "2017-06-15" "2017-06-16" "2017-06-19"
## [621] "2017-06-20" "2017-06-21" "2017-06-22" "2017-06-23" "2017-06-26"
## [626] "2017-06-27" "2017-06-28" "2017-06-29" "2017-06-30" "2017-07-03"
## [631] "2017-07-05" "2017-07-06" "2017-07-07" "2017-07-10" "2017-07-11"
## [636] "2017-07-12" "2017-07-13" "2017-07-14" "2017-07-17" "2017-07-18"
## [641] "2017-07-19" "2017-07-20" "2017-07-21" "2017-07-24" "2017-07-25"
## [646] "2017-07-26" "2017-07-27" "2017-07-28" "2017-07-31" "2017-08-01"
## [651] "2017-08-02" "2017-08-03" "2017-08-04" "2017-08-07" "2017-08-08"
## [656] "2017-08-09" "2017-08-10" "2017-08-11" "2017-08-14" "2017-08-15"
## [661] "2017-08-16" "2017-08-17" "2017-08-18" "2017-08-21" "2017-08-22"
## [666] "2017-08-23" "2017-08-24" "2017-08-25" "2017-08-28" "2017-08-29"
## [671] "2017-08-30" "2017-08-31" "2017-09-01" "2017-09-05" "2017-09-06"
## [676] "2017-09-07" "2017-09-08" "2017-09-11" "2017-09-12" "2017-09-13"
## [681] "2017-09-14" "2017-09-15" "2017-09-18" "2017-09-19" "2017-09-20"
## [686] "2017-09-21" "2017-09-22" "2017-09-25" "2017-09-26" "2017-09-27"
## [691] "2017-09-28" "2017-09-29" "2017-10-02" "2017-10-03" "2017-10-04"
## [696] "2017-10-05" "2017-10-06" "2017-10-09" "2017-10-10" "2017-10-11"
## [701] "2017-10-12" "2017-10-13" "2017-10-16" "2017-10-17" "2017-10-18"
## [706] "2017-10-19" "2017-10-20" "2017-10-23" "2017-10-24" "2017-10-25"
## [711] "2017-10-26" "2017-10-27" "2017-10-30" "2017-10-31" "2017-11-01"
## [716] "2017-11-02" "2017-11-03" "2017-11-06" "2017-11-07" "2017-11-08"
## [721] "2017-11-09" "2017-11-10" "2017-11-13" "2017-11-14" "2017-11-15"
## [726] "2017-11-16" "2017-11-17" "2017-11-20" "2017-11-21" "2017-11-22"
## [731] "2017-11-24" "2017-11-27" "2017-11-28" "2017-11-29" "2017-11-30"
## [736] "2017-12-01" "2017-12-04" "2017-12-05" "2017-12-06" "2017-12-07"
## [741] "2017-12-08" "2017-12-11" "2017-12-12" "2017-12-13" "2017-12-14"
## [746] "2017-12-15" "2017-12-18" "2017-12-19" "2017-12-20" "2017-12-21"
## [751] "2017-12-22" "2017-12-26" "2017-12-27" "2017-12-28" "2017-12-29"
## [756] "2018-01-02" "2018-01-03" "2018-01-04" "2018-01-05" "2018-01-08"
## [761] "2018-01-09" "2018-01-10" "2018-01-11" "2018-01-12" "2018-01-16"
## [766] "2018-01-17" "2018-01-18" "2018-01-19" "2018-01-22" "2018-01-23"
## [771] "2018-01-24" "2018-01-25" "2018-01-26" "2018-01-29" "2018-01-30"
## [776] "2018-01-31" "2018-02-01" "2018-02-02" "2018-02-05" "2018-02-06"
## [781] "2018-02-07" "2018-02-08" "2018-02-09" "2018-02-12" "2018-02-13"
## [786] "2018-02-14" "2018-02-15" "2018-02-16" "2018-02-20" "2018-02-21"
## [791] "2018-02-22" "2018-02-23" "2018-02-26" "2018-02-27" "2018-02-28"
## [796] "2018-03-01" "2018-03-02" "2018-03-05" "2018-03-06" "2018-03-07"
## [801] "2018-03-08" "2018-03-09" "2018-03-12" "2018-03-13" "2018-03-14"
## [806] "2018-03-15" "2018-03-16" "2018-03-19" "2018-03-20" "2018-03-21"
## [811] "2018-03-22" "2018-03-23" "2018-03-26" "2018-03-27" "2018-03-28"
## [816] "2018-03-29" "2018-04-02" "2018-04-03" "2018-04-04" "2018-04-05"
## [821] "2018-04-06" "2018-04-09" "2018-04-10" "2018-04-11" "2018-04-12"
## [826] "2018-04-13" "2018-04-16" "2018-04-17" "2018-04-18" "2018-04-19"
## [831] "2018-04-20" "2018-04-23" "2018-04-24" "2018-04-25" "2018-04-26"
## [836] "2018-04-27" "2018-04-30" "2018-05-01" "2018-05-02" "2018-05-03"
## [841] "2018-05-04" "2018-05-07" "2018-05-08" "2018-05-09" "2018-05-10"
## [846] "2018-05-11" "2018-05-14" "2018-05-15" "2018-05-16" "2018-05-17"
## [851] "2018-05-18" "2018-05-21" "2018-05-22" "2018-05-23" "2018-05-24"
## [856] "2018-05-25" "2018-05-29" "2018-05-30" "2018-05-31" "2018-06-01"
## [861] "2018-06-04" "2018-06-05" "2018-06-06" "2018-06-07" "2018-06-08"
## [866] "2018-06-11" "2018-06-12" "2018-06-13" "2018-06-14" "2018-06-15"
## [871] "2018-06-18" "2018-06-19" "2018-06-20" "2018-06-21" "2018-06-22"
## [876] "2018-06-25" "2018-06-26" "2018-06-27" "2018-06-28" "2018-06-29"
## [881] "2018-07-02" "2018-07-03" "2018-07-05" "2018-07-06" "2018-07-09"
## [886] "2018-07-10" "2018-07-11" "2018-07-12" "2018-07-13" "2018-07-16"
## [891] "2018-07-17" "2018-07-18" "2018-07-19" "2018-07-20" "2018-07-23"
## [896] "2018-07-24" "2018-07-25" "2018-07-26" "2018-07-27" "2018-07-30"
## [901] "2018-07-31" "2018-08-01" "2018-08-02" "2018-08-03" "2018-08-06"
## [906] "2018-08-07" "2018-08-08" "2018-08-09" "2018-08-10" "2018-08-13"
## [911] "2018-08-14" "2018-08-15" "2018-08-16" "2018-08-17" "2018-08-20"
## [916] "2018-08-21" "2018-08-22" "2018-08-23" "2018-08-24" "2018-08-27"
## [921] "2018-08-28" "2018-08-29" "2018-08-30" "2018-08-31" "2018-09-04"
## [926] "2018-09-05" "2018-09-06" "2018-09-07" "2018-09-10" "2018-09-11"
## [931] "2018-09-12" "2018-09-13" "2018-09-14" "2018-09-17" "2018-09-18"
## [936] "2018-09-19" "2018-09-20" "2018-09-21" "2018-09-24" "2018-09-25"
## [941] "2018-09-26" "2018-09-27" "2018-09-28" "2018-10-01" "2018-10-02"
## [946] "2018-10-03" "2018-10-04" "2018-10-05" "2018-10-08" "2018-10-09"
## [951] "2018-10-10" "2018-10-11" "2018-10-12" "2018-10-15" "2018-10-16"
## [956] "2018-10-17" "2018-10-18" "2018-10-19" "2018-10-22" "2018-10-23"
## [961] "2018-10-24" "2018-10-25" "2018-10-26" "2018-10-29" "2018-10-30"
## [966] "2018-10-31" "2018-11-01" "2018-11-02" "2018-11-05" "2018-11-06"
## [971] "2018-11-07" "2018-11-08" "2018-11-09" "2018-11-12" "2018-11-13"
## [976] "2018-11-14" "2018-11-15" "2018-11-16" "2018-11-19" "2018-11-20"
## [981] "2018-11-21" "2018-11-23" "2018-11-26" "2018-11-27" "2018-11-28"
## [986] "2018-11-29" "2018-11-30" "2018-12-03" "2018-12-04" "2018-12-06"
## [991] "2018-12-07" "2018-12-10" "2018-12-11" "2018-12-12" "2018-12-13"
## [996] "2018-12-14" "2018-12-17" "2018-12-18" "2018-12-19" "2018-12-20"
## [1001] "2018-12-21" "2018-12-24" "2018-12-26" "2018-12-27" "2018-12-28"
## [1006] "2018-12-31" "2019-01-02" "2019-01-03" "2019-01-04" "2019-01-07"
## [1011] "2019-01-08" "2019-01-09" "2019-01-10" "2019-01-11" "2019-01-14"
## [1016] "2019-01-15" "2019-01-16" "2019-01-17" "2019-01-18" "2019-01-22"
## [1021] "2019-01-23" "2019-01-24" "2019-01-25" "2019-01-28" "2019-01-29"
## [1026] "2019-01-30" "2019-01-31" "2019-02-01" "2019-02-04" "2019-02-05"
## [1031] "2019-02-06" "2019-02-07" "2019-02-08" "2019-02-11" "2019-02-12"
## [1036] "2019-02-13" "2019-02-14" "2019-02-15" "2019-02-19" "2019-02-20"
## [1041] "2019-02-21" "2019-02-22" "2019-02-25" "2019-02-26" "2019-02-27"
## [1046] "2019-02-28" "2019-03-01" "2019-03-04" "2019-03-05" "2019-03-06"
## [1051] "2019-03-07" "2019-03-08" "2019-03-11" "2019-03-12" "2019-03-13"
## [1056] "2019-03-14" "2019-03-15" "2019-03-18" "2019-03-19" "2019-03-20"
## [1061] "2019-03-21" "2019-03-22" "2019-03-25" "2019-03-26" "2019-03-27"
## [1066] "2019-03-28" "2019-03-29" "2019-04-01" "2019-04-02" "2019-04-03"
## [1071] "2019-04-04" "2019-04-05" "2019-04-08" "2019-04-09" "2019-04-10"
## [1076] "2019-04-11" "2019-04-12" "2019-04-15" "2019-04-16" "2019-04-17"
## [1081] "2019-04-18" "2019-04-22" "2019-04-23" "2019-04-24" "2019-04-25"
## [1086] "2019-04-26" "2019-04-29" "2019-04-30" "2019-05-01" "2019-05-02"
## [1091] "2019-05-03" "2019-05-06" "2019-05-07" "2019-05-08" "2019-05-09"
## [1096] "2019-05-10" "2019-05-13" "2019-05-14" "2019-05-15" "2019-05-16"
## [1101] "2019-05-17" "2019-05-20" "2019-05-21" "2019-05-22" "2019-05-23"
## [1106] "2019-05-24" "2019-05-28" "2019-05-29" "2019-05-30" "2019-05-31"
## [1111] "2019-06-03" "2019-06-04" "2019-06-05" "2019-06-06" "2019-06-07"
## [1116] "2019-06-10" "2019-06-11" "2019-06-12" "2019-06-13" "2019-06-14"
## [1121] "2019-06-17" "2019-06-18" "2019-06-19" "2019-06-20" "2019-06-21"
## [1126] "2019-06-24" "2019-06-25" "2019-06-26" "2019-06-27" "2019-06-28"
## [1131] "2019-07-01" "2019-07-02" "2019-07-03" "2019-07-05" "2019-07-08"
## [1136] "2019-07-09" "2019-07-10" "2019-07-11" "2019-07-12" "2019-07-15"
## [1141] "2019-07-16" "2019-07-17" "2019-07-18" "2019-07-19" "2019-07-22"
## [1146] "2019-07-23" "2019-07-24" "2019-07-25" "2019-07-26" "2019-07-29"
## [1151] "2019-07-30" "2019-07-31" "2019-08-01" "2019-08-02" "2019-08-05"
## [1156] "2019-08-06" "2019-08-07" "2019-08-08" "2019-08-09" "2019-08-12"
## [1161] "2019-08-13" "2019-08-14" "2019-08-15" "2019-08-16" "2019-08-19"
## [1166] "2019-08-20" "2019-08-21" "2019-08-22" "2019-08-23" "2019-08-26"
## [1171] "2019-08-27" "2019-08-28" "2019-08-29" "2019-08-30" "2019-09-03"
## [1176] "2019-09-04" "2019-09-05" "2019-09-06" "2019-09-09" "2019-09-10"
## [1181] "2019-09-11" "2019-09-12" "2019-09-13" "2019-09-16" "2019-09-17"
## [1186] "2019-09-18" "2019-09-19" "2019-09-20" "2019-09-23" "2019-09-24"
## [1191] "2019-09-25" "2019-09-26" "2019-09-27" "2019-09-30" "2019-10-01"
## [1196] "2019-10-02" "2019-10-03" "2019-10-04" "2019-10-07" "2019-10-08"
## [1201] "2019-10-09" "2019-10-10" "2019-10-11" "2019-10-14" "2019-10-15"
## [1206] "2019-10-16" "2019-10-17" "2019-10-18" "2019-10-21" "2019-10-22"
## [1211] "2019-10-23" "2019-10-24" "2019-10-25" "2019-10-28" "2019-10-29"
## [1216] "2019-10-30" "2019-10-31" "2019-11-01" "2019-11-04" "2019-11-05"
## [1221] "2019-11-06" "2019-11-07" "2019-11-08" "2019-11-11" "2019-11-12"
## [1226] "2019-11-13" "2019-11-14" "2019-11-15" "2019-11-18" "2019-11-19"
## [1231] "2019-11-20" "2019-11-21" "2019-11-22" "2019-11-25" "2019-11-26"
## [1236] "2019-11-27" "2019-11-29" "2019-12-02" "2019-12-03" "2019-12-04"
## [1241] "2019-12-05" "2019-12-06" "2019-12-09" "2019-12-10" "2019-12-11"
## [1246] "2019-12-12" "2019-12-13" "2019-12-16" "2019-12-17" "2019-12-18"
## [1251] "2019-12-19" "2019-12-20" "2019-12-23" "2019-12-24" "2019-12-26"
## [1256] "2019-12-27" "2019-12-30" "2019-12-31"
str(returns)
## An xts object on 2015-01-02 / 2019-12-31 containing:
## Data: double [1258, 3]
## Columns: SPY, TBill, MSFT
## Index: Date [1258] (TZ: "UTC")
## xts Attributes:
## $ src : chr "yahoo"
## $ updated: POSIXct[1:1], format: "2024-03-16 14:13:19"
returns ["2015"]
## SPY TBill MSFT
## 2015-01-02 -0.0005351469 -0.0002185777 0.006673612
## 2015-01-05 -0.0180596488 0.0002186255 -0.009195675
## 2015-01-06 -0.0094190497 -0.0002185777 -0.014677524
## 2015-01-07 0.0124610533 0.0000000000 0.012705445
## 2015-01-08 0.0177453071 0.0000000000 0.029418263
## 2015-01-09 -0.0080137792 0.0000000000 -0.008405094
## 2015-01-12 -0.0078334296 0.0000000000 -0.012502753
## 2015-01-13 -0.0028128626 0.0000000000 -0.005150232
## 2015-01-14 -0.0060370755 0.0000000000 -0.008628380
## 2015-01-15 -0.0091609883 0.0000000000 -0.010443615
## ...
## 2015-12-17 -0.0152378376 -0.0002191929 -0.007660925
## 2015-12-18 -0.0178153358 0.0002192410 -0.028186289
## 2015-12-21 0.0082492808 -0.0002191929 0.012931599
## 2015-12-22 0.0090741247 0.0000000000 0.009483878
## 2015-12-23 0.0123835912 0.0000000000 0.008491624
## 2015-12-24 -0.0016504983 0.0002192410 -0.002687496
## 2015-12-28 -0.0022849903 -0.0002191929 0.005029875
## 2015-12-29 0.0106719071 0.0000000000 0.010724010
## 2015-12-30 -0.0070878028 0.0002192410 -0.004244197
## 2015-12-31 -0.0100032573 -0.0002191929 -0.014740016
sd(returns["2015"])
## [1] 0.01168649
sd_2015 = apply( X = returns["2015"], MARGIN = 2,
FUN = sd)
sd_2015
## SPY TBill MSFT
## 0.0097211823 0.0001657069 0.0177681504
### Desv EST (sd) 2016
sd_2016 = apply( X = returns["2016"], MARGIN = 2,
FUN = sd)
sd_2016
## SPY TBill MSFT
## 0.0082278381 0.0001849655 0.0142946125
barplot(sd_2016, main = "Desviaciones Estándar de los Activos en 2016",
xlab = "sd_2016", ylab = "Desviación Estándar", col = "cyan")
# Graficar las desviaciones estándar como distribuciones normales
curve(dnorm(x, mean = sd_2016["SPY"], sd = sd(sd_2016)),
col = "red", lwd = 2, xlim = c(0, max(sd_2016) * 2),
main = "Distribuciones Normales de Desviaciones Estándar",
xlab = "Desviación Estándar", ylab = "Densidad")
curve(dnorm(x, mean = sd_2016["TBill"], sd = sd(sd_2016)),
col = "blue", lwd = 2, add = TRUE)
curve(dnorm(x, mean = sd_2016["MSFT"], sd = sd(sd_2016)),
col = "gray", lwd = 2, add = TRUE)
# Agregar leyenda
legend("topright", legend = c("SPY", "TBill", "MSFT"), col = c("red", "blue", "gray"), lty = 1, lwd = 2)
### Desv EST (sd) 2017
sd_2017 = apply( X = returns["2017"], MARGIN = 2,
FUN = sd)
sd_2017
## SPY TBill MSFT
## 0.0042482120 0.0001925949 0.0093248550
barplot(sd_2017, main = "Desviaciones Estándar de los Activos en 2017",
xlab = "sd_2017", ylab = "Desviación Estándar", col = "cyan")
# Graficar las desviaciones estándar como distribuciones normales
curve(dnorm(x, mean = sd_2017["SPY"], sd = sd(sd_2017)),
col = "red", lwd = 2, xlim = c(0, max(sd_2017) * 2),
main = "Distribuciones Normales de Desviaciones Estándar",
xlab = "Desviación Estándar", ylab = "Densidad")
curve(dnorm(x, mean = sd_2017["TBill"], sd = sd(sd_2017)),
col = "blue", lwd = 2, add = TRUE)
curve(dnorm(x, mean = sd_2017["MSFT"], sd = sd(sd_2017)),
col = "gray", lwd = 2, add = TRUE)
# Agregar leyenda
legend("topright", legend = c("SPY", "TBill", "MSFT"), col = c("red", "blue", "gray"), lty = 1, lwd = 2)
### Desv EST (sd) 2018
sd_2018 = apply( X = returns["2018"], MARGIN = 2,
FUN = sd)
sd_2018
## SPY TBill MSFT
## 0.0107321673 0.0001169484 0.0178046259
barplot(sd_2018, main = "Desviaciones Estándar de los Activos en 2018",
xlab = "sd_2018", ylab = "Desviación Estándar", col = "cyan")
# Graficar las desviaciones estándar como distribuciones normales
curve(dnorm(x, mean = sd_2018["SPY"], sd = sd(sd_2018)),
col = "red", lwd = 2, xlim = c(0, max(sd_2018) * 2),
main = "Distribuciones Normales de Desviaciones Estándar",
xlab = "Desviación Estándar", ylab = "Densidad")
curve(dnorm(x, mean = sd_2018["TBill"], sd = sd(sd_2018)),
col = "blue", lwd = 2, add = TRUE)
curve(dnorm(x, mean = sd_2018["MSFT"], sd = sd(sd_2018)),
col = "gray", lwd = 2, add = TRUE)
# Agregar leyenda
legend("topright", legend = c("SPY", "TBill", "MSFT"), col = c("red", "blue", "gray"), lty = 1, lwd = 2)
### Desv EST (sd) 2019
sd_2019 = apply( X = returns["2019"], MARGIN = 2,
FUN = sd)
sd_2019
## SPY TBill MSFT
## 0.0078811328 0.0001192474 0.0124907629
barplot(sd_2019, main = "Desviaciones Estándar de los Activos en 2019",
xlab = "sd_2019", ylab = "Desviación Estándar", col = "cyan")
# Graficar las desviaciones estándar como distribuciones normales
curve(dnorm(x, mean = sd_2019["SPY"], sd = sd(sd_2019)),
col = "red", lwd = 2, xlim = c(0, max(sd_2019) * 2),
main = "Distribuciones Normales de Desviaciones Estándar",
xlab = "Desviación Estándar", ylab = "Densidad")
curve(dnorm(x, mean = sd_2019["TBill"], sd = sd(sd_2019)),
col = "blue", lwd = 2, add = TRUE)
curve(dnorm(x, mean = sd_2019["MSFT"], sd = sd(sd_2019)),
col = "gray", lwd = 2, add = TRUE)
# Agregar leyenda
legend("topright", legend = c("SPY", "TBill", "MSFT"), col = c("red", "blue", "gray"), lty = 1, lwd = 2)
El VaR (Value at Risk) es una medida clave que nos ayuda a comprender el riesgo potencial de nuestro portafolio en un horizonte de tiempo específico. Calcularemos el VaR para evaluar la probabilidad de incurrir en pérdidas significativas bajo condiciones normales de mercado.
El Expected Shortfall (ES), también conocido como Conditional VaR, es una medida complementaria al VaR que nos proporciona una visión más detallada de las posibles pérdidas en escenarios extremos. Calcularemos el ES para comprender mejor el impacto de eventos adversos en nuestro portafolio.
Al abordar cada uno de estos pasos con cuidado y precisión, estaremos mejor equipados para comprender y gestionar los riesgos asociados a nuestros activos y portafolios de inversión.