Hi guys,
I’m writing a neoclassical model incorporating a tax on consumption taking 3 different values (0.1, 0.2, 0.3). I asign these values to the tax through a for loop in a separated matlab file. Starting preprocessing the for loop, dynare return “Syntax error, unexpected VAREXO”.
Please find bellow first my dynare file and then my for loop:
// Modèle néoclassique avec taxe sur la consommation prenant 3 valeurs
var C // Consommation
N // Offre de travail
Y // Output
I // Investissement
Z // Productivité
K // Capital
varexo eps_z;
parameters beta // Facteur d’escompte intertemporel
delta // Taux de dépreciation du capital
alpha // Part du capital dans la fonction de production
sigma // Aversion au risque
phi // Elasticité de l’offre de travail
rho // Autocorelation de la productivité
sigma_z // Ecart type de la productivité
kappa // Paramètre de désutilité du travail
tau; // Taxe sur la consommation
beta=0.99;
delta=0.1;
alpha=1/3;
sigma=2;
phi=2;
rho=0.9;
sigma_z=0.007;
kappa=0.1;
tau=tau_;
model;
// Condition d’optimalité par rapport à C : équation d’Euler
C^(-sigma) = beta * C(+1)^(-sigma) * (alpha * exp(Z(+1)) * K^(alpha-1) * N(+1)^(1-alpha) + 1 - delta);
// Condition d’optimalité par rapport à N
kappa * N^phi = (1 - alpha) * C^(-sigma)/(1+tau) * exp(Z) * K(-1)^alpha * N^(-alpha);
// Accumulation du capital
K = I + (1-delta) * K(-1);
// Fonction de production
Y = exp(Z) * K(-1)^alpha * N^(1-alpha);
// Contrainte budgétaire du ménage
Y = (1 + tau) * C + I;
// Processus stochastique du choc de productivité (TFP)
Z = rho * Z(-1) + eps_z;
end;
initval;
Z = 0;
C = 1.66963;
K = 9.42464;
N = 1.7891;
Y = 3.11299;
I = 0.942464;
end;
steady;
resid;
shocks;
// choc de productivité
var eps_z; stderr sigma_z;
end;
stoch_simul(irf=60) C K N Y I Z;
clear all
close all
clc
param_values = [0.1, 0.2, 0.3];
for i = 1:length(param_values)
tau_ = param_values(i);
% set_param_value(‘tau’, tau);
dynare Matlab_Project_tau_parameter.mod noclearall;
end