Page 1 of 1
Long Run Restrictions Via Sign Restrictions
Posted: Wed Sep 05, 2012 5:12 pm
by macro_man
Here is a paper that effectively imposes something like a BQ long-run restriction by imposing sign restrictions such that the sign restriction on a shock is set close to 0 at a long-horizon. How would one modify the Uhlig example code to do this? Thanks in advance.
http://www.crei.cat/activities/crei_sem ... shioji.pdf
Re: Long Run Restrictions Via Sign Restrictions
Posted: Wed Sep 05, 2012 7:16 pm
by TomDoan
The following would replace the UhligAccept function to test for near-zeros at certain horizons.
Code: Select all
*
* UhligAcceptLR(q,steps,constrained) returns a 1 (accept) or 0 (reject)
* for the weight vector <<q>> (applied to the impulse responses in the
* global RECT[SERIES] impulses). <<steps>> is the list of responses
* constrained. <<constrained>> is a VECT[INTEGER] with the variable
* positions being constrained. To check for near-zeros for the first
* variable at steps 80, 100 and 120, use
*
* UhligAcceptLR(q,||80,100,120||,||1||)
*
function UhligAcceptLR q steps constrained
type integer UhligAcceptLR
type vector q
type vect[int] steps
type vect[int] constrained
*
local integer i k
local vector ik
local real value
dec rect[series] impulses
*
dofor k = steps
compute ik=%xt(impulses,k)*q
do i=1,%rows(constrained)
compute value=ik(constrained(i))
if value>.01.or.value<-.01 {
compute UhligAcceptLR=0
return
}
end do i
end do k
compute UhligAcceptLR=1
end