*
* HISTORY.PRG
* Manual Example 10.5
*
*********************************************************************
*
*  Set Up Data
*
open data oecdsample.rat
calendar(q) 1981
data(format=rats) 1981:1 2006:4 can3mthpcp canexpgdpchs $
   canexpgdpds canm1s canusxsr usaexpgdpch
*
set logcangdp  = log(canexpgdpchs)
set logcandefl = log(canexpgdpds)
set logcanm1   = log(canm1s)
set logusagdp  = log(usaexpgdpch)
set logexrate  = log(canusxsr)
*
system(model=canmodel)
variables logcangdp logcandefl logcanm1 $
          logexrate can3mthpcp logusagdp
lags 1 to 4
det constant
end(system)
*
compute hstart=2003:1
compute hend  =2006:4
***********************************************************************
compute modelsize=%modelsize(canmodel)
dec vect[int] depvar(modelsize)
dec vect[labels] varlabels(modelsize)
ewise varlabels(i)=%modellabel(canmodel,i)
compute depvar=%modeldepvars(canmodel)
*
estimate(noprint,noftests,resids=resids)
history(model=canmodel,add,results=history,from=hstart,to=hend)

do j=1,6
   spgraph(hfields=2,vfields=3,window=varlabels(j),$
     header="Historical Decomposition of "+varlabels(j))
   do i=1,6
      graph(header="Effect of "+varlabels(i)) 3
      # depvar(j) hstart-4 hend
      # history(1,j)
      # history(1+i,j)
   end do j
   spgraph(done)
end do i


