Estoy intentando utilizar el globalMin.portfolio
para calcular la cartera de varianza mínima global en RStudio. Mi código es el siguiente (nótese que se han incluido varias librerías que pueden no ser necesarias, ya que no tengo claro cuáles son necesarias para realizar las funciones):
#Libraries
library(corpcor)
library(tseries)
library(fPortfolio)
library(quadprog)
library(SharpeR)
library(PortfolioAnalytics)
library(zoo)
library(plotly)
library(portfolio.r)
library(portfolio_noshorts.r)
rk.free=0.005
rm( list=ls() )
portfolio <- read.csv2("File Directory/Document.csv")
T <- nrow(portfolio)
portfolio <- portfolio[ seq(T,1,-1) , ]
stock1_r<- diff(log(portfolio$stock1))*100
stock2_r <- diff(log(portfolio$stock2))*100
stock3_r<- diff(log(portfolio$stock3))*100
stock4_r <- diff(log(portfolio$stock4))*100
stock5_r <- diff(log(portfolio$stock5))*100
stock6_r<- diff(log(portfolio$stock6))*100
stock7_r<- diff(log(portfolio$stock7))*100
stock8_r<- diff(log(portfolio$t))*100
stock9_r<- diff(log(portfolio$stock9))*100
stock10_r<- diff(log(portfolio$stock10))*100
portfolio_r <- data.frame(stock1_r, stock2_r, stock3_r, stock4_r, stock5_r, stock6_r, stock7_r, stock8_r, stock9_r, stock10_r)
er1=c(mean(stock1_r), mean(stock2_r), mean(stock3_r), mean(stock4_r), mean(stock5_r), mean(stock6_r), mean(stock7_r), mean(stock8_r), mean(stock9_r), mean(stock10_r))
#Covariance Matrix
covmat1<-cov(portfolio_r)
#Shrinkage estimate of covariance
cov.shrink(portfolio_r)
#Transform covariance to correlation matrix
cov2cor(covmat1)
ew1=rep(1,10)/10
er1
covmat1
ew1
#Compute global minimum variance portfolio
gmin.port = globalMin.portfolio(er1, covmat1)
attributes(gmin.port)
print(gmin.port)
summary(gmin.port, rk.free=r.free)
plot(gmin.port, col="blue")
Sin embargo, cuando intento calcular la cartera de varianza mínima global, simplemente recibo el mensaje de error; "Error: could not find function "globalMin.portfolio"
. Esto ocurre aunque la rentabilidad esperada ( er1
) y la matriz de covarianza ( covmat1
) se calculan y la salida se muestra cuando se ejecuta el programa. Agradecería cualquier ayuda.
0 votos
Tengo el mismo problema, ¿cómo has conseguido que la función funcione? Gracias.
0 votos
Por favor, no elimine el contacto de las preguntas. Este sitio web es colaborativo, por lo que cualquier pregunta formulada aquí está destinada a permanecer disponible con su contenido completo.