| Financial Derivatives Toolbox | ![]() |
Specify an HJM forward rate volatility process
Syntax
Volspec = hjmvolspec(varargin)
Arguments
Sigma_0 is the scalar base volatility over a unit time.
Lambda is the scalar decay factor.
CurveVol is a number of curves (NCURVE) -by-1 vector of Vol values at sample points.
CurveDecay is an NCURVE-by-1 vector of Decay values at sample points.
CurveProp is an NCURVE-by-1 vector of Prop values at sample points.
CurveTerm is an NCURVE-by-1 vector of term sample points T-t.
The time values T, t, and Term are in coupon interval units specified by the Compounding input of hjmtimespec. For instance if Compounding is 2, Term = 1 is a semiannual period (six months).
Description
hjmvolspec specifies a HJM forward rate volatility process. The volatility process is sigma(t,T), where t is the observation time and T is the starting time of a forward rate. In a stationary process the volatility term is T-t. Multiple factors can be specified sequentially. Each factor is specified with one of the functional forms:
Constant volatility (Ho-Lee):
VolSpec = hjmvolspec('Constant', Sigma_0)
Stationary volatility:VolSpec = hjmvolspec('Stationary', CurveVol, CurveTerm)
Exponential volatility: VolSpec = hjmvolspec('Exponential', Sigma_0, Lambda)
Vasicek, Hull-White:
VolSpec = hjmvolspec('Vasicek', Sigma_0, CurveDecay, CurveTerm)
Nearly proportional stationary: VolSpec = hjmvolspec('Proportional', CurveProp, CurveTerm, MaxSpot)
VolSpec is a structure specifying the volatility model for hjmtree.
Example
CurveProp = [0.11765; 0.08825; 0.06865];
CurveTerm = [1; 2; 3];
VolSpec = hjmvolspec('Proportional', CurveProp, CurveTerm, 1e6)
VolSpec =
FinObj: 'HJMVolSpec'
FactorModels: {'Proportional'}
FactorArgs: {{1x3 cell}}
SigmaShift: 0
NumFactors: 1
NumBranch: 2
PBranch: [0.5000 0.5000]
Fact2Branch: [-1 1]
Two-factor exponential and constant
VolSpec = hjmvolspec('Exponential', 0.1, 1, 'Constant', 0.2)
VolSpec =
FinObj: 'HJMVolSpec'
FactorModels: {'Exponential' 'Constant'}
FactorArgs: {{1x2 cell} {1x1 cell}}
SigmaShift: 0
NumFactors: 2
NumBranch: 3
PBranch: [0.2500 0.2500 0.5000]
Fact2Branch: [2x3 double]
See Also
| hjmtree | instadd | ![]() |