Pre-Determined Variables


in my model I have a variable (return on short-term bond) that is defined as: r^{(1)}_t=-q^{(1)}_{t-1}. IS that considered a pre-determined variable and should I treat it in a special way (as per manual)? The manual makes an example with stock variables, so I am not entirely sure here.

Related to this, the return on the short-term bond is fixed by the central bank (via a Taylor rule), thus i_t=r^{(1)}_{t+1}. If I write this equation, stoch_simul works fine and I get sensible results. If instead of writing this equation, I try to write i_{t-1}=r^{(1)}_{t}, I get an error using stoch_simul: k_order_pert was unable to compute the solution. I think I am missing something important regarding how to properly write equations in Dynare. Thanks a lot for any help.

In total pre-determined variables appear in time t and t-1 .

For example for capital stock variable in law of motion of private capital equation.

It seems that this error when you run your codes may be due to the other problem.

r^{(1)}_t=-q^{(1)}_{t-1} seems to be a definition for the contemporaneous value of r_t^{(1)}. Usually, it’s not a predetermined variable in the standard sense and you don’t need to use a special treatment. More can only be said with more information on the exact setup you are using and what q_{t-1} is.

i_t=r^{(1)}_{t+1} is different. In Dynare that would correspond to i_t=E_tr^{(1)}_{t+1}, which is probably not what you want. However, shifting the timing by one period is also not correct.

Thank you! q^{(1)}_t is the (log) price of a one-period default-free bond, while r_t^{(1)} is the definition of log return. In levels R_t^{(1)}\equiv \frac{1}{Q_{t-1}^{(1)}}.

Let me try to clarify my question. In the equations of the model, I have the definition of one-period return r_t^{(1)}=-q_{t-1}^{(1)} (Equation (1)). The monetary policy rate i_t is fixed by a Taylor rule i_t=i^*+\rho_{\pi}(\pi_t-\pi^*). Now, I need to link the monetary policy rate to either the price of the bond q_t^{(1)} or the return r_t^{(1)}. I can do it in multiple ways. If I write i_t=-q_t^{(1)} (Equation (2)), or if I write i_t=r_{t+1}^{(1)} (Equation (3)) I get the same results. If instead I write r_t^{(1)}=i_{t-1} (Equation (4)), I get the aforementioned error in stoch_simul. I do not understand why this is happening, because I thought that (1) + (4) implies (2). However, if in the model I have (2) everything is fine. If I have (4) I get an error. Thanks a lot in advance.

But how does your setup differ from e.g. the Gali (2015) textbook? There Q_t is today’s price of a bond maturing in t+1 and the interest rate is R_t=1/Q_t.

Thanks! My model is a simple Fiscal Theory of the price level model, so it differs from the standard NK model on several dimensions (introduction of a fiscal rule, presence of one-period and 2-period debt and others). But you are right, it remains true that the nominal rate set by the central bank is the inverse of the price of one-period bonds (in levels I_t=\frac{1}{Q_t}, I use I instead of R for the nominal rate set by the central bank to distinguish it from the holding period return R.). The holding period return is just a parameter defined for convenience as R^{(1)} \equiv \frac{1}{Q_{t-1}}. I provide the code, so I hope it is clear. Thanks again for the time you are spending on this.
FTPL_simple.mod (6.8 KB)

But again, then the correct timing would still be R_t=1/Q_t (unless you want the holding return of the previous period).

Thank you!