【双因素模型的模型参数】使用最大似然估计法和卡尔曼滤波器估计、几何布朗运动模型和奥恩斯坦-乌伦贝克模型的估计研究(Matlab代码实现)

      💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

 ⛳️赠与读者

💥1 概述

双因素模型参数估计研究

1. 引言

2. 模型与方法

2.1 Schwartz-Smith双因素模型

2.2 最大似然估计法

2.3 卡尔曼滤波器

2.4 几何布朗运动模型

2.5 奥恩斯坦-乌伦贝克模型

3. 估计过程

4. 模型比较

5. 结果与讨论

6. 结论

7. 展望

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、数据、文章


 ⛳️赠与读者

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。建议粉丝按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。

     或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

💥1 概述

【双因素模型的模型参数】使用最大似然估计法和卡尔曼滤波器估计、几何布朗运动模型和奥恩斯坦-乌伦贝克模型的估计研究

使用最大似然估计法和卡尔曼滤波器估计Schwartz-Smith(2000)论文(商品价格的短期变化和长期动态)中提出的2因子模型的模型参数。根据估计参数,生成两个因子。
本文允许用户根据提供的每日数据轻松选择不同的数据频率,在提供的总数据集的子样本上估计模型,在估计中从提供的数据集中添加或删除一些未来合约,选择参数和初始状态的初始猜测。

本文还运行几何布朗运动模型和奥恩斯坦-乌伦贝克模型的估计,以用作基准。然后,通过Log-L评分、p值LR测试和生成的未来曲线与观察到的曲线之间的误差统计(平均误差、平均绝对误差、误差标准差),将Schwartz-Smith双因子模型与两个单因子模型进行比较。

文献来源:

摘要:在本文中,我们开发了一个商品价格的双因素模型,该模型允许短期价格均值回归和价格回归均衡水平的不确定性。虽然这两个因素不是直接可观察的,但可以通过现货和期货价格进行估计。直观地说,长期期货合约的价格变动提供了有关均衡价格水平的信息,短期和长期合约的价格差异提供了有关价格短期变化的信息。我们表明,尽管该模型没有明确考虑便利收益随时间的变化,但这种短期/长期模型等价于Gibson和Schwartz(1990)开发的随机便利收益模型。我们使用石油期货合约的价格来估计模型的参数,并将该模型应用于一些假设的石油相关资产,以证明其用途以及相对于吉布森-施瓦茨模型的一些优势
关键词:商品价格实物期权随机动态模型 

双因素模型参数估计研究

1. 引言

本文旨在探讨Schwartz-Smith(2000)提出的双因素模型在商品价格动态分析中的应用,并对比几何布朗运动模型和奥恩斯坦-乌伦贝克模型作为基准。通过最大似然估计法和卡尔曼滤波器,我们将估计双因素模型的模型参数,并基于这些参数生成两个因子。此外,本文还提供了灵活的选项,允许用户根据不同的数据频率、子样本、合约选择等调整模型估计。

2. 模型与方法
2.1 Schwartz-Smith双因素模型

Schwartz-Smith双因素模型描述了商品价格的短期变化和长期动态。模型通常包含两个随机过程,分别代表价格的短期波动和长期趋势。

2.2 最大似然估计法

最大似然估计法是一种统计方法,用于估计模型参数,使得观测数据的概率最大。在本研究中,我们将使用最大似然估计法来估计双因素模型的参数。

2.3 卡尔曼滤波器

卡尔曼滤波器是一种递归算法,用于从一系列不完全和带有噪声的测量数据中估计动态系统的状态。我们将使用卡尔曼滤波器来估计双因素模型的状态变量。

2.4 几何布朗运动模型

几何布朗运动模型是一种单因素模型,假设价格遵循对数正态分布,并随时间以恒定速率增长。我们将使用此模型作为基准之一。

2.5 奥恩斯坦-乌伦贝克模型

奥恩斯坦-乌伦贝克模型是另一种单因素模型,它描述了一个随机过程,该过程具有均值回归的特性。我们将使用此模型作为另一个基准。

3. 估计过程
  1. 数据预处理:根据用户选择的数据频率、子样本和合约,对数据进行预处理。
  2. 参数估计:使用最大似然估计法和卡尔曼滤波器估计双因素模型的参数。
  3. 因子生成:基于估计的参数,生成两个因子。
  4. 基准模型估计:运行几何布朗运动模型和奥恩斯坦-乌伦贝克模型的估计。
4. 模型比较
  1. Log-L评分:比较不同模型的Log-L评分,以评估模型对数据的拟合程度。
  2. p值LR测试:使用似然比测试(Likelihood Ratio Test)的p值来比较模型之间的差异。
  3. 误差统计:计算生成的未来曲线与观察到的曲线之间的平均误差、平均绝对误差和误差标准差,以评估模型的预测性能。
5. 结果与讨论

根据估计结果和模型比较,我们将讨论Schwartz-Smith双因素模型与两个单因子模型在商品价格动态分析中的优势和局限性。此外,我们还将探讨用户选择的不同选项对模型估计和预测性能的影响。

6. 结论

本文通过使用最大似然估计法和卡尔曼滤波器估计Schwartz-Smith双因素模型的参数,并与几何布朗运动模型和奥恩斯坦-乌伦贝克模型进行比较,为商品价格动态分析提供了一种新的方法。研究结果将为投资者和政策制定者提供有关商品价格动态的重要见解。

7. 展望

未来的研究可以进一步探索双因素模型与其他复杂模型的比较,以及将模型应用于不同商品市场的可行性。此外,还可以考虑引入更多的外部变量和因素,以提高模型的预测性能和解释力。

📚2 运行结果

部分代码:

figure(1);
set(figure(1), 'Position', [100 100 400 1000])

subplot(3,1,1);
hold on
plot(exp(St),'k','linewidth',1);
plot(exp(ss_att(:,1)+ss_att(:,2)),'r','linewidth',1); 
plot(exp(ss_att(:,2)),'b','linewidth',1);
h = legend('Observed Price','Estimated Price','Equilibrium Price');
title('Schwartz-Smith 2-factor model')
hold off

subplot(3,1,2);
hold on
plot(exp(St),'k','linewidth',1);
plot(exp(gbm_att(:,1)+gbm_att(:,2)),'--r','linewidth',1); 
plot(exp(gbm_att(:,2)),'b','linewidth',1);
h = legend('Observed Price','Estimated Price','Equilibrium Price');
title('geometric Brownian motion')
hold off

subplot(3,1,3);
hold on
plot(exp(St),'k','linewidth',1);
plot(exp(ou_att(:,1)+ou_att(:,2)),'r','linewidth',1); 
plot(exp(ou_att(:,2)),'b','linewidth',1);
h = legend('Observed Price','Estimated Price','Equilibrium Price');
title('Ornstein-Uhlenbeck')
hold off

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)

🌈Matlab代码、数据、文章

资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取

                                                           在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荔枝科研社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值