收益率曲线matlab,收益率曲线拟合技术解读.ppt

收益率曲线拟合技术 收益率曲线参数模型的一般方法 一、符号定义:远期利率与即期利率关系 如果假设当前市场远期利率可用某种参数函数表达,如f(t,T,b) ,则即期利率可以表达为s(t,T,b),贴现函数同样也可以表达为B(t,T,b) 收益率曲线参数模型的一般方法 一、符号定义 贴现函数 表示在时间T支付的现金流 在时间t的贴现系数 其中, 为函数的参数向量 债券理论价格 表示债券j的理论价格 表示该债券现金流向量 收益率曲线参数模型的一般方法 二、一般方法 假设 我们可以获得一组现金流向量 已知,无违约风险,在时间t的市场价格为 的债券 同时,我们构造假想的 函数形式 (样条法中,即为分段的样条函数) 求 使 最小 我们表示为 由此 向量,我们即可得知 从而得出瞬时远期利率期限结构 收益率曲线参数模型步骤(1) 确定约束条件 对贴现函数 有 始终成立 上式作为目标函数的约束条件 收益率曲线参数模型步骤(2):确定误差 债券的理论价格与实际价格 对于债券 j,有 对于 满足 1、 2、方差 3、协方差 收益率曲线参数模型步骤(2):确定误差 残差的方差-协方差矩阵为(与广义最小二乘法对应) 简化方法为假设各种债券的方差相等,即权重 显然,到期期限长的债券估价较难,因此,权重 应考虑期限因素 Vasicek和Fong的方法 即 其中, 和 分别表示债券j在时间t的到期收益率和久期 收益率曲线参数模型步骤(2):目标函数及其优化 令 为我们要估计的贴现函数系数向量 为无约束条件下的 的估计值 为约束条件下 的估计值 由目标函数 及约束条件 我们即可用广义最小二乘法求得参数的解析解。但一般Matlab软件可以通过迭代优化完成这个过程。 优化过程——获得最优的参数向量 Nelson-Siegel-Svenson模型 多项式样条函数(一) 我们一般使用三阶的多项式样条函数形式 且为上述多项式样条函数连续可导,须满足 其中 是函数 的第i 阶导数(i= 0, 1, 2) 多项式样条函数(二) 满足以上条件,约掉部分参数,样条函数形式为 指数样条函数(一) 一般应用三阶的指数形式样条函数,形式如下 上式中,u的经济含义为起息日为未来无限远时的瞬间远期利率 亦即 指数样条函数(二) 应用指数样条函数的最优决策过程 (广义最小二乘无解析解,必须通过迭代优化) 1、将参数向量 固定在一个合理的初值上 2、以 来计算 3、运用牛顿迭代法取完所有 的值来对 进行最优化,求出其最小二乘估计量 样条分段数的最优取值 样条分段数越大,曲线拟合度越高,但平滑值越差 样条分段数越小,则曲线越平滑,但拟合度差 样条分段数确定方法一: 样条分段数= 参考债券集合包含的债券数 n的平方根 样条分段数确定方法二: Priaulet的平均差距直观法,标准差表示的误差 <= 0.15% 样条分界点的最优选择 原则:分界点选择应能够反映出市场的自然形成的,针对不同期限债券的分隔特征 例:Priaulet(1997)对法国债券市场分割的四个样条 短期债券样条(1天~~1年) 中期债券样条(1年~~7年) 长期债券样条(7年~~10年) 超长期债券样条(10年~~30年) 目标函数的确定 一般形式 f 为由(三阶)样条函数得出的远期瞬时利率 构成的收益率曲线 目标函数的修正 扩展的形式:为避免收益率曲线摆动而加入惩罚函数,目标函数为 其中, 为惩罚函数常量 在Fisher的方法中, 其中,N为集合中的债券数量, 为理论价格和实际价格的残差方差, 为有效参数的数目,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于文本文件中的点云数据,您可以使用MATLAB的文件读取和拟合函数来进行曲线拟合。下面是一个简单的步骤示例: 1. 导入数据:使用`importdata`函数将点云数据从文本文件中读取到MATLAB中。 ```matlab data = importdata('点云.txt'); ``` 2. 提取自变量和因变量:根据文本文件的格式,提取自变量和因变量的数据。 ```matlab x = data(:, 1); % 自变量 y = data(:, 2); % 因变量 ``` 3. 拟合曲线:选择合适的拟合函数,例如一次或多次多项式拟合。使用`polyfit`函数进行拟合,其中第一个参数是自变量,第二个参数是因变量,第三个参数是拟合的多项式次数。 ```matlab degree = 2; % 选择拟合多项式的次数 coefficients = polyfit(x, y, degree); ``` 4. 绘制拟合曲线:使用`polyval`函数计算拟合曲线上的点,并使用`plot`函数绘制原始数据点和拟合曲线。 ```matlab x_fit = linspace(min(x), max(x), 100); % 生成拟合曲线上的点 y_fit = polyval(coefficients, x_fit); % 计算拟合曲线上的因变量值 plot(x, y, 'ro'); % 原始数据点 hold on; plot(x_fit, y_fit, 'b-'); % 拟合曲线 legend('原始数据', '拟合曲线'); xlabel('自变量'); ylabel('因变量'); ``` 这个示例假设您的文本文件中有两列数据,第一列是自变量,第二列是因变量。您可以根据实际情况进行调整。同样地,您还可以尝试不同的拟合函数和多项式次数来获得更好的拟合效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值