Matlabs commands for analyzing vector time series (e.g., vgxvarx, vgxproc) accept exogenous inputs. I understand the explanation that each of p inputs can have q paths with r observations, requiring (p)x(q)x(r) data. However, the vgx analysis commands accept one such block of data per time series, i.e., (p)x(q)x(r)x(n) data, where n is the number of time series.
Does anyone know the motivation for segregating the exogenous inputs into 1 set per time series? It seems to me that if you have a common set of exogenous inputs, you should be able to define the dependence of any time series on any input.
For context, I found that the modelling of exogenous inputs seem to be diverse.
In one example, the number of exogenous inputs is arbitrary, and the coupling between time series and inputs is many-to-many: http://faculty.washington.edu/ezivot/econ584/notes/varModels.pdf.
In another, the number of exogenous inputs is also arbitrary, and lags are incorporated into the model: http://cran.r-project.org/web/packages/MTS/MTS.pdf.
Wikipedia shows that for the nonvector model, lags of the exogenous inputs are mathematically represented: http://en.wikipedia.org/wiki/Autoregressive–moving-average_model. I'm aware from a previous post that you can represent lags of an input as additional inputs, so the absence of exogenous lags in the mathematical expression is not a show stopper.
This question seems to both Matlab-specific and concept-oriented, so in addition to comp.soft-sys-matlab, I've posted it to both Cross Validated and Stack Overflow: