# Log-linearization and bonds which are zero in steady state

**URL:** https://forum.dynare.org/t/log-linearization-and-bonds-which-are-zero-in-steady-state/3877
**Category:** General DSGE Modeling
**Created:** [5 May 2014 12:15 UTC](https://forum.dynare.org/t/log-linearization-and-bonds-which-are-zero-in-steady-state/3877 "2014-05-05T12:15:31Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Duke](https://forum.dynare.org/letter_avatar_proxy/v4/letter/d/e8c25b/32.png) [@Duke](https://forum.dynare.org/u/Duke)
#### Post date: [5 May 2014 12:15 UTC](https://forum.dynare.org/t/log-linearization-and-bonds-which-are-zero-in-steady-state/3877/1 "2014-05-05T12:15:31Z")

</div>

Hi,

I have what is a relatively simple problem about log-linearization.

I have a NK model, which features bonds which are zero in steady state and has a Phillips curve. I want to use Dynare, so I am trying to work out what are my options.

I figure log-linearizing the entire model is out (bonds - can’t take the log of zero). I gather I can’t use a combination of log-linearization and linearization. So how then to deal with the Phillips Curve? Can I simply interpret the Phillips Curve as:

pi\_t = Beta_E\_t_((pi\_t+1 - pi\_bar) / pi\_bar) + kappa\*((mc\_t-mc\_bar) / mc\_bar)?

It doesn’t feel right. But otherwise, how can I reconcile the use of an equation in percentage deviations from steady state and other equations in levels which feature variables with steady states of zero?

How is this commonly accommodated?

Thanks in advance.

---

<div class="post-metadata">

### Author: ![jpfeifer](https://forum.dynare.org/user_avatar/forum.dynare.org/jpfeifer/32/5044_2.png) [@jpfeifer](https://forum.dynare.org/u/jpfeifer)
#### Post date: [7 May 2014 09:24 UTC](https://forum.dynare.org/t/log-linearization-and-bonds-which-are-zero-in-steady-state/3877/2 "2014-05-07T09:24:08Z")

</div>

1. There is no reason to not perform a log-linearization for all variables except for bonds and then only do a linearization for bonds. See Remark 19 (Variables with Negative Steady States or already in Percent) in Pfeifer(2013): “A Guide to Specifying Observation Equations for the Estimation of DSGE Models” [sites.google.com/site/pfeiferecon/Pfeifer\_2013\_Observation\_Equations.pdf](https://sites.google.com/site/pfeiferecon/Pfeifer_2013_Observation_Equations.pdf).
2. If bonds must always be 0, this market clearing is typically imposed so that bonds do not even appear in the model.

You could check out Gali’s textbook. There private bonds are also in 0 net supply and the model is log-linearized. An example mod-file is on my homepage.

---

<div class="post-metadata">

### Author: ![juankcf](https://forum.dynare.org/user_avatar/forum.dynare.org/juankcf/32/6794_2.png) [@juankcf](https://forum.dynare.org/u/juankcf)
#### Post date: [4 February 2021 15:14 UTC](https://forum.dynare.org/t/log-linearization-and-bonds-which-are-zero-in-steady-state/3877/3 "2021-02-04T15:14:28Z")

</div>

Hi. I was wondering whether this generates any bias or problem since you are not performing the same operation in some equations. For instance: you will have `phi_t=1/2(exp(I_t)/exp(I_t(-1))-1)^2`. Since in steady state phi\_t must be zero you write the code without the “exp” but i\_t is a variable you would like to log-linearize so it is accompanied by the “exp”. To me, it looks inconsistent. What is the advantage of this over redefining variables? let’s say, `exp(phi_t)=1+1/2(exp(I_t)/exp(I_t(-1))-1)^2`, and the where-ever phi\_t is on the FOC you write `(exp(phi_t)-1)`?

---

<div class="post-metadata">

### Author: ![jpfeifer](https://forum.dynare.org/user_avatar/forum.dynare.org/jpfeifer/32/5044_2.png) [@jpfeifer](https://forum.dynare.org/u/jpfeifer)
#### Post date: [5 February 2021 09:23 UTC](https://forum.dynare.org/t/log-linearization-and-bonds-which-are-zero-in-steady-state/3877/4 "2021-02-05T09:23:46Z")

</div>

It’s not inconsistent at all. At first order, it is simply a scaling with the Jacobian, i.e. the steady state of the variable. You are expressing everything in percentages if you put it in exp(). But some variables are already in percent or a percentage of it does not make sense as the steady state is 0. In those cases, you don’t do the exp()-substitution. Also note that doing a full exp()-substitution is not recommended. See

> [@Question about understanding irfs in dynare](https://forum.dynare.org/t/question-about-understanding-irfs-in-dynare/10622/4):
>
> To be more precise: it depends on how the variables in your model are measured. As @stepan-a says, Dynare conducts a linearization. If you for example have a nonlinear model and your model variable is simply the level of output, the IRF will measure the difference between the variable and its steady state (or its mean at higher order). This is the case with [https://github.com/DynareTeam/dynare/blob/master/examples/example1.mod](https://github.com/DynareTeam/dynare/blob/master/examples/example1.mod) In contrast, if your model variable already measures percentage…
