You do, however, still have the problem that your system isn't really identified since it has a solution where C(1)=C(2)=...=C(6)=0 yields residuals of 0.
Does anyone have any ideas on how I could avoid this problem? I'm trying to use a system to replicate the arbitrary (Cholesky-style) identification example in the SVAR section of the manual:
@e1 = C(1)*@u1
@e2 = C(2)*@e1 + C(3)*@u2
@e3 = C(4)*@e1 + C(5)*@e2 + C(6)*@u3
So in the form Ae_t = Bu_t, B is a diagonal matrix and A is lower triangular with the diagonal elements each restricted to 1.
Now in the form u_t = A0*e_t, this simply means a lower triangular A0 matrix.
So the system (structural form) to estimate (in matrices) is (for a VAR(1)):
A0*x_t = A0*k + A0*C1*x_t-1 + epsilon_t
where k is the vector of constants and C1 is the estimated matrix from the reduced form:
x_t = k + C1*x_t-1 + e_t
Thus I make the system to be (var01 is the reduced form VAR(1) with a constant):
C(1)*X = C(1)*var01.c(1,4) + C(1)*(var01.c(1,1)*X(-1) + var01.c(1,2)*INFL(-1) + var01.c(1,3)*I_P(-1))
C(3)*INFL + C(2)*X = C(2)*var01.c(1,4) + C(3)*var01.c(2,4) + (C(2)*var01.c(1,1) + C(3)*var01.c(2,1))*X(-1) + (C(2)*var01.c(1,2) + C(3)*var01.c(2,2))*INFL(-1) + (C(2)*var01.c(1,3) + C(3)*var01.c(2,3))*I_P(-1)
C(6)*I_P + C(4)*X + C(5)*INFL = C(4)*var01.c(1,4) + C(5)*var01.c(2,4) + C(6)*var01.c(3,4) + (C(4)*var01.c(1,1) + C(5)*var01.c(2,1) + C(6)*var01.c(3,1))*X(-1) + (C(4)*var01.c(1,2) + C(5)*var01.c(2,2) + C(6)*var01.c(3,2))*INFL(-1) + (C(4)*var01.c(1,3) + C(5)*var01.c(2,3) + C(6)*var01.c(3,3))*I_P(-1)
But obviously this has the problem mentioned that there is a solution where all the coefficients are zero.
I want to be able to replicate the SVAR manually using the system object so I can make sure I'm generating the IRFs (impulse response functions) correctly when I do this for the SVAR that can't be done using the 'Estimate Structural Factorization' procedure. It feels like I'm missing something obvious here but I've been struggling with this all day and still can't see it.