Capítulo 3 Introducción a teoría de portafolio
IMPORTANTE: Aún no está del todo listo el formato en pdf, por lo que recomiendo verlo online.
3.1 Librería IntroCompFinR
Para la teoría de portfolio vamos a utilzar la librería IntroCompFinR (Intro to Computational Finance in R) creado por el profesor Eric Zivot.
- Debemos instalar primero las librerías que utiliza IntroCompFinR:
if(!require("pacman")) install.packages("pacman")
p_load("PerformanceAnalytics","quadprog","xts")
- Ya instaladas las dependencias, descargamos IntroCompFinR :
install.packages("IntroCompFinR", repos="http://R-Forge.R-project.org")
3.1.1 Funciones útiles de IntroCompFinR
| Funciones | Descripciones |
|---|---|
| getPortfolio | Crea un portafolio (objeto) |
| globalMin.portfolio | Computa el portafolio de mímina varianza |
| efficient.portfolio | Computa el portafolio de mímina varianza sujeto a un retorno |
| tangency.portfolio | Computa el portafolio tangente |
| efficient.frontier | Computa la frontera eficiente |
3.2 Cargando la librería y la base de datos
Una vez la instalada la librería, procedemos a cargarla en conjunto con aquellas que utilizaremos en esta ayudantía:
if(!require("pacman")) install.packages("pacman")
p_load("IntroCompFinR","readxl","tidyverse")
Como ya está cargado readxl cargamos el archivo stocks.xlsx, que ya posee los retornos10.
# acá están los retornos ya calculados, para replicarlos vean el apunte
stocks <- read_xlsx("datasets/stocks.xlsx")
Considerando tres activos riesgosos (Starbucks, Nordstrom y Microsoft), definimos un vector columna el que tendrá los retornos y los pesos:
El vector de retornos esperados es:
La matriz de varianza y covarianza de los retornos es:
Notar que la matriz de covarianza es simétrica ().
Para construir las matrices anteriores en R:
# Promedio
mean <- apply(stocks[2:4], 2 , function(x) mean(x))
# Desviación Estandar
sd <- apply(stocks[2:4], 2 , function(x) sd(x))
# Covarianza
cov <- cov(stocks[2:4])
si quieren replicarlo vean los videos↩