wbnicholson / BigVAR

Dimension Reduction Methods for Multivariate Time Series
56 stars 17 forks source link

generateIRF Sigma #11

Open alexsuarez94 opened 5 years ago

alexsuarez94 commented 5 years ago

Hi, first I'd like to say thanks for this package. I have found in the issue #5 the function you design for generateIRF. Nevertheless I have doubts about how to extract the required arguments of the function from a cv.BigVAR() object.

Any clarification regarding what is the meaning of the arguments and how to extract them one the model is fitted would be a great help!

generateIRF <- function(Phi,Sigma,n,k,p,Y0){}

Thanks you so much for developing such an amazing package!

wbnicholson commented 5 years ago

Here's an example usage:

library(expm)
library(BigVAR)

data(Y)

Model1Results=cv.BigVAR(constructModel(Y,p=4,gran=c(50,10),struct="Basic"))
                                        # Phi k x kp coefficient matrix
                                        # sigma kxk residual covariance matrix
                                        # n number of time steps to run IRF
                                        # p lag order
                                        # k number of series
                                       # Y0: k dimensional vector reflecting initialization of the IRF 
IRFS <- generateIRF(Phi=Model1Results@betaPred[,2:ncol(Model1Results@betaPred)],Sigma=cov(Model1Results@resids),n=10,3,p=4,Y0=c(0,.01,0))   
chryssaka commented 3 years ago

Hi,

Thanks for a very handy package!

I would like to ask if there is a way to extract standard errors (or even upper /low bounds) for the impulse responses from your function you design "generateIRF".

wbnicholson commented 3 years ago

Sorry for the delay. We could consider implementing error bands for impulse response functions using one of the methods defined here: http://pareto.uab.es/lgambetti/VAR_Forecasting.pdf I'll think about the best way to incorporate it into the function.