Temporal disaggregation using the Litterman method
[y,res]=litterman(namey,arg1,...,argn)
* namey = a time series, a real (n x 1) vector or a string equal to the name of a time series or a (n x 1) real vector between quotes, representing the low frequency data that must be desaggregated
* argi = an argument which can be
- a time series
- a real (n x k) matrix
- a string matrix whose elements represent the names of a time series or a (nx1) real vector between quotes
- the string 'divfq=n' where n is the number of high frequency data points for each low frequency data points
- the string 'typemin=xxx' where xxx is the maximisation method (llike -default- or wls)
- the string 'ta=n' where n is the aggregation type:
n=-1 (default) ---> sum (flow)
n=0 ---> average (index)
n=i ---> i th element (stock) ---> interpolation
-the string 'delta=x' where x is the increment used for numerical derivation
- 'optfunc=optim' if the user wants to use the optim optimisation function (default: optimg)
- 'opt_nelmead=crit,nitermax' with crit the value of the convergence criterion in the Nelder-Meade optimisation function and nitermax the maximum number of iterations (default = 'opt_nelmead=2*%eps,1000')
- 'opt_optim=opts' where opts are options for optim that can be entered after the starting value of the parameters (default = 'opt_optim=,''ar'',1e6,1e6'')
- 'opt_convg=val' where val is the threshold on gradient norm (default = 'opt_convg=1e-5')
* y = High frequency estimate
* res = a results tlist with:
- res('meth') = 'Litterman'
- res('typemod') = type of the model for the high frequency innovations
- res('ta') = type of disaggregation
- res('nobs_lf') = nobs. of low frequency data
- res('nobs_hf') = nobs. of high-frequency data
- res('pred') = number of extrapolations
- res('s') = frequency conversion between low and high freq.
- res('p') = number of regressors (including intercept)
- res('y') = high frequency estimate
- res('y_lf') = low frequency data
- res('indicator') = high frequency indicators
- res('y_dt') = high frequency estimate: standard deviation
- res('y_up') = high frequency estimate: sd + sigma
- res('y_lo') = high frequency estimate: sd - sigma
- res('resid') = high frequency residuals
- res('resid_lf') = low frequency residuals
- res('beta') = estimated model parameters
- res('sd') = standard deviation of the estimated model parameters
- res('tstat') = estimated model parameters: t ratios
- res('rho') = innovational parameter
- res('aic') = Information criterion: AIC
- res('bic') = Information criterion: BIC
- res('llike') = Objective function used by the estimation method
- res('typemin') = method of estimation
- res('llike') = Log-likelihood at the estimated parameters
- res('sigma') = Variance at the estimated parameters
- res('namey') = Name of the low frequency data
- res('namex') = Name of the indicators
load(GROCERDIR+'\data\xesp.dat') [y,res] = litterman('Y','x','ta=-1','typemin=wls'); // Example taken from function litterman_d. Provides quarterly disaggregation // of (22 x 1) matrix Y (representing annual Spanih exportations) with (88 x 1) matrix x. // Annual series are built by summing quarterly series (ta=-1); the order of aggregation is determined by the function; // the minimisation applies to weighted least squares ('typemin=wls'). | ![]() | ![]() |