Вы находитесь на странице: 1из 74

Practical DSGE Modelling

Alina Barnett Martin Ellison

Bank of England, December 2005

Practical DSGE Modelling Alina Barnett Martin Ellison Bank of England, December 2005 1

1

Practical DSGE modelling

Overview

Bank of England December 2005

This is an introductory course for individuals with little or no previous knowledge of the practicalities involved in dynamic stochastic general equilibrium modelling. The intention of the course is not to train participants to become specialist model-builders but instead for them to be fully conversant in the main techniques involved in building and using dynamics models in their work. The aim is to make participants ‘sophisticated consumers’ of dynamic models and to provide a deeper framework and knowledge within which to frame their discussions. Although no prior knowledge is assumed it is a fast paced course and additional reading is provided to help participants to consolidate material.

Course objectives

By the end of the course participants should:

Understand the economic foundations of dynamic models and how they relate to current policy issues

Be able to write dynamic models in a general form suitable for solution and simulation by computer

Implement basic solution and simulation techniques to analyse dynamic models, showing how the model economies behave and how they respond to different shocks

Be aware of how to extend simple models to answer more complex questions associated with monetary policy

Feel confident in discussing model-based analysis, evaluating the strength of models used and engaging in conversation with people building economic models

Organisation

The course runs over a series of five mornings. Each session will be a mixture of small-group teaching and practical exercises using MATLAB software to solve and simulate dynamic models. Afternoons are therefore free, allowing participants time to reflect and consolidate the morning work before the next session. The instructors will be available throughout each afternoon to answer any questions or queries that arise.

Pre-readings

Some pre-course readings will be assigned for those participants who wish to prepare in advance. The issues involved in the pre-reading will be dealt with in the course so there is no need to understand everything. The pre-reading is as much about getting participants to gauge what they do and don’t understand as it is to get ideas and issues across.

2

Ouline

Session 1

Introduction to DSGE modelling.

 

In this session we describe the key ingredients in a dynamic model, using the simplest available dynamic model with monetary policy.

Exercises are designed to familiarise participants with the MATLAB computer language environment.

Session 2

Taking a model to the computer

 

We show how to rewrite the model in a form suitable for solving and simulating on a computer. There are two parts to this: (i) approximating the nonlinear model by a linear model and (ii) collecting the equations together into the so-called state-space form.

In exercises we practice the techniques of log-linearisation and define state- space forms.

Session 3

Solution techniques

 

After a short discussion of the range of possibilities, we explain the standard Blanchard-Kahn technique for solving linear models. We also discuss the role of the Blanchard-Kahn conditions in ensuring determinacy of the solution.

The computer exercises take participants from the state-space form to the solution to the model and show the relevance of determinacy conditions.

Session 4

Simulation techniques

 

Having obtained the solution in the previous session, this session is devoted to developing a range of simulation techniques through which to analyse the model. Amongst others, we discuss stylised facts of volatilities and correlations at different leads and lags, impulse response analysis, forecast error variance decomposition.

Computing

exercises

develop

participants’

skills

at

analysing

dynamic

models.

Session 5

Advanced dynamic models

 

In the final session we survey some of the more advanced dynamic models that are useful for policy analysis. In particular, we focus on how to handle models with simple monetary policy rules such as those famously associated with Taylor.

The exercises in the final session consolidate the work of the previous sessions. The participants will work through a series of exercises which simulate the behaviour of a dynamic economy under Taylor rules. Time permitting, participants will be able to analyse the response of the economy for different coefficients in the monetary policy rules.

3

Instructors

The course architects are Martin Ellison and Alina Barnett.

Martin Ellison, Assistant Professor, Warwick University

Martin has an MPhil from Oxford University and a PhD from the European University Institute, Florence. He is an affiliate of the Centre for Economic Policy Research and a consultant at the Bank of England. His research focuses on monetary theory and monetary policy and he has just received a three-year ESRC Research Fellowship for his project “Improving Monetary Policy for Macroeconomic Stability in the 21 st Century”. His research is regularly published in the top academic journals, as well as presented at leading conferences and central banks.

Alina Barnett, Postgraduate Research Fellow, Warwick University

Alina holds an MA in Economics from the Central European University in Budapest and a BA in Finance and Banking from the Academy of Economic Studies in Bucharest. Her research interests are in macroeconomics, time series econometrics and developing economies. Her professional experience includes financial analysis, banking and teaching economics at university and secondary school level.

4

Practical DSGE modelling

Alina Barnett Martin Ellison

Bank of England, December 2005

Practical DSGE modelling Alina Barnett Martin Ellison Bank of England, December 2005

Objective

Objective To make participants ‘sophisticated consumers’ of dynamic stochastic general equilibrium models, and to

To make participants ‘sophisticated consumers’ of dynamic stochastic general equilibrium models, and to provide a deeper framework and knowledge within which to frame discussions of economic policy issues.

5

Aims

Aims Understanding of simple DSGE models Ability to solve and simulate simple DSGE models using MATLAB

Understanding of simple DSGE models

Ability to solve and simulate simple DSGE models using MATLAB

Organisation

Five mornings

Organisation Five mornings Each morning is a mixture of small-group teaching and practical exercises using MATLAB

Each morning is a mixture of small-group teaching and practical exercises using MATLAB

Share of teaching is higher in first couple of days

Course organisers are available each afternoon to give extra help and answer questions

6

Outline

Outline Day Topics 1 Introduction to DSGE models / Introduction to MATLAB 2 Writing models in

Day

Topics

1

Introduction to DSGE models / Introduction to MATLAB

2

Writing models in a form suitable for computer

3

Solution techniques

4

Simulation techniques

5

Advanced dynamic models

Introduction to DSGE modelling

Martin Ellison University of Warwick and CEPR

Bank of England, December 2004

Introduction to DSGE modelling Martin Ellison University of Warwick and CEPR Bank of England, December 2004

7

Dynamic

Stochastic

D ynamic S tochastic G eneral E quilibrium

General Equilibrium

Dynamic

Dynamic t-1 t t+1 expectations
t-1 t t+1
t-1
t
t+1
Dynamic t-1 t t+1 expectations
Dynamic t-1 t t+1 expectations
expectations
expectations

8

Stochastic

Stochastic Frisch-Slutsky paradigm Impulses Propagation Fluctuations
Frisch-Slutsky paradigm Impulses Propagation Fluctuations
Frisch-Slutsky paradigm
Impulses
Propagation
Fluctuations

General equilibrium

General equilibrium Monetary authority Firms Households
Monetary authority Firms Households
Monetary
authority
Firms
Households

9

Households

Households Maximise present discounted value of expected utility from now until infinite future, subject to budget

Maximise present discounted value of expected utility from now until infinite future, subject to budget constraint

Households characterised by utility maximisation consumption smoothing

Households

Households We show household consumption behaviour in a simple two-period deterministic example with no uncertainty

We show household consumption behaviour in a simple two-period deterministic example with no uncertainty

initial wealth W 0 consumption C 0 and C 1 prices p 0 and p 1 nominal interest at rate i 0 on savings from t 0 to t 1

Result generalises to infinite horizon stochastic problem with uncertainty

10

Household utility C 1 max U C ( ) +β U ( C ) 0
Household utility
C
1
max
U C
(
)
U
(
C )
0
1
C
0
dU = 0 = U '(C
) dC
+ βU '( C dC
)
0
0
1
1
U
'(
C
)
dC
0
1
=−β
U
dC
U
'(
C )
0
1
C
0

Household budget constraint

Household budget constraint C 1 C 0 p C = W ( − p C )(1
C 1 C 0
C
1
C
0
p C = W ( − p C )(1 + i ) 1 1 0
p C
= W
(
− p C
)(1
+ i
)
1
1
0
0
0
0
p dC = − p dC
(1
+ i
)
1
1
0
0
0
dC
1 + i
1
0
=−
dC
1 +π
0
1

11

Household utility maximisation

Household utility maximisation C 1 C 0 − β U '( C 0 ) =− 1
C 1 C 0
C
1
C
0

β

U

'(

C

0

)

=−

1 + i

0

U

'(

C )

1

 

1 +

π

1

Households

Households General solution for stochastic ∞ -horizon case ⎡ ⎢ U 1 + i ⎤ U

General solution for stochastic -horizon case

⎡ ⎢ U

1 + i

U

'(

C

t

)

 

β E

t

'(

C

t

 

)

 

t

=

+ 1

1 +

π t +1

Known as the dynamic IS curve Known as the Euler equation for consumption

12

Households - intuition

Households - intuition i t ↑ → U’(C t ) ↑→ C t ↓ Higher interest
Households - intuition i t ↑ → U’(C t ) ↑→ C t ↓ Higher interest

i t ↑ → U’(C t )↑→ C t

Higher interest rates reduce consumption

E t π t+1 ↑ → U’(C t )↓→ C t Higher expected future inflation increases consumption

U

'(

C

t

)

= β E

t

⎡ ⎢ U

'(

C

t

+

1 )

1

1 +

+

i

t

π t +1

U '( C t ) = β E t ⎡ ⎢ U '( ⎣ C t


Firms

Firms Maximise present discounted value of expected profit from now until infinite future, subject to demand

Maximise present discounted value of expected profit from now until infinite future, subject to demand curve, nominal price rigidity and labour supply curve.

Firms characterised by profit maximisation subject to nominal price rigidity

13

Firms

Firms Firm problem is mathematically complicated (see Walsh chapter 5) We present heuristic derivation of the

Firm problem is mathematically complicated (see Walsh chapter 5)

We present heuristic derivation of the results

Nominal price rigidity

Nominal price rigidity Calvo model of price rigidity Proportion of firms able to change their price

Calvo model of price rigidity

Proportion of firms able to change their price in a period

Proportion of firms unable to change their price in a period

1−ω ω
1−ω
ω

14

Aggregate price level p ˆ = (1 − ω p ωp ) ˆ + ˆ
Aggregate price level
p
ˆ
=
(1
ω p ωp
) ˆ
+
ˆ
t
it
t − 1
price
price
setters
non-setters
+ ˆ t it t − 1 price price setters non-setters Do not worry about the

Do not worry about the hat (^) notation. We will explain it later

Derivation

ˆ

(1

 

ˆ

p

t

=

ω p ωp

it

) ˆ

+

t 1

Derivation ˆ (1   ˆ p t = − ω p ω p it ) ˆ

?

Derivation ˆ (1   ˆ p t = − ω p ω p it ) ˆ

15

Optimal price setting

Optimal price setting * p ˆ = (1 − βω p βωE p ) ˆ +
* p ˆ = (1 − βω p βωE p ) ˆ + ˆ it
*
p
ˆ
=
(1
βω p βωE p
) ˆ
+
ˆ
it
t
t
it + 1
= (1 − βω p βωE p ) ˆ + ˆ it t t it +

price set at t

myopic price desired price at t+1
myopic
price
desired
price at t+1
 

perfect price flexibility

 

p ˆ

 

= p ˆ

*

ω= 0

ω = 0 it t
ω = 0 it t

it

t

ω1

price inflexibilityp ˆ   = p ˆ * ω = 0 it t ω → 1  

 

ˆ

E p ˆ

t

 
p it → it + 1

p it

it + 1

Derivation

ˆ

(1

 

ˆ

p

t

=

ω p ωp

it

) ˆ

+

t 1

t = − ω p ω p it ) ˆ + t − 1 * p
t = − ω p ω p it ) ˆ + t − 1 * p
* p ˆ = (1 − βω p βωE p ) ˆ + ˆ it
*
p
ˆ
=
(1
βω p βωE p
) ˆ
+
ˆ
it
t
t
it + 1
= − ω p ω p it ) ˆ + t − 1 * p ˆ

?

16

Myopic price

Myopic price Approximate myopic price with price that would prevail in flexible price equilibrium * p

Approximate myopic price with price that would prevail in flexible price equilibrium

*

p t

= k p mc

t

t

Price is constant mark-up k over marginal cost

In our hat (^) notation – to be explained later – the myopic price is given by

pˆ

* =

pˆ

 

+

mˆc

 

t

t

t

Full derivation

ˆ

(1

 

ω p

) ˆ

 

ˆ

p

t

=

it

+

ωp

t 1

ˆ p t = − it + ω p t − 1 * p ˆ =
ˆ p t = − it + ω p t − 1 * p ˆ =
* p ˆ = (1 − βω p βωE p ) ˆ + ˆ it
*
p
ˆ
=
(1
βω p βωE p
) ˆ
+
ˆ
it
t
t
it + 1
pˆ * = pˆ + mˆc t t t
* =
+
mˆc
t
t
t

?

17

Marginal cost

Marginal cost No capital in model → all marginal costs due to wages Assume linearity between

No capital in model all marginal costs due to wages

Assume linearity between wages and marginal cost

mˆc

t

= wˆ

t

Derivation

ˆ

(1

 

ˆ

p

t

=

ω p ωp

it

) ˆ

+

t 1

t = − ω p ω p it ) ˆ + t − 1 * p
t = − ω p ω p it ) ˆ + t − 1 * p
* p ˆ = (1 − βω p βωE p ) ˆ + ˆ it
*
p
ˆ
=
(1
βω p βωE p
) ˆ
+
ˆ
it
t
t
it + 1
pˆ * = pˆ + mˆc t t t
* =
+
mˆc
t
t
t
mˆc = wˆ t t
mˆc
= wˆ
t
t

?

18

Wages

Assume a labour supply function

Wages Assume a labour supply function wages rise when output is above trend wages rise with

wages rise when output is above trend

supply function wages rise when output is above trend wages rise with output gap 1/ α

wages rise with output gap

1/α is elasticity of wage w.r.t output gap

1 w ˆ = xˆ t t α
1
w
ˆ
=
t
t
α

Full derivation

ˆ

(1

 

ˆ

p

t

=

ω p ωp

it

) ˆ

+

t 1

t = − ω p ω p it ) ˆ + t − 1 * p
t = − ω p ω p it ) ˆ + t − 1 * p
* p ˆ = (1 − βω p βωE p ) ˆ + ˆ it
*
p
ˆ
=
(1
βω p βωE p
) ˆ
+
ˆ
it
t
t
it + 1
pˆ * = pˆ + mˆc t t t
* =
+
mˆc
t
t
t
mˆc = wˆ t t 1 w ˆ = xˆ t t α
mˆc
= wˆ
t
t
1
w
ˆ
= xˆ
t
t
α

19

Firms

Full solution

Firms Full solution αω ˆ x   = ( ˆ π β E π t −

αω

ˆ

x

 

=

( ˆ

π βE π

t

t

ˆ

 

)

t

t +1

(1

ω

)(1

βω

)

Known as the New Keynesian Phillips curve Known as the forward-looking Phillips curve

Firms - intuition

Firms - intuition αω ˆ x   = ( ˆ π β E π t −

αω

ˆ

x

 

=

( ˆ

π βE π

t

t

ˆ

 

)

t

(1

ω

)(1

βω

)

t +1

t (1 − ω )(1 − βω ) t + 1 E t π t +

E t π t+1 ↑→ p it ↑→ x t

(π t - βE t π t+1 ) < 0 x t < 0 Inflation expected to rise in future, firms set high prices now, choking supply

Higher expected future inflation chokes supply

20

Monetary authority

Sets the interest rate

Monetary authority Sets the interest rate Simplest case is simple rule Interest rate reacts to inflation,

Simplest case is simple rule

Interest rate reacts to inflation, with shocks

ˆ

i t

=δπˆ + v

t

t

Baseline DSGE model Monetary ˆ i =δπˆ + v t t t authority Firms Households
Baseline DSGE model
Monetary
ˆ
i
=δπˆ + v
t
t
t
authority
Firms
Households
αω
1 + i ⎤
x
ˆ
=
( ˆ
π βE π
ˆ
)
t
U
'(
C
)
=
β
E
U
'(
C
)
t
t
t
t +1
t
t
ω
)(1
βω
t
+ 1
(1
)
1
+
π
t +1
21

Next steps

Introduction to MATLAB

Next steps Introduction to MATLAB How to write the DSGE model in a format suitable for

How to write the DSGE model in a format suitable for solution

How to solve the DSGE model

Solving the DSGE model in MATLAB

22

Introduction to MATLAB

Martin Ellison University of Warwick and CEPR

Bank of England, December 2005

Introduction to MATLAB Martin Ellison University of Warwick and CEPR Bank of England, December 2005

What is MATLAB?

What is MATLAB? MATLAB is a tool for doing numerical computations with matrices and vectors. It

MATLAB is a tool for doing numerical computations with matrices and vectors. It is very powerful and easy to use. It integrates computation, graphics and programming in the same environment.

MATLAB stands for “Matrix Laboratory”.

23

Matrix

Matrix MATLAB works with essentially only one kind of object – a rectangular numerical matrix with

MATLAB works with essentially only one kind of object – a rectangular numerical matrix with possible complex entries.

Entering a matrix

Matrices can be

Entering a matrix Matrices can be Entered manually Generated by built-in functions

Entered manually Generated by built-in functions

24

An example

A = [1, 2, 3; 7, 8, 9]

An example A = [1, 2, 3; 7, 8, 9] Use ; to indicate the end

Use ; to indicate the end of each row

Use comma to separate elements of a row

Matrix operations

+ addition - subtraction * multiplication ^ power transpose

- subtraction * multiplication ^ power ‘ transpose To make * and ^ operate element-by-element, we

To make * and ^ operate element-by-element, we write .* and .^

25

Example

A= [1, 2; 3, 4]

B

= [0.5, 0.6; 1, 1.5]

C

= A*B

C

= A.*B

Example A= [1, 2; 3, 4] B = [0.5, 0.6; 1, 1.5] C = A*B C

Subscripts

Subscripts The element in row i and column j of A is denoted by A(i, j).

The element in row i and column j of A is denoted by A(i, j).

Example: A = zeros(2,2); A(1,1) + A(1,2) + A(2,2)

26

The colon operator

The colon : is one of MATLAB ’s most important operators. It has many uses.

of MATLAB ’s most important operators. It has many uses. 3:-2:-11 is a row vector containing

3:-2:-11 is a row vector containing integers from 3 to -11 with a increment of -2.

Subscript expressions involving colons refer to portions of a matrix. A(1:3, 2) is the first to the third elements of the second column of A.

Working with matrices

Working with matrices MATLAB provides four functions that generate basic matrices. zeros : all zeros. A

MATLAB provides four functions that generate basic matrices.

zeros: all zeros. A = zeros(1,3) ones: all ones. A = ones(2,4) rand: uniformly distributed random numbers. A = rand(3,5) randn: normally distributed random numbers. A = randn(2,2)

27

Working with matrices

Working with matrices Concatenation: join smal l (compatible) matrices to make bigger ones. B = [A

Concatenation: join small (compatible) matrices to make bigger ones. B = [A A-2; A*2 A/4]

Deleting rows and columns. B(:,2) = [ ]

Functions

Functions MATLAB provides a large range of standard elementary mathematical functions, including abs , sqrt ,

MATLAB provides a large range of standard elementary mathematical functions, including abs, sqrt, exp, and sin.

For help on functions, type

help elfun (elementary mathematical functions) help specfun (advanced mathematical functions) help elmat (advanced matrix functions) help datafun (data analysis functions)

28

Suppressing output

Suppressing output If you simply type a statement and press Enter, MATLAB automatically displays the results

If you simply type a statement and press Enter, MATLAB automatically displays the results on screen. If you end the line with a semicolon ; MATLAB performs the computation but does not display any result.

Example: C = randn(5,1) C = randn(5,1);

Programming with MATLAB

Programming with MATLAB Files that contain code in the MATLAB language are called M-files. You create

Files that contain code in the MATLAB language are called M-files. You create M-files using a text editor, then use them as you would any other MATLAB functions or command.

29

Flow Control

Flow Control MATLAB has many flow controls. The most basic are if statement for loops while

MATLAB has many flow controls. The most basic are

if statement

for loops

while loops

if … elseif … else … end

if A > B ‘greater’ elseif A < B ‘less’ elseif A = = B ‘equal’

end

if … elseif … else … end if A > B ‘greater’ elseif A < B

30

for … end

for i = 1:m for j = 1:n H(i,j) = 1/(i+j)

end

end

for … end for i = 1:m for j = 1:n H(i,j) = 1/(i+j) end end

while … end

i = 0; while (i<10000) s = s + i; i = i + 1;

end

while … end i = 0; while (i<10000) s = s + i; i = i

31

Graphics

x = 0 : 0.01 : 100;

y = x^2; plot(x,y)

Graphics x = 0 : 0.01 : 100; y = x^2; plot (x,y) Adding plots to

Adding plots to an existing graph: hold on

Multiple plots in one figure: subplot

32

Taking a model to the computer

Martin Ellison University of Warwick and CEPR

Bank of England, December 2005

Taking a model to the computer Martin Ellison University of Warwick and CEPR Bank of England,
Baseline DSGE model Monetary ˆ i =δπˆ + v t t t authority Firms Households
Baseline DSGE model
Monetary
ˆ
i
=δπˆ + v
t
t
t
authority
Firms
Households
αω
1 + i ⎤
x
ˆ =
( ˆ
π β E π
ˆ
)
t
U ' ( C
)
= E U C
β
' (
)
t
t
t
t +1
t
t
t
+ 1
(1
ω
)(1
βω
)
1 +
π
t +1
33

