主要内容

SimbyTransition.

模拟具有过渡密度的Cox-Ingersoll-Ross样品路径

描述

例子

[path) = simByTransition (MDL.NPeriods模拟NTrials样本路径据nvar由Cox-Ingersoll-Ross (CIR)过程驱动的独立状态变量的风险来源超过NPeriods连续观察期。SimbyTransition.使用过渡密度函数的近似来近似连续时间CIR模型。

例子

[path) = simByTransition (___名称,价值除了前面语法中的输入参数外,还使用一个或多个名称-值对参数指定选项。

例子

全部收缩

使用短速率,使用CIR模型模拟将来的速率动态和术语结构。CIR模型表示为

D. R. T. = α B. - R. T. D. T. + σ R. T. D. W. T.

债券价格的指数仿射形式为

B. T. T. = E. - 一种 T. T. R. T. + C T. T.

在哪里

一种 T. T. = 2 E. γ T. - T. - 1 γ + α E. γ T. - T. - 1 + 2 γ

B. T. T. = 2 α B. σ 2 日志 2 γ E. α + γ T. - T. / 2 γ + α E. γ T. - T. - 1 + 2 γ

γ = α 2 + 2 σ 2

定义参数cir对象。

alpha = .1;b = .05;Sigma = .05;R0 = .04;

定义债券价格的函数。

Gamma = Sqrt(alpha ^ 2 + 2 * sigma ^ 2);a_func = @(t,t)...2 *(exp(γ*(t-t)) -  1)/((alpha +γ)*(exp(γ*(t-t)) -  1)+ 2 *伽玛);c_func = @(t,t)...(2*alpha*b/sigma^2)*log(2*gamma*exp((alpha+gamma)*(T-t)/2)/((alpha+gamma)*(exp(gamma*(T-t))-1)+2*gamma)); P_func = @(t,T,r_t) exp(-A_func(t,T)*r_t+C_func(t,T));

创建一个cir对象。

obj =圆(α,b,σ,“StartState”、r0)
obj =类背景:Cox-Ingersoll-Ross  ---------------------------------------- 维度:状态= 1,布朗= 1  ---------------------------------------- 开始时间:0 StartState: 0.04相关:1漂移:漂移率函数F (t) X (t))扩散:扩散率函数G (t) X (t))模拟:模拟方法/函数simByEulerσ:0.05水平:0.05速度:0.1

定义模拟参数。

ntrials = 100;nperiods = 5;%模拟未来5年的短期走势nsteps = 12;%设置中间步骤以提高准确度

模拟短期利率。返回路径是一个(NPeriods + 1)-by-据nvar——- - - - - -NTrials三维时间序列数组。对于本例,输出的大小为6.——- - - - - -1——- - - - - -One hundred.

rng (“默认”);复制相同的结果rpaths = simbytransition(obj,nperiods,'ntrials',ntrials,“nSteps”, nSteps);大小(rpath)
ANS =.1×36 1 100.
rPathsExp =意味着(rpath、3);

确定未来30年的期限结构。

成熟= 30;T = 1:成熟;futuresTimes = 1: nPeriods + 1;%prelocate simtermstrucsimTermStructure = 0 (nPeriods + 1, 30);为了i = futuresTimes为了t = t bondPrice = P_func(i,i+t,rPathsExp(i));simTermStructure (t) =日志(对)/ t;结尾结尾绘图(Simtermstructure')传奇(“当前”“1”“2年”“3年”“4”“5年”)标题(“未来5年的预计期限结构”) ylabel ('长期成熟度r(t,t)')包含('时间'

图包含轴对象。下一个5年来标题投影期限结构的轴对象包含6个类型的线路。这些物品代表当前,1年,2年,3年,4年,5年。

输入参数

全部收缩

随机微分方程模型,指定为cir对象。有关创建cir对象,看到cir

数据类型:目的

模拟周期数,指定为正标量整数。的价值NPeriods确定模拟输出系列的行数。

数据类型:

名称 - 值参数

指定可选的逗号分离对名称,价值参数。的名字是参数名称和价值为对应值。的名字必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:[路径,时间] = SimByTransition(CIR,NPERIODS,'deltatimes',dt)

模拟试验(样本路径)NPeriods观察各,指定为逗号分隔的配对组成'ntrials'和一个正标量整数。

数据类型:

观察之间的正时间增量,指定为逗号分隔的对,包括“DeltaTimes”和一个标量或一个NPeriods——- - - - - -1列向量。

德国代表了熟悉的DT.在随机微分方程中发现,并确定报告输出状态变量的模拟路径的时间。

数据类型:

在每个时间增量内的中间时间步长的数目DT.(定义为DeltaTimes),指定为逗号分隔的对,由'nsteps'和一个正标量整数。

SimbyTransition.每次增量功能分区DT.NSteps小区间的长度DT./NSteps,并通过计算仿真状态向量来细化仿真NSteps−1中间点。虽然SimbyTransition.在这些中间点没有报告输出状态向量,通过使模拟更紧密地近似于底层的连续时间过程,细化可以提高精度。

数据类型:

标志存储和返回方法,指示输出数组如何path存储并返回,指定为逗号分隔的对,由“路径”和值为的标量逻辑标志真的错误的

  • 如果储层真的(默认值)或未指定,然后SimbyTransition.回报path作为一个三维时间序列阵列。

  • 如果储层错误的(逻辑0.),然后SimbyTransition.返回path输出数组作为一个空矩阵。

数据类型:逻辑

句号结束过程或状态矢量调整序列,指定为逗号分隔对,由'流程'以及表单功能的函数或小区数组

X T. = P. T. X T.

SimbyTransition.在每个观测周期结束时应用处理函数。处理函数接受当前的观测时间T.和当前状态向量XT.,并返回可调整输入状态的状态向量。

如果指定多个处理函数,SimbyTransition.按函数在单元格数组中出现的顺序调用函数。

数据类型:细胞|功能

输出参数

全部收缩

相关状态变量的模拟路径,作为一个(nperiods + 1)——- - - - - -据nvar——- - - - - -NTrials三维时间序列阵列。

对于给定的试验,每行path是状态矢量的转置XT.当时T..当输入标志储层=错误的SimbyTransition.回报path作为空矩阵。

与模拟路径相关的观测时间,返回为(nperiods + 1)——- - - - - -1列向量。的每个元素与相应的行相关联path

更多关于

全部收缩

过渡密度模拟

SDE没有这样的解决方案R.T.) =FR.(0),⋯)。

换句话说,这个方程不是显式可解的。然而,这个过程的跃迁密度是已知的。

分布的精确模拟R.T._1)⋯,R.T._N.)是在时间的过程中的过程T._1,⋯,T._N.对于相同的价值R.(0)。该过程的过渡密度是已知的并且表示为

R. T. = σ 2 1 E. α T. 4. α X D. 2 4. α E. α T. σ 2 1 E. α T. R. T. > 在哪里 D. 4. B. α σ 2

算法

使用SimbyTransition.函数模拟表单的任何向量值CIR过程

D. X T. = S. T. [ L. T. X T. ] D. T. + D. T. X T. 1 2 V. T. D. W. T.

在哪里

  • XT.是一个据nvar——- - - - - -1过程变量的状态向量。

  • S.是一个据nvar——- - - - - -据nvar平均回归速度矩阵(平均回归率)。

  • L.是一个据nvar——- - - - - -1均值回归水平向量(长期均值或水平)。

  • D.是一个据nvar——- - - - - -据nvar对角线矩阵,其中沿主对角线的每个元素是状态向量的相应元素的平方根。

  • V.是一个据nvar——- - - - - -NBrowns瞬时波动率矩阵。

  • DW.T.是一个NBrowns——- - - - - -1布朗运动向量。

参考文献

[1] Glasserman,P。金融工程中的蒙特卡罗方法。纽约:Springer-Verlag, 2004。

也可以看看

|

在R2018B中介绍