Welcome to THETAWIKI. If you like to create or edit a page please make sure to login or register an account. All registered users please make sure to provide a valid email address.

Black-Karasinski model

From ThetaWiki
Jump to: navigation, search

The Model

The general formulation for the Black-Karasinski(1991) model[1] is as follows

$ d\ln r(t) = \left [\theta(t) - \alpha(t)\ln r(t)\right ]dt + \sigma(t)\, dZ(t),\qquad (BK.1)\! $

where the short rate $ r(t) $ follows a lognormal process under the risk-neutral measure $ Q $, the deterministic terms $ \theta(t) $, $ \alpha(t) $ and $ \sigma(t) $ are mean reversion level, mean reversion speed and the instantaneous volatility of $ \ln r(t) $, respectively. The term $ dZ(t) $ is the increments of a wiener process under the risk-neutral measure $ Q $.

Using Ito's formula,

$ d\ln r(t) = \frac {dr(t)}{r(t)} - \frac {1}{2} \frac {1}{r(t)^2}\left \langle dr(t), dr(t) \right \rangle, $
$ \Rightarrow dr(t) = r(t)\,d\ln r(t) + \frac {1}{2} \sigma(t)^2 r(t)dt $
$ = r(t)\left [\theta(t) + \frac {1}{2} \sigma(t)^2 - \alpha(t)\ln r(t)\right ]dt + \sigma(t) r(t)\, dZ(t), \qquad (BK.2) $

From equation (BK.2), it is easy to see that the instantaneous short rate follows a lognormal process, as such, the positivity of short rate is guaranteed. This is a great advantage over other short rate models such as Vasicek model and Hull-White model where short rates can possibly turn negative due to the additive noise processes. However, the drawback for the Black-Karasinski Model[1] is that the analytical tractability is lost, when computing bond and bond option prices. To obtain bond and bond option prices, we have to use numerical procedures, such as tree and Monte Carlo simulation.

Euler Scheme for the Black-Karasinski(1991) Model

To simulate future short rates driven by the dynamics as in equation (BK.1), we need to obtain a discretized approximation for such a process. One such a numerical scheme is the Euler scheme. Specifically, applying the Euler scheme to equation (BK.1) on the time interval $ \left [ 0,\, T \right ] $ for the set of times $ t_0 = 0 < t_1 < \cdots < t_n = T $, and denoting $ \Delta_i = t_{i+1} - t_i $ as the time step between two discretization time points, the discretized process for equation (BK.1) takes the following form:

$ \ln \hat{r}(t_{i+1}) = \ln \hat{r}(t_{i})\,+\,\left [\theta(t_i) - \alpha(t_i)\,\ln \hat{r}(t_i)\right ]\Delta_i + \sigma(t_i)\sqrt{\Delta_i}\,\varepsilon(t_{i}), \qquad (BK.3)\! $

where $ \ln \hat{r}(t_i) $ is the value of $ \ln r(t_i) $ evaluated at the left hand side of the discretization intervals, and $ \varepsilon(t_{i}) $ is a standard normal variate. The discretized SDE (BK.3) uses the explicit Euler scheme where coefficients are evaluated at the left end point of the discretization intervals. The Euler scheme converges with weak order $ 1.0 $. Other numerical schemes with stronger path convergence are available, examples are the Milstein scheme, the strong Taylor scheme, and so on. For the Black-Karasinski(1991) model[1], the noise part is a deterministic function of time only, as such, the Euler scheme and the Milstein scheme are the same. More discussions about numerical discretization schemes for SDEs can be found in Kloeden (2000)[2].

To implement the discretized SDE for the Black-Karasinski(1991) model[1], for easier exposition, we use constant time step, namely $ \Delta=\Delta_i, \forall i $. We therefore short-step the logarithmic of short rate $ \ln r(t) $ process as follows

$ \ln \hat{r}(t+\Delta) = \ln \hat{r}(t)\,+\,\left [\theta(t) - \alpha(t)\,\ln \hat{r}(t)\right ]\Delta + \sigma(t)\sqrt{\Delta}\,\varepsilon(t). \qquad (BK.4)\! $

For convenience, we assume constant parameters for mean reversion speed $ \alpha $, mean reversion level $ \theta $ and volatility $ \sigma $. In the code examples given below, the parameters 'alpha' and 'vola' refer to mean reversion speed and volatility for $ \ln r(t) $, respectively.

The following is a Theta.m implementation of the Black-Karasinski(1991) model [1], where future short rate trajectories are simulated using the Euler scheme. Note however, due to the log-normal process assumed in the Black-Karasinski (1991) model, simulated short rates can eventually explode or have infinite values.

Theta.m Simulation of Short Rates using Euler Scheme

function state = Theta(dt, state)
if nargin == 0
    state.r.value = 0.05;
    state.r.comment = 'Interest-rate';
    state.EUR.value = 1;
    state.EUR.comment = 'Numeraire';
    vola = 0.01;     %short rate volatility
    alpha = 0.1;     %mean reversion speed
    theta = 0.01;    %mean reversion level
    max_dt = 0.1;
    % Sample Euler steps with higher frequency if "dt" is too big
    state.r = 0.05;  %initialize r(t)
    state.EUR = 1;
    for i = 1 : floor(dt/max_dt)
        state.r = log(state.r);   %ln(r(t);
        %update ln(r(t))
        state.r = state.r + (theta- alpha*state.r)*max_dt ;
        state.r = state.r + vola*sqrt(max_dt)*randn(size(state.r));
        state.r = exp(state.r);    %r(t)
        state.EUR = exp(-max_dt .* state.r) .* state.EUR ;
    max_dt = max(0,dt-max_dt*floor(dt/max_dt));
    state.r = log(state.r);
    state.r = state.r + (theta- alpha*state.r)*max_dt ;
    state.r = state.r + vola*sqrt(max_dt)*randn(size(state.r));
    state.r = exp(state.r);
    state.EUR = exp(-max_dt .* state.r) .* state.EUR ;


  1. 1.0 1.1 1.2 1.3 1.4 Black, F., and P. Karasinski, 1991, Bond and option pricing when short rates are lognormal, Financial Analysts Journal, 47, 52-59.
  2. Kloeden, P.E., and E. Platen, 2000, Numerical Solution of Stochastic Differential Equations (Stochastic Modelling and Applied Probatility). Springer-Verlag.