Bertrand Model for New Entry of Subject Imports

D. Riker, 05/13/19 version

This partial equilibrium (PE) model of tariff changes when there is new entry of subject imports. The model is described in detail in Riker, D. An Industry-Specific Model with New Entry. USITC Economics Working Paper 2019-02-A.
  
The user can modify data inputs, elasticity values, and tariff rates in the simulation by change the values in the ORANGE - shaded lines in the notebook below tab. The spreadsheet will  update the estimated changes in economic outcomes that are reported in the GREEN - shaded cells once the user selects "Evaluate Notebook" under "Evaluation" in the Menu above.
   
This model is provided as a generic analytical tool, and the data and parameter values are fictional and illustrative. Actual data and parameter values should be supplied by the user based on the industry and market to which the model is applied. The model is the result of ongoing professional research of USITC staff and may be updated. The model is not meant to represent in any way the view of the U.S. International Trade Commission or any of its individual Commissioners. The model is posted to promote the active exchange of ideas between USITC staff and experts outside the USITC and to provide useful economic modeling tools to the public.

ClearAll[f];

Parameter Inputs

Elasticity of Substitution (Non-Nested CES)

sigma=4;

Initial Tariff Factor

td0=1;

tr0=1;

tn0=1;

Revised Tariff Factor

ts1=1;

td1=1;

tr1=1;

tn1=1;

Data Inputs: Initial Equilibrium Values

Values

vd0=50;

vr0=25;

vn0=25;

Normalized or Calculated Initial Equilibrium Values

Prices

pd0=1;

pr0=1;

pn0=1;

Market Shares

sd0=(vd0/(vd0+vn0+vr0));

sn0=(vn0/(vd0+vn0+vr0));

sr0=(vr0/(vd0+vn0+vr0));

Calibration of Constant Marginal Costs

cd=pd0 (1+(1/((sigma-1) sd0-sigma)));

cr=pr0 (1+(1/((sigma-1) sr0-sigma)));

cn=pn0 (1+(1/((sigma-1) sn0-sigma)));

Imputation of Marginal Costs

cs=cr;

New Equilibrium Values

sd=((((pd td1))^(1-sigma))/((((pd td1))^(1-sigma))+(((ps ts1))^(1-sigma))+(((pr tr1))^(1-sigma))+(((pn tn1))^(1-sigma))));

ss=((((ps ts1))^(1-sigma))/((((pd td1))^(1-sigma))+(((ps ts1))^(1-sigma))+(((pr tr1))^(1-sigma))+(((pn tn1))^(1-sigma))));

sr=((((pr tr1))^(1-sigma))/((((pd td1))^(1-sigma))+(((ps ts1))^(1-sigma))+(((pr tr1))^(1-sigma))+(((pn tn1))^(1-sigma))));

sn=((((pn tn1))^(1-sigma))/((((pd td1))^(1-sigma))+(((ps ts1))^(1-sigma))+(((pr tr1))^(1-sigma))+(((pn tn1))^(1-sigma))));

FOCd=pd+(pd-cd) ((sigma-1) sd-sigma)==0;

FOCs=ps+(ps-cs) ((sigma-1) ss-sigma)==0;

FOCr=pr+(pr-cr) ((sigma-1) sr-sigma)==0;

FOCn=pn+(pn-cn) ((sigma-1) sn-sigma)==0;

FindRoot[{FOCd,FOCs,FOCr,FOCn},{pd,pd0},{ps,pr0},{pr,pr0},{pn,pn0}]

pd1=pd/.%;

ps1=ps/.%%;

pr1=pr/.%%%;

pn1=pn/.%%%%;

Percent Changes in Prices

% Change in the Price of Domestic Shipments

(((pd1-pd0) 100)/pd0)

% Change in the Price of Type “r” Imports (reference group)

(((pr1-pr0) 100)/pr0)

% Change in the Price of Type “n” Imports (non-subject, not in reference group)

(((pn1-pn0) 100)/pn0)

Change in Value of Imports and Domestic Shipments

vs1=(vd0+vr0+vn0)*((((ps1 ts1))^(1-sigma))/((((pd1 td1))^(1-sigma))+(((ps1 ts1))^(1-sigma))+(((pr1 tr1))^(1-sigma))+(((pn1 tn1))^(1-sigma))))

Change in the Value of Expenditure on Subject Imports

dvs=vs1-0

vd1=(vd0+vr0+vn0)*((((pd1 td1))^(1-sigma))/((((pd1 td1))^(1-sigma))+(((ps1 ts1))^(1-sigma))+(((pr1 tr1))^(1-sigma))+(((pn1 tn1))^(1-sigma))))

Change in the Value of Expenditure on Domestic Shipments

dvd=vd1-vd0

vr1=(vd0+vr0+vn0)*((((pr1 tr1))^(1-sigma))/((((pd1 td1))^(1-sigma))+(((ps1 ts1))^(1-sigma))+(((pr1 tr1))^(1-sigma))+(((pn1 tn1))^(1-sigma))))

Change in the Value of Expenditure on Reference Group Imports

dvr=vr1-vr0

vn1=(vd0+vr0+vn0)*((((pn1 tn1))^(1-sigma))/((((pd1 td1))^(1-sigma))+(((ps1 ts1))^(1-sigma))+(((pr1 tr1))^(1-sigma))+(((pn1 tn1))^(1-sigma))))

Change in the Value of Non - Subject Imports

dvn=vn1-vn0