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.

# Hull-White model

## The Hull-White Model

As an extension to the Vasicek model, Hull-White(1990)[1] introduces a short-rate model that has the following general dynamics

$dr(t) = (\theta(t)\, -\, a(t)\, r(t))\,dt\, +\, \sigma(t)\, dW(t), \qquad (HW1.1)$

under the risk-neutral measure $Q$. The three time-varying parameters $\theta(t),\, a(t),\, \sigma(t)$ enable perfect fitting to the initial rate and volatility term structure. However, exactly which parameters are time-dependent depends on the application at hand, and perfect fitting to the initial volatility structure may not be desirable.

Depending on which parameter is time varying, the Hull-White(1990) model[1] is equivalent to:

• the Vasicek model: $\theta$ is a constant,
• the Hull-White model: $\theta$ is a deterministic function of time,
• the extended Vasicek model: $\theta,\, a$ are both time-dependent.

However, the most popular and analytically simple formulation is when only $\theta$ has time dependence, i.e.

$dr(t) = [\theta(t)\,-\,a\,r(t)]dt\,+\,\sigma dW(t), \qquad (HW1.2)$

where $a, \, \sigma$ are positive constants.

To fit perfectly to the current term structure, the term $\theta(t)$ can be proved to have the following form

$\theta(t)=F_t(0,t)\,+\,a F(0,t)\,+\,\frac{\sigma^2}{2a}(1\,-\,e^{-2at}), \qquad (HW1.3)$

where $F(0,t)$ is the initial forward rate with maturity $t$, and $F_t(0,t)$ is the partial derivative of $F(0,t)$ with respect to $t$. The derivation of equation (HW1.3) can be found in Appendix A.

The term $\theta(t)$ is derived from the initial yield curve. Typically, the mean reversion parameter $a$ is left as a user input. It may be estimated from historical data or together with volatility parameter $\sigma$ to be determined via calibration to caplets or swaptions prices.

When $a$ and $\sigma$ are constants, simple integration of equation (HW1.2) shows that

$r(t) = r(s)e^{-a(t-s)} \,+\, \alpha(t)\,-\,\alpha(s)e^{-a(t-s)}\, +\, \sigma \int_s^t e^{-a(t-u)}\,dW(u), \qquad (HW1.4)$

which has a distribution at time $t$ conditional on time $s$

$r(t) \sim N(\mathrm{E} \left [ r(t) \mid r(s) \right ] , \, Var \left [ r(t) \mid r(s) \right ]), \qquad (HW1.5)$

where

$\mathrm{E} \left [ r(t) \mid r(s) \right ]= r(s)e^{-a(t-s)} \, + \, \alpha(t)\,-\,\alpha(s)e^{-a(t-s)},$
$Var \left [ r(t) \mid r(s) \right ] = \frac{\sigma^2}{2a} \left(1\,-\,e^{-2a(t-s)} \right),$
$\alpha(t) = f(0,t)+\frac{\sigma^2}{2a}(1-e^{-2at})$,

and $N(\,)$ is the cumulative standard normal distribution.

## Hull-White Zero Coupon Bond Price

With the short rate $r(t)$ following the Hull-white process as in equation (HW1.2), Hull(2002) gives the analytic formula for zero-coupon bond price as

$P(t,T)=A(t,T)e^{-B(t,T)r(t)}, \qquad (HW1.6)\!$

where

$B(t,T)=\frac{1-e^{-a(T-t)}}{a}, \!$

and

$A(t,T)=\frac{P(0,T)}{P(0,t)}\exp \left( -B(t,T)\frac{\partial \ln{P(0,t)} }{\partial t} -\frac{1}{4a^3}\sigma^2(e^{-aT}-e^{-at})^2(e^{2at}-1) \right), \!$

$P(0,t)$ is the initial discount bond price with maturity $t$.

As pointed out in Hull(2002), in practice, it is more relevant to relate the bond price to the $\Delta t$ period rate $R(t)$ instead of $r(t)$. With this approximation, it can be shown that

$P(t,T)=\hat{A}(t,T)e^{-\hat{B}(t,T)R(t)}, \qquad (HW1.7)\!$

where

$B(t,T)=\frac{1-e^{-a(T-t)}}{a}, \!$

and