Households

Households Two simplifying assumptions: CRRA utility function No capital C = Y t t 1 −

Two simplifying assumptions:

CRRA utility function

No capital

C = Y t t
C
= Y
t
t

1

C

1

σ

σ

U ' (C ) = C

t

σ

t

U ( C =

t

)

U ( C = t ) t

t

Dynamic IS curve

Dynamic IS curve ⎡ ⎣ 1 + i ⎤ ⎦ π t + 1 1 1

1 + i

π t + 1

1 1 +

Non-linear relationship

Difficult for the computer to handle

We need a simpler expression

Y

t

σ

= β

E Y

t

Y t − σ = β E Y ⎢ t − σ t + t ⎥
Y t − σ = β E Y ⎢ t − σ t + t ⎥

σ

t +

t

34

Log-linear approximation

Log-linear approximation Begin by taking logarithms of dynamic IS curve − σ ⎡ 1 + i

Begin by taking logarithms of dynamic IS curve

σ

1 + i

Problem is last term on right hand side

ln

Y

t

=

ln

β

+

ln

E Y

t

t +


σ

1 1 +

ln Y t = ln β + ln E Y t t + ⎢ ⎣ −
ln Y t = ln β + ln E Y t t + ⎢ ⎣ −

t

π t + 1

Properties of logarithms

Properties of logarithms Taylor series expansion of logarithmic function 2 2 3 3 4 4 To

Taylor series expansion of logarithmic function

2

2

3

3

4

4

To a first order (linear) approximation

ln E (1 + z ) E ( z ) E ln(1 + z )

Applied to dynamic IS curve

1 + i

⎡ ⎢ Y

1 + i

ln E Y

σ

t

E

ln

σ

t

t


t + 1

1 +

π

t + 1


t

t + 1

1 +

π

t + 1

ln(1 z )

+

z

= −

z

+

z

z

+

1 < z < 1

35

Log-linearisation Log-linear expansion of dynamic IS curve − σ ln Y = ln β σE
Log-linearisation
Log-linear expansion of dynamic IS curve
− σ
ln
Y
=
ln
β σE
ln
Y
+
ln(1
+
i
)
E
ln(1
+
π
)
(1)
t
t
t
+1
t
t
t
+1
Steady-state values (more later)
(2)
−σ ln Y = ln β −σ ln Y + ln(1 + i ) − ln π
(1) – (2)
+

σ

(ln

Y

t

ln )

Y

