自助法在分散式投资策略中的应用

先用人话来描述一下这个问题:有两个收益不固定的投资项目,如何将一笔固定的金额分开投资,才能使总投资风险最小?

再用数学语言来描述一下这个问题,对于两个收益分别为X和Y的金融资产,X、Y为随机变量,把比例为α的金额投到X上,把剩下比例为1-α的金额投到Y中,使Var(αX+(1-α)Y)最小。根据方差的性质、协方差的定义以及极值的导数意义进行转化并求导,可以很easy地得到:

Paste_Image.png

其中:


Paste_Image.png

如果知道总体X、Y的分布,那么可以直接求出α,但事实上往往不知道,只有样本。这个时候就需要根据样本来估计α,但α的估计值真的靠谱么?显然只给出一个数字是不行的。如果α的估计值自身都很不稳定,那就这种计算方法也就不靠谱了。

这里介绍一种重抽样方法:自助法(bootstrap)。这里直接引用CSDN上老子今晚不加班 的《Bootstrap 自助法》中的定义:

在统计学中,自助法(BootstrapMethod,Bootstrapping或自助抽样法)可以指任何一种有放回的均匀抽样,也就是说,每当选中一个样本,它等可能地被再次选中并被再次添加到训练集中。自助法能对采样估计的准确性(标准误差、置信区间和偏差)进行比较好的估计,它基本上能够对任何采样分布的统计量进行估计。

Bootstrap有两种形式:非参数bootstrap和参数化的bootstrap,但基本思想都是模拟。参数化的bootstrap假设总体的分布已知或总体的分布形式已知,可以由样本估计出分布参数,再从参数化的分布中进行再采样,类似于MC。非参数化的bootstrap是从样本中再抽样,而不是从分布函数中进行再抽样。

总而言之,bootstrap是一种可放回式抽样法,当进行大量这种抽样时,可以对估计量的统计量(方差、标准差、标准误差、置信区间等)有一个较为稳定、准确的估计。

这里以R的ISLR 包中的Portfolio 数据集为例,以之为样本,进行自助法重抽样,观察根据样本重抽样计算的α的估计量。

老规矩,先看一下数据集:

> library(ISLR)
> str(Portfolio)
'data.frame':    100 obs. of  2 variables:
 $ X: num  -0.895 -1.562 -0.417 1.044 -0.316 ...
 $ Y: num  -0.235 -0.885 0.272 -0.734 0.842 ...

可见数据框100行,两列X、Y都是数值型。

先计算一下根据样本中所有的观测数据求得的α。

> # 求α的函数
> alpha=function(x,y){
+   vx=var(x)
+   vy=var(y)
+   cxy=cov(x,y)
+   (vy-cxy)/(vx+vy-2*cxy)
+ }
> alpha(Portfolio$X,Portfolio$Y)
[1] 0.5758321

再来求α的估计值。

> # 求α估计值的函数
> alpha.fn=function(data, index){
+   with(data[index,],alpha(X,Y))
+ }
> # 检查一下是否与上面结果一致
> alpha.fn(Portfolio,1:100)
[1] 0.5758321
> # 结果一致

下面进行重抽样。

> # 设定随机数种子
> set.seed(1)
> # 可放回抽100个样本
> alpha.fn (Portfolio,sample(1:100,100,replace=TRUE))
[1] 0.5963833
> # 可放回抽1000个样本
> alpha.fn (Portfolio,sample(1:100,100,replace=TRUE))
[1] 0.5796283

可见,当抽样容量更大时,α的估计值与实际值更接近。

不过当然不必自定义函数,自己去抽样计算,R肯定有自带的bootstrap方法的函数。

> boot.out=boot(Portfolio,alpha.fn,R=1000)
> boot.out

ORDINARY NONPARAMETRIC BOOTSTRAP

Call:
boot(data = Portfolio, statistic = alpha.fn, R = 1000)

Bootstrap Statistics :
     original       bias    std. error
t1* 0.5758321 4.879587e-06  0.08872272

boot()函数输入数据集,欲计算的估计量,以及抽样次数就可以进行bootstrap抽样。从结果上来看,对于原始数据,样本α估计值为0.5758(由于随机性,与上面的结果略有差异),标准误为0.0887。

还可以对估计量进行可视化,观察α估计量的分布。

> plot(boot.out)
Paste_Image.png

可见α估计量正态性良好。

bootci()函数可用来求估计量的置信区间。

> boot.ci(boot.out)
BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS
Based on 1000 bootstrap replicates

CALL : 
boot.ci(boot.out = boot.out)

Intervals : 
Level      Normal              Basic         
95%   ( 0.4019,  0.7497 )   ( 0.3909,  0.7440 )  

Level     Percentile            BCa          
95%   ( 0.4076,  0.7607 )   ( 0.4107,  0.7617 )  
Calculations and Intervals on Original Scale
Warning message:
In boot.ci(boot.out) : bootstrap variances needed for studentized intervals

结果中的4种置信区间是根据不同的方法计算出来的,差别不大,按需取之即可。

这下不仅能给出α的估计值,还能给出标准误和置信区间,有理有据,令人信服。

参考文献

Gareth James et al. An Introduction to Statistical Learning.
老子今晚不加班,《Bootstrap 自助法》,CSDN.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,408评论 4 371
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,690评论 2 307
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 112,036评论 0 255
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,726评论 0 221
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,123评论 3 296
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 41,037评论 1 225
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,178评论 2 318
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,964评论 0 213
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,703评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,863评论 2 254
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,333评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,658评论 3 263
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,374评论 3 244
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,195评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,988评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,167评论 2 285
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,970评论 2 279

推荐阅读更多精彩内容