$\hat{B}(t,T)=\frac{B(t,T)}{B(t,t+\delta t)}\delta t, \!$
$ln\hat{A}(t,T)=ln\frac{P(0,T)}{P(0,t)}- \frac{B(t,T)}{B(t,t+\delta t)}ln\frac{P(0,t+\delta t)}{P(0,t)} -\frac{\sigma^2}{4a}(1-e^{-2at})B(t,T)[B(t,T)-B(t,t+\delta t)]. \!$

In our ThetaML implementation, we will use the $\Delta t$ period rate as an approximation to the short rate $r(t)$ to price zero coupon bond.

## Modeling the Hull-White Short Rate

To implement in ThetaML the Hull-White(1990) model[1], we first decompose the short rate into:

$r(t) = x(t)\,+\,\alpha(t), \qquad (HW1.8)$
$dx(t) = -\,a\,x(t)dt\,+\,\sigma dW(t), x(0) = 0, \qquad (HW1.9)$

where in equation (HW1.8), the short rate $r(t)$ consists of two terms - an Ornstein-Uhlenbeck process $x(t)$ and a deterministic function used to fit to the current term structure.

The exact conditional distribution for the $x(t)$ process is:

$x(t) \sim N(\mathrm{E} \left [ x(t) \mid x(s) \right ] , \, Var \left [ x(t) \mid x(s) \right ]), \qquad (HW1.10)$

where

$\mathrm{E} \left [ x(t) \mid x(s) \right ]= x(s)e^{-\,a\,(t\,-\,s)},\qquad (HW1.11)$
$Var \left [ x(t) \mid x(s) \right ] = \frac{\sigma^2}{2a} \left(1\,-\,e^{-2a(t-s)} \right), \qquad (HW1.12)$

and $N(\,)$ is the cumulative standard normal distribution.

In the following code examples, we first obtain the initial forward rates from the initial zero rate curve. Next, we simulate the $x(t)$ process using the bias-free exact conditional distribution as in (HW1.10)-(HW1.12), and finally obtain simulated short rates using equation (HW1.8).

## The Hull-White Model Implemented in ThetaML Code

model zeroRateToFwdRate
%This model returns the initial forward rates from the initial zero rate curve R0;
%it uses the limit lim(S->T)F(0,T,S) as an approximation for instantaneous forward rates f(0,T)
import R0    "Initial zero rates"
import T0    "Initial zero rate maturity times"
export F     "Initial forward rates"

tBefore = 0
rBefore = 0
%loop through the arrays R0, T0, and create an array of forward rates F
loop r, t, f : R0, T0, F
rNow = r      %rnow = R0(0, t)
tNow = t
%calculate forward rates from zero rates as the limiting approximations of f(0,T,S)
f = (rNow*tNow - rBefore*tBefore) / (tNow - tBefore)
tBefore = tNow
rBefore = rNow
end

end

model rt
%uses bias-free exact conditional distribution to simulate future short rates
%computes rt = xt + alpha(t), where alpha(t) = f_mkt(0,t) + sigma^2*(1-exp(-a*t))^2/(2*a^2)
%discrete initial zero rates
%E(xt|xs] = xs*exp(-a*(t-s))
%var(xt|xs) = sigma^2/(2*a)*(1-exp(-2*a*(t-s)))
import a        "Hull-White mean reversion rate"
import sigma    "Hull-White short rate volatility"
import R0       "Initial zero coupon rates as input"
import T0       "Initial zero rate maturity times"
import t        "Simulation time horizon"
import dt       "Discretization time step"
export rtt      "Simulated short rate process"

%call the submodel zeroRateToFwdRate to obtain the initial forward rates
%from the initial zero rate curve
call zeroRateToFwdRate
export R0, T0
import F
fork
tBefore = 0
%loop through the initial forward rates and maturity times
loop f, ti: F, T0
ft = f
dtf = ti - tBefore
theta dtf       %theta advances time by dtf time units
tBefore = ti
end
end
rtt = R0[1]        %initial value for short rate
xs = 0             %initial value for x-process
fork
loop t/dt
theta dt        %theta advances time by dt time units
tt = @time      %time passed since the initiation of this simulation thread
alphat = ft + sigma^2*(1-exp(-a*tt))^2/(2*a^2)  %alpha(t) term in Hull-White model
E_xt = xs * exp(-a*dt)                          %conditional expected xt
s_xt = sqrt(sigma^2*(1-exp(-2*a*dt))/(2*a))     %conditional standard deviation of xt
randomNumber = randn()
xt = E_xt + s_xt*randomNumber  %x value at time t
rtt = xt + alphat              %short rate at time t
xs = xt                        %update the x value at previous time step
end
end
end