− σ (ln Y t − ln ) Y =− σ E Y t t (ln

=−

σE Y

t

t

(ln

− σ (ln Y t − ln ) Y =− σ E Y t t (ln
− σ (ln Y t − ln ) Y =− σ E Y t t (ln

+1

ln ) ln(1

Y

+

− σ (ln Y t − ln ) Y =− σ E Y t t (ln
− σ (ln Y t − ln ) Y =− σ E Y t t (ln

+

i

t

)

E

t

(ln(1

π

t

+1

))

Deviations from steady state

What is

ln

Y

t

ln

Y

?

state What is ln Y t − ln Y ? Z Z Z − Z t
Z Z Z − Z t t t Z = ln ≈ − = 1
Z
Z
Z
Z
t
t
t
Z
=
ln
− =
1
Z Z
Z
 

ˆ

ln

Z

t

ln

= Z

t

1 Z Z Z   ˆ ln Z t − ln = Z t percentage deviation

percentage deviation of

Z t from steady state Z

In case of output,

ln

Y

t

ln Y is output gap,

xˆ

t

36

Log-linearised IS curve ˆ i − E π ˆ − 1 x ˆ ˆ t
Log-linearised IS curve
ˆ
i
− E π ˆ
− 1
x
ˆ
ˆ
t
t
t + 1
=
E x ˆ
σ
( i
E π ˆ )
t
t
t
+ 1
t
t
t
+
1
σE x ˆ
t
t + 1
Slope = - σ
t

Advanced log-linearisation

The dynamic IS curve was relatively easy to log-linearise

The dynamic IS curve was relatively easy to log-linearise For more complicated equations, need to apply

For more complicated equations, need to apply following formula

ln

f x y

(

,

)

ln

f x y ( , ) f x y ( , ) x y x
f x y
(
,
)
f x y
(
,
)
x
y
x , y
x , y
f x y
(
,
)
+
(
x − x
)
+
(
y
y
)
f x y
(
,
)
f x y
(
,
)

37

Firms

Firms Previously solved for firm behaviour directly in log-linearised form. Original model is in Walsh (chapter

Previously solved for firm behaviour directly in log-linearised form. Original model is in Walsh (chapter 5).

Aggregate price level

Aggregate price level   Original equation     Log-linearised       version  
 

Original equation

   

Log-linearised

 
   

version

 

p

1

t

θ

=

(1

)

ω

p

1

it

θ

+

ω

p

θ

1

t 1

p ˆ

t

=

(1

ω p

) ˆ

it

+

ˆ

ωp

t 1

38

Optimal price setting

Optimal price setting   Original equation     Log-linearised       version  
 

Original equation

   

Log-linearised

 
   

version

 
 

σ

P

* ⎜ t + i ⎟ ⎜ ⎟ t + i P ⎝ ⎠ t
*
t + i
t + i
P
t
θ
1
⎛ P ⎞
t + i

p

θ

 

P

it

=

θ

E

t

i = 0

i

ωβ

i

C

1

t + i

ˆ =

p

(1

βω p βω E p

t

+

t

) ˆ

*

ˆ

 

P

1

θ

σ

t + i

P

t

   

it

it + 1

t

E

t

i = 0

i

ωβ

i

C

1

 

Myopic price

Myopic price Original equation Log-linearised   version   p * t ⎛ = ⎜ ⎝ θ

Original equation

Log-linearised

 

version

 

p

*

t

= ⎜

θ

θ

1

p mc

t

t

pˆ

* =

t

pˆ

t

+

mˆ c

t

39

Marginal cost

Marginal cost Original equation Log-linearised version W t = mc m ˆ c = w ˆ

Original equation

Log-linearised

version

W

t

= mc

mˆ c = wˆ

P

t

t

t

t

Wages

Wages Original equation Log-linearised version   W t = N χ η t   1 P

Original equation

Log-linearised

version

 

W

t

=

N

χ

η

t

 

1

P

C

σ

w ˆ

t

=

xˆ

 

t

t

t

C

t

=

N

t

 

α

40

Monetary authority

We assumed

Equivalent to

ˆ

i t

=δπˆ + v

t

t

authority We assumed Equivalent to ˆ i t = δπ ˆ + v t t Very

Very similar to linear rule if i t small

ln

i t

ln

i =

(

δ ln π

t

1

ln π

)

+ v

t

Log-linearised DSGE model

Log-linearised DSGE model Monetary ˆ =δπˆ + v i t t t authority Firms Households αω
Monetary ˆ =δπˆ + v i t t t authority Firms Households
Monetary
ˆ
=δπˆ + v
i t
t
t
authority
Firms
Households

αω

x ˆ =

t

 

( ˆ

π E π

t

t

ˆ

 

)

(1

)(1

ω

βω

)

t +1

ˆ

x

 

E x ˆ

t

 

σ

1

ˆ

E π ˆ )

t

t

+

1

t

=

t

+ 1

( i

t

41

Steady state

Steady state Need to return to original equations to calculate steady-state Assume 1 − β i

Need to return to original equations to calculate steady-state

Assume

1 − β i = β
1 −
β
i
= β

0

From household

for monetary authority

⎡ 1 + i ⎤ − σ − σ Y = β Y ⎢ ⎥
⎡ 1 + i ⎤
σ
σ
Y
=
β
Y
1 +
π
π
= 0

Steady state calculation

From firm

* P = P = P i θ − 1 mc = ⎜ ⎝ ⎛
*
P
=
P
=
P
i
θ
− 1
mc = ⎜
⎛ W ⎞ ⎟=
P
θ
1
⎛ − 1 ⎞
θ
η σ
+
Y
= ⎜
χθ
− 1 mc = ⎜ ⎝ ⎛ W ⎞ ⎟= P ⎠ θ 1 ⎛ −

42

Full DSGE model

Full DSGE model − 1 ˆ ˆ x = E x ˆ − σ ( i
− 1 ˆ ˆ x = E x ˆ − σ ( i − E
− 1
ˆ
ˆ
x
=
E x ˆ
σ
( i
E ˆ
π
)
t
t
t
+ 1
t
t
t + 1
π β π
ˆ
=
E
ˆ
+
κ
x ˆ
t
t
t
+ 1
t
ˆ
i
=
δπ
ˆ
+
v
t
t
t
κ
=
αω

(1

ω

)(1

βω

)

Alternative representation

Alternative representation ˆ E x t t + 1 + σ − E t β π

ˆ

E x

t

t

+

1

+

σ

E

t

β π

E

t

1

ˆ

π

ˆ

t

t

+

+

1

1

1

ˆ

=

=− ˆ +

x ˆ

t

+

κ

x

t

σ δπ σ

t

+

ˆ

π

t

1

v

t

 

1

⎜ ⎝ ⎠

σ

1

β

⎞ ⎛ E x ˆ

⎜ ⎜ ⎝

t

t + 1

E ˆ

t

π

t + 1

0

1

κ

⎟ ⎟ ⎠ = ⎜ ⎜ ⎝

 

σ δ

1

1

⎞ ⎛ x ˆ ⎞ ⎛ ⎞

⎟ ⎟ ⎠ + ⎜ ⎜ ⎝

⎟ ⎟ ⎠ ⎜ ⎜ ⎝

1

t

ˆ

π

t

σ

0

v

t

43

State-space form

State-space form Generalised state-space form A E X = A X + B v 0 t

Generalised state-space form

A E X = A X + B v 0 t t +1 1 t
A E X
=
A X
+
B v
0
t
t
+1
1
t
0 +1
t

Models of this form (generalised linear rational expectations models) can be solved relatively easily by computer

Next steps

Next steps Derive a solution for log-linearised models Blanchard-Kahn technique

Derive a solution for log-linearised models

Blanchard-Kahn technique

44

Solution techniques

Martin Ellison University of Warwick and CEPR

Bank of England, December 2005

Solution techniques Martin Ellison University of Warwick and CEPR Bank of England, December 2005

State-space form

Generalised state-space form

State-space form Generalised state-space form A E X = A X + B v 0 t
A E X = A X + B v 0 t t +1 1 t
A E X
=
A X
+
B v
0
t
t
+1
1
t
0 +1
t

Many techniques available to solve this class of models

We use industry standard: Blanchard-Kahn

45

Alternative state-space form

E X

t

t

+ 1

=

− 1 A A X 0 1
− 1
A A X
0
1

t

+

− 1 A B v 0 0 t
− 1
A B v
0
0
t

+

1

t t + 1 = − 1 A A X 0 1 t + − 1
 

A

 

B

E X

t

t

+1

=

AX

t

+

Bv

t

+1

Partitioning of model

Partitioning of model X = t ⎡ w ⎤ t ⎢ ⎥ y ⎣ ⎦ t

X =

t

⎡ w ⎤ t ⎢ ⎥ y ⎣ ⎦ t
⎡ w ⎤
t
y
t

backward-looking variables predetermined variables

forward-looking variables control variables

w

w

t + 1

= A

 

t

+ Bv

E y

t

t + 1

y

t

 

t + 1

46

Jordan decomposition of A ⎡ w ⎢ ⎤ ⎡ w ⎤ t + 1 t
Jordan decomposition of A
⎡ w
⎡ w ⎤
t + 1
t
= A
+ Bv
t + 1
⎣ E y
y
t ⎦
t
t + 1
−1
A = PΛP
eigenvectors
diagonal matrix
of eigenvalues

Blanchard-Kahn condition

Blanchard-Kahn condition The solution of the rati onal expectations model is unique if the number of

The solution of the rational expectations model is unique if the number of unstable eigenvectors of the system is exactly equal to the number of forward-looking (control) variables.

i.e.,

number of eigenvalues in Λ greater than 1 in magnitude must be equal to number of forward-looking variables

47

Too many stable roots

Too many stable roots y t w 0 multiple solutions equilibrium path not unique need alternative
y t w 0
y
t
w
0

multiple solutions

equilibrium path not unique

need alternative

w

t

techniques

Too many unstable roots

Too many unstable roots y t w w t 0 no solution all paths are explosive
y t w w t 0
y
t
w
w
t
0

no solution

all paths are explosive

transversality conditions violated

48

Blanchard-Kahn satisfied

Blanchard-Kahn satisfied y t w 0 one solution equilibrium path is unique w t system has
y t w 0
y
t
w
0

one solution

equilibrium path is unique

w

t

system has saddle

path stability

Rearrangement of Jordan form

w

E y

w

t + 1

t

t + 1

⎤ ⎡ w ⎤ − 1 t = P Λ P + Bv ⎥ ⎢
⎡ w ⎤
− 1
t
= P Λ P
+ Bv
t + 1
y
t ⎦
⎡ w ⎤
1
t
1
= Λ P
+ P Bv
y
t

R

⎥ t + 1 y ⎦ ⎣ t ⎦ ⎤ ⎡ w ⎤ − 1 t

P

1


E y

t

t + 1

t + 1

t + 1

49

Partition of model

Partition of model ⎡ w ⎤ ⎡ w ⎤ − 1 t + 1 − 1
⎡ w ⎤ ⎡ w ⎤ − 1 t + 1 − 1 t P
⎡ w
⎡ w ⎤
1
t + 1
− 1
t
P
=Λ P
+ Rv
t + 1
E y
y
t ⎦
t
t + 1
stable
*
*
⎛ Λ
1 0 ⎞
P ⎞
⎛ R ⎞
− 1
11
1
Λ= ⎜
P
= ⎛ ⎜ P
12
*
*
⎟ R = ⎜
Λ
P
R
⎝ ⎜ 0
2 ⎟ ⎠
⎝ P
⎠ ⎠
⎝ ⎜
21
22
2
unstable
unstable
Transformed problem * * * * P P ⎞ ⎡ w 0 ⎞ ⎛ P
Transformed problem
*
*
*
*
P
P ⎞ ⎡ w
0 ⎞ ⎛ P P ⎞ ⎡ w ⎤ ⎛ R ⎞
11
12
t + 1
1
11
12
t
1
⎛ ⎜
v
⎟ ⎟
⎤ ⎥ = ⎛ ⎜ ⎜ Λ
⎟ ⎟
⎟ ⎟
t + 1
*
*
*
*
⎟ ⎢
P
P
E y
0
Λ
P
P
y
R
2 ⎠
⎜ ⎜ ⎝
⎠ ⎣
t ⎦
+ ⎜ ⎜ ⎝
2 ⎠
21
22
t
t + 1
21
22
~
~
⎡ w ⎤
⎡ w ⎤
t
t
+ 1
E
⎢ ~
t
⎢ ~
y
y
t ⎦
t + 1
*
*
~
~
~
P
w
+ P y
=
w
⎡ w
0 ⎞ ⎡ w ⎤ ⎛ R ⎞
11
t
12
t
t
t + 1
1
t
1
v
*
*
~
~
⎤ ⎥ = ⎛ ⎜ ⎜ Λ
⎟ ⎢
t + 1
P
w
+ P y
=
y
⎣ ⎢ E y
0
Λ
~ y
R
⎠ ⎣
+ ⎜ ⎜ ⎝
21
t
22
t
t
t
t + 1
2
t
2

50

Decoupled equations

Decoupled equations ~ ⎡ w ⎤ ⎥ = ⎛ ⎜ ⎜ Λ 0 ⎞ ⎡ w

~

w

⎤ ⎥ = ⎛ ⎜ ⎜ Λ

0 ⎞ ⎡ w ⎤ ⎛ R

~

~

⎢ ⎣ E y

t + 1

t

t + 1

1

0

Λ

2

⎟ ⎢

⎠ ⎣

~ y

t

t

+ ⎜ ⎜ ⎝

R

1

2

v

t + 1

~

w

t

+

1

~ +

1

w

t

R v

1

t

+

1

 

stable

E ~ y

t

t

+

1

~ y

=Λ +

2

t

R v

2

t

+

1

   

unstable

Decoupled equations can be solved separately

Solution strategy

Solve unstable transformed equation

Solve stable transformed equation

Translate back into original problem

~ y t ~ w t ⎡ w ⎤ t ⎢ ⎥ y ⎣ ⎦
~
y
t
~
w
t
⎡ w ⎤
t
y
t
transformed equation Translate back into original problem ~ y t ~ w t ⎡ w ⎤

51

Solution of unstable equation Solve unstable equation forward to time t+j E ~ y =Λ
Solution of unstable equation
Solve unstable equation forward to time t+j
E ~ y
(
2 )
j ~ y
t
t
+ j
t
~
As
> 1
,
only stable solution is
y
t = 0 ∀
t
~
*
*
*
− 1
*
=
P w
+
P y
= 0
y t
y
=−
P P w
21
t
22
t
t
22
21
t
Forward-looking (control) variables are function
of backward-looking (predetermined) variables
Solution of stable equation Solve stable equation forward to time t+j E w ~ =Λ
Solution of stable equation
Solve stable equation forward to time t+j
E w ~
(
1 )
j w ~
t
t
+ j
t
As
< 1
, no problems with instability
~
*
*
=
P w
+
P y
w t
11
t
12
t
~
*
*
*
− 1
*
=
( P
P P P ) w
w t
*
− 1
*
11
12 22
21
t
=−
P P w
y t
22
21
t

52

Solution of stable equation

Solution of stable equation ( ~ w t =Λ ~ + w R v * 11

(

~

w t

~ +

w

R v

*

11

P P P w

12 22

21

t

*

*

1

*

)

+

1

=

+

~
~

w

t

+

1

1

1

t

~
~

w

t

 

=

1

*

11

( P

t

+

1

P P P ) w

12 22

21

*

*

1

*

t

w

t

+ 1

=

(

*

11

P

+

P P P

12 22

*

* 1

*

21

)

1

(

*

11

P

P P P

12 22

*

* 1

Λ