Timing convention in filter/smoother

I am already aware that the timing convention of Durbin&Koopman algebra used almost verbatim in Dynare is different from timing convention of a Dynare model. This makes reported oo_.SmoothedShocks moved back one period.

However, I am now confused about implications of this difference of the timing conventions for oo_.FilteredVariables and oo_.FilteredVariablesKStepAhead. From the code it is clear that oo_.FilteredVariablesKStepAhead is obtained after application of powers of T matrix from oo_.FilteredVariables. The powers start with 1, so oo_.FilteredVariables is not subset of oo_.FilteredVariablesKStepAhead. However, comment in DsgeDiffuseSmoother* suggests that a1 which goes to oo_.FilteredVariables is one step ahead forecast. If the definition of a1 (oo_.FilteredVariables) is understood in the timing convention of Durbin&Koopman, then in Dynare model convention it is the filtered state, i.e. state at t conditional on t. So my question is whether comment on a1 in DsgeDiffuseSmoother is in DurbinKoopman timing convention and at the same time the comment aK (becomes oo_.FilteredVariablesKStepAhead) should be understood in Dynare model timing convention. I am inclined to believe so.

So, can anybody confirm that in Dynare model timing convention, oo_.FilteredVariables are estimates of variables at time t conditional time t, and oo_.FilteredVariablesKStepAhead are estimates of variables at time t+k conditional time t?


Ondra K.