[国际彩票登录入口]蒙特卡罗VS引导法|在产品组合中的应用(带代码)

分类:九万彩票投注浏览量:4962发布于:2个月前

原题:蒙特卡罗VS自举法|在产品组合中的应用(带代码)

作者: Stuart J

编译:波哥大|公共编号翻译部

正文

本文将蒙特卡罗分析与引导法的一些概念进行比较。 这些概念与模拟收入序列并生成与投资组合的潜在风险和收入相关的信任部分有关。

这两种方法都用于为指定的资产或资产组合生成模拟定价路径,但使用的方法稍有不同,对于以前从未见过的人来说可能很微妙。 在技术上,自举法是蒙特卡罗模拟的例外,乍一看,这两种方法可能有点困惑。

关于蒙特卡罗分析(此处主要关于“参数化”蒙特卡罗方法),可考虑基于潜在的模型特征生成数据。 因此,例如根据正态分布生成数据,指定对模型的期待输入,在此指定平均值和标准偏差。 那么,我们从哪里得到这些输入数据,往往是根据讨论过的资产的历史价值来设定的。

因此,如果尝试运行多个参数化的蒙特卡罗兰来生成模拟数据(如应用于股票),则趋于测量和计算一段时间内股票的实际收益率的平均值和标准偏差,并将其用作模型的输入值。 这是这种方法的缺点之一。 这是因为这种模型的输出值及其相应推论依赖于假定股票的将来收益率具有与过去收益率相同的特征(至少可以使用这种假定来计算模型的输入值)。

那么,Bootstrapping和它的区别是什么? Bootstrapping也使用历史回报率作为模型输入,但这种方法更加明确地使用历史数据。 实际上,不是计算收益率的基本特征并将其插入参数化模型中,而是从历史收益率的分布中进行采样来生成数据。

具体地,Bootstrapping表示“替换”,并且是“替换采样”方法的概念。

这意味着如果概率样本是从过去的收益率分布中提取出来的,那么它将被替换回来,而不是从“被丢弃的帽子”中去掉,然后在下一个采样期间再次被选择。

这有一个值得注意的重点。 在此方法中,对于“不需要替换的样本”,将随时选择数据点并将其从样本中删除。

Bootstrapping方法背后的逻辑表明,如果我们使用备选样本,那么在“现实生活”中每个提取样本都出现频率相同的特定股票(这再次取决于上述假设,即提取样本) 也就是说,未来和过去的收益分布来自同一个“整体”。

为了说明这个问题,我们收集篮子资产的数据,建立同等权重的投资组合,运行蒙特卡罗法和Bootstrapping模拟,比较这两个结果。 让我们看看结果是如何相似的

一些基本导入和其他变量设置(图表样式、魔术命令调用、在Jupyter notebooks中启用matplotlib绘图并设置用于调用图表的figsize变量)。

使用pandas_datareader,从雅虎(雅虎)下载各种股票指数的价格数据,并将所有价格数据重新设置为从1开始比较。

现在,在Bootstrapping资产组合时,确认我们的方法是正确的非常重要。 我们的方法必须说明资产之间的关联性。 否则,就会得到脱离现实的结果。

例如,如果存在两个强负相关股票,则在随机采样期间对每个股票进行单独采样可能会提取一个特定日期的股票1样本和另一日期的股票2样本。 那么,如果我们这样做的话,可以看出这个样本与股票1有很强的正相关关系。 对于股票2,你相信这真的代表了这两股股票的真实关系吗?

答案是否定的。 因为我们比较“苹果和橙子”。 我们必须从同一时间段提取投资组合的样本。 只有这样的随机样本才能准确捕捉所有资产之间的关联性。

因此,我们可以根据所有投资组合成分的历史收益率序列生成多个随机样本,相应地进行加权,最终加上加权收益率,将相应的输出记录为我们的自举法的“投资组合收益率”。 然后,重复多次该过程,记录模拟的“投资组合收益率”。 这个模拟收益率路径的集合是自举法的输出。

或者,您也可以相应地加权和增加投资组合的历史回报率,然后对单个投资组合的历史回报率分布运行Bootstrapping流程,以创建投资组合回报率。 这个结果非常相似。 第二种方法构建投资组合的方法也是使用同一天发生的加权成分的收益计算的,因此,构成资产的所有关联性都保持在本质上。 因此,可以仅通过组合自举来重新生成多条模拟收益路径,并且这些路径的集合是我们的Bootstrapped输出。

让我们从第二种方法开始。 建立相同权重的投资组合收益率序列。 我们只平均同样权重的投资组合的各个成分的收益很简单。 现在,让我们根据每个组的组成部分为投资组创建一个“价格排列”。

正如你所期待的那样,报酬最终位于单一报酬的中间。 事实上,这是同等加权投资的组合,因此最终完全正确地位于成分收益的“中间”。

在产品组合的收入序列中运行Bootstrapping流程并绘制结果。

我们所做的只是用另一种方法来证明实现上述目标是相似的。 我们采用了单独的成分收益系列的样品,并用那个制作了我们的Bootstrapped模拟。 我们以同样的结果结束(这里当然有随机的要素,用同样的方法也能得到的模拟量不同)。 下面是实现那个的代码。

