I am estimating an asymmetric ECM between domestic and farm-gate prices of a commodity.I am not using a vector model here. The preliminary tests of unit root and co-integration suggest that both series are I(1) and co-integrated. According to theory and market structure, domestic prices are exogenous. Price flows from domestic to farm-gate and not the other way around. Assuming domestic prices are weakly exogenous, I ran the ECM (not vector) by segmenting the variables into positive and negative in STATA and got the following result:
Δfgpt = –84.206 – 0.312 ECT+t-1 – 0.857 ECT–t-1 + 0.362 Δdom+t + 0.426 Δdom–t – 0.107 Δdom+t-1 – 0.026 Δdom–t-1 + 0.065 Δfgp+t-1 + 0.179 Δfgp–t-1 +128.984 D
where fgpt is the farm gate price and D is a seasonal dummy. Co-efficient of ECT- is greater than ECT+ which suggests that decreases in domestic prices are transmitted faster to farm gate than increases in the long-run. These results are consistent with theory and practice. I have two questions:
1) Weak exogenity: How do I run a weak-exogeneity test for each price series "fgp" and "dom". I used a likelihood ratio test in STATA which suggests that "dom" prices are endogenous, which is against theory. I want to double check this in RATS. I dont have CATS by the way.
2) Impulse response: My question is how does "fgp" respond to positive and negative shocks in "dom". According to my Asymmetric ECM results, I expect that impulse responses to be asymmetric, that is positive shocks would be more persistent than negative shocks. I did not know how to estimate impulse responses on a non-VAR environment, so I tried the following code, assuming a VAR model but its not doing the trick.
Here the variables domd1minus = negative changes in dom prices and domd1plus = positive changes in dom prices and dfgp = differences of farm gate price
Code: Select all
SYSTEM(MODEL=example1)
VAR DOMD1PLUS DOMD1MINUS DFGP
LAGS 1
DET Constant
END(SYSTEM)
ESTIMATE(OUTSIGMA=S,RESIDUALS=RESIDS)
NONLIN g31 g32
DEC FRML[RECT] G_FORM
FRML G_FORM = || 1. , 0. , 0. | 0. , 1. , 0. | g31, g32, 1. ||
COM g31=g32=0.0
CVMODEL(b=g_form, method=bfgs,pmethod=genetic, factor=G) %sigma
COMPUTE FLIPPER =||1.0,-1.0,1.0||
COMPUTE F=S*%diag(FLIPPER)
declare rectangular[series] impulses(3,3)
IMPULSE(MODEL=example1, result=impulses, decomp=F) * 7 *
set r1 1 12 = impulses(3,1)/impulses(3,3)(1)
set r2 1 12 = impulses(3,2)/ impulses(3,3)(1)
com implabels = || 'Positive Shock','Negative Shock'||
GRAPH(HEADER='Response of Farm gate prices to a one-unit shock in Domestic prices ',KEY=upright,patterns, $
number=1, klabels=implabels,) 2
# r1 ; # r2
Any help and guidance would be greatly appreciated.
Thanks