
نرمافزارهاي
كامپيوتري و نتايج پردازش اطلاعات
برنامههاي
كامپيوتري
كلية محاسبات اقتصادسنجي در اين الگو، توسط نرم افزار Econometoic Views ويرايش 1/4 انجام شده كه در
محيط Windows قابل
نصب است. براي سهولت در انجام برخي فرآيندهاي محاسباتي، برنامههايي نوشته شده كه
اين برنامهها ميتوانند در سرعت و دقت، كاربر را ياري نمايند. با توجه به اينكه، اين
گونه برنامهها براي محققين بعدي ميتواند بسيار مفيد واقع شود؛ لذا اقدام به درج آنها
نمودهايم. با توجه به اينكه، نرم افزار فوق از ويرايشهاي توسعه يافتة
برنامة
وظيفة اين برنامه، توليد برخي متغيرهاي مورد استفاده براي الگو
با انجام عمليات رياضي بر ساير متغيرها ميباشد.
برنامة EVAL200.PRG:
اين برنامه، براي ارزيابي شبيهسازي
دوران نمونه نوشته شده است. وظيفة اين برنامه، توليد و محاسبه آمارههاي مختلف به
منظور شبيهسازي ميباشد. كلية ارزيابيها را ميتوان در حالات: پويا، ايستا، برازش
داده شده (شبيهسازي ايستا، بدون اثر متقابل معادلات بر يكديگر) توسط اين برنامه، محاسبه
نمود.
برنامة EVAL200FORCASTABILITY.PRG:
اين برنامه، براي ارزيابي شبيهسازي دوران نمونه نوشته شده است.
وظيفة اين برنامه، توليد و محاسبة آمارههاي مختلف براي شبيهسازي پويا طي دورههاي
زماني دلخواه ميباشد. كليه ارزيابيها را ميتوان در حالات: پويا، ايستا، برازش
داده شده (شبيهسازي ايستا بدون اثر متقابل معادلات بر يكديگر) توسط اين برنامه،
محاسبه نمود. اين برنامه ميتواند قدرت پيشبيني الگو را براي دورههاي مختلف در
درون نمونه ارزيابي نمايد.
برنامة SHOCK200.PRG:
اين برنامه، وظيفة تحليل شوكهاي سياستي بر متغيرهاي برونزا را
دارد. با تعريف شوكهاي سياستي منفرد، اين برنامه مقادير شبيهسازي جديدي را محاسبه
نموده و آنها را با جواب كنترل مقايسه ميكند.
'This program generates all necessary variables
SMPL
1959 2005
'Conversion of ton to barrel for records; not
for calculations
'IRXOILB=IRXOIL*7.3*0.001
'IRYOILB=IRYOIL*7.3*0.001
GENR IRWPOIL=IRXOILD/IRXOILB
GENR IRDISV=IRIIV+IRGDPEOV
GENR IRDIS=IRII+IRGDPEO
GENR IRSBD=IRXSD-IRMSD
GENR IRFYSBD=IRXFYSD-IRMFYSD
GENR IRNFSBD=IRXNFSD-IRMNFSD
GENR IRPGDIM=IRGDIMV/IRGDIM
GENR IRPC=IRCV/IRC
GENR IRPG=IRGV/IRG
GENR IRPGDPM=IRGDPMV/IRGDPM
GENR IRPGDPF=IRGDPFV/IRGDPF
GENR IRPGDIM=IRGDIMV/IRGDIM
GENR IRPGNIM=IRGNIMV/IRGNIM
GENR IRPGDPNF=IRGDPNFV/IRGDPNF
GENR IRPGNPM=IRGNPMV/IRGNPM
GENR IRPI=IRIV/IRI
'''''''''GENR IRPINOIL=IRINOILV/IRINOIL
''''''''GENR IRPIOIL=IRIOILV/IRIOIL
GENR IRPA=IRADV/IRAS
GENR IRPM=IRMV/IRM
GENR IRPVAOIL=IRVAOILV/IRVAOIL
GENR IRPX=IRXV/IRX
GENR IRPDIS=IRDISV/IRDIS
GENR IRPGDPEO=IRGDPEOV/IRGDPEO
GENR IRPII=IRIIV/IRII
GENR IRPNIT=IRNITV/IRNIT
GENR IRPIT=IRITV/IRIT
GENR IRPSUB=IRSUBV/IRSUB
GENR IRPNNIF=IRNNIFV/IRNNIF
GENR IRPIP=IRIPV/IRIP
GENR IRPIG=IRIGV/IRIG
GENR IRPCCA=IRCCAV/IRCCA
GENR IRPNFY=IRNFYV/IRNFY
GENR IRPBOT=IRBOTV/IRBOT
GENR IRPXFY=IRXFYV/IRXFY
GENR IRPMFY=IRMFYV/IRMFY
GENR IRPGNS=IRGNSV/IRGNS
GENR IRPNNS=IRNNSV/IRNNS
GENR IRPINPUT=IRINPUTV/IRINPUT
GENR IROUTPUT=IRINPUT+IRGDPF
GENR IRPOUTPUT=IROUTPUTV/IROUTPUT
GENR IRPMG
= IRMGV / IRMG
GENR IRPMNFS
= IRMNFSV / IRMNFS
GENR IRPXOIL
= IRXOILV / IRXOIL
GENR IRPXNOILG
= IRXNOILGV / IRXNOILG
GENR IRPXNFS
= IRXNFSV / IRXNFS
GENR IRWINDCPI=IRWIND/IRCPI
GENR IRWINDPGDPM=IRWIND/IRPGDPM
GENR IRWINDPGDPNF=IRWIND/IRPGDPNF
GENR IRWINDWPID=IRWIND/IRWPID
GENR IRUNEMPR=IRUNEMP/IRPOPA*100
GENR IRINFCPI=D(IRCPI)/IRCPI(-1)
GENR IRINFWPI=D(IRWPI)/IRWPI(-1)
GENR
IRXGNODFCPI=IRXGNOD/FCPI
GENR
IRXGNODOP=IRXGNOD/OECDP
GENR
IRXNFSDOP=IRXNFSD/OECDP
GENR IRMSDFPX=IRMSD/FPX
GENR IRXSDFCPI=IRXSD/FCPI
GENR IRMGDFPX=IRMGD/FPX
GENR IRMNFSDCIFP=IRMNFSD/IRCIFP
GENR IRMGDCIFP=IRMGD/IRCIFP
GENR IRMGCDCIFP=IRMGCD/IRCIFP
GENR
IRGMTR=(IRGMTV*1000)/(IRMGD*(1-(CIFFOBF-1)*IRD8187)*CIFFOBF)
GENR CIFFOBA8187=(CIFFOBF-1)*IRD8187*IRMGD
GENR CIFFOBAC8187=(CIFFOBF-1)*IRD8187*IRMGCD
GENR IRYD = IRGDPNF+IRNFY-IRCCA-IRGRTDV/IRPIT
GENR IRYDV = IRGDPNFV+IRNFYV -IRCCAV-IRGRTDV
GENR IRPYD = IRYDV/IRYD
GENR IRSPV=IRYDV-IRCV
GENR IRSP=IRYD-IRC
GENR IRPSP=IRSPV/IRSP
GENR IRPGDEM=IRGDEMV/IRGDEM
GENR
IRM2NFAD=1000*IRM2NFAV*( (1-IRD93-IRD90-IRD91-IRD92)/IREO +IRD93/1748
+IRD90/221.89 +IRD91/351.9+IRD92/641.2 )
GENR IRM2PGDPM=IRM2V/IRPGDPM
GENR IRM2CPI=IRM2V/IRCPI
GENR IRDDVPGDPM=IRDDV/IRPGDPM
GENR IRSDVPGDPM=IRSDV/IRPGDPM
GENR IRCUVPGDPM=IRCUV/IRPGDPM
GENR IRM2NPVPGDPM=IRM2NPV/IRPGDPM
GENR IRM2NGGV= IRGBDVC +IRFEOAV +IROLVC
GENR IRM2NGSV= IRM2NGV - IRM2NGGV
GENR IRM2NGSVPGDPM= IRM2NGSV/IRPGDPM
GENR IRWARCD=IRWARCDV/IRPCCA
GENR IRWARED=IRWAREDV/IRPCCA
GENR IRWARMD=IRWARMDV/IRWPI
GENR IRWARD=IRWARCD+IRWARED+IRWARMD
SMPL 1959 1959
GENR IRK=IRI-IRCCA
GENR IRKV=IRIV-IRCCAV
''''''''''GENR IRKOIL=IRIOIL
'''''''''''GENR IRKNOIL=IRINOIL- IRCCA
GENR IRIIVC=IRIIV
GENR IRIIC=IRII
SMPL 1960 2005
GENR IRK=IRK(-1)+IRI-IRCCA
GENR
IRKV=IRKV(-1)*(1+(IRPI-IRPI(-1))/IRPI(-1))+IRIV-IRCCAV
''''''''GENR IRKOIL=IRKOIL(-1) + IRIOIL
''''''''GENR IRKNOIL=IRKNOIL(-1) + IRINOIL - IRCCA
'''''''GENR
IRIIVC=IRIIVC(-1)*(1+(IRPK-IRPK(-1))/IRPK(-1))+IRIIV
'''''''GENR IRIIC=IRIIC(-1)+IRII
SMPL 1959 2005
GENR IRPK=IRKV/IRK
SMPL 1959 1959
GENR IRBOPDC=IRBOPD
GENR IRBOPEODC=IRBOPEOD
GENR IRKADC=IRKAD
GENR IRCADC=IRCAD
GENR IRTBDC=IRTBD
GENR IRSBDC=IRSBD
GENR IRNTRDC=IRNTRD
GENR IRFYSBDC=IRFYSBD
GENR IRNFSBDC=IRNFSBD
GENR CIFFOBA8187C=CIFFOBA8187
GENR IRGBDVC= - IRGBDV
GENR IROLVC= IROLV
GENR IROLPVC= IROLPV
GENR IROLGVC= IROLGV
GENR IRGEFIVC=IRGEFIV
GENR IRGEFIDC=IRGEFIV/IREO*1000
SMPL 1960 2005
GENR IRBOPDC=IRBOPDC(-1) + IRBOPD
GENR IRBOPEODC=IRBOPEODC(-1)+IRBOPEOD
GENR IRKADC=IRKADC(-1)+IRKAD
GENR IRCADC=IRCADC(-1)+IRCAD
GENR IRTBDC=IRTBDC(-1)+IRTBD
GENR IRSBDC=IRSBDC(-1)+IRSBD
GENR IRNTRDC=IRNTRDC(-1)+IRNTRD
GENR IRFYSBDC=IRFYSBDC(-1)+IRFYSBD
GENR IRNFSBDC=IRNFSBDC(-1)+IRNFSBD
GENR CIFFOBA8187C=CIFFOBA8187C(-1)+CIFFOBA8187
GENR IRGBDVC=IRGBDVC(-1) - IRGBDV
GENR IROLVC=IROLVC(-1)+IROLV
GENR IROLPVC=IROLPVC(-1)+IROLPV
GENR IROLGVC=IROLGVC(-1)+IROLGV
GENR IRGEFIVC=IRGEFIVC(-1)+IRGEFIV
GENR IRGEFIDC=IRGEFIDC(-1)+IRGEFIV/IREO*1000
SMPL 1959 2005
GENR IRPOPAPOP=IRPOPA/IRPOP
SMPL 1959 1959
GENR IRINFCPI=(4.37-3.87)/3.87
GENR IRINFWPI=(4.8-4.6)/4.6
SMPL 1959 2005
'This program evaluates the ex-post simulation
of the MODEL_200 by generating various simulation statistics. The evaluations may be applied to dynamic,
static and fitted (static simulation with no-interaction) simulations.
'Note: In model-solve tab tick baseline
scenario as active scenario
'Initialization:
!START=1959
!END=2001
!LAGSTRUCTURE=1
%MODNAME="Ver5_MODEL_200"
%SYSNAME="SYS_200"
!NVAR=200
!NROWS=!NVAR+2
%SIMULATIONID="_0"
!NSTAT=23
!NCOLS=!NSTAT+3
!MAXIT=50000
!PRECISION=1E-07
!MED=0
!VARIANCE=0
!NOBS= !END-!START+1
SUBROUTINE LOCAL MEDIAN(SERIES DUMMY ,SCALAR
!MED, SCALAR !NOBS)
!NOBS1= !NOBS-1
FOR !I=1 TO !NOBS1
!M=!I+1
FOR !J=!M TO !NOBS
IF DUMMY(!I) > DUMMY(!J) THEN !D=DUMMY(!I)
DUMMY(!I)=DUMMY(!J)
DUMMY(!J)=!D
ELSE
ENDIF
NEXT !I
NEXT !J
!M=0
FOR !N=0 TO !NOBS
!M=!M+2
IF
!M>=!NOBS THEN EXITLOOP
ENDIF
NEXT !N
IF !M=!NOBS THEN !K= !NOBS/2
!MED=(DUMMY(!K)+DUMMY(!K+1))/2
ELSE
!K= !NOBS1/2
!MED=DUMMY(!K+1)
ENDIF
ENDSUB
SMPL !START !END
TABLE(!NROWS,!NCOLS) SIMSTAT
SETCOLWIDTH(SIMSTAT,1,5)
SETCOLWIDTH(SIMSTAT,2,16)
SETCOLWIDTH(SIMSTAT,3,16)
SETCOLWIDTH(SIMSTAT,4,14)
SETCOLWIDTH(SIMSTAT,5,14)
FOR !J=6 TO !NCOLS
SETCOLWIDTH(SIMSTAT,!J,16)
NEXT !J
FOR !J=1 TO !NCOLS
SETCELL(SIMSTAT,1,!J,0,"C")
NEXT !J
SETLINE(SIMSTAT,2)
FOR !I=3 TO !NROWS
%NUMBER=@STR(!I-2)+" "
SETCELL(SIMSTAT,!I,1,%NUMBER,"R",4.0)
SETCELL(SIMSTAT,!I,2,0,"L")
SETCELL(SIMSTAT,!I,3,0,"L")
SETCELL(SIMSTAT,!I,4,0,"R",14.0)
SETCELL(SIMSTAT,!I,5,0,"R",14.0)
FOR !J= 6 TO !NCOLS
SETCELL(SIMSTAT,!I,!J,0,"R",16.5)
NEXT !J
NEXT !I
SHOW SIMSTAT
GROUP TEMPGROUP
DELETE TEMPGROUP
SOLVE(M=!MAXIT,C=!PRECISION) %MODNAME
{%MODNAME}.MAKEGROUP(A,N) TEMPGROUP @ENDOG
TABLE
TEMPTAB
DELETE TEMPTAB
FREEZE(TEMPTAB) TEMPGROUP
FOR
!I=1 TO !NVAR
SIMSTAT(!I+2,3)=TEMPTAB(1,!I+1)+"_0"
SIMSTAT(!I+2,2)=TEMPTAB(1,!I+1)
NEXT !I
SIMSTAT(1,1)="No."
SIMSTAT(1,2)="Actual"
SIMSTAT(1,3)="Simulated"
SIMSTAT(1,4)="Observations"
SIMSTAT(1,5)="Non_zero obs"
SIMSTAT(1,6)="Mean actual"
SIMSTAT(1,7)="Mean simulated"
SIMSTAT(1,8)="Mean error"
SIMSTAT(1,9)="VAR(error)"
SIMSTAT(1,10)="SDV(error)"
SIMSTAT(1,11)="Median(error)"
SIMSTAT(1,12)="Max(error)"
SIMSTAT(1,13)="Min(error)"
SIMSTAT(1,14)="Skewness(error)"
SIMSTAT(1,15)="Kurtosis(error)"
SIMSTAT(1,16)="RMS Error"
SIMSTAT(1,17)="M percent error"
SIMSTAT(1,18)="RMS percent error"
SIMSTAT(1,19)="M absolute error"
SIMSTAT(1,20)="MA percent error"
SIMSTAT(1,21)="Corr(act,sim)"
SIMSTAT(1,22)="Cov(act,sim)"
SIMSTAT(1,23)="Theil U-Stat."
SIMSTAT(1,24)="Theil U-Bias"
SIMSTAT(1,25)="Theil U-Var"
SIMSTAT(1,26)="Theil U-Cov"
FOR !I=3 TO !NROWS
SMPL !START !END
%ACTUAL=SIMSTAT(!I,2)
%SIMULATED=SIMSTAT(!I,3)
%ERROR="E_"+%ACTUAL
%PERROR="P_"+%ACTUAL
%APERROR="A_"+%ACTUAL
SERIES %ACTUAL
SERIES %SIMULATED
SERIES %ERROR
GENR {%ERROR}={%SIMULATED}-{%ACTUAL}
SIMSTAT(!I,4)=@OBS({%ACTUAL})
!AUX0=@OBS({%ACTUAL})
SMPL !START !END IF
({%ACTUAL})<>0
SIMSTAT(!I,5)=@OBS({%ACTUAL})
SMPL !START !END IF
({%ACTUAL})>0
!AUX1=@OBS({%ACTUAL})
IF
!AUX1=!AUX0 THEN
GENR {%PERROR}={%ERROR} /{%ACTUAL}
GENR {%APERROR}=ABS({%ERROR} /{%ACTUAL})
ELSE
GENR {%PERROR}=NA
GENR {%APERROR}=NA
ENDIF
SMPL !START !END
GENR TEMP1=({%ERROR}-@MEAN({%ERROR}))^3
GENR TEMP2=({%ERROR}-@MEAN({%ERROR}))^4
SIMSTAT(!I,6)=@MEAN({%ACTUAL})
SIMSTAT(!I,7)=@MEAN({%SIMULATED})
SIMSTAT(!I,8)=@MEAN({%ERROR})
!VARIANCE=@VAR({%ERROR})*@OBS({%ERROR})/(@OBS({%ERROR})-1)
SIMSTAT(!I,9)=!VARIANCE
SIMSTAT(!I,10)=SQR(!VARIANCE)
CALL MEDIAN({%ERROR}, !MED, !NOBS)
SIMSTAT(!I,11)=!MED
GENR {%ERROR}={%SIMULATED}-{%ACTUAL}
SIMSTAT(!I,12)=@MAX({%ERROR})
SIMSTAT(!I,13)=@MIN({%ERROR})
IF
!VARIANCE<>0 THEN
SIMSTAT(!I,14)=
@MEAN(TEMP1)/(!VARIANCE^1.5)*@OBS({%ERROR})/(@OBS({%ERROR})-1)
SIMSTAT(!I,15)=@MEAN(TEMP2)/(!VARIANCE^2)*@OBS({%ERROR})/(@OBS({%ERROR})-1)
ELSE
ENDIF
SIMSTAT(!I,16)=SQR( @SUMSQ({%ERROR})/@OBS({%ERROR}))
SMPL !START !END IF ({%ACTUAL})<>0
IF
!AUX1=!AUX0 THEN
SIMSTAT(!I,17)=@MEAN({%PERROR})
SIMSTAT(!I,18)=SQR(@SUMSQ({%PERROR})/@OBS({%PERROR}))
ELSE
SIMSTAT(!I,17)="NA"
SIMSTAT(!I,18)="NA"
ENDIF
SMPL !START !END
SIMSTAT(!I,19)=@SUM(ABS({%ERROR}))/@OBS({%ERROR})
SMPL !START !END IF ({%ACTUAL})<>0
IF
!AUX1=!AUX0 THEN
SIMSTAT(!I,20)=@SUM(ABS({%APERROR}))/@OBS({%ERROR})
ELSE
SIMSTAT(!I,20)="NA"
ENDIF
SMPL !START !END
SIMSTAT(!I,21)=@COR({%ACTUAL},{%SIMULATED})
SIMSTAT(!I,22)=@COV({%ACTUAL},{%SIMULATED})
SIMSTAT(!I,23)=SQR( @SUMSQ({%ERROR})/@OBS({%ERROR})) /
(SQR(@SUMSQ({%SIMULATED})/@OBS({%ERROR}))+
SQR(@SUMSQ({%ACTUAL})/@OBS({%ERROR})) )
IF
!VARIANCE>0.00001 THEN
SIMSTAT(!I,24)=((@MEAN({%SIMULATED})-@MEAN({%ACTUAL}))^2)/(@SUMSQ({%ERROR})/@OBS(
{%ERROR}))
SIMSTAT(!I,25)=((SQR(@VAR({%SIMULATED}))-SQR(@VAR({%ACTUAL})))^2)/(
@SUMSQ({%ERROR})/@OBS({%ERROR}) )
SIMSTAT(!I,26)= ( 2*(1-@COR({%SIMULATED},{%ACTUAL}))*(
SQR(@VAR({%SIMULATED}))*SQR(@VAR({%ACTUAL}))))/(
@SUMSQ({%ERROR})/@OBS({%ERROR}) )
ELSE
SIMSTAT(!I,24)=0
SIMSTAT(!I,25)=0
SIMSTAT(!I,26)=1
ENDIF
'
DELETE {%SIMULATED}
DELETE {%ERROR}
DELETE {%PERROR}
DELETE {%APERROR}
NEXT !I
SETLINE (SIMSTAT,!NROWS+1)
SHOW SIMSTAT
DELETE TEMP1 TEMP2
DELETE TEMPTAB
'PROGRAM
EVAL200FORCASTABILITY.PRG
'This program evaluates the ex-post simulation
of the MODEL_200 by generating various simulation statistics. The evaluations is applied to dynamic short
term simulations with different time periods.
'Initialization:
!START=1959
!END=2001
!LAGSTRUCTURE=1
%MODNAME="Ver5_MODEL_200"
%SYSNAME="SYS_200"
!NVAR=200
!NROWS=!NVAR+2
%SIMULATIONID="_0"
!NSTAT=23
!NCOLS=!NSTAT+3
!MAXIT=50000
!PRECISION=1E-07
!MED=0
!VARIANCE=0
!NOBS= !END-!START+1
!PERIOD=1
SUBROUTINE LOCAL MEDIAN(SERIES DUMMY ,SCALAR
!MED, SCALAR !NOBS)
!NOBS1= !NOBS-1
FOR !I=1 TO !NOBS1
!M=!I+1
FOR !J=!M TO !NOBS
IF DUMMY(!I) > DUMMY(!J) THEN !D=DUMMY(!I)
DUMMY(!I)=DUMMY(!J)
DUMMY(!J)=!D
ELSE
ENDIF
NEXT !I
NEXT !J
!M=0
FOR !N=0 TO !NOBS
!M=!M+2
IF
!M>=!NOBS THEN EXITLOOP
ENDIF
NEXT !N
IF !M=!NOBS THEN !K= !NOBS/2
!MED=(DUMMY(!K)+DUMMY(!K+1))/2
ELSE
!K= !NOBS1/2
!MED=DUMMY(!K+1)
ENDIF
ENDSUB
SMPL
!START !END
TABLE(!NROWS,!NCOLS) SIMSTAT
SETCOLWIDTH(SIMSTAT,1,5)
SETCOLWIDTH(SIMSTAT,2,16)
SETCOLWIDTH(SIMSTAT,3,16)
SETCOLWIDTH(SIMSTAT,4,14)
SETCOLWIDTH(SIMSTAT,5,14)
FOR !J=6 TO !NCOLS
SETCOLWIDTH(SIMSTAT,!J,16)
NEXT !J
FOR !J=1 TO !NCOLS
SETCELL(SIMSTAT,1,!J,0,"C")
NEXT !J
SETLINE(SIMSTAT,2)
FOR !I=3 TO !NROWS
%NUMBER=@STR(!I-2)+" "
SETCELL(SIMSTAT,!I,1,%NUMBER,"R",4.0)
SETCELL(SIMSTAT,!I,2,0,"L")
SETCELL(SIMSTAT,!I,3,0,"L")
SETCELL(SIMSTAT,!I,4,0,"R",14.0)
SETCELL(SIMSTAT,!I,5,0,"R",14.0)
FOR !J= 6 TO !NCOLS
SETCELL(SIMSTAT,!I,!J,0,"R",16.5)
NEXT !J
NEXT !I
SHOW SIMSTAT
GROUP TEMPGROUP
DELETE TEMPGROUP
SOLVE(M=!MAXIT,C=!PRECISION) %MODNAME
{%MODNAME}.MAKEGROUP(A,N) TEMPGROUP @ENDOG
TABLE TEMPTAB
DELETE TEMPTAB
FREEZE(TEMPTAB) TEMPGROUP
FOR
!I=1 TO !NVAR
SIMSTAT(!I+2,3)=TEMPTAB(1,!I+1)+"_0"
SIMSTAT(!I+2,2)=TEMPTAB(1,!I+1)
NEXT !I
%SIMTAG="_"+@STR(!PERIOD)
!IDLEPERIOD=0
FOR !N=!END TO !START+!LAGSTRUCTURE STEP
-!PERIOD
IF !N-!PERIOD<!START+!LAGSTRUCTURE-1 THEN EXITLOOP
ELSE
!IDLEPERIOD=!N-!PERIOD+1
ENDIF
SMPL
!N-!PERIOD+1 !N
SOLVE(M=!MAXIT,C=!PRECISION) %MODNAME
FOR !I=3 TO !NROWS
%PERIODSIMULATED=SIMSTAT(!I,2)+%SIMTAG
%SIMULATED=SIMSTAT(!I,3)
SERIES %PERIODSIMULATED
SERIES %SIMULATED
GENR {%PERIODSIMULATED}={%SIMULATED}
NEXT !I
NEXT !N
!START=!IDLEPERIOD
!END= !END
SMPL !START !END
SIMSTAT(1,1)="No."
SIMSTAT(1,2)="Actual"
SIMSTAT(1,3)="Simulated"
SIMSTAT(1,4)="Observations"
SIMSTAT(1,5)="Non_zero obs"
SIMSTAT(1,6)="Mean actual"
SIMSTAT(1,7)="Mean simulated"
SIMSTAT(1,8)="Mean error"
SIMSTAT(1,9)="VAR(error)"
SIMSTAT(1,10)="SDV(error)"
SIMSTAT(1,11)="Median(error)"
SIMSTAT(1,12)="Max(error)"
SIMSTAT(1,13)="Min(error)"
SIMSTAT(1,14)="Skewness(error)"
SIMSTAT(1,15)="Kurtosis(error)"
SIMSTAT(1,16)="RMS Error"
SIMSTAT(1,17)="M percent error"
SIMSTAT(1,18)="RMS percent error"
SIMSTAT(1,19)="M absolute error"
SIMSTAT(1,20)="MA percent error"
SIMSTAT(1,21)="Corr(act,sim)"
SIMSTAT(1,22)="Cov(act,sim)"
SIMSTAT(1,23)="Theil U-Stat."
SIMSTAT(1,24)="Theil U-Bias"
SIMSTAT(1,25)="Theil U-Var"
SIMSTAT(1,26)="Theil U-Cov"
FOR !I=3 TO !NROWS
SMPL !START !END
%ACTUAL=SIMSTAT(!I,2)
%SIMULATED=SIMSTAT(!I,2)+%SIMTAG
SIMSTAT(!I,3)=%SIMULATED
%ERROR="E_"+%ACTUAL
%PERROR="P_"+%ACTUAL
%APERROR="A_"+%ACTUAL
SERIES %ACTUAL
SERIES %SIMULATED
SERIES %ERROR
GENR {%ERROR}={%SIMULATED}-{%ACTUAL}
SIMSTAT(!I,4)=@OBS({%ACTUAL})
!AUX0=@OBS({%ACTUAL})
SMPL !START !END IF
({%ACTUAL})<>0
SIMSTAT(!I,5)=@OBS({%ACTUAL})
SMPL !START !END IF
({%ACTUAL})>0
!AUX1=@OBS({%ACTUAL})
IF
!AUX1=!AUX0 THEN
GENR {%PERROR}={%ERROR} /{%ACTUAL}
GENR {%APERROR}=ABS({%ERROR} /{%ACTUAL})
ELSE
GENR {%PERROR}=NA
GENR {%APERROR}=NA
ENDIF
SMPL !START !END
GENR TEMP1=({%ERROR}-@MEAN({%ERROR}))^3
GENR TEMP2=({%ERROR}-@MEAN({%ERROR}))^4
SIMSTAT(!I,6)=@MEAN({%ACTUAL})
SIMSTAT(!I,7)=@MEAN({%SIMULATED})
SIMSTAT(!I,8)=@MEAN({%ERROR})
!VARIANCE=@VAR({%ERROR})*@OBS({%ERROR})/(@OBS({%ERROR})-1)
SIMSTAT(!I,9)=!VARIANCE
SIMSTAT(!I,10)=SQR(!VARIANCE)
CALL MEDIAN({%ERROR}, !MED, !NOBS)
SIMSTAT(!I,11)=!MED
GENR {%ERROR}={%SIMULATED}-{%ACTUAL}
SIMSTAT(!I,12)=@MAX({%ERROR})
SIMSTAT(!I,13)=@MIN({%ERROR})
IF
!VARIANCE<>0 THEN
SIMSTAT(!I,14)=
@MEAN(TEMP1)/(!VARIANCE^1.5)*@OBS({%ERROR})/(@OBS({%ERROR})-1)
SIMSTAT(!I,15)=@MEAN(TEMP2)/(!VARIANCE^2)*@OBS({%ERROR})/(@OBS({%ERROR})-1)
ELSE
ENDIF
SIMSTAT(!I,16)=SQR( @SUMSQ({%ERROR})/@OBS({%ERROR}))
SMPL !START !END IF ({%ACTUAL})<>0
IF
!AUX1=!AUX0 THEN
SIMSTAT(!I,17)=@MEAN({%PERROR})
SIMSTAT(!I,18)=SQR(@SUMSQ({%PERROR})/@OBS({%PERROR}))
ELSE
SIMSTAT(!I,17)="NA"
SIMSTAT(!I,18)="NA"
ENDIF
SMPL !START !END
SIMSTAT(!I,19)=@SUM(ABS({%ERROR}))/@OBS({%ERROR})
SMPL !START !END IF ({%ACTUAL})<>0
IF
!AUX1=!AUX0 THEN
SIMSTAT(!I,20)=@SUM(ABS({%APERROR}))/@OBS({%ERROR})
ELSE
SIMSTAT(!I,20)="NA"
ENDIF
SMPL !START !END
SIMSTAT(!I,21)=@COR({%ACTUAL},{%SIMULATED})
SIMSTAT(!I,22)=@COV({%ACTUAL},{%SIMULATED})
SIMSTAT(!I,23)=SQR( @SUMSQ({%ERROR})/@OBS({%ERROR})) / (SQR(@SUMSQ({%SIMULATED})/@OBS({%ERROR}))
+ SQR(@SUMSQ({%ACTUAL})/@OBS({%ERROR}))
)
IF
!VARIANCE<>0 THEN
SIMSTAT(!I,24)= ( (@MEAN({%SIMULATED})-@MEAN({%ACTUAL}))^2 ) / ( @SUMSQ({%ERROR})/@OBS({%ERROR}) )
SIMSTAT(!I,25)= ( (SQR(@VAR({%SIMULATED}))-SQR(@VAR({%ACTUAL})))^2 ) /(
@SUMSQ({%ERROR})/@OBS({%ERROR}) )
SIMSTAT(!I,26)= ( 2*(1-@COR({%SIMULATED},{%ACTUAL}))*(
SQR(@VAR({%SIMULATED}))*SQR(@VAR({%ACTUAL})))
) / (
@SUMSQ({%ERROR})/@OBS({%ERROR}) )
ELSE
SIMSTAT(!I,24)=0
SIMSTAT(!I,25)=0
SIMSTAT(!I,26)=1
ENDIF
'
DELETE {%SIMULATED}
DELETE {%ERROR}
DELETE {%PERROR}
DELETE {%APERROR}
NEXT !I
SETLINE (SIMSTAT,!NROWS+1)
SHOW SIMSTAT
DELETE TEMP1 TEMP2
DELETE TEMPTAB
'This program evaluates the ex-post policy
shock analysis of the MODEL_200. By
defining different individual shock policies this program creates new simulated
values and compares them with control solution created by solution of the
MODEL_200 with no policy shock.
'Initialization:
!START=1959
!END=2001
!SIMSTART=1998
!SIMEND=2001
%MODNAME="ver5_model_200_shk"
%SYSNAME="SYS_200"
%SOLUTIONID="_1"
!NVAR=200
!NROWS=!NVAR+6
!MAXIT=50000
!PRECISION=1E-07
!NOBS= !SIMEND-!SIMSTART+1
!NCOLS=!NOBS+2
SUBROUTINE SHOCKTABLE(STRING %SOLUTION)
DELETE {%SOLUTION}
COPY TABFORM
{%SOLUTION}
{%SOLUTION}(1,1)=%SOLUTION+" SOLUTION
TABLE"
{%SOLUTION}(2,1)="Dynamic solution of the
model "+ %MODNAME+ " for the period of "+@STR(!SIMSTART)+ "
to "+@STR(!SIMEND)
{%SOLUTION}(3,1)=%DESCRIPTION
SMPL !SIMSTART !SIMEND
SOLVE(M=!MAXIT,C=!PRECISION) %MODNAME
{%MODNAME}.MAKEGROUP TEMPGROUP @ENDOG
TABLE TEMPTAB
DELETE TEMPTAB
FREEZE(TEMPTAB) TEMPGROUP
DELETE TEMPGROUP
FOR !I=1
TO !NVAR
!SUMSOLUTION=0
FOR
!J=1 TO !NOBS
{%SOLUTION}(!I+6,!J+2)=@VAL(TEMPTAB(!J+2,!I+1))
!SUMSOLUTION=!SUMSOLUTION+{%SOLUTION}(!I+6,!J+2)
NEXT
!J
{%SOLUTION}(!I+6,!NCOLS+1)=!SUMSOLUTION/!NOBS
NEXT !I
DELETE TEMPTAB
'SHOW %SOLUTION
ENDSUB
SUBROUTINE SHOCKSTAT(STRING %SHOCK, STRING %DIFFERENCE, STRING %PERCENTCHANGE)
DELETE {%DIFFERENCE}
DELETE {%PERCENTCHANGE}
COPY
TABFORM {%DIFFERENCE}
COPY
TABFORM {%PERCENTCHANGE}
{%DIFFERENCE}(1,1)=%DIFFERENCE+" TABLE"
{%DIFFERENCE}(2,1)="Difference of shocked
solution from control solution"
{%DIFFERENCE}(3,1)=%DESCRIPTION
{%PERCENTCHANGE}(1,1)=%PERCENTCHANGE+" TABLE"
{%PERCENTCHANGE}(2,1)="Percentage change
of shocked solution from control solution (%)"
{%PERCENTCHANGE}(3,1)=%DESCRIPTION
FOR !I=7
TO !NROWS
!SUMDIF=0
!SUMPCH=0
%FLAG="NO"
FOR !J=3 TO !NCOLS
{%DIFFERENCE}(!I,!J)=@VAL({%SHOCK}(!I,!J)) -@VAL(CONTROL(!I,!J))
!SUMDIF=!SUMDIF+{%DIFFERENCE}(!I,!J)
IF @VAL(CONTROL(!I,!J)) > 0 THEN
{%PERCENTCHANGE}(!I,!J)=100*{%DIFFERENCE}(!I,!J) /(@VAL(CONTROL(!I,!J)))
!SUMPCH=!SUMPCH+{%PERCENTCHANGE}(!I,!J)
ELSE
%FLAG="YES"
{%PERCENTCHANGE}(!I,!J)=NA
ENDIF
NEXT
!J
{%DIFFERENCE}(!I,!NCOLS+1)=!SUMDIF/!NOBS
IF
%FLAG="NO" THEN
{%PERCENTCHANGE}(!I,!NCOLS+1)=!SUMPCH/!NOBS
ELSE
{%PERCENTCHANGE}(!I,!NCOLS+1)=NA
ENDIF
NEXT !I
'SHOW %DIFFERENCE
SHOW %PERCENTCHANGE
SMPL !START !END
ENDSUB
TABLE TABFORM
DELETE TABFORM
TABLE(!NROWS,!NCOLS+1) TABFORM
SETCOLWIDTH(TABFORM,1,5)
SETCOLWIDTH(TABFORM,2,16)
FOR !J=3 TO !NCOLS+1
SETCOLWIDTH(TABFORM,!J,12)
NEXT !J
SETLINE(TABFORM,4)
SETLINE(TABFORM,6)
FOR !J=3 TO !NCOLS+1
SETCELL(TABFORM,5,!J,!J+!SIMSTART-3,"C",4.0)
NEXT !J
FOR !I=7 TO !NROWS
%NUMBER=@STR(!I-6)+" "
SETCELL(TABFORM,!I,1,%NUMBER,"R",4.0)
SETCELL(TABFORM,!I,2,0,"L")
FOR !J= 3 TO !NCOLS+1
SETCELL(TABFORM,!I,!J,0,"R",12.3)
NEXT !J
NEXT !I
TABFORM(5,1)="No."
TABFORM(5,2)="Variabe Name"
TABFORM(5,!NCOLS+1)="Period Mean"
SETLINE (TABFORM,!NROWS+1)
{%MODNAME}.MAKEGROUP TEMPGROUP2 @ENDOG
TABLE TEMPTAB
DELETE TEMPTAB
FREEZE(TEMPTAB) TEMPGROUP2
DELETE TEMPGROUP2
FOR
!I=1 TO !NVAR
TABFORM(!I+6,2)=TEMPTAB(1,!I+1)
NEXT !I
DELETE TEMPTAB
TABLE CONTROL
%DESCRIPTION="Pre-shock solution"
CALL
SHOCKTABLE("CONTROL")
TABLE SHK_IRWPOIL
SMPL !SIMSTART !SIMEND
GENR TEMP=IRWPOIL
GENR IRWPOIL=IRWPOIL+1
%DESCRIPTION="Policy shock: 1 dollar
increase in foreign price of oil"
CALL
SHOCKTABLE("SHK_IRWPOIL")
SMPL !SIMSTART !SIMEND
GENR IRWPOIL=TEMP
TABLE DIF_IRWPOIL
TABLE PCH_IRWPOIL
CALL SHOCKSTAT("SHK_IRWPOIL",
"DIF_IRWPOIL","PCH_IRWPOIL")
TABLE SHK_IRYOILB
SMPL !SIMSTART !SIMEND
GENR TEMP=IRYOILB
GENR IRYOILB=IRYOILB*(1+0.10)
%DESCRIPTION="Policy shock: %10 increase in production of oil"
CALL
SHOCKTABLE("SHK_IRYOILB")
SMPL !SIMSTART !SIMEND
GENR IRYOILB=TEMP
TABLE DIF_IRYOILB
TABLE PCH_IRYOILB
CALL SHOCKSTAT("SHK_IRYOILB",
"DIF_IRYOILB","PCH_IRYOILB")
TABLE SHK_IREO
SMPL !SIMSTART !SIMEND
GENR TEMP=IREO
GENR IREO=IREO*(1+0.10)
%DESCRIPTION="Policy shock: %10 devaluation of official exchange rate
against dollar"
CALL
SHOCKTABLE("SHK_IREO")
SMPL !SIMSTART !SIMEND
GENR IREO=TEMP
TABLE DIF_IREO
TABLE PCH_IREO
CALL SHOCKSTAT("SHK_IREO",
"DIF_IREO","PCH_IREO")
TABLE SHK_IREX
SMPL !SIMSTART !SIMEND
GENR TEMP=IREX
GENR IREX=IREX*(1+0.10)
%DESCRIPTION="Policy shock: %10 devaluation of export exchange rate
against dollar"
CALL
SHOCKTABLE("SHK_IREX")
SMPL !SIMSTART !SIMEND
GENR IREX=TEMP
TABLE DIF_IREX
TABLE PCH_IREX
CALL SHOCKSTAT("SHK_IREX",
"DIF_IREX","PCH_IREX")
TABLE SHK_IRKAD
SMPL !SIMSTART !SIMEND
GENR TEMP=IRKAD
GENR IRKAD=IRKAD+1000
%DESCRIPTION="Policy shock: 1000 million dollars increase in capital
account"
CALL
SHOCKTABLE("SHK_IRKAD")
SMPL !SIMSTART !SIMEND
GENR IRKAD=TEMP
TABLE DIF_IRKAD
TABLE PCH_IRKAD
CALL SHOCKSTAT("SHK_IRKAD",
"DIF_IRKAD","PCH_IRKAD")
TABLE SHK_OECDP
SMPL !SIMSTART !SIMEND
GENR TEMP=OECDP
GENR OECDP=OECDP*(1+0.10)
%DESCRIPTION="Policy shock: %10 increase in domestic prices of industrial
countries"
CALL
SHOCKTABLE("SHK_OECDP")
SMPL !SIMSTART !SIMEND
GENR OECDP=TEMP
TABLE DIF_OECDP
TABLE PCH_OECDP
CALL SHOCKSTAT("SHK_OECDP",
"DIF_OECDP","PCH_OECDP")
TABLE SHK_IRCIFP
SMPL !SIMSTART !SIMEND
GENR TEMP=IRCIFP
GENR IRCIFP=IRCIFP*(1+0.10)
%DESCRIPTION="Policy shock: %10 increase in CIF import prices"
CALL
SHOCKTABLE("SHK_IRCIFP")
SMPL !SIMSTART !SIMEND
GENR IRCIFP=TEMP
TABLE DIF_IRCIFP
TABLE PCH_IRCIFP
CALL SHOCKSTAT("SHK_IRCIFP",
"DIF_IRCIFP","PCH_IRCIFP")
TABLE SHK_LIBOR
SMPL !SIMSTART !SIMEND
GENR TEMP=LIBOR
GENR LIBOR=LIBOR+1.00
%DESCRIPTION="Policy shock: %1 increase in
CALL
SHOCKTABLE("SHK_LIBOR")
SMPL !SIMSTART !SIMEND
GENR LIBOR=TEMP
TABLE DIF_LIBOR
TABLE PCH_LIBOR
CALL SHOCKSTAT("SHK_LIBOR",
"DIF_LIBOR","PCH_LIBOR")
TABLE SHK_IRFEOAV
SMPL !SIMSTART !SIMEND
GENR TEMP=IRFEOAV
GENR IRFEOAV=IRFEOAV+1000
%DESCRIPTION="Policy shock: 1000 billion rials increase in foreign
exchange obligation account"
CALL
SHOCKTABLE("SHK_IRFEOAV")
SMPL !SIMSTART !SIMEND
GENR IRFEOAV=TEMP
TABLE DIF_IRFEOAV
TABLE PCH_IRFEOAV
CALL SHOCKSTAT("SHK_IRFEOAV",
"DIF_IRFEOAV","PCH_IRFEOAV")
TABLE
SHK_IROLGV
SMPL !SIMSTART !SIMEND
GENR TEMP=IROLGV
GENR IROLGV=IROLGV+1000
%DESCRIPTION="Policy shock: 1000 billion rials increase in government
budget government obligation loans"
CALL
SHOCKTABLE("SHK_IROLGV")
SMPL !SIMSTART !SIMEND
GENR IROLGV=TEMP
TABLE DIF_IROLGV
TABLE PCH_IROLGV
CALL SHOCKSTAT("SHK_IROLGV",
"DIF_IROLGV","PCH_IROLGV")
TABLE
SHK_IROLPV
SMPL !SIMSTART !SIMEND
GENR TEMP=IROLPV
GENR IROLPV=IROLPV+1000
%DESCRIPTION="Policy shock: 1000 billion rials increase in government budget private obligation loans"
CALL
SHOCKTABLE("SHK_IROLPV")
SMPL !SIMSTART !SIMEND
GENR IROLPV=TEMP
TABLE DIF_IROLPV
TABLE PCH_IROLPV
CALL SHOCKSTAT("SHK_IROLPV",
"DIF_IROLPV","PCH_IROLPV")
TABLE SHK_IRGRDSV
SMPL !SIMSTART !SIMEND
GENR TEMP=IRGRDSV
GENR IRGRDSV=IRGRDSV+1000
%DESCRIPTION="Policy shock: 1000 billion rials increase in dollar sale
revenue"
CALL
SHOCKTABLE("SHK_IRGRDSV")
SMPL !SIMSTART !SIMEND
GENR IRGRDSV=TEMP
TABLE DIF_IRGRDSV
TABLE PCH_IRGRDSV
CALL SHOCKSTAT("SHK_IRGRDSV",
"DIF_IRGRDSV","PCH_IRGRDSV")
TABLE SHK_IRGECV
SMPL !SIMSTART !SIMEND
GENR TEMP=IRGECV
GENR IRGECV=IRGECV*(1+0.10)
%DESCRIPTION="Policy shock: %10 increase in government current
expenditures"
CALL
SHOCKTABLE("SHK_IRGECV")
SMPL !SIMSTART !SIMEND
GENR IRGECV=TEMP
TABLE DIF_IRGECV
TABLE PCH_IRGECV
CALL SHOCKSTAT("SHK_IRGECV",
"DIF_IRGECV","PCH_IRGECV")
TABLE SHK_IRGEDV
SMPL !SIMSTART !SIMEND
GENR TEMP=IRGEDV
GENR IRGEDV=IRGEDV*(1+0.10)
%DESCRIPTION="Policy shock: %10 increase in government development
expenditures"
CALL
SHOCKTABLE("SHK_IRGEDV")
SMPL !SIMSTART !SIMEND
GENR IRGEDV=TEMP
TABLE DIF_IRGEDV
TABLE PCH_IRGEDV
CALL SHOCKSTAT("SHK_IRGEDV",
"DIF_IRGEDV","PCH_IRGEDV")
'TABLE SHK_IRGESPV
'SMPL !SIMSTART !SIMEND
'GENR TEMP=IRGESPV
'GENR IRGESPV=IRGESPV+1000
'%DESCRIPTION="Policy shock: 1000 billion rials increase in government
special payments"
'CALL
SHOCKTABLE("SHK_IRGESPV")
'SMPL !SIMSTART !SIMEND
'GENR IRGESPV=TEMP
'TABLE DIF_IRGESPV
'TABLE PCH_IRGESPV
'CALL SHOCKSTAT("SHK_IRGESPV",
"DIF_IRGESPV","PCH_IRGESPV")
TABLE SHK_IRPDOIL
SMPL !SIMSTART !SIMEND
GENR TEMP=IRPDOIL
GENR IRPDOIL=IRPDOIL*(1+0.10)
%DESCRIPTION="Policy shock: %10 increase in domestic prices of oil
products"
CALL
SHOCKTABLE("SHK_IRPDOIL")
SMPL !SIMSTART !SIMEND
GENR IRPDOIL=TEMP
TABLE DIF_IRPDOIL
TABLE PCH_IRPDOIL
CALL SHOCKSTAT("SHK_IRPDOIL",
"DIF_IRPDOIL","PCH_IRPDOIL")
'TABLE SHK_IRGEFIV
'SMPL !SIMSTART !SIMEND
'GENR TEMP=IRGEFIV
'GENR IRGEFIV=IRGEFIV+100*IREO
'%DESCRIPTION="Policy shock: 100 million dollars increase in government
foreign investment"
'CALL
SHOCKTABLE("SHK_IRGEFIV")
'SMPL !SIMSTART !SIMEND
'GENR IRGEFIV=TEMP
'TABLE DIF_IRGEFIV
'TABLE PCH_IRGEFIV
'CALL SHOCKSTAT("SHK_IRGEFIV",
"DIF_IRGEFIV","PCH_IRGEFIV")
TABLE SHK_IRIRL
SMPL !SIMSTART !SIMEND
GENR TEMP=IRIRL
GENR IRIRL=IRIRL +1
%DESCRIPTION="Policy shock: %1 increase in banking loans interest
rate"
CALL
SHOCKTABLE("SHK_IRIRL")
SMPL !SIMSTART !SIMEND
GENR IRIRL=TEMP
TABLE DIF_IRIRL
TABLE PCH_IRIRL
CALL SHOCKSTAT("SHK_IRIRL",
"DIF_IRIRL","PCH_IRIRL")
TABLE SHK_IRIRS
SMPL !SIMSTART !SIMEND
GENR TEMP=IRIRS
GENR IRIRS=IRIRS +1
%DESCRIPTION="Policy shock: %1 increase in saving deposits interest
rate"
CALL
SHOCKTABLE("SHK_IRIRS")
SMPL !SIMSTART !SIMEND
GENR IRIRS=TEMP
TABLE DIF_IRIRS
TABLE PCH_IRIRS
CALL SHOCKSTAT("SHK_IRIRS",
"DIF_IRIRS","PCH_IRIRS")
TABLE SHK_IRMACHIMV
SMPL !SIMSTART !SIMEND
GENR TEMP=IRMACHIMV
GENR IRMACHIMV=IRMACHIMV+0.01
%DESCRIPTION="Policy shock: %1 increase in import share of machinary and
equipments"
CALL
SHOCKTABLE("SHK_IRMACHIMV")
SMPL !SIMSTART !SIMEND
GENR IRMACHIMV=TEMP
TABLE DIF_IRMACHIMV
TABLE PCH_IRMACHIMV
CALL SHOCKSTAT("SHK_IRMACHIMV",
"DIF_IRMACHIMV","PCH_IRMACHIMV")
FOR
!I=1 TO !NVAR
%CLEAN=@MID(TABFORM(!I+6,2),1,16)
DELETE %CLEAN
NEXT !I
DELETE TEMP TABFORM
فهرست منابع و مآخذ:
ـ فارسي:
1ـ بيدآباد، بيژن. معادلات ديفرانسيل و ثبات پوياي
تعادل. آماده چاپ.
2ـ بيدآباد،
بيژن. (1369). رگرسيونهاي نرم L1
گسسته و پيوسته (پيشنهاد
الگوريتمهاي تقريب گسسته و برازش پيوستة رويه تمركز). ترجمة رسالة دكتري. تهران: واحد تحصيلات تكميلي و دورة
عالي تحقيقات دكتري، دانشگاه آزاد اسلامي.
3ـ بيدآباد، بيژن. (1373). ارتباط اجزاء منابع و
مصارف بانكها با بخشهاي پولي، ارزي و مالي و مغايرتهاي موجود در گزارش اقتصادي
و ترازنامه بانك مركزي، تهران: معاونت
امور اقتصادي، وزارت امور اقتصادي و دارايي.
4ـ بيدآباد، بيژن. (1373). سنجش
اهداف كمّي كلان برنامه پنجساله دوم توسعه اقتصادي، اجتماعي و فرهنگي جمهوري
اسلامي ايران. تهران: معاونت امور اقتصادي، وزارت امور اقتصادي و دارايي.
5ـ بيدآباد، بيژن. (1374). برخي
ناهمخوانيها در حسابهاي پولي، ارزي و مالي گزارش اقتصادي و ترازنامة بانك مركزي.
تهران: معاونت اقتصاد و تكنولوژي، مركز تحقيقات استراتژيك نهاد رياست جمهوري.
6ـ بيدآباد، بيژن. (1375). طراحي
مدل اقتصادسنجي براي تبيين روند واردات و صادرات در بخش صنعت و ارائه نتايج حاصله
در: بررسي آثار عضويت جمهوري اسلامي ايران در سازمان جهاني تجارت بر بخش صنعت.
تهران: سازمان مديريت صنعتي، وزارت صنايع.
7ـ بيدآباد، بيژن. (1377). الگوي
اقتصادسنجي كلان ايران: شبيهسازي و پيشبيني. ارائه شده به همايش مدلسازي براي
اقتصاد ايران. چاپ شده در كتاب مدلسازي اقتصاد ايران، گردآورنده: محمد جعفر
مجرد. تهران: معاونت اقتصادي، بانك مركزي جمهوري اسلامي ايران، صفحات: 127-232.
8ـ بيدآباد، بيژن. (1378). بررسي
اجمالي الگوي اقتصادسنجي كلان برنامه پنجساله سوم توسعه اقتصادي، اجتماعي، فرهنگي
جمهوري اسلامي ايران، تهران: مركز پژوهشهاي مجلس شوراي اسلامي، دفتر بررسيهاي
اقتصادي. تجديد نظر و چاپ مجدد آن در مجلة تازههاي اقتصاد، ماهنامة علمي،
اقتصادي و بانكي. مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي
ايران، شمارة 87، فروردين 1379، صفحات: 7-4.
9ـ بيدآباد،
بيژن و خوشنويس يزدي، سهيلا. (1378). الگويي براي تبيين بازار موازي ارز در ايران.
مجموعه مقالات نهمين كنفرانس سياستهاي پولي و ارزي، پژوهشكده پولي و بانكي،
بانك مركزي جمهوري اسلامي ايران، صفحات: 208-187. چاپ مجدد در سياستهاي
ارزي (3) تدوين شده توسط عليرضا رحيمي بروجردي، مؤسسه تحقيقات پولي و بانكي، بانك
مركزي جمهوري اسلامي ايران، بهار 1379. صفحات: 270-247.
10ـ بيدآباد،
بيژن و بيدآباد، فرانك. (1375). الگوي اقتصادسنجي كلان ايران.
ويرايش دوم. تهران: مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي ايران.
11ـ بيدآباد، بيژن و بيدآباد، فرانك.
(1375). الگوي اقتصادسنجي كلان ايران. جلد اول مستندات اصلي الگو، ويرايش
سوم. تهران: مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي ايران.
12ـ بيدآباد، بيژن و بيدآباد، فرانك.
(1375). الگوي اقتصادسنجي كلان ايران. جلد دوم نتايج شبيهسازي و پيشبيني
الگو، ويرايش سوم، تهران: مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي
ايران.
13ـ بيدآباد، بيژن و بيدآباد، فرانك.
(1375). الگوي اقتصادسنجي كلان ايران. مستندات تفصيلي، ويرايش چهارم.
تهران: مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي ايران، اسفند.
14ـ بيدآباد،
بيژن و بيدآباد، فرانك. (1376). الگوي اقتصادسنجي كلان ايران، ويرايش چهارم.
تهران: مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي ايران.
15ـ بيدآباد، بيژن. اربابي، فرزين و بيدآباد،
فرانك. (1375). الگوي اقتصادسنجي كلان ويرايش يكم. تهران: مؤسسه تحقيقات
پولي و بانكي، بانك مركزي جمهوري اسلامي ايران.
16ـ بيدآباد، بيژن و بيدآباد، بهروز.
(1368). Functional form for Estimating
Lorenz Curve ارائه شده به گردهمايي جامعه اقتصادسنجي،
استراليا.
17ـ كميجاني،
اكبر. بيدآباد، بيژن. (1373). مروري بر الگوهاي پژوهش يافته پيرامون سياستهاي
پولي مناسب جهت تثبيت فعاليتهاي اقتصادي در برنامة پنجساله دوم توسعه اقتصادي،
اجتماعي، فرهنگي جمهوري اسلامي ايران. ويژه برنامه پنجساله دوم توسعه اقتصادي،
اجتماعي، فرهنگي جمهوري اسلامي ايران. مجلس و پژوهش، مجلة مركز پژوهشهاي مجلس
شوراي اسلامي، شماره نهم سال دوم، خرداد، صفحات: 95-59.
18ـ كميجاني، اكبر. بيدآباد، بيژن. طباطبايي، رويا. بهرامي، جاويد. معدلت، كورش و
شكرآبي، فيروزه. (1371). سياستهاي پولي و ارزي مناسب جهت تثبيت فعاليتهاي
اقتصادي در ايران، گزارش مرحلة دوم. تهران: معاونت امور اقتصادي، وزارت امور
اقتصادي و دارايي. چاپ مجدد توسط معاونت امور اقتصادي وزارت امور اقتصادي و دارايي،
1374. خلاصة اين تحقيق در مجلة پژوهشها و سياستهاي اقتصادي، معاونت امور
اقتصادي، وزارت امور اقتصادي و دارايي سال سوم شمارة 1 و 2 پاييز و زمستان 1374،
صفحات: 71-30 آمده است.
19ـ كميجاني، اكبر. بيدآباد، بيژن. طباطبايي،
رويا. فرجي، يوسف. شكرآبي، فيروزه و معدلت، كورش. (1370). سياستهاي پولي و
ارزي مناسب جهت تثبيت فعاليتهاي اقتصادي در ايران گزارش مرحلة اول. تهران:
معاونت امور اقتصادي، وزارت امور اقتصادي و دارايي. چاپ مجدد توسط معاونت امور
اقتصادي، وزارت امور اقتصادي و دارايي، 1373. چاپ مجدد در شمارههاي مجلة اقتصادي،
معاونت امور اقتصادي، وزارت امور اقتصادي و دارايي، شمارة 4 آبان 1375، صفحات: 14-2،
شمارة 5 آذر 1375، صفحات: 12-2، شمارة 6 دي 1375، صفحات: 9-2، شمارة 7 اسفند 1375،
صفحات: 7-2.
20ـ مجرد، محمد جعفر و بيدآباد، بيژن.
(1375). سياست هدف گذاري براي كنترل تورم در ايران، ارائه شده در ششمين كنفرانس
سياستهاي پولي و ارزي، ارديبهشت 1375، مجموعه مقالات ششمين كنفرانس سياستهاي
پولي و ارزي، مؤسسه تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي ايران، صفحات:
57-21، تابستان 1375. تجديد نظر و چاپ مجدد بخشهايي از آن تحت عناوين كنترل قيمت
از طريق هدف گذاري تورمي و تجربههاي اخير برخي از كشورها در مورد سياست هدفگذاري
تورمي در مجلة تازههاي اقتصاد، ماهنامة علمي، اقتصادي و بانكي. مؤسسة
تحقيقات پولي و بانكي، بانك مركزي جمهوري اسلامي ايران، شمارة 79، مرداد 1378،
صفحات: 14-10 و 27-22.
ـ انگليسي:
1-
Chris, Allen and Hall ,Stephen. (1996). Macroeconomic Modeling in a
Changing World.
2-
Bidabad, bijan. (1981). Estimation of the Engel's Curves of
3-
Bidabad, bijan. (1987). Least Absolute Error Estimation I, Submitted to
the 1st International Conference on Statistical Data Analysis
Based on the L1 Norm and Related Methods.
4-
Bidabad, bijan. (1987). Least Absolute Error Estimation II, Submitted
to the 1st International Conference on Statistical Data Analysis
Based on the L1 Norm and Related Methods.
5-
Bidabad, bijan. (1988). A Proposed Algorithm for Least Absolute Error Estimation
I, Proceedings of the 3rd Analysis Seminar, May 18-19,
6-
Bidabad, bijan. (1988). A Proposed Algorithm for Least Absolute Error Estimation
II, Proceedings of the 3rd Analysis Seminar, May 18-19,
7-
Bidabad, bijan. (1989). Functional form for Estimating the Lorenz Curve,
Submitted to the Australasian Econometric Meeting,
8-
Bidabad, bijan. (1989). Discrete and Continuous L1 Norm Regressions
(Proposition of Discrete Approximation Algorithms and Continuous Smoothing of Concentration
Surface). Ph. D Dissertation, Islamic
9-
Bidabad, B. Continuous L1 Norm Smoothing of Concentration Surface.
10-
Bidabad, B. Estimating Lorenz Curve for the
11-
Bidabad, B. General Monetary Equilibrium.
12-
Bidabad, B. Introducing New Algorithms for the L1 Norm Regression.
13-
Bidabad, B. L1 Norm Solution of Over Determined System of Linear Equations.
14-
Bidabad, B. Macroeconomics Needs Fresh Methodology of Theorization.
15-
Bidabad, B. Money - Transaction - Income (Quantification of Quantity
Theory of Money).
16-
Bidabad, B. Survey of Literature on the L1 Norm Data Analysis and Related
Methods.
17-
Bidabad, B. (1991). Dependence of Research Methodology to Labaratory Tools
in Economics. Method. Bulletin of the International Network for Economic Method,
Vol. 3, No. 1, June, pp. 129-130.
18-
Bidabad, B. (1993). Estimating Lorenz Curve for
19-
Bidabad, B. (2004). Survey of Literature on the L1 Norm Regression.
20-
Bidabad, B. Kalbasi Anaraki,N.(2004). Effects of
21-
Black, Richard. Laxton, D. Rose,D. and
Tetlow,R. (1994). The Steady-State Model: SSQPM, The Bank of Canada’s
New Quarterly Projection Model, Bank of Canada Technical Report, No. 72,
Part 1.
22-
Bodkin, R.G. Lawrence R., Klein and Kanta, Marwah. (1991). A History
of
23-
Brayton, F. and Tinsley, P. (1996). A Guide to FRB / US: A
Macroeconomic Model of the
24-
Brayton, F. Levin, A. Tryon, R. and Williams, J.C. (1997). The Evolution
of Macro Models at the Federal Reserve Board. Carnegie-Rochester Conference
Series on Public Policy, 47,pp. 43-81.
25-
Brayton, F. Mauskopf, E. Reifschneider, D. Tinsley, P. and Williams, J.
(1997). The Role of Expectations in the FRB/US Macroeconomic Model, Federal
Reserve Bulletin, 83.
26-
Brayton,F. and Mauskopf,E. (1985). The Federal Reserve Board MPS
Quarterly Econometric Model of the
27-
Britton, A. (ed.).(1988). Policymaking with Macroeconomic Models.
Britton, E. and Whitley, J., Comparing the Monetary Transmission Mechanism in
28-
Bryant, R. C. and Portes, R. (eds.). (1987). Global Macroeconomics:
Policy Conflict and Cooperation.
29-
Bryant, R. C. Currie, D. Frenkel, J. Masson, P. and Portes, R. (eds.).
(1989). Macroeconomic Policies in an Interdependent World. Washington,
D. C.: Brookings Institution.
30-
Charemza W.W. and Deadman, D.F. (1997). New Directions in Econometric
Practice,2/e. Cheltanham: Edward Elgar.
31-
Christ, C.F. (1968). A Simple Macroeconomic Model with a Government Budget
Restraint. Journal of Political Economy, 76,pp. 53-67.
32-
Clements and Herny. (1998). Forecasting Economic Times Series.
33-
Davidson, Russell and MacKinnon,
James. (1993). Estimation and Inference in Econometrics.
34-
Deutsche, Bundesbank. (1989). Macro-economic Forecasting with the Econometric
Model of the Deutsche Bundesbank, Monthly Report, May, pp. 27-33.
35-
Deutsche, Bundesbank. (1982). Structure and Properties of a New Version
of the Econometric Model of the Deutsche Bundesbank, Monthly Report,
August, pp. 29 - 37.
36-
Deutsche, Bundesbank. (1994). Macro-Econometric Model of the German
Economy.
37-
Diebold, F. (1998). The Past, Present and Future of Macroeconomic
Forecasting. Journal of Economic Perspectives, Vol. 12, No. 2.
38-
Edison, H. J. Marquez, J. R. and Tryon, R. W. (1987). The Structure and
Properties of the Federal Reserve Board Multi-country Model. Economic
Modelling, 4.
39-
Engle, Robert and Daniel, L. McFadden. (1994). Handbook of
Econometrics, Volumes IV.
40-
Eric, M. Leeper. Tao, Zha. (2001). Assessing Simple Policy Rules: A
View from a Complete Macroeconomic Model. Review – Federal Reserve Bank of
St.Louis, v. 83, no. 4, pp. 83-110.
41-
Fair, Ray C. (1987). Macroeconometric Models. in J. Eatwell, M.Millgate
and P. Newman (eds.) Palgrave Dictionary of Economics. PP. 269–273,
42-
Fair, Ray C. (1994). Testing Macroeconometric Models.
43-
Fair, R. (1984). Specification, Estimation, and Analysis of
Macroeconometric Models.
44-
Favero, Carlo A. (2001). Applied Macroeconometrics.
45-
Fisher, F.M. Klein, L.R. and Shinkai,Y. (1965). Price and output
aggregation in the Brookings econometric model, in: J.S. Duesenberry, G. Fromm,
L.R. Klein and E. Kuh (eds.), The Brookings Quarterly Econometric Model of
the United States, Rand McNally Company, Chicago.
46-
Goldberger, Arthur. (1991). A Course in Econometrics.
47-
Gourieroux, Christian and Monfort, Alain. (1995). Statistics and
Econometric Models: Volumes I and II.