The following ThetaML model uses the simulated short rates to simulate the time t zero coupon bond prices maturing at time T.

model bondtT
%uses simulated short rates rtt to simulate zero coupon bond prices
%computes zero coupon bond price p(t,T)=E[exp(-int(0,T)(r(t)dt))], %where future short rate is used as an approximate as the
%delta-period rate
%reference Hull(2002) P547
import a        "Mean reversion rate"
import sigma    "Short rate volatility"
import T        "Bond Maturity Time"
import R0T      "Initial zero coupon rate curve"
import T0       "Initial zero coupon rate maturity times"
import rtt      "Simulated Hull-White one factor short rates"
import t        "Simulation time horization"
import dt       "Discretization time step"
export PtT      "Simulated time t discount bond prices maturing at time T"

%call the submodel interpolateZeroRates to obtain the initial zero rates for the desired maturity
call interpolateZeroRates
export T, R0T, T0
import RT
PT = exp( -RT * T)            %compute discount bond price at time 0 with maturity T

loop t/dt
call interpolateZeroRates
export R0T, T0
export @time to T
import Rt from RT     %get zero rate of maturity @time
%compute from the initial curve R the discount bond price with maturity @time
Pt = exp( -Rt * (@time))
call interpolateZeroRates
export R0T, T0
export (@time+dt) to T
import Rt1 from RT     %get zero rate of maturity @time+delta
%compute from the initial curve R the discount bond price with maturity @time+delta
Pt1 = exp(-Rt1*((@time+dt)))

%formulas see Hull(2002) p547
BtT = ( 1 - exp(-a*(T-@time)) )/a   %B(t,T) term in Hull-White discount bond price formula
Btdelta = ( 1 - exp(-a*(dt)) )/a
%lnA(t,T) term in Hull-White discount bond price formula
lnAtT=log(PT/Pt)-BtT/Btdelta*log(Pt1/Pt)-
sigma^2/(4*a)*(1-exp(-2*a*@time))*BtT*(BtT-Btdelta);
BtT_bar = BtT/Btdelta * dt

%future short rate rtt is ht (=delta) period spaced
%'rtt' here approximates the delta-t period rate R in Hull(2002) p547
PtT = exp( lnAtT - BtT_bar* rtt)
theta dt        %the 'theta' command passes time by ht (=delta) period
end
end

The following ThetaML model is the submodel called in the model bondtT.

model interpolateZeroRates
%this model returns zero coupon rates of an arbitrary maturity T interpolated
%from the initial yield curve R0T
import R0T   "Initial zero coupon rate curve"
import T0    "Initial zero coupon rate maturity times"
import T     "Desired maturity"
export RT    "Zero coupon rate of the desired maturity"

%call the Matlab function InterpolateZeroRate
RT = InterpolateZeroRate(R0T, T0, T)

end

## Example Results

We show the result of running the above models for an example problem. The initial zero rates are given in yearly time steps. This graph is the simulated short rate $r(t)$ from 0 to t.

This graph is the simulated discount bond prices at time t with maturity T.

## References

1. [1] Hull J., and A. White, 1990, Pricing interest rate derivative securities, Review of Financial Studies, 3, 4, 573-592.

## Appendix

### Appendix A. Derivation of the function form for the drift term in equation (HW1.3)

To derive equation (HW1.3), we first decompose the short rate $r(t)$ process as in equations (HW1.8) and (HW1.9). For convenience, we reproduce these two equations as below:

$r(t) = x(t)\,+\,\alpha(t), \qquad (HWA.1)$
$dx(t) = -\,a\,x(t)dt\,+\,\sigma dW(t),\, x(0) = 0. \qquad (HWA.2)$

Simple integration of equation (HWA.2) from $0$ to $t$ gives

$x(t) = x(0)e^{-a\,t}\,+\,\sigma \int_0^t e^{-a\,(t\,-\,s)} dW(s), \qquad (HWA.3)$

and the integral $\int_0^t x(u)\,du$ is by integrating equation (HWA.3) again

$\int_0^t x(u)\,du = x(0)\int_0^t e^{-a\,u} du \,+\,\sigma \int_0^t \int_0^u e^{-a\,(u\,-\,s)} dW(s)\,du, \qquad (HWA.4)$

as such, the variance of $\int_0^t x(u)\,du$ is

$Var \left [ \int_0^t x(u)\,du \mid \mathcal{F}_0 \right ] = \mathbb{E} \left [ \left (\sigma \int_0^t \int_0^u e^{-a\,(u\,-\,s)} dW(s)\,du \mid \mathcal{F}_0 \right )^2 \right ]$
$= \sigma ^2 \int_0^t \left ( \int_s^t e^{-a\,(u\,-\,s)} du \right )^2 \,ds$
$= \sigma ^2 \int_0^t \left ( \frac {1\,-\,e^{-a\,(t\,-\,s)} } {a} \right )^2 \,ds$
$= \frac {\sigma ^2}{a^2} \left (t\,+\, \frac {1\,-\,e^{-2\,a\,t} } {2a}\,-\, 2\frac {1\,-\,e^{-\,a\,t} } {a} \right ). \qquad (HWA.5)$

Using the fundamental pricing relation

$P(t,T) = \mathbb{E}^Q \left [ e^{-\int_t^T r(s)ds} \mid \mathcal{F}_t \right ], \qquad (HWA.6)$

and plug in equation (HWA.1), we have

$P(t,T) = \mathbb{E}^Q \left [ e^{-\int_t^T \left ( x(s)\,+\, \alpha(s) \right )ds} \mid \mathcal{F}_t \right ]$
$= \mathbb{E}^Q \left [ e^{-\int_t^T x(s)ds} \mid \mathcal{F}_t \right ] e^{-\int_t^T \alpha(s) ds}, (HWA.7)$

since $-\int_t^T \alpha(s) ds$ in equation (HWA.7) is deterministic and can be taken out of the expectation term safely.

The price of a zero coupon bond at time $0$ with maturity $t$ follows from equation (HWA.7) as

$P(0,t) = \mathbb{E}^Q \left [ e^{-\int_0^t x(s)ds} \mid \mathcal{F}_0 \right ] e^{-\int_0^t \alpha(s) ds}, \qquad (HWA.8)$

Using the lognormal properties of random variables, equation (HWA.8) can be re-presented as

$P(0,t) = e^{\mathbb{E} \left [ -\int_0^t x(s)ds \mid \mathcal{F}_0 \right ] + \frac{1}{2} Var \left [ -\int_0^t x(s)ds \mid \mathcal{F}_0 \right ] } e^{-\int_0^t \alpha(s) ds}. \qquad (HWA.9)$

since by definition $x(0)=0$ and equation (HWA.4) gives

$\mathbb{E} \left [-\int_0^t x(s)ds \mid \mathcal{F}_0 \right ] = x(0)\int_0^t e^{-a\,u} du = x(0) \frac {1-e^{-at}}{a} = 0. \qquad (HWA.10)$

Substituting equations (HWA.10) and (HWA.5) into equation (HWA.9), we have

$P(0,t) = e^{\frac{1}{2} Var \left [ -\int_0^t x(s)ds \mid \mathcal{F}_0 \right ] } e^{-\int_0^t \alpha(s) ds}$
$= e^{\frac {\sigma ^2}{2a^2} \left (t\,+\, \frac {1\,-\,e^{-2\,a\,t} } {2a}\,-\, 2\frac {1\,-\,e^{-\,a\,t} } {a} \right ) } e^{-\int_0^t \alpha(s) ds}. \qquad (HWA.11)$

Taking log and doing partial derivative of equation (HWA.11) with respect to $t$ gives

$\frac {\partial \ln P(0,t)}{\partial t} = \frac {\sigma ^2}{2a^2} \left (1\,+\, e^{-2\,a\,t}\,-\, 2\,e^{-\,a\,t} \right )\,-\, \alpha(t), \qquad (HWA.12)$

rearranging gives

$\alpha(t) = -\frac {\partial \ln P(0,t)}{\partial t}\,+\,\frac {\sigma ^2}{2a^2} \left (1\,+\, e^{-2\,a\,t}\,-\, 2\,e^{-\,a\,t} \right )$
$= f(0,t)\,+\,\frac {\sigma ^2}{2a^2} \left (1\,+\, e^{-2\,a\,t}\,-\, 2\,e^{-\,a\,t} \right ), \qquad (HWA.13)$

where $f(0,t)$ is the initial forward rate with maturity $t$.

From equation (HWA.1), we have

$dr(t) = dx(t)\,+\, d \alpha(t)\,dt,$
$= \left [ d \alpha(t)\,-\,a\,x(t) \right ]dt\,+\,\sigma dW(t)$
$= \left [ d \alpha(t)\,-\,a\, \left ( r(t)\,-\, \alpha(t) \right ) \right ]dt\,+\,\sigma dW(t)$
$= \left [ d \alpha(t)\,+\,a\, \alpha(t) \,-\,a \, r(t) \right ]dt\,+\,\sigma dW(t). \qquad (HWA.14)$

Comparing the drift term of equation (HWA.14) with equation (HW1.2), we have

$\theta(t) = d \alpha(t)\,+\,a\, \alpha(t). \qquad (HWA.15)$

Substituting equation (HWA.13) into equation (HWA.15), we finally have

$\theta(t) = d \alpha(t)\,+\,a\, \alpha(t)$
$= \frac {\partial f(0,t)}{\partial t}\,+\, \frac {\sigma ^2}{2a} \left ( -2\, e^{-2\,a\,t}\,+\, 2\,e^{-\,a\,t} \right )\,+\,a\, f(0,t)\,+\,\frac {\sigma ^2}{2a} \left (1\,+\, e^{-2\,a\,t}\,-\, 2\,e^{-\,a\,t} \right )$
$= \frac {\partial f(0,t)}{\partial t}\,+\,a\, f(0,t)\,+ \frac {\sigma ^2}{2a} \left ( 1\,-\, e^{-2\,a\,t} \right ). \qquad (HWA.16)$

### Appendix B. Derivation of the discount bond process of the Hull-White (1990) model

The zero coupon bond price for Hull White One Factor Model has the following affine function form

$P(t, \ T) = A(t, \ T) \ e^{-B(t, \ T) \ r(t)}, \qquad (HWB.1)$

where

$B(t, \ T) = \frac{1 \ - \ e^{- (T-t)}}{a}, \qquad (HWB.2)$
$\ln A(t, \ T) = \ln \frac{ P(0, \ T) }{ P(0, \ t) } \ - \ B(t, \ T) \frac{\partial \ln P(0, \ t)}{\partial t} \ - \ \frac{\sigma ^2}{4a^2} \left ( e^{-aT} \ - \ e^{-at} \right )^2 \left ( e^{2at} \ - \ 1 \right ). \qquad (HWB.3)$

The Itô derivative of $\ln P(t, \ T)$ is as follows

\begin{align} d \left ( \ln P(t, \ T) \right ) & = \\ & = \frac{ \partial \ln P(t, \ T)}{\partial r} dr(t) \ + \ \frac{ \partial \ln P(t, \ T)}{\partial t} dt \ + \ \frac{1}{2} \frac{ \partial^2 \ln P(t, \ T)}{\partial r^2} \langle dr(t), \ dr(t) \rangle \\ & = - B(t, \ T) dr(t) \ + \ \frac{ \partial \ln A(t, \ T)}{\partial t} dt \ - \ \frac{ \partial B(t, \ T)}{\partial t} r(t) dt, \end{align} \qquad (HWB.4)

where

\begin{align} \frac{ \partial \ln A(t, \ T) }{\partial t} & = \\ & = - \frac{ \partial \ln P(0, \ t)}{\partial t} dt \ - \ \frac{ \partial B(t, \ T)}{\partial t} \frac{ \partial \ln P(0, \ t)}{\partial t} dt \ - \ B(t, \ T) \frac{ \partial^2 \ln P(0, \ t)}{\partial t^2} dt \\ & \ - \ \frac{\sigma ^2}{2a^2} \left ( e^{-aT} \ - \ e^{-at} \right )^2 e^{2at} \ - \ \frac{\sigma ^2}{2a^2} \left ( e^{-aT} \ - \ e^{-at} \right ) \left ( e^{at} \ - \ e^{-at} \right ), \end{align} \qquad (HWB.5)

and

$\frac{ \partial B(t, \ T)}{\partial t} = - \ e^{- a(T-t)}, \qquad (HWB.6)$

Substituting the process for $dr(t)$ and equations (HWB.5) and (HWB.6) into equation (HWB.4), we have

\begin{align} d \left ( \ln P(t, \ T) \right ) & = \\ & = - B(t, \ T) \left \{ \left [ \theta (t) \ - \ a r(t) \right ] dt \ + \ \sigma \ dW(t) \right \} \ - \ e^{- a(T-t)} f(0, \ t) dt \\ & \ - \ B(t, \ T) f_t (0, \ t) dt \ - \ \frac{\sigma ^2}{2a^2} \left ( e^{-aT} \ - \ e^{-at} \right ) \left [ \left ( e^{-aT} \ - \ e^{-at} \right ) e^{2at} \ + \ \left ( e^{at} \ - \ e^{-at} \right ) \right ]. \end{align} \qquad (HWB.7)

Substituting $\theta (t)$ from equation (HW1.3) and simplifying, we have

\begin{align} d \left ( \ln P(t, \ T) \right ) & = \\ & = \left ( r(t) \ - \ \frac{\sigma ^2}{2} B(t, \ T)^2 \right ) dt \ - \ \sigma B(t, \ T) \ dW(t) \\ \end{align} \qquad (HWB.8)

$\Rightarrow \frac{ d P(t, \ T) }{ P(t, \ T) } = r(t) dt \ - \ \sigma B(t, \ T) \ dW(t). \qquad (HWB.9)$

### Appendix C. From short rate $r(t)$ to $\delta t$-period rate $R(t)$

In practice, it is more relevant to relate zero coupon bond price $P(t,\ T)$ to the $\delta t$-period rate $R(t)$.

To derive zero coupon bond price $P(t,\ T)$ in terms of the $\delta t$-period rate $R(t)$, we do as what follows.

First, from equation (HWB.1), we have the following representation in terms of short rate $r(t)$:

$P(t, \ t + \delta t) = A(t, \ t + \delta t) \ e^{-B(t, \ t + \delta t) \ r(t)}, \qquad (HWC.1)$

We have also the following representation in terms of the $\delta t$-period rate $R(t)$:

$P(t, \ t + \delta t) = e^{- R(t) \delta t}, \qquad (HWC.2)$

Equating the right hand sides of equations (HWC.1) and (HWC.2)

$A(t, \ t + \delta t) \ e^{-B(t, \ t + \delta t) \ r(t)} = e^{- R(t) \delta t}, \qquad (HWC.3)$

And taking log of both sides of equation (HWR.3) then multiplying both sides by the factor $\frac{ B(t,\ T)}{ B(t, \ t + \delta t)}$,, we have the following:

$\frac{ B(t,\ T)}{ B(t, \ t + \delta t)} \ln A(t, \ t + \delta t) \ - \ \frac{ B(t,\ T)}{ B(t, \ t + \delta t)} B(t, \ t + \delta t) \ r(t) = - R(t) \delta t \frac{ B(t,\ T)}{ B(t, \ t + \delta t)}, \qquad (HWC.4)$

Simplifying, rearranging and taking exponential of both sides, we have

$e^{-B(t, \ T) \ r(t)} = \frac{ e^{ -R(t) \frac{ B(t,\ T)}{ B(t, \ t + \delta t)} \delta t} } { A(t, \ t + \delta t)^{ \frac{ B(t,\ T)}{ B(t, \ t + \delta t)}} }. \qquad (HWC.5)$

Plugging equation (HWC.5) into equation (HWC.1), we have the zero coupon bond price $P(t,\ T)$ in terms of the $\delta t$-period rate $R(t)$ as follows:

$P(t,\ T) = \frac{ A(t, \ T) } { A(t, \ t + \delta t)^{ \frac{B(t,\ T)}{ B(t, \ t + \delta t)} } } \ e^{ -R(t) \frac{ B(t,\ T) \delta t }{ B(t, \ t + \delta t) } }. \qquad (HWC.6)$

Denote

$\hat{A}(t,\ T) = \frac{ A(t, \ T) } { A(t, \ t + \delta t)^{ \frac{B(t,\ T)}{ B(t, \ t + \delta t)} } }$,
$\hat{B}(t,\ T) = \frac{ B(t,\ T) \delta t }{ B(t, \ t + \delta t) }$,

we have the simplified representation for zero coupon bond price $P(t,\ T)$ in terms of the $\delta t$-period rate $R(t)$ as

$P(t, \ T) = \hat{A} (t, \ T) \ e^{-\hat{B} (t, \ T) \ R(t)}, \qquad (HWC.7)$

where

$\ln \hat{A} (t, \ T) = \ln \frac{ P(0, \ T) }{ P(0, \ t) } \ - \frac {\ B(t, \ T)}{ B(t, \ t + \delta t)} \ln \frac{ P(0, \ t + \delta t)}{ P(0, \ t) } \ - \ \frac{\sigma ^2}{4a} \left ( 1 \ - \ e^{-2at} \right ) B(t, \ T) \left [ B(t, \ T) \ - \ B(t, \ t + \delta t) \right ], \qquad (HWB.8)$

with

$\hat{B}(t,\ T) = \frac{ B(t,\ T) \delta t }{ B(t, \ t + \delta t) }$.