最后,利用参数化蒙特卡罗方法,随后可快速比较各种方法的结果。

如上所述,参数化的蒙特卡罗方法利用整个基础特征来产生随机样本的值。 这里讨论的特征是历史收益率分布的平均值和标准偏差(或方差)。 然后在模型中输入这些值。 模型从正态分布中随机取样,平均值和标准偏差与过去收益率的平均值和标准偏差相同。

首先,让我们从产品组合中提取数据。 我们有早期的历史利益序列。

0

现在,平均值为0.04%、标准偏差为0.85%的正态分布中产生了必要的样本。

我们最终试着执行蒙特卡罗模拟,这次我们从个别资产分布中创建随机样本,构建投资组合,确认结果是否有差异。

为每项资产创建一个DataFrame,并将其存储在列表中,以模拟资产的收入。

使用列表推导遍历资产收入的DataFrames列表,然后将值除以资产数以表示等效的加权组合。

使用functools库中的reduce函数添加DataFrame值(注意,在这些大型库中,加载的函数非常有用,值得一试)。

最后绘制了蒙特卡罗组合值的仿真结果。

我们很快就能发现什么看起来不一样了! 或许不是很快,但也有一些会飞到我们面前。 在以前的模拟中,Bootstrapping和Monte Carlo的结果模拟值都在0.8到1.6之间。 但是在最后的图中,可以看到这些边界从0.9紧缩到1.3左右。

这是明显的不同,不能只考虑随机性的影响。 如果重复执行这些模拟,则结果仍然相似,并且最终方法几乎始终可以获得更紧密的结束值范围。

您是否记得个别资产之间的关联性影响,以及在执行模拟时必须谨慎观察这些影响? 这只是不能捕捉这种相关关系的最后一种方法。

注意-重要的不是计算价格,而是计算资产收入之间的关系(在未来的文章中可能会进一步提到)。

从上述数值可以看出,所有资产在一定程度上都是正相关的,一些值更大,重要的是所有值都是正的。

为什么我们的最后一个场景和最后一个模拟方法(对组件资产进行参数蒙特卡罗模拟,加权相加,表示我们的投资组合)会带来更小范围的终止值,需要进行很多说明。

逻辑非常简单,因为如果两个资产相关联,它们往往会同时向同一方向移动,所以当一个值上升时,另一个值也往往会相同(有一些警告)。 此外,在未来的文章中可能会更多)。 结果,包含正相关资产的投资组合平均具有比完全不相关资产的投资组合更极端的值,或者实际上是负相关资产的投资组合。

这是因为,如果所有的成分资产都高度相关联的话,它们会同时上下移动,价值的变动会变大。

前三种方法都捕捉到了构成资产之间存在的内在关联性,但我们没有最后的方法。

方法1利用实际的历史日收益值,建立了实际在市场上同一天发生的投资组合。 因此,采用的移动是由实际行动产生的,这些移动是由可以解释的资产运动过程产生的,该过程受资产之间的实际关系的影响。

方法2的逻辑相同。 我们这次为我们的个人资产提供了Bootstrapped的收益,尽管形成了投资组合,但是再次仔细选择了Bootstrapped的第一笔收益,使一次提取的所有收益来自同一天的所有资产。 这还保证了我们提取的值是实际发生日期的实际值,并且通过实际目标资产的运动过程而生成,从而默认说明了资产之间的关联性。

现在,方法3和方法4的区别有些微妙。

通过方法3,我们用实际的单一资产收益率创建了我们的投资组合,执行参数化的Bootstrap流程,根据投资组合的基本特征模拟了收益率序列。 重要的是,产品组合首先是使用单个资产的实际加权日收入值创建的,价格序列隐式说明了资产之间的关系。 并且,执行蒙特卡罗模拟时,输入的参数以具有隐含内置相关关系的历史价格系列计算。 因此,该方法捕获了DID对相关性的影响。

然而,方法4没有能够正确地仿真资产之间的关联性。 对于每项资产,单独的蒙特卡罗模拟使用根据完全独立的计算值计算的参数。

由于样本来源于正态分布,因此每个资产每天提取的单个值确实是“随机的”。 换句话说,无论其他资产的结果如何,每项独立资产的结果都可能为正或负。

这听起来像是一组完全不相关的资产,无论其他资产是否移动,所有资产都是随机移动的。

因为这不是我们所希望的,所以在执行这些方法时要注意,请正确建模实际想要建模的内容返回搜索狐,让我们更详细地看一下

责任编辑:

文章下方广告位
 上一篇 下一篇 

我来回答

猜你喜欢

最近更新

关注我们

qrcode

扫一扫二维码关注我们的微信公众号

站点地图彩超随心所欲机 98c彩票 金彩网 名爵彩票 新万利娱乐主页 琼粤彩票 rjdd.netfuyoudl.comchunshanyuan.com0598xy.comdlywxx.comwoaimeizi.comnimaboke.comlw-sh.comsplunk.77ckcaipiao.cn111.trashcai.cnimgs.21bkcaipiao.cnkaoshi.2020caipiaole.cnebh.developmentyule.cn