7 Conditions intiales et Terminales sur Dynare

Transcription

7 Conditions intiales et Terminales sur Dynare
OOO FTL LAREQ Publication
C ONDITIONS
INITIALES ET TERMINALES SUR
Auteur(s) : Israël Makambo Monga & Jean – Paul K. Tsasa Vangu
Source : Laboratoire d’analyse – recherche en économie quantitative
Publié par : LAREQ Publication
D YNARE
Volume : Série alpha-I, numéro 7 [pp. 58 – 65]
Web : http://www.lareq.com
Courriel : [email protected]
Soumission : Juillet 26, 2013
Publication : Janvier 25, 2014
Le LAREQ Publication collabore avec Makroeconomica Review dans la production et la diffusion de la
série des fiches techniques Lareq (FTL).
MAKROECONOMICA REVIEW
Web : http://www.makroeconomica.org
Vous pouvez utiliser le contenu des FTL uniquement pour un usage personnel et non – commercial. Si
vous désirez exploiter tout le contenu de cette fiche, s'il vous plaît, citer la source. Pour un usage
commercial, prière contacter l'éditeur pour en obtenir l’autorisation, en vous dirigeant à l’adresse
suivante : http://www.makroeconomica.org/contact.ws.
MAKROECONOMICA REVIEW travaille en collaboration avec le Laboratoire d'analyse-recherche en
économie quantitative et le réseau congolais de recherche en économie quantitative dans l'objectif de
contribuer à la construction d’une plate-forme de recherche commune qui favorise la découverte et
l'utilisation de ces ressources au sein des universités africaines. Pour plus d'informations sur
MAKROECONOMICA, s'il vous plaît, contactez : [email protected].
Résumé1
Cette série de fiches techniques (alpha–I) propose une introduction à la modélisation DSGE et une initiation à la plateforme logicielle Dynare et aux logiciels Dynare++ et MatLab. L’ensemble de publications dans le cadre de cette série, une fois complété, sera diffusé dans un document unique sous forme d’un manuel d’initiation. Dans ce cadre, la présente fiche (FTL alpha-­‐I.7) s’inscrit dans la suite de la sixième fiche, consacrée à la description des instructions qu’a besoin l’utilisateur pour déclarer son modèle sur la plateforme logicielle Dynare. Puisque dans les exercices de simulations des modèles DSGE, il est important que l’utilisateur définisse les conditions initiales et terminales, ainsi, dans la 1
L’utilisateur désirant accéder au manuel de référence Dynare, peut se diriger au site
internet suivant : http://www.dynare.org.
présente fiche, nous nous attachons à montrer comment cette opération peut être faite sur Dynare.
I. Introduction
Dans la plupart d’exercices de simulation, notamment des modèles DSGE, il est
nécessaire de fournir des conditions initiales et de fois, les conditions terminales. Aussi,
il est nécessaire de préciser les valeurs des conditions initiales notamment, lorsqu’on
recourt aux solveurs non linéaires. Ainsi, la présente fiche se propose de présenter les
instructions qui permettent d’administrer ces conditions initiales et terminales sur la
plateforme Dynare.
Dans de nombreux contextes (déterministes ou stochastiques), il est nécessaire de
calculer l’état stationnaire d’un modèle non linéaire. En effet, sur Dynare, on sert de
l’instruction initval afin de spécifier les valeurs initiales numériques du solveur non
linéaire. Et la commande resid peut être utilisée pour calculer les résidus de l’équation
pour les valeurs initiales données.
Par ailleurs, il vient qu’en utilisant sous l’hypothèse de prévision parfaite, les modèles
d’anticipation (forward – looking models), pour qui le logiciel Dynare a été conçu,
l’utilisateur est appelé à déterminer à la fois les conditions initiales et terminales. Et
généralement, et donc pas nécessairement, ces conditions initiales et terminales sont
définies comme des équilibres statiques.
Une application typique est de :
⎯
considérer une économie à l’équilibre ;
⎯
ensuite, déclencher un choc à la première période ;
⎯
et enfin, étudier la trajectoire de retour à l’équilibre initial.
Pour ce faire, on a besoin des blocs initval et shocks.
Une autre application est celle consistant à
étudier comment une économie, à partir
des conditions initiales arbitraires, converge vers l’équilibre. De même, il faut initval et
endval.
Pour les modèles avec retards (décalages) sur plus d’une période, le bloc histval
permet de spécifier les différents historiques des valeurs initiales pour les périodes
avant le début de la simulation.
Fiche technique Laréq, Série alpha–I, Num. 7, pp. 58 – 65
Israël Makambo & Jean-Paul K. Tsasa
59
II. Bloc initval
initval;
[Bloc]
Le bloc initval sert à deux fins :
⎯
déclarer les conditions initiales, et de fois terminales, dans un
exercice de simulation ;
⎯
fournir des valeurs initiales pour les solveurs non linéaires.
Lee bloc initval se termine par « end; », et contient des lignes de la
forme :
VARIABLE_NAME = EXPRESSION;
« initval » dans un modèle déterministe :
⎯
Premièrement, ce bloc fournit les conditions initiales pour toutes les variables
endogènes et exogènes à toutes les périodes précédant la première période de
simulation, sauf si certaines de ces valeurs initiales sont modifiées par histval.
⎯
Deuxièmement, en l'absence du bloc endval, le bloc initval définit les
conditions terminales pour l'ensemble des périodes succédant la dernière
période de simulation.
⎯
Troisièmement, en l'absence du bloc endval, initval fournit des valeurs de
condition initiale à toutes les dates de simulation pour le solveur non linéaire
mis en œuvre dans simul.
⎯
Quatrièmement, il est nécessaire de fournir des valeurs pour toutes les
variables endogènes dans un bloc initval, même si, en théorie, les conditions
initiales ne sont nécessaires que pour les variables retardées. Si certaines
variables, endogènes ou exogènes, ne sont pas mentionnées dans le bloc
initval, une valeur nulle est supposé par défaut.
Par ailleurs, à noter que si le bloc initval est immédiatement suivi d'une commande
steady, sa sémantique sera modifiée. En effet, la commande steady va calculer l'état
stationnaire du modèle pour toutes les variables endogènes, en supposant que les
variables exogènes sont maintenus constants à la valeur déclarée dans le bloc initval,
et en utilisant les valeurs déclarées pour les variables endogènes comme des valeurs
initiales pour le solveur non linéaire.
Un bloc initval suivi la commande steady est formellement équivalent à un bloc initval
avec les mêmes valeurs pour les variables exogènes, et avec les valeurs des variables
endogènes correspondant à l'état stationnaire.
60
Israël Makambo & Jean-Paul K. Tsasa
Conditions initiales et terminales sur Dynare
« initval » dans un modèle stochastique :
Dans ce cas, le but principal de initval est de fournir des valeurs de condition initiale
pour le solveur non linéaire dans le calcul de l'état stationnaire.
Il sied de noter que si le bloc initval n'est pas suivie par la commande steady, le calcul
de l'état stationnaire sera toujours déclenchée notamment, par les commandes
suivantes : stoch_simul ; estimation.
Il n'est pas nécessaire de déclarer 0 comme valeur initiale pour les variables
stochastiques exogènes, car il s’agit de la seule valeur possible qu’elles peuvent prendre
à cet effet.
Dans ce cas (cas stochastique), l’état stationnaire en cause sera utilisé comme
condition initiale à toutes les périodes précédant la première période de simulation pour
les deux types possibles de simulations :
⎯
stoch_simul, si les options period sont spécifiées ;
⎯
forecast, dans ce cas, il est important de préciser qu'il est toujours
possible de modifier certaines valeurs initiales avec le block histval.
Exemple :
initval;
c = 1.2;
k = 12;
x = 1;
end;
steady;
III. Bloc endval
endval;
[Bloc]
Ce bloc se termine par « end; » initval sert à deux fins et contient des
lignes de la forme :
VARIABLE_NAME = EXPRESSION;
Le bloc endval n'a de sens que dans un modèle déterministe, et sert à deux fins :
⎯
Premièrement, il définit les conditions terminales pour toutes les périodes
succédant la dernière période de simulation ;
⎯
Deuxièmement, il fournit des valeurs des conditions initiales à toutes les dates
de simulation pour le solveur non linéaire mis en œuvre dans simul.
Fiche technique Laréq, Série alpha–I, Num. 7, pp. 58 – 65
Israël Makambo & Jean-Paul K. Tsasa
61
Pour cette dernière raison, il est nécessaire de fournir des valeurs pour toutes
les variables endogènes dans un bloc endval, même si en théorie, les
conditions initiales ne sont nécessaires que pour les variables anticipées. Si
certaines variables, endogènes ou exogènes, ne sont pas mentionnées dans le
bloc endval, une valeur zéro sera supposée par défaut.
A noter que si le bloc endval est immédiatement suivie par la commande steady, sa
syntaxe sera modifiée. En effet, la commande steady va calculer l'état stationnaire du
modèle pour toutes les variables endogènes, en supposant que les variables exogènes
sont maintenus constants à la valeur déclarée dans le bloc endval, et en utilisant les
valeurs déclarées pour les variables endogènes comme des valeurs des conditions
initiales pour le solveur non linéaire.
In fine, un bloc endval suivi par la commande steady, est formellement équivalent à un
bloc endval avec les mêmes valeurs pour les variables exogènes, et avec les valeurs
des variables endogènes correspondant à l'état stationnaire.
Exemple :
var c k;
varexo x;
...
c = 1.2;
k = 12;
x = 1;
end;
steady;
endval;
c = 2;
k = 20;
x = 2;
end;
steady;
L’équilibre initial est calculé par steady pour x = 1, et le terminal, pour x = 2.
IV. Bloc histval
initval;
[Bloc]
Dans les modèles avec des retards sur plus d’une période, le bloc histval
permet de spécifier les différentes valeurs historiques des valeurs initiales
pour les différentes périodes. Ce bloc se termine par « end; », et contient
des lignes de la forme :
VARIABLE_NAME(INTEGER) = EXPRESSION;
62
Israël Makambo & Jean-Paul K. Tsasa
Conditions initiales et terminales sur Dynare
Décrivons à présent l’expression Dynare « EXPRESSION » reprises dans le second
membre de la ligne de différents blocs.
EXPRESSION est une expression Dynare qui retourne une valeur numérique. Elle peut
contenir les noms de variables déjà initialisés.
Par convention, dans Dynare, la période 1 est la première période de la simulation. En
reculant dans le temps, la première période avant le début de la simulation est la
période 0, ensuite la période –1, et ainsi de suite.
Si les variables retardées sont liées par des identités, il est important de veiller à ce que
ces identités soient satisfaites lorsqu’on définit des valeurs initiales historiques.
Par ailleurs, les variables non initialisées dans le bloc histval sont supposés avoir une
valeur de zéro à la période 0 et précédente. A noter que ce comportement diffère du
cas où il n'y a pas de bloc histval, où toutes les variables sont initialisées à leur valeur
d'état stationnaire à la période 0 et précédente, à moins que la commande steady ne
suit pas un bloc initval.
Exemple :
var x y;
varexo e;
model;
x = y(-1)^alpha*y(-2)^(1 - alpha) + e
...
end;
initval;
x = 1;
y = 1;
e = 0.5;
end;
steady;
histval;
y(0) = 1.1;
y(-1) = 0.9;
end;
V. Commandes « resid » et « initval_file »
resid;
[Commande]
Cette commande permet d'afficher les résidus des équations statiques du
modèle en utilisant les valeurs indiquées pour les variables endogènes
dans le dernier bloc initval ou endval, ou encore dans le fichier steady
state , si ce dernier était fourni.
Fiche technique Laréq, Série alpha–I, Num. 7, pp. 58 – 65
Israël Makambo & Jean-Paul K. Tsasa
63
initval_file(filename = FILENAME);
[Commande]
Cette commande permet d'afficher les résidus des équations statiques du
modèle en utilisant les valeurs indiquées pour les variables endogènes
dans le dernier bloc initval ou endval, ou encore dans le fichier steady
state, si ce dernier était fourni.
Dans un cadre déterministe, cette commande est utilisée pour spécifier un chemin pour
toutes les variables endogènes et exogènes. La longueur de ces chemins doit être égal
au nombre de périodes de simulation, plus le nombre de décalages (avances et retards)
du modèle.
Par exemple, avec 50 périodes de simulation, dans un modèle avec 2 retards et 1
avance, les chemins doit avoir une longueur de 53.
Aussi, on notera que ces chemins couvrent deux choses différentes :
⎯
les contraintes du problème, qui sont données par le chemin pour les variables
exogènes et les valeurs initiales et finales pour les variables endogènes ;
⎯
Les conditions initiales pour le programme de calcul (solveur) non linéaire, qui
sont données par le chemin pour les variables endogènes pour les périodes de
simulation, excepté les conditions initiales et terminales.
La commande initval_file; accepte trois formats de fichiers :
⎯
M-file (extension « .m ») : pour chaque variable endogène et exogène, le
fichier doit contenir un vecteur ligne du même nom ;
⎯
MAT-file (extension « .mat ») : même chose que pour M-Files ;
⎯
Excel file (extension « .xls » ou « .xlsx ») : pour chaque variable endogène et
exogène, le fichier doit contenir une colonne du même nom (pris en charge
sous Octave si les packages io et java de Octave – Forge sont installés, avec
Java Runtime Environment).
Liens pour téléchargement :
à io
: http://octave.sourceforge.net/io/
à java : http://octave.sourceforge.net/java/
à Runtime Environment : http://www.java.com/fr/download/index.jsp
Note : l'extension doit être omis dans l'argument de commande. Le logiciel Dynare
détermine automatiquement l'extension et sélectionne le type de fichier approprié.
64
Israël Makambo & Jean-Paul K. Tsasa
Conditions initiales et terminales sur Dynare
In fine, les instructions permettant de mettre en œuvre les conditions initiales et
terminales conformément à la logique de la plateforme logicielle Dynare seront
sollicitées dans les fiches ultérieures, notamment lorsqu’il sera question de mettre en
évidence à l’aide d’un exemple la simulation d’un modèle stochastique. Par ailleurs,
dans la fiche technique alpha–I.8, décrivons explicitement le traitement des chocs sur
Dynare, dans le cadre des modèles déterministe, stochastique et mixte.
Références bibliographiques
•
ADJEMIAN Stéphanie, Houstan BASTANI, Michel JUILLARD, Frédéric KARAME,
Junior MAIH, Ferhat MIHOUDI, George PERENDIA, Marco RATO et Sébastien
VILLEMOT, 2011, “Dynare: Reference Manual, Version 4”, Dynare Working Papers,
1, CEPREMAP. Web: http://www.dynare.org/.
•
COLLARD Fabrice et Michel JUILLARD, 2001, "Accuracy of stochastic perturbation
methods: the case of asset pricing models", Journal of Economic Dynamics and
Control, 25 (6 – 7): 979 – 999.
•
JUDD Kenneth L., 1998, Numerical Methods in Economics, MIT Press, Cambridge,
MA, 656p.
•
KING Robert G. et Mark W. WATSON, 1998, "The Solution of Singular Linear
Difference Systems under Rational Expectations", International Economic Review,
4(39): 1015 – 1026.
•
LOKOTA Michel – Ange et Jean – Paul TSASA, 2014, « Aperçu du Développement
de la Macroanalyse », Fiche Technique Laréq, Série Alpha–I, 1, 1 – 15.
•
MATATA Amsini et Jean – Paul TSASA, 2014, « Déclaration des Variables et
Paramètres sur Dynare », Fiche Technique Laréq, Série Alpha–I, 5, 36 – 50.
•
MAVUNGU Marina et Jean – Paul TSASA, 2014, « Déclaration d’un modèle sur
Dynare », Fiche Technique Laréq, Série Alpha–I, 6, 51 – 57.
•
MAVUNGU Marina et Jean – Paul TSASA, 2014, « Conventions Dynare », Fiche
Technique Laréq, Série Alpha–I, 4, 32 – 35.
•
SCHMITT – GROHE Stephanie et Martin URIBE, 2004, “Solving Dynamic General
Equilibrium Models using a Second – Order Approximation to the Policy Function”,
Journal of Economic Dynamics and Control, 28 (4): 755 – 775.
•
SIMS Christopher A., 2002, “Solving Linear Rational Expectations Models”,
Computational Economics (octobre), 20 (1 – 2): 1–20
•
TOGBA Yves et Jean – Paul TSASA, 2014, « Eléments Connexes de la Plateforme
Dynare, Installation et Configuration », Fiche Technique Laréq, Série Alpha–I, 2,
16 – 24.
•
TOMBOLA Cédrick et Jean – Paul TSASA, 2014, « Premiers pas avec Dynare »,
Fiche Technique Laréq, Série Alpha–I, 3, 25 – 31.
•
TSASA Jean – Paul, (octobre) 2012, « Construction et Application d’un Modèle
DSGE pour la RDC : Analyse comparée des estimations bayésiennes et VAR »,
Discussion Paper Laréq (octobre), S2, DPN 001, 1 – 71.
Fiche technique Laréq, Série alpha–I, Num. 7, pp. 58 – 65
Israël Makambo & Jean-Paul K. Tsasa
65

Documents pareils