Trade linkages
Assembly of non-commodity imports
Production function
\[
mm_t = F(mm_t^1,\ \dots,\ mm_t^A)
\]
Demand for imports, ignoring adjustment costs
\[
\frac{mm_t^k}{mm_t}\ \propto\ \left( \frac{\frac{e_t}{e_t^k} \ pxx_t^k}{pmm_t} \right)^{-1}
\]
Import tariffs
Demand for imports with tariffs
\[
\frac{mm_t^k}{mm_t}\ \propto\ \left[ \frac{pmm_t^{\mathrm{fob}, k}\ (1 + trm_t + trm_t^k) }{pmm_t} \right]^{-1}
\]
Import price FOB destination
\[
pmm_t^{\mathrm{fob}, k} = \frac{e_t}{e_t^k} \ pxx_t^k
\]
Import price including tariffs
\[
pmm_t^{k} = \frac{e_t}{e_t^k} \ pxx_t^k \ (1 + trm_t + trm_t^k)
\]
Import price indicators
Price | Where placed in the model |
---|---|
\(pmm_t^{\mathrm{fob}, k}\) | Balance of payments |
\(pmm_t^{k}\) | Input price facing local agents |
\(pmm_t^k - pmm_t^{\mathrm{fob}, k}\) | Government revenues |
GEES International trade linkages module
Declare quantities
!variables
!for ?M=<areas> !do
!for ?X=<setdiff(areas, "?M")> !do
"Share of real imports from [?X] in total real imports to [?]"
?M_mm_sh_?X
!end
!end
!log-variables !all-but
!for ?M=<areas> !do
!for ?X=<setdiff(areas, "?M")> !do
?M_mm_sh_?X
?M_trm_?X
!end
!end
!parameters
!for ?M=<areas> !do
"Point of origination import adjustment costs !! $\xi_\mathit{mm}$"
?M_xi_mm
!for ?X=<setdiff(areas, "?M")> !do
"Share of nominal imports from [?X] in total [?M] nominal imports !! $\omega_\mathrm{?X}$"
?M_omega_?X
!end
!end
Define equations
!equations
!for ?X=<areas> !do
"Distribution of exports across areas"
?X_xx = !for ?M=<setdiff(areas, "?X")> !do + ?M_mm * ?M_mm_sh_?X !end ;
!end
!for ?M=<areas> !do
"Assembly of total non-commodity imports"
1 = 1 !for ?X=<setdiff(areas, "?M")> !do * (?M_mm_sh_?X / ?M_omega_?X)^?M_omega_?X !end;
% 1 = 1 !for ?X=<areas> !do * ?M_mm_sh_?X^?M_omega_?X !end;
!for ?X=<setdiff(areas, "?M")> !do
"Demand for imports from [?X] in total [?M] non-commodity imports"
?M_omega_?X * ?M_pmm = ...
(?M_e / ?X_e) * ?X_pxx * (1 + ?M_trm + ?M_trm_?X) * ?M_mm_sh_?X ...
* [1 + ?M_xi_mm*(log(?M_mm_sh_?X)-log(?M_mm_sh_?X{-1})) - ?M_rdf*(log(?M_mm_sh_?X{+1})-log(?M_mm_sh_?X))] ...
!! ?M_omega_?X * ?M_pmm = (?M_e / ?X_e) * ?X_pxx * (1 + ?M_trm + ?M_trm_?X) * ?M_mm_sh_?X;
!end
?M_fob_pmm = !for ?X=<setdiff(areas, "?M")> !do + (?M_e / ?X_e) * ?X_pxx * ?M_mm_sh_?X !end;
!end
%% Tariffs
!for ?M=<areas> !do
!for ?X=<setdiff(areas, "?M")> !do
!variables
"Area specific import tariff rate" ?M_trm_?X
!shocks
"Shock to area specific import tariff rate" ?M_shk_trm_?X
!parameters(:trade :steady)
"S/S Area specific import tariff rate !! $\mathit{trm}_{\mathrm{?X},\ss}$" ?M_ss_trm_?X
!parameters(:trade :dynamic)
"A/E Area specific import tariff rate !! $\rho_{trm,\mathrm{?X}}$" ?M_rho_trm_?X
!equations
?M_trm_?X ...
= ?M_rho_trm_?X * ?M_trm_?X{-1} ...
+ (1 - ?M_rho_trm_?X) * ?M_ss_trm_?X ...
+ ?M_shk_trm_?X ...
!! ?M_trm_?X = ?M_ss_trm_?X;
!end
!end
Postprocessing equations outside model
!postprocessor
!for ?M=<areas> !do
!for ?X=<setdiff(areas, "?M")> !do
"Imports from [?X] to [?M]"
?M_mm_?X = ?M_mm_sh_?X * ?M_mm;
!end
!end
!log-variables !all-but