Skip to content

  Monetary policy

The central bank uses a short-term local-currency interest rate as its key policy instruments to steer inflation towards an explicit or implicit inflation target. The monetary policy reaction function includes responses to

  • deviations in the inflation forecast from the target
  • deviations in nominal depreciation from its long-run sustainable level
  • cycle in real economic activity measured by labor empoyed

The reaction function is first defined for an "unconstrained" policy rate (i.e. an interest rate not bound to remain above its floor), and the actual policy rate is then derived as a maximum of its unconstrained level and the floor.

Monetary policy

$$ \newcommand{\tsum}{\textstyle\sum} \newcommand{\extern}[1]{\mathrm{\mathbf{{#1}}}} \newcommand{\local}{\mathrm{local}} \newcommand{\roc}[1]{\overset{\scriptsize\Delta}{#1{}}} \newcommand{\ss}{\mathrm{ss}} \newcommand{\aa}{\mathrm{aa}} \newcommand{\bb}{\mathrm{bb}} \newcommand{\E}{\mathrm{E}} \newcommand{\ref}{{\mathrm{ref}}} \newcommand{\blog}{\mathbf{log}\ } \newcommand{\bmax}{\mathbf{max}\ } \newcommand{\bDelta}{\mathbf{\Delta}} \newcommand{\bPi}{\mathbf{\Pi}} \newcommand{\bU}{\mathbf{U}} \newcommand{\newl}{\\[8pt]} \newcommand{\betak}{\mathit{zk}} \newcommand{\betay}{\mathit{zy}} \newcommand{\gg}{\mathrm{gg}} \newcommand{\tsum}{\textstyle{\sum}} \newcommand{\xnf}{\mathit{nf}} \newcommand{\ratio}[2]{\Bigl[\textstyle{\frac{#1}{#2}}\Bigr]} \newcommand{\unc}{\mathrm{unc}} \notag $$

Unconstrained monetary policy reaction function

The reaction function is given by

\[ \log r_t^\unc = \rho_r \, \log r_{t-1} + \left(1-\rho_r\right) \bigl[\log r_\ss + \mathit{react}_t \bigr] + \epsilon_{r,t} \]

with the following composition of the reaction term

\[ react_{t}= \psi_{pc} \, \bigl( \log \roc{pc}_{t+1} - \log \roc{pc}_\ss\bigr) + \psi_{e} \, \bigl( \log \roc{e}_{t+1} - \log \roc{e}_\ss\bigr) + \psi_{nh} \, \bigl( \log {nh}_{t+1} - \log {nh}_\ss\bigr) \]

Zero lower bound

The zero lower bound (floor) constraint chooses the higher of the unconstrained rate and 1 (i.e. a zero net rate of interest) but can be turned off by setting a \(\mathit{floor}\) parameter to 0.

\[ r_t = \mathit{floor} \, \max\{r_t^\unc, \, 1\} + \left(1-\mathit{floor}\right)\, r_t^\unc \]

GEES Monetary policy module

Declare quantities

!variables(:monetary)

    "Nominal short-term rate, LCY" r
    "Monetary policy reaction term" react
    "Unconstrained nominal short-term rate, LCY" unc_r
    "Nominal short-term rate for interest parity, LCY" rip 


!parameters(:monetary :steady)

    "S/S Price of private consumption, Y/Y !! $\roc{\mathit{pc}}_\ss$" ss_roc_pc
    "Switch for lower bound on short-term rate !! $\mathit{floor}$" floor


!parameters(:monetary :dynamic)

    "A/R in policy rate !! $\rho_r$" rho_r 
    "Monetary policy reaction to CPI !! $\psi_\mathit{pc}$" psi_pc 
    "Monetary policy reaction to nominal exchange rate !! $\psi_e$" psi_e
    "Monetary policy reaction to real economic activity !! $\psi_\mathit{nh}$" psi_nh
    "Pressure relief valve for interest rate lower bound !! $\theta_\mathir{rip}$" theta_rip


!shocks(:monetary)

    "Shock to monetary policy reaction function" shk_r

Control log-status of variables

!log-variables !all-but

    react

Define equations

!equations(:monetary)

    "Monetary policy reaction function"
    log(unc_r) = ...
        + rho_r * log(r{-1}) ...
        + (1 - rho_r) * [ log(&unc_r) + react ] ...
        + shk_r ...
    !! pc = pc{-1} * ss_roc_pc;


    "Monetary policy reaction term"
    react = ...
        + psi_pc * (log(roc_pc{+1}) - log(ss_roc_pc)) ...
        + psi_e * (log(roc_e) - log(&roc_e)) ...
        + psi_nh * (log(nh{+1}) - log(&nh)) ...
    !! react = 0;


    "Zero floor constraint on policy rate"
    r = floor*max(1, unc_r) + (1-floor)*unc_r ...
    !! r = unc_r;

    rip = r + theta_rip*(unc_r - r) ...
    !! rip = r;