Hi, i am estimating a SVAR in Eviews and imposing a structural factorizaion for identification.
I would like to know how Eviews chooses initial conditions for the optimization. For instance, from the optimization control menu i see there is an option called "from residual correlation", does that mean that starting values are taken from the correlation matrix of the residuals of the reduced form model?
thank you!
SVAR Optimization control
Moderators: EViews Gareth, EViews Moderator
-
EViews Matt
- EViews Developer
- Posts: 583
- Joined: Thu Apr 25, 2013 7:48 pm
Re: SVAR Optimization control
Under the “from residual correlation” option the initial parameter values are .1, but the parameters undergo two stages of optimization. The second stage is the usual optimization (seeking A * Sigma * A’ = B * B’) that occurs regardless of initial value choice. However, in the first stage Sigma (the residual covariance matrix of the reduced form) is replaced by the residual correlation matrix of the reduced form. In effect, the first stage of optimization produces the initial parameter values for the second "normal" stage of optimization.
Re: SVAR Optimization control
Thank you very much for your reply. How about the I also noticed that my results change quite drastically if i unclick the flag whcih says "normalize sign" under the "Optimization Control" menu.
Can you please explain to me how the sign normalization is performed?
Thank you very much
Best
Sergio
Can you please explain to me how the sign normalization is performed?
Thank you very much
Best
Sergio
-
EViews Matt
- EViews Developer
- Posts: 583
- Joined: Thu Apr 25, 2013 7:48 pm
Re: SVAR Optimization control
Certainly. The goal of sign normalization is to make the diagonal of A^-1 * B positive without changing the product A^-1 * B * (A^-1 * B)'. This is accomplished by negating coefficients such that entire rows of A and/or entire columns of B are negated. For example, if the (2,2) element of A^-1 * B was negative, it could be made positive by negating the second column of B, which would require negating all the coefficients present in that column. The only changes you should see with/without sign normalization are sign changes in rows of A and/or columns of B. The magnitudes of the matrix elements should be unchanged. The sign normalization algorithm determines which rows/columns of A/B need to be negated and which coefficients must be negated to modify A/B thusly. It's not always possible to make the diagonal of A^-1 * B entirely positive, e.g., if no coefficients affect a negative diagonal element, but the algorithm makes as many diagonal elements positive as it can.
Last edited by EViews Matt on Fri Dec 02, 2016 12:29 pm, edited 1 time in total.
Re: SVAR Optimization control
Thank you very much. So the normalization is done after the optimization of the likelihood or is the optimization constrained?
How does the algorithm decide whether to change the row of A^-1 or rather the column of B? And why would in some cases need to change the sign to both? It would be great if you could walk me through it with one example (if possible).
Thanks!
How does the algorithm decide whether to change the row of A^-1 or rather the column of B? And why would in some cases need to change the sign to both? It would be great if you could walk me through it with one example (if possible).
Thanks!
-
EViews Matt
- EViews Developer
- Posts: 583
- Joined: Thu Apr 25, 2013 7:48 pm
Re: SVAR Optimization control
The normalization is performed after the optimization, which is nice because it doesn't burden the optimizer with additional constraints. I believe a simple example will illustrate the major points of the algorithm. Let's say we have an SVAR with three endogenous variables, we've specified restrictions on A and B via pattern matrices, and the optimizer has found the following solution. I'll keep the numbers simple, so this isn't necessarily a plausible econometric scenario (code formatting used so that columns line up nicely).
I've constructed the example so that all three diagonal elements of A^-1 * B are negative and thus the sign normalization algorithm will examine all of them. Basically, for each diagonal element (k,k) of A^-1 * B, the algorithm will determine if it can/should negate row k of A or column k of B. There's no need to negate both row k of A and column k of B because the effects would cancel out and the diagonal element (k,k) would be unchanged. One extra wrinkle is that we can only negate rows of A if B * B' = I, which is true in this example. If that weren't true, the algorithm would only consider negating of columns of B. I'll go through the diagonal elements of A^-1 * B in order.
The implementation of this algorithm currently has some quirks that can cause it to miss some normalization opportunities, but the above is the spirit of what the algorithm attempts to accomplish.
Code: Select all
Model: Ae = Bu where E[uu']=I
A =
C(1) 0 0
0 1 2
0 1 C(2)
B =
C(3) C(4) 0
0 C(5) C(6)
0 0 1
C(1) = -1
C(2) = 1
C(3) = 1
C(4) = 0
C(5) = 1
C(6) = 0
A =
-1 0 0
0 1 2
0 1 1
B =
1 0 0
0 1 0
0 0 1
A^-1 * B =
-1 0 0
0 -1 2
0 1 -1
- For (1,1), row 1 of A can be negated by negating C(1) and column 1 of B can be negated by negating C(3). With both options available, the algorithm chooses the matrix whose own diagonal element is negative. A(1,1) = -1 and B(1,1) = 1, so row 1 of A is chosen.
- For (2,2), row 2 of A cannot be negated because there are non-zero restrictions in that row, but column 2 of B can be negated by negating C(4) and C(5). As the only option, column 2 of B is chosen.
- For (3,3), neither row 3 of A nor column 3 of B can be negated due to the presence of non-zero restrictions, so nothing can be done to normalize (3,3).
Code: Select all
A =
1 0 0
0 1 2
0 1 1
B =
1 0 0
0 -1 0
0 0 1
A^-1 * B =
1 0 0
0 1 2
0 -1 -1
Last edited by EViews Matt on Fri Dec 02, 2016 3:01 pm, edited 1 time in total.
Re: SVAR Optimization control
This is extremely clear, thank you very much for your help!
Who is online
Users browsing this forum: No registered users and 0 guests
