economia.unipv.iteconomia.unipv.it/pagp/pagine_personali/msassi/qpa/bo… · web view6....
TRANSCRIPT
6
Production and supply analysis
6.1. Introduction
The quantity supplied refers to the amount of a certain good producers are willing to supply when
receiving a certain price. Supply analysis has the purpose of understanding how producers respond to
changes in:
- Product prices;
- Factor prices;
- Technology;
- Access to certain constraining factors of production.
It helps characterizing the impact of policy packages and external shocks on producers’ response which
is an essential component of models aimed at explaining market prices, wage and employment, external
trade, and government fiscal revenues.
Producers’ response depends on two elements. They are:
- The technological relation between any combination of inputs and resulting output, which is
represented by the production function; and
- The behaviour in choice of inputs given the level of market prices for the commodities produced and
the factors employed in the production process.
For this reason, the Chapter starts with the introduction of production function and in this context
considers one of the most relevant aspect in policy analysis, namely the technical progress. This latter
issue is modeled with GAMS’ language with reference to two functional form of production function
previously introduced in the theoretical section.
Afterwards, the Chapter considers supply analysis. A particular attention is provided to the presentation
and modeling of own- and cross-price effects.
As in the case of demand analysis, also in this part of the paper some new GAMS elements are
introduced. The focus is on how to simulate a shock and on important components requested to
organize the solution of a model. In addition, the examples provide new elements for data entry and
equation writing.
6.2. Production Function and technical change
The production function for a particular good (q) shows the maximum amount of the good that can be
produced using alternative combinations of factors. These latter can be variable, when can be
purchased in the desired quantity, or fixed. This classification also depends on time. In the short run
factors of production are said to be fixed. In the medium run some but not all factors may be adjusted.
For example, land is fixed in the medium run. In the long run all the factors of production are
considered flexible.
The most adopted production functions are:
1. Linear production function;
2. Fixed proportions production function;
3. Cobb-Douglas production function;
4. Constant Elasticity of Substitution (CES) production function
Assuming only two factors of production, that is labor (L) and capital (K) and indicating with q the
quantity produced their functional form is shown by Table 30.
Table 30 – Production function typology and main features
Production function
typology
Equation Parameters Comments
Linear production
function
q=A+αK+βL α ,β>0
Fixed proportions (or
Leontief) production
function
q=min (αK ,βL ) α ,β>0
Cobb-Douglas
production functionq=A Kα+Lβ A>0∧α ,β>0
α ,β=¿ elasticities of output with respect to capital and labour
α ,+ β=1 constant returns to scale α ,+ β>1 increasing returns to scaleα ,+ β<1 decreasing returns to scale
CES production
functionq=A (K−ρ+L− ρ )
−ϵρ A>0 , ρ ≠0 , ϵ>0
- ρ = 1 linear production function;
ϵ>0 = increasing returns to scaleϵ<0= decreasing
- ρ = -∞ fixed proportions production function; ρ = 0 Cobb-Douglas production function.
returns to scale
Variations in the level of production depend on those in the quantities of inputs adopted. For policy
purposes, a relevant issue in this respect is the analysis of the effect of a technical progress.
Let us consider the following general specification of production function:
q=At f (L, K )
where A(t) represents all influences that go into determining q other than K and L, over time t.
Technical progress represents a change in A, over time. A is taken as a function of time (t) with
dAdt
>0
A technology progress is called Hicksian neutral when the marginal rate of technical substitution
among factors of production does not change with time.
Let us consider the a Cobb-Douglas production function
q=At Kα+Lβ
Assuming that technical progress occurs at a constant exponential (q), the CD production function can
be rewritten as
q=At eθ Kα+Lβ
An Hicksian neutral technical progress at a constant exponential (q) is incorporated in a CES
production function as follows
q=At eθ (K−ρ+L−ρ)
−ϵρ
Technical progress can also be factor saving.
Let us consider qi the efficiency measure, with i labour or capital. Our CES production function can be
written as
q=At (θk K−ρ+θlL
−ρ )−ϵρ
In this case, technical progress affect the factors of production and qk and ql represent a capital-saving
and a labour-saving technological change, respectively.
6.3. Hicksian neutral technical progress in a CD production function
Let us consider a production model for two commodities, rice and sugar, with the production function
specified in the form of a Cobb-Douglas combination of labour and capital. Simulate an exponential
rate of Hicksian neutral technical progress by e0.50.
The available information is illustrated in Table 31.
Table 31 – Available information
Rice Sugar Efficiency parameter 1.012 1.000Capital elasticity of production 0.517 0.75Labour elasticity of production 0.317 0.45Labour units of input 59.36 49.93Capital units of input 42.05 30.73
The new aspects in this example are:
- The mathematical notation for exponential;
- how to run a simulation.
The mathematical notation required by GAMS for and exponential is
exp(0.50)
Concerning how to run a simulation there are at list two ways that can be followed. They are:
- a two-step approach consisting in:
- the computation of the base run;
- the introduction of the technical change in the model and its run
- the comparison between the two solutions;
- the use of a specific statement to see the base run and the simulation result on the same output file.
The LOOP statement allows running this latter option. It has the peculiar feature to allow the user to
execute a group of statements for each element of a set.
1. Attribute a generic symbol to each model element (Table 32)
Table 32 – Generic symbols
SymbolCommodities iEfficiency parameter ACapital elasticity of production BLabour elasticity of production CLabour units of input LCapital units of input KTime t=0
2. Write the equations;
The Cobb-Douglas production function is specified as follows:
q i=Ai K iα i+Li
βi
In the base run
Ai=A i ,0
In order to simulate the technical progress, both parameters must be defined and declared.
As illustrate in the model written in GAMS’ language in the following, the model is articulated into
two part. From the first Set to the Solve command it is structured in order to solve the base run, while
the second part enters the simulation and the command to show the output from the base run and the
simulation.
*GAMS model for technical progressSETSi Commodity type /rice, sugar/;PARAMETERSA0(i) Efficiency parameterA(i) InterceptB(i) Capital elasticity of productionC(i) Labour elasticity of productionL(i) Labour units of inputK(i) Capital units of input;
A0('rice')=1.012; A0('sugar')=1;B('rice')=0.517; B('sugar')=0.75;C('rice')=0.317; C('sugar')=0.45;L('rice')=59.36; L('sugar')=49.93;K('rice')=42.05; K('sugar')=30.73;
A('rice')=A0('rice'); A('sugar')=A0('sugar');VARIABLESQ(i) Quantity produced;
EQUATIONSPRODUCTION Production function equation;PRODUCTION (i)..Q(i)=E=A(i)+(K(i)**B(i))+(L(i)**C(i));MODEL PRODTC /ALL/;SOLVE PRODTC USING MCP;SETSSIM Simulation/TP/;PARAMETERSATP(i,SIM) Technical progressTODO Parameter to activate the simulation;ATP(i,SIM)=A0(i)*exp(0.50);TODO=1;LOOP(SIM('TP'), IF (TODO EQ 1, A(i)=ATP(i,SIM)));IF(TODO EQ 1, SOLVE PRODTC USING MCP);
The statement LOOP is entered after the Solve command. As previously underlined LOOP allows the
user to execute a group of statements for each element of a set. In the model the SET is called SIM and
represents our simulation to which has been attributed a name, TP. Another name can be selected by
the user.
Two new parameters have been declared and defined.
The one is ATP(i,SIM) and represents the technical progress. It has two indices i for the specific
commodity and SIM to make this parameter indexed to the run simulation.
The definition of this parameter implies a direct assignments – the third format that is allowable for
entering data. In fact, technical progress acts on A0, that is the initial value of the parameter. In fact,
ATP(i,SIM)=A0(i)*exp(0.50);
The second parameter is todo and it activates the simulation when assume the attributed value of 1.
Afterwards, the LOOP statement tells GAMS that every time (IF) the parameter todo equals 1, A(i) has
to equal ATP(i,SIM), meaning that the technical progress simulation is applied to the model and run.
Instead, whenever todo is different from 1, no operation is done, that is no simulation is carried out.
Finally, the second IF tells GAMS that every time the parameter todo equals 1, the software has to
solve the model a second time. The first time is the one corresponding the previous solve statement,
which provides the baseline scenario. This second time is necessary to solve the model with the
simulation. If this second statement is not added, the model would compute no simulation result.
It should be underlined that todo and its selected value of 1 are arbitrary, the user can chose a different
value, or even a word.
Running the model with the command LOOP the user can read two solutions. The one is in the first
SolVar while that after the shock in the second SolVar. In this way GAMS solves two models.
6.4. Hicksian neutral technical progress in a CES production function
Following the same framework adopted in the previous paragraph, simulate exponential rate of
Hicksian neutral technical progress by e0.50 adopting a CES production function for two commodities,
rice and sugar. Available data is in Table 33.
Table 33 – known information
Rice Sugar Efficiency parameter 1.40 1.000Ro 0.176 0.240Eta 0.92 0.88Labour units of input 59.36 49.93Capital units of input 42.05 30.73
Use the statement LOOP to show the base run and simulation’s results.
The model in GAMS language is written as in the following.
*GAMS model for technical progressSETSi Commodity type /rice, sugar/;PARAMETERSA0(i) Initial interceptA(i) InterceptB(i) RoC(i) EtaL(i) Labour units of inputK(i) Capital units of input;A0('rice')=1.40; A0('sugar')=1;B('rice')=0.176; B('sugar')=0.240;C('rice')=0.92; C('sugar')=0.88;L('rice')=59.36; L('sugar')=49.93;K('rice')=42.05; K('sugar')=30.73;A('rice')=A0('rice'); A('sugar')=A0('sugar');VARIABLESQ(i) Quantity produced;EQUATIONSPRODUCTION Production function equation;PRODUCTION (i)..
Q(i)=E=A(i)*((K(i)**(-B(i)))+(L(i)**(-B(i))))**(-C(i)/B(i));MODEL PRODTC /ALL/;SOLVE PRODTC USING MCP;SETSSIM Simulation/TP/;PARAMETERSATP(i,SIM) Techincal progressTODO Parameter to activate the simulation;ATP(i,SIM)=A0(i)*exp(0.50);TODO=1;LOOP(SIM('TP'), IF (TODO EQ 1, A(i)=ATP(i,SIM)));IF(TODO EQ 1, SOLVE PRODTC USING MCP);
6.5. Supply
The quantity supplied refers to the amount of a certain good producers are willing to supply given:
- The price of the good supplied;
- The price of related goods;
- The price of variable factors;
- The quantity of fixed factors;
- The state of technology.
In policy analysis, the supply function is used to understand the response of producers of a product to
the determinants of supply.
The focus is generally on two cases, that is the analysis of:
- Own-price effect on supply, with the own-price the price of the commodity supplied.
- Cross-price effect on supply, with the cross-price the price of related commodities.
The core component of the former issue is the own-price elasticity of supply. It measures the supply
response to its price. According to the low of supply the higher the own price, the larger the quantity
supplied, all other things constant: the elasticity has a positive sign.
Assuming the following double-log supply function
ln (S )=A+B∗ln (P)
where S is the quantity supplied of a certain commodity, A the technical coefficient, P the own-price, B
represents the own-price elasticity.
According to its magnitude, supply can be classified in the four typologies listed in Table 34.
Table 34- Supply types according to the own-price elasticity
Own-price elasticity Supply type
B>1 Supply is price elastic
B>1 supply is price inelastic
B=0 Supply is perfectly inelastic
B=∞ Supply is perfectly elastic
The cross-price elasticity is at the basis of the cross-price effect on supply analysis for policy purposes.
It measure the relationship between supply of a good and prices of the related goods.
Considering the double-log supply function given by
ln (Si )=A i+Bii∗ln (Pi )+Bij∗ln (P j )+…+Bik∗ln (Pk )
where “i” is the supplied good and “j” the k related goods, Bii is the own price elasticity and Bij ,…,B ik
the cross-price elasticities.
When the cross-price elasticity is positive the related goods are complementary. On the contrary, if it is
negative, the goods are substitutes.
6.6. Example with the own-price elasticity
Simulate the effect of:
- an increase in price of corn and beef in two markets (North and South) on their supply; and
- a Hicksian neutral technical progress on supply of both commodities produced;
and calculate and show the percentage change in corn and beef price and supply with respect to the
base run.
The available information is shown in Table 35 where the elements of the model with the index 0 are
the observed components.
Table 35 – Available information
North South Corn
(ton00) Beef
(kg00) Corn
(ton00) Beef
(kg00) Observed technical coefficient (A0 ) 1.03 0.47 0.55 0.7Observed own-price elasticity (B) 1.08 1.17 1.02 0.88Observed price 167 168.86 179.46 173.45
(P0)Shock
P – new price 172.95 174.55 180.66 184.69A – new technical coefficient A0*exp(0.5) A0*exp(0.5) A0*exp(0.5) A0*exp(0.5)
Functional form
Supply function double-log supply function
double-log supply function
double-log supply function
double-log supply function
According to the data provided by the above Table, Technical progress affects the initial value of the
technical coefficient, which is augmented by exp(0.5). The own-price elasticity is fixed over time.
As the symbol to each model element is already attributed, let us write the equations that are two; the
one at the initial year and the other after the shock.
The former is given by
ln (SC , R ,0 )=AC , R,0+BC ,R∗ln (PC , R , 0 )C=Corn ,Beef R=North , South
while the latter is specified as follows
ln (SC , R )=AC , R+BC , R∗ln (PC , R )C=Corn ,Beef R=North ,South
where AC , R=AC , R , 0∗exp (0.5)
Table 36 classifies the elements of the model according to the GAMS commands, following Table 4 in
Par.3.4.
Table 36 - Elements of a model and GAMS’ commands
Element Type GAMS’ Command
C Index Sets
R Index Sets
Observed values
A0 Observed exogenous variable Parameters
B Observed parameter Parameters
P0 Observed exogenous variable Parameters
A Observed exogenous variable Parameter
P Observed exogenous variable Parameters
Unknown variables
S0 Endogenous variable Variables
S Endogenous variable Variables
System of equations
SUPPLIN Supply function - initial period Equations
SUPPLFIN Supply function – after shock Equations
The final step consists in writing the model in the GAMS language. The model has two objectives
consisting in:
- simulating the shocks;
- calculating and showing the percentage change in corn and beef price and supply.
Each of them represents a part of the model. Nothing new in writing a model for the first purpose.
However, two aspects must be carefully addressed.
The model requires four TABLES (for A0, B, P0 and P) and one PARAMETER for A with a direct
assignment, that is
PARAMETER
A(C,R)Intercept of the new supply equation;
A(C,R)=A0(C,R)*exp(0.5);
Moreover, as the equations are double-log functions, GAMS must start the search of the solution value for
the endogenous variables with a positive number. This fact requires the introduction, after the MODEL
statement, of the specific command illustrated in Par. 5.5.6. whose syntax is
<variable name>.L (<index,index>)=1
The second part of the model is developed after the command SOLVE. It calculates the percentage
changes in corn and beef price and supply and, then, shows these values.
In order to calculate the above mentioned percentage changes, the solution of the previously specified
model provides all the requested information. For this reason, the second part of the model start with
the declaration of two new exogenous component with the command PARAMETERS: PCPRICE(C,R)
for the percentage change in price and PCSUP(C,R) for the percentage change in supply. Their
definition consists in the mathematical formula for the computation of the percentage change, that is
PCPRICE(C,R)=((P(C,R)-P0(C,R))/P0(C,R))*100;
PCSUP(C,R)=((S.L(C,R)-S0.L(C,R))/S0.L(C,R))*100;
As changes are calculated, it might be useful to limit the number of decimals the result provides (two in
our example). The command OPTION, located after the PARAMETERS statement, allows this
possibility. Its syntax is
OPTION <variable name>:<number of requested decimals>;
Finally the command DISPLAY tells GAMS to show the value of the percentage changes in corn and
beef price and supply.
The overall model written in GAMS has the following structure.
*GAMS model for supply with an increase in price and technical change, two markets and productsSETSC Commodities
/CornBeef/
R Regions/NorthSouth/;
* Write tables with the structure of the initial equation and then specify new price TABLE A0(C,R) Initial intercept value
North SouthCorn 1.03 0.55Beef 0.47 0.7;
TABLE B(C,R) Own price elasticityNorth South
Corn 1.08 1.02Beef 1.17 0.88;
TABLE P0(C,R) Initial price (US dollars)North South
Corn 167 179.46Beef 168.86 173.45;
TABLE P(C,R) Simulation price (US dollars)North South
Corn 172.95 180.66Beef 174.55 184.69;
PARAMETERA(C,R) Intercept of the new supply equation;
A(C,R)=A0(C,R)*exp(0.5);
VARIABLESS0(C,R) Initial supplyS(C,R) New supply after increase in price;
EQUATIONS
SUPPLIN Initial supply equationSUPPLFIN Supply after price change;
SUPPLIN (C,R)..LOG(S0(C,R))=E=A0(C,R)+B(C,R)*LOG(P0(C,R));SUPPLFIN(C,R)..LOG(S(C,R))=E=A(C,R)+B(C,R)*LOG(P(C,R));
MODEL SMODPR /ALL/;S0.L(C,R)=1;S.L(C,R)=1;SOLVE SMODPR USDING MCP;
PARAMETERS
PCPRICE(C,R) Percentage change in pricePCSUP(C,R) Percentage change in supply;
PCPRICE(C,R)=((P(C,R)-P0(C,R))/P0(C,R))*100;PCSUP(C,R)=((S.L(C,R)-S0.L(C,R))/S0.L(C,R))*100;
*Write that you only want two decimals
OPTION PCPRICE:2;OPTION PCSUP:2;
DISPLAY PCPRICE, PCSUP;
6.7. Example with the cross-price elasticity
This example is similar to the previous. It is aimed at:
- modeling the effect on supply of an increase in price of corn and beef in two markets; and
- calculating and showing the change in price and supply with respect to the base run.
Again, the functional form of supply function is a double-log, the two markets are North and South and
the two commodities Corn and Beef, which are complementary goods. This means that supply of each
commodity depends on its price and that of the other considered commodity.
How to model cross-price elasticity in GAMS is the new aspect of this exercise.
The available information is provided by Table 37.
Table 37 – Available information
North SouthCorn (ton00)
Beef (kg00)
Corn (ton00)
Beef (kg00)
Technical coefficient -0.096 -3.633 -2.045 0.184Own price 167 168.86 179.46 173.45Own price elasticity 1.08 1.17 1.02 0.88Cross-price elasticity: - Elasticity of corn supply with respect to beef price 0.22 0.50 - Elasticity of beef supply with respect to corn price 0.08 0.10
ShocksNew price 172.95 174.55 180.66 184.69
Let us attribute a symbol to each element of our model (Table 38). In this model, each supply function
depends on price of two typologies of commodity, that supplied and the complementary. For this
reason, two indices for the for the commodities must be specified.
Table 38 – Symbols for the element of the model
Element Symbol
Commodities supplied C
Complementary commodities CC
Regions R
Initial supply S0
Supply after the shock S
Technical coefficient A
Initial Price P0
Elasticity B
Price after the Shock P
In light of the above introduced symbols, the equations of the model are specified as follows.
The initial supply is given by
ln (S0 ,C , R )=AC , R+BC ,C , R∗ln (P0 ,C , R )+BC ,CC, R∗ln (P0 ,CC , R )
It can be rewritten using the Σ function as follows
ln (S0 ,C , R )=AC , R+ ∑k=C ,CC
BC ,k , R∗ln (P0 , k ,R )
After the shock the equation is given by
ln (SC , R )=AC , R+ ∑k=C ,CC
BC , k , R∗ln (Pk ,R )
This two latter equations must be written in GAMS language.
The first new aspect to be considered is in SET. In fact, C and CC have the same definition, Corn and
Beef. GAMS allows to avoid to declare and define an equal index using the command ALIAS. In other
words, this command is used to give another name to a previously declared set.
In our example the command is specified as follows
ALIAS (C,CC)
and tells GAMS that the name CC is identical to C in mathematical notation.
The second new aspect is in data entry for elasticity. A table is requested and three indices must be
indicated.
The statement is specified as follows
TABLE B(C,CC,R) Price elasticity North SouthCorn.Corn 1.08 1.02Beef.Beef 1.17 0.88Corn.Beef 0.22 0.50Beef.Corn 0.80 0.10;
In TABLE declaration the letters in brackets (C,CC, R) after the general symbol of the parameter (B),
indicates the first two the former and the latter elements of lines, the third the title of columns.
The last new aspect in this model is how to write the sum function in GAMS language.
The syntax is
The overall model is reported in the following.
*GAMS model for supply with an increase in price, two markets and products cross price elasticitySETSC Commodities supplied /Corn Beef/R Regions /North South/;
ALIAS (C, CC)
TABLE P0(C,R) Initial price (US dollars) North SouthCorn 167 179.46Beef 168.86 173.45;
TABLE A(C,R) North SouthCorn -0.096 -2.045Beef -3.633 0.184
TABLE B(C,CC,R) Price elasticity North SouthCorn.Corn 1.08 1.02Beef.Beef 1.17 0.88Corn.Beef 0.22 0.50Beef.Corn 0.80 0.10;
SUM(<index>, <expression>)
TABLE P(C,R) Simulation price (US dollars) North SouthCorn 172.95 180.66Beef 174.55 184.69;
VARIABLESS0(C,R) Supply before shockS(C,R) New supply after increase in price;
EQUATIONSSUPPLIN Supply before shockSUPPLFIN Supply after price change;
SUPPLIN(C,R)..LOG(S0(C,R))=E= A(C,R)+SUM(CC, B(C,CC,R)*LOG(P0(CC,R)));SUPPLFIN(C,R)..LOG(S(C,R))=E=A(C,R)+SUM(CC, B(C,CC,R)*LOG(P(CC,R)));
MODEL SMODPR /ALL/;S0.L(C,R)=1;S.L(C,R)=1;SOLVE SMODPR USDING MCP;
PARAMETERS
PCPRICE(C,R) Percentage change in pricePCSUP(C,R) Percentage change in supply;
PCPRICE(C,R)=((P(C,R)-P0(C,R))/P0(C,R))*100;PCSUP(C,R)=((S.L(C,R)-S0.L(C,R))/S0.L(C,R))*100;
*Write that you only want two decimals
OPTION PCPRICE:2;OPTION PCSUP:2;
DISPLAY PCPRICE, PCSUP;
7
Market equilibrium
7.1. Introduction
In market equilibrium, demand and supply are considered together in order to define the equilibrium
price, which is the price level that equalizes quantity supplied and demanded.
In this Chapter, these aspect are analyzed theoretically within a closed and an open economy. Within
this latter framework trade policies are introduced.
Each theoretical aspect finds application in a specific example. Modeling an open economy with
GAMS requests some modification in the structure of the model in order to consider the specificities
related to trade.
Moreover, the impact of a selection of trade policy is simulated within specifically designed models.
7.2. Closed economy: theory and an example in GAMS
In a closed economy trade is absent.
Given the supply (S) and demand function (D), the equilibrium price (P*) makes quantity demanded
and supplied equals. These latter are called equilibrium demand (D*) and supply (S*).
Within a neoclassical framework, the market equilibrium in a closed economy is represented in Figure
47, where it is reached at point A.
Figure 47 – Market equilibrium in a closed economy
Let us consider the following example referred to a closed economy where demand and supply of two
commodities (meat and fish) are linear function. In this context, an increase by 0.2 in income
coefficient of demand is simulated. In this exercise, we also want GAMS to show the equilibrium level
of demand, supply and price before and after the shock.
The available data is in Table 39.
Table 39 – Available information
Meat Fish Demand functionIntercept of demand function 0.07 0.012Price coefficient of demand -0.804 -0.441Income coefficient of demand 1.121 0.675Income (per month, per capita, 000 LC) 1.300Supply functionIntercept of supply function 1.03 0.47 Price coefficient of supply 1.08 0.87
First of all, symbols must be attributed to the elements of the model (Table 40).
Table 40 – Symbols for the element of the model
Element of the model Symbol
Commodities C
Intercept of demand function A
0 Quantity
Price
D
S
P*
D*=S*
A
Price coefficient of demand B
Income coefficient of demand G
Income (per month, per capita, 000 LC) Y
Intercept of supply function F
Price coefficient of supply Z
Demand D
Supply S
Price P
Supply function SUPPLY
Demand function DEMAND
Equilibrium condition EQUIL
The second step consists in writing the system of equations of the model. The base run is computed by
the following equations
DC=AC+BC∗PC+GC∗Y C
SC=FC+ZC∗PC
DC=SC
The GAMS commands requested are listed in Table 41.
Table 41 - Elements of a model and GAMS’ command for their specification
Element Type GAMS command
C Index Sets
Observed values
A Observed exogenous variable Parameters
B Observed parameter Parameters
G Observed parameter Parameters
Y Observed exogenous variable Parameters
F Observed exogenous variable Parameters
Z Observed parameter Parameters
Unknown variables
D Endogenous variable Variables
S Endogenous variable Variables
P Endogenous variable Variables
System of equations
Supply Supply function Equations
Demand Demand function Equations
Equil Equilibrium condition Equations
The model is written as in the following. In it, the result of the simulation is shown by the command
DISPLAY.
*GAMS model market equilibrium in a closed economy SETSC Commodity trade
/MeatFish/;
PARAMETERSA(C) Intercept demand function
/Meat 0.07Fish 0.012/
B(C) Price coefficient of demand/Meat -0.804Fish -0.441/
G(C) Income coefficient/Meat 1.121Fish 0.675/
F(C) Intercept supply function/Meat 1.03Fish 0.47/
Z(C) Price coefficient of supply/Meat 1.08Fish 0.87/
Y Income coefficient of demand;Y=1.300;VARIABLESD(C) Quantity demandedS(C) Quantity suppliedP(C) Equilibrium price;EQUATIONSDEMAND Demand equationSUPPLY Supply equationEQUIL Equilibrium equation;
DEMAND(C)..D(C)=E=A(C)+B(C)*P(C)+G(C)*Y;SUPPLY(C)..S(C)=E=F(C)+Z(C)*P(C);EQUIL(C)..S(C)=E=D(C);MODEL CLMKEQ /DEMAND
SUPPLYEQUIL/;
SOLVE CLMKEQ USING MCP;DISPLAY 'SIMULATION 0: Base run';*Simulation 1: 0.2 increase in income elasticity of demandG(C)=G(C)+0.20;SOLVE CLMKEQ USING MCP;DISPLAY 'SIMULATION 1: 0.2 increase in income elasticity of demand';DISPLAY D.L, S.L, P.L;
Contrary to the command LOOP, the two solutions, the base run and that after the shock, are the former
under SolVAR and the second under DISPLAY.
7.3. Open Economy
In an open economy trade is allowed. For modelling an open economy three concepts are important.
The first key aspect is the distinction between a large country, whose imports and exports are a
significant share in the world market for the product, and a small country whose imports and exports
are a small share. Domestic trade policies can affect the world price of the good only if introduced by a
large country.
The second element to consider is that:
- Import price is a CIF price, that is on the dock or other entry point in the receiving country and
including Cost, Insurance and Freight;
- Export price is a FOB price, that is at the exit point in the exporting country
and Free on Board.
The third important issue to be highlighted is the comparison between the international price and the
price received by producers on the domestic market. First, in order to allow this comparison, the
concept of financial parity price should be introduced. It is the international price expressed in local
currency. Without entering in the issues related to the computation of this variable, indicating with e
the exchange rate and pw the world price, the financial parity price, or border price, pb is given by
pb=e∗pw
The comparison between the price received by producers domestically ( pd) and the border price allows
distinguishing goods according to their tradability.
Let us consider the situation described by Figure 48, where pmb is the import border price and px
b is the
export border price.
Figure 48 - Non tradable good
As
pd< pmb
and
pd> pxb
the good under consideration will not be traded, it is a so called non tradable commodity. The opening
of trade has no consequence for the domestic economy.
In Figure 49, as pd< pxb export is justified and it is equal to the amount (0qs−0qd).
Figure 49 – Exportable good
bmp
bxp
Price
D
S
pd
q0
Under these conditions, the good traded is called exportable good. The opening of trade increases:
- producers’ supply to qs;
- domestic price with a gain for producers and a loss for consumers.
In Figure 50, imports are justified because pd> pmb and the good is called importable good.
Figure 50 – Importable good
The opening of trade reduces:
- producers’ supply to qs;
- domestic price with a gain for consumers and a loss for producers.
If there is no restriction import and export prices represent the upper and the lower limit of price in the
port city of the country
They differ because of transportation cost, insurance and freight.
Price
D
Sbxp
qd qs
pd
exports
D.S.
q0
Price
Quantity
D
S
bmppd
qdqs
D.S. imports
q0
In light of this consideration, the condition for an exportable good to be sold for profit on the domestic
market and not exported because it is less convenient is that
pd+TC ≥ pxb=e∗pw
where TC is transportation cost, insurance and freight.
Similarly, for a good to be demanded domestically and not imported
pd≤ pmb +TC=(e∗pw )+TC
These conditions should be specified in GAMS when a model is aimed at calculating domestic price in
an open economy.
7.4. Modelling market equilibrium in an open economy with GAMS
For simplicity, let us consider a small open economy in order to calculate the base run value of
demand, supply, price, import and export of two commodities, meat and fish.
The available information is shown in Table 42.
Table 42 – Available information
Meat Fish Linear demand function
Intercept of demand function 0.07 0.012 Own price elasticity of demand -0.804 -0.441 Income elasticity of demand 1.121 0.675 Income (per month, per capita, 000 LC) 1.300
Linear supply functionIntercept of supply function 1.03 0.47 Own price elasticity of supply 1.08 0.87 World price exports 92 (U$A) 84 (U$S) World price imports 98(U$A) 90(U$A) Transportation costs, insurance and freight 5 (LC) 8(LC) Exchange rate 2 local currency (LC) per 1 dollar
The model in GAMS is written as follows.
*GAMS model market equilibrium in an open economy SETC Commodity trade
/MeatFish/;
PARAMETERS
WP(C,*) World price/Meat.WX 92Meat.WM 98Fish.WX 84Fish.WM 90/
A(C) Intercept demand function/Meat 70Fish 1200/
B(C) Own price elasticity of demand/Meat -0.804Fish -0.441/
G(C) Income elasticity/Meat 1.121Fish 0.675/
F(C) Intercept supply function/Meat 1.03Fish 0.47/
Z(C) Own price elasticity of supply/Meat 1.08Fish 0.87/
TC(C) Transportation costs/Meat 5Fish 8/
Y Income elasticity of demandER Exchange ratePX(C) Export pricePM(C) Import price;Y=1300;ER=10;PX(C)=ER*WP(C, ‘WX’);PM(C)=ER*WP(C, ‘WM’);POSITIVE VARIABLESX(C) Quantity exportedM(C) Quantity imported;VARIABLESD(C) Quantity demandedS(C) Quantity suppliedP(C) Equilibrium price;EQUATIONSDEMAND Demand functionSUPPLY Supply functionEQUIL Equilibrium conditionEXPORT Export price relationshipIMPORT Import price relationship;DEMAND(C)..D(C)=E=A(C)+B(C)*P(C)+G(C)*Y;SUPPLY(C)..S(C)=E=F(C)+Z(C)*P(C);
EQUIL (C)..S(C)+M(C)-X(C)=E=D(C);EXPORT(C)..P(C)+TC(C)=G=PX(C);IMPORT(C)..PM(C)+TC(C)=G=P(C);MODEL OPMKEQ /DEMAND
SUPPLYEQUILEXPORT.XIMPORT.M/;
SOLVE OPMKEQ USING MCP;
The model introduces some new aspects.
First, there is a notation issue concerning data entry. Instead of using the command TABLE for world
price, the alternative Parameters notation, introduced in Par. 5.5.3, with the * for the index to be
subsequently specified has been preferred. In fact, it facilitates in data entry the direct assignment of
export and import price, where WX and WM must be in quotes.
The other new aspects relate to the peculiar case under consideration, that is the open economy.
First of all, in EQUATIONS, the equilibrium condition includes exports and imports and not only
demand and supply as in the closed economy. In GAMS language
EQUIL Equilibrium
condition;
EQUIL (C)..S(C)+M(C)-X(C)=E=D(C);
Again in EQUATIONS, the relationship between domestic and world prices should be identified
writing the inequalities illustrated in Par. 7.3. That is
EXPORTS Exports price relationship
IMPORTS Imports price relationship;
EXPORT(C)..P(C)+TC(C)=G=PX(C);IMPORT(C)..PM(C)+TC(C)=G=P(C);
where =G= means greater than.
In order to solve inequalities, GAMS requires to establish a complimentary relationship between each
inequality and a variable.
In our example:
- export inequality
EXPORT(C)..
P(C)+TC(C)=G=PX(C);
is associated with the quantity exported (X);
- import inequality
IMPORT(C)..
PM(C)+TC(C)=G=P(C);
is associated with the quantity imported (M)
used in the equation for the definition of the equilibrium condition.
This association implies that in the command MODEL the notation for the equation EXPORT and
IMPORT must be followed by a dot and the name of the associated variable, that is
- EXPORT.X
- IMPORT.M
The associated variables must also by defined under the peculiar command, POSITIVE VARIABLES,
before the VARIABLES command.
7.5. Trade policy
Governments can impose regulations on trade in order to protect domestic markets. Trade protection
can be direct or indirect. The former affects commodities as they enter international trade as imports or
exports. Among them there are: import tariffs; import quotas (export quotas); voluntary export
restraints; export subsidies; sanitary and phytosanitary restrictions; government procurement policies;
red-type barriers.
On the contrary indirect interventions are focused on domestic production rather than trade but have
definite trade implications. In this category there are: exchange rate management; commodity
programmes; marketing supports; input subsidies and tax exemptions; long term investment assistance.
In the following two examples are discussed. First, in the model presented in Par. 7.4, an import tariff
and an import quota are included. Finally, an exchange rate devaluation is simulated.
In order to better understand the exercises, additional information on the peculiar trade protection
measures is provided.
Tariffs are the simplest and oldest form of trade policy instrument primarily introduced as source of
government revenue or instrument of protection of particular domestic sectors from international
competition by artificially increasing the domestic price of the imported good.
A tariff is a tax levied on an imported good. It can be:
- Specific, that is levied as a fixed charge per unit of import good;
- Ad valorem, that is levied as a percentage of CIF price;
- Two part, when it includes both the previous mentioned typologies.
A specific and ad valorem tariff can be fixed or variable according to the fact that it is a given charge
per unit of import good or the charge vary according to the CIF price.
The effect of an import tariff is to increase the domestic price of imports.
An import quota is a limitations on the quantity of goods that can be imported into a country during a
specified period of time. It can be unilaterally imposed by a government or negotiated among countries
that voluntary agree to restrict imports. According to its level an import quota can be binding, below
the free trade import level, or non binding, equal or above the free trade level.
Concerning the exchange rate, three regimes are allowed. They are:
- Flexible exchange rate regime, when government intervention is minimal;
- Fixed exchange rate regime, when government intervention is as deep as possible;
- Crawling peg, that is a fixed-rate system in which government declares a schedule of weekly or
monthly changes in the rate with the purpose of tracking the expected movements in the market.
Moreover, exchange rate can be nominal, effective or real.
The nominal exchange rate (e) is the price of foreign currency (FC) in terms of domestic currency units
(LCU). That is
e= LCUFC
In a flexible exchange rate regime domestic currency and by extension the exchange rate depreciate
(appreciate) when the local currency unit price of foreign currency increases (decreases); in a fixed
exchange rate regime an increase (decrease) in exchange rate is called devaluation (revaluation).
The effective exchange rate (eef ¿ is the nominal exchange rate that adjusts to import tariffs (tm¿ and
export taxes (t x), in mathematical notation it is given by:
eef=e ( 1+ tm−t x )
The real exchange rate (eℜ) is the nominal exchange rate that adjusts to changes in purchasing power of
the dollar, that is
eℜ=e P$
Pd
where P$ is US wholesale price index and Pd the country’s own consumer price index.
7.6. Modelling an import tariff and an export quota in GAMS
In the example in par. 7.4, let us introduce a fixed ad valorm import tariff and a binding import quota
on meat and fish, as specified in Table 43.
Table 43 – Import tariff
Symbol
Meat Fish
Fixed ad valorem import tariff
MT 0.01 0.05
Binding import quota QU 100 100
The objective of this example is to calculate the base run for: quantity exported; quantity imported;
Implicit import tariff; quantity demanded; quantity supplied; equilibrium price.
The model is written as follows.
*GAMS model market equilibrium in an open economy with import and export tax and quotaSETC Commodity trade /Meat Fish/;PARAMETERSMT(C) Import tariff /Meat 0.01 Fish 0.05/WP(C,*) World price /Meat.WX 92 Meat.WM 98 Fish.WX 84 Fish.WM 90/QU(C) Import quota /Meat 100 Fish 100/A(C) Intercept demand function /Meat 70 Fish 1200/B(C) Own price elasticity of demand /Meat -0.804
Fish -0.441/G(C) Income elasticity /Meat 1.121 Fish 0.675/F(C) Intercept supply function /Meat 1.03 Fish 0.47/Z(C) Own price elasticity of supply /Meat 1.08 Fish 0.87/TC(C) Transportation costs /Meat 5 Fish 8/Y Income elasticity of demandER Exchange ratePX(C) Export pricePM(C) Import price;Y=1300;ER=10;PX(C)=ER*WP(C, 'WX');PM(C)=(ER*WP(C, 'WM'))*(1+MT(C));POSITIVE VARIABLESX(C) Quantity exportedM(C) Quantity importedIMT(C) Implicit import tariff;VARIABLESD(C) Quantity demandedS(C) Quantity suppliedP(C) Equilibrium price;EQUATIONSDEMAND Demand functionSUPPLY Supply functionEQUIL Equilibrium conditionEXPORT Export price relationshipIMPORT Import price relationshipMQUOTA Import quota;DEMAND(C)..D(C)=E=A(C)+B(C)*P(C)+G(C)*Y;SUPPLY(C)..S(C)=E=F(C)+Z(C)*P(C);EQUIL(C)..S(C)+M(C)-X(C)=E=D(C);EXPORT(C)..P(C)+TC(C)+QU(C)=G=PX(C);IMPORT(C)..PM(C)+TC(C)+IMT(C)=G=P(C);MQUOTA(C)..QU(C)=G=M(C);
MODEL OPMKEQ /DEMAND SUPPLY EQUIL EXPORT.X IMPORT.M MQUOTA.IMT/;SOLVE OPMKEQ USING MCP;
The fixed ad valorem import tariff affects domestic price of the related imported good in the sense that
it increases above the world price in local currency. In fact, in our example it is given by
PM(C)=(ER*WP(C, 'WM'))*(1+MT(C));
The case of the binding import quota is a little more complex. Its effect is illustrated in Figure 51.
Figure 51 – Binding import quota
In the absence of an import quota, the price of the analyzed commodity in the country taken in to
consideration (the Home market) would be equalized at Pw, the equilibrium price on the world market.
Let as assume that the Home country, the importing country in free trade, imposes a binding quota
equal to (Q-QT). It restricts the flow of the good across the border. As a consequence, the supply to the
Home market falls. If the price remains the same, it causes an excess of demand in the Home market
that induces an increase in price to Pmd . This higher price, in turn, reduces demand and increases
domestic supply causing a reduction in Home import demand. The change in price is measured by the
so called implicit import tax (IMT) and in modelling with GAMS it enters into de definition of the
import price relationship which becomes
S
D
Quantity
Quantity
Price Price
Import demand
Export supply
Home market
World market
QT
00Imports before quota
Imports after quota
Q
dmPwp
IMPORT(C)..
PM(C)+TC(C)+IMT(C)=G=P(C);
As the binding quota means that imports must be below the free trade import level (QT<Q), in order to
simulate this aspect, an inequality should be included. In our model
MQUOTA(C)..
QU(C)=G=M(C);
As illustrated in the example at Par. 7.4, for inequalities to be solved, GAMS requires to establish a
complimentary relationship between the inequality and a variable. In our example, it is associated to
IQM used in the equation describing the import price relationship.
This association implies that in the command MODEL the notation for the equation IMQ must be
followed by a dot and the name of the associated variable, that is MQUOTA.IQM
The associated variables must also by defined under the specific command, POSITIVE VARIABLES,
before the VARIABLES command.
7.7. Exchange rate devaluation
Making reference to the model illustrated in the previous paragraph (7.7), in this example an exchange
rate devaluation by 20 per cent is simulated. After the simulation the new exchange rate (ERR) is
incremented by 0.20. Using the command LOOP the previously developed model should be
implemented by the following statements located after the command SOLVE.
SETS
SIM Simulation/TP/;
PARAMETERS
EER(SIM) New exchange rate
TODO Parameter to activate the simulation;
EER(SIM)=ER*(1+0.20);
TODO=1;
LOOP(SIM('TP'), IF (TODO EQ 1, ER=EER(SIM)));
IF(TODO EQ 1, SOLVE OPMKEQ USING MCP);
8
Partial equilibrium indicators for policy evaluation
8.1. Introduction
In order to assess the impact of price interventions and policies that shift demand and supply curve
introducing a price distortion. Literature provides a set of indicators. The most popular are
- Welfare effect;
- Government budget effect;
- Rent effect;
- Efficiency effect;
- Balance of payment effect.
The Chapter introduces these instruments and provides a model for evaluating the change in consumer
and producer surplus resulting after an exchange rate devaluation.
8.2. Indicators
The welfare effect is measured by two indicators. They are
- Consumer welfare;
- Producer welfare.
The former specifies the change in consumer surplus as a consequence of a policy intervention and the
latter the change in producer surplus.
The concept of consumer surplus expresses the excess of the price the consumer would be willing to
pay for each unit of a good consumed over the price which is actually paid. Considering the market
equilibrium characterised by Figure 52, it is measured by the area PeAB.
Figure 52 – Market equilibrium
The change in consumer surplus as a consequence of a price distortion introduced by policy
intervention is given by the following equation
∆CS=−c1∗( p1−p0 )−12∗Ed0∗( p1−p0
p1)
2
∗( p0∗c0 )
With Δ the change, c the quantity demanded, p the price, Ed the elasticity of demand, 0 the variable
before the intervention and 1 after the intervention.
The producer surplus is the amount that producers benefit by selling at a market price which is higher
than the price they would be willing to sell for. Turning to Figure 52 it is represented by the area P eCB.
Following a policy affecting prices, the change in producer surplus can be measured by
∆ PS=q1∗( p1−p0 )−12∗Es0∗( p1−p0
p1)
2
∗( p0∗c0 )
where q is the quantity supplied, p the price, Es the elasticity of supply, 0 the variable before the
intervention and 1 after the intervention.
The change in consumer and producer surplus is often measured a share of income dividing the two
above specified equations by the income value.
Government budget effect measures the net of revenues from import tariffs and export taxes and
expenditures from producer and consumer subsidies. It is given by
∆ B=(q1−c1)∗( p0−p1 )
where q is the quantity supplied, c the quantity demanded, p the price, 0 the variable before the
intervention and 1 after the intervention.
0 Q
P S
D
AB
C
Pe
Qe
Rent effect is the rent appropriated by exporters or importers instead of by government in the case of
quantity restrictions on exports or imports that transform a tradable in non-tradable good.
The Efficiency effect is given by summing up the welfare effect, government budget effect, and rent
effect.
Finally, the balance of payment effect is measured by the net of import costs and export earnings.
8.3. Example
Let us consider an exportable good, for example meat, and calculate the change in consumer and
producer surplus as share of initial income following an exchange rate devaluation devaluation.
The available information are provided by Table 44.
Table 44 – Available information
Meat Linear demand function
Intercept of demand function 70 Own price elasticity of demand -0.804 Income elasticity of demand 1.121 Income (per month, per capita, 000 LC) 1300
Linear supply functionIntercept of supply function 1.03Own price elasticity of supply 2.08World price exports 0.9 (U$A)
Exchange rate 5 local currency (LC) per 1 dollar
ShockDevaluation 0.20
The model is defined as follows.
*GAMS model market equilibrium in an open economyPARAMETERSWP World priceA Intercept demand functionB Own price elasticity of demandG Income elasticityF Intercept supply functionZ Own price elasticity of supplyY Income elasticity of demandER Exchange rate;WP = 1.9;
A=70;B=-0.804;G= 1.121;F= 1.03;Z= 2.08;Y=1300;ER=5;POSITIVE VARIABLESX Quantity exportedXX New export quantity;VARIABLESD Quantity demandedS Quantity suppliedP Equilibrium pricePX Export priceDD New demandSS New supplyPPX New export pricePP New price equilibrium;EQUATIONSDEMAND Demand equationSUPPLY Supply equationEQUIL Shipments into out of countryEXPRI Export priceEXPORT Export price relationshipDDEMAND New demand functionSSUPPLY New supply functionEEQUIL Mew equilibrium conditionEEXPRI New export priceEEXPORT New export price relationship;DEMAND..D=E=A+B*P+G*Y;SUPPLY..S=E=F+Z*P;EQUIL..S-X=E=D;EXPRI..PX=E=ER*WP;EXPORT..P=G=PX;DDEMAND..DD=E=A+B*PP+G*Y;SSUPPLY..SS=E=F+Z*PP;EEQUIL..SS-XX=E=DD;EEXPRI..PPX=E=ER*(1+0.20)*WP;
EEXPORT..PP=G=PPX;MODEL OPMKEQ /DEMAND SUPPLY EQUIL EXPRI EXPORT.X DDEMAND SSUPPLY EEQUIL EEXPRI EEXPORT.XX/;SOLVE OPMKEQ USING MCP;PARAMETERCS Change consumer surplusPS Change producer surplus;CS=(-DD.L*(PPX.L-PX.L)-(1/2)*B*((PPX.L-PX.L)/PPX.L)* ((PPX.L-PX.L)/PPX.L)*(PX.L*D.L))/Y;PS=((SS.L+XX.L) *(PPX.L-PX.L)-(1/2)*Z*((PPX.L-PX.L)/PPX.L)* ((PPX.L-PX.L)/PPX.L)*(PX.L*(SS.L+XX.L)))/((S.L*P.L)+(X.L*PX.L));
In the computation of the change in producer surplus, the total meat quantity supplied includes
domestic and export supply. Both the component must be considered.
The model is structured into two sets of equations. The one relates to the model before the shock and
the latter after the devaluation.
A long program can be divided in several modules. The INCLUDE command is used to insert the
commands from one program file into another program file. The syntax of this model is
$INCLUDE “<name of file>”
When GAMS comes to this command, it goes to the other program file and runs all the commands in
that file and, afterwards, returns to run the commands after the INCLUDE command in the original
program file. It must be remembered that all files must be included in the same library.
In our example, the part can be saved in another file with the extension .gms, for example
newesys.gms.
EQUATIONS
DDEMAND New demand function
SSUPPLY New supply function
EEQUIL Mew equilibrium condition
EEXPRI New export price
EEXPORT New export price relationship;
DDEMAND..
DD=E=A+B*PP+G*Y;
SSUPPLY..
SS=E=F+Z*PP;
EEQUIL..
SS-XX=E=DD;
EEXPRI..
PPX=E=ER*(1+0.20)*WP;
EEXPORT..
PP=G=PPX;
The original program file can be written as follows.
*GAMS model market equilibrium in an open economyPARAMETERSWP World priceA Intercept demand functionB Own price elasticity of demandG Income elasticityF Intercept supply functionZ Own price elasticity of supplyY Income elasticity of demandER Exchange rate;WP = 1.9;A=70;B=-0.804;G= 1.121;F= 1.03;Z= 2.08;Y=1300;ER=5;POSITIVE VARIABLESX Quantity exportedXX New export quantity;VARIABLES
D Quantity demandedS Quantity suppliedP Equilibrium pricePX Export priceDD New demandSS New supplyPPX New export pricePP New price equilibrium;EQUATIONSDEMAND Demand equationSUPPLY Supply equationEQUIL Shipments into out of countryEXPRI Export priceEXPORT Export price relationship;DEMAND..D=E=A+B*P+G*Y;SUPPLY..S=E=F+Z*P;EQUIL..S-X=E=D;EXPRI..PX=E=ER*WP;EXPORT..P=G=PX;
$INCLUDE newesys.gms
MODEL OPMKEQ /DEMAND SUPPLY EQUIL EXPRI EXPORT.X DDEMAND SSUPPLY EEQUIL EEXPRI EEXPORT.XX/;SOLVE OPMKEQ USING MCP;PARAMETERCS Change consumer surplusPS Change producer surplus;CS=(-DD.L*(PPX.L-PX.L)-(1/2)*B*((PPX.L-PX.L)/PPX.L)* ((PPX.L-PX.L)/PPX.L)*(PX.L*D.L))/Y;PS=((SS.L+XX.L) *(PPX.L-PX.L)-(1/2)*Z*((PPX.L-PX.L)/PPX.L)* ((PPX.L-PX.L)/PPX.L)*(PX.L*(SS.L+XX.L)))/((S.L*P.L)+(X.L*PX.L));