Main Content

hwvolspec

Specify Hull-White interest-rate volatility process

Description

VolSpec = hwvolspec(ValuationDate,VolDates,VolCurve,AlphaDates,AlphaCurve) creates a structure specifying the volatility for hwtree.

The volatility process is such that the variance of r(t + dt) - r(t) is defined as follows: V = (Volatility.^2 .* (1 - exp(-2*Alpha .* dt))) ./ (2 * Alpha). For more information on using Hull-White interest rate trees, see Hull-White (HW) and Black-Karasinski (BK) Modeling.

example

VolSpec = hwvolspec(___,InterpMethod) adds the optional argument InterpMethod.

example

Examples

collapse all

This example shows how to create a Hull-White volatility specification (VolSpec) using the following data.

ValuationDate = '01-01-2004';
StartDate = ValuationDate;
VolDates = ['12-31-2004'; '12-31-2005'; '12-31-2006'; 
'12-31-2007'];
VolCurve = 0.01;
AlphaDates = '01-01-2008';
AlphaCurve = 0.1;

HWVolSpec = hwvolspec(ValuationDate, VolDates, VolCurve,...  
AlphaDates, AlphaCurve)
HWVolSpec = struct with fields:
             FinObj: 'HWVolSpec'
      ValuationDate: 731947
           VolDates: [4x1 double]
           VolCurve: [4x1 double]
         AlphaCurve: 0.1000
         AlphaDates: 733408
    VolInterpMethod: 'linear'

Input Arguments

collapse all

Observation date of the investment horizon, specified as a scalar datetime, string, or data character vector.

To support existing code, hwvolspec also accepts serial date numbers as inputs, but they are not recommended.

Number of points of yield volatility end dates, specified as a NPOINTS-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, hwvolspec also accepts serial date numbers as inputs, but they are not recommended.

Yield volatility values, specified as a NPOINTS-by-1 vector of decimal values. The term structure of VolCurve is the yield volatility represented by the value of the volatility of the yield from time t = 0 to time t + i, where i is any point within the volatility curve.

Note

The number of points in VolCurve and AlphaCurve do not have to be the same.

Data Types: double

Mean reversion end dates, specified as a NPOINTS-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, hwvolspec also accepts serial date numbers as inputs, but they are not recommended.

Positive mean reversion values, specified as a NPOINTS-by-1 vector of positive decimal values.

Note

The number of points in VolCurve and AlphaCurve do not have to be the same.

Data Types: double

(Optional) Interpolation method, specified as a character vector with values supported by interp1.

Data Types: char

Output Arguments

collapse all

Structure specifying the volatility model for hwtree.

Version History

Introduced before R2006a

expand all