R语言与马克维茨资产组合理论学习笔记(利用fportfolio包实现)
2012-12-02 13:22
961 查看
仍然以fportfolio包中的数据集LPP2005.RET为例。
library(fPortfolio)
#模型设定 mvspec<-portfolioSpec() setRiskFreeRate(mvspec)<-0 setSolver(mvspec)<-"solveRshortExact" print(mvspec) data<-100*LPP2005 Data<-portfolioData(100*LPP2005.RET,mvspec)#100*LPP2005.RET一些股票的收益率 print(Data) constrains<-"Short" portfolioConstraints(data,mvspec,constrains)
#方差最小组合求解 globminportfolio<-minvariancePortfolio(Data,mvspec,constrains) print(globminportfolio)
#求解特定组合的均值方差 m1vspec<-portfolioSpec() data1<-100*LPP2005.RET Data1<-portfolioData(100*LPP2005.RET,m1vspec) n<-ncol(data1) setWeights(m1vspec)<-rep(1/n,n) m1vPortfolio<-feasiblePortfolio(Data1,m1vspec,constraints="LongOnly") print(m1vPortfolio)
#在上面同等收益下,优化组合 mvspec1<-portfolioSpec() setRiskFreeRate(mvspec1)<-0.05 targetReturn<-getTargetReturn(m1vPortfolio@portfolio)["mean"] setTargetReturn(mvspec1)<-targetReturn efficientportfolio<-efficientPortfolio(Data,spec=mvspec1) weightsPie(efficientportfolio) efficientportfolio
#做出有效前沿 data2<-100*LPP2005.RET lppspec<-portfolioSpec() setRiskFreeRate(lppspec)<-0.005 frontier<-portfolioFrontier(data2,lppspec) #plot(frontier) tailoredFrontierPlot(frontier) frontierPlot(frontier) cmlPoints(frontier,col=2) frontier weightsPlot(frontier)
相关文章推荐
- R语言与马克维茨资产组合理论学习笔记(fportfolio包简介)
- Java学习笔记-------使用DataOutputStream 、DataInputStream 组合实现C/S通信 :实例
- Dynamic CRM 2013学习笔记(十一)利用Javascript实现子表合计(汇总,求和)功能
- 应用统计学与R语言实现学习笔记(四)——抽样方法与抽样分布
- 应用统计学与R语言实现学习笔记(十一)——判别分析
- KnnR语言实现学习笔记
- 应用统计学与R语言实现学习笔记(十)——聚类分析
- Objective-C学习笔记 利用协议实现回调函数
- PS学习笔记----------利用图层蒙版来实现无损抠图
- R语言学习笔记 - 2 split、lapply和do.calld实现分组求平均
- R语言实现关联规则与推荐算法(学习笔记)
- Java学习笔记——利用接口和observer实现对象监视
- 应用统计学与R语言实现学习笔记(六)——假设检验
- python3利用Scrapy实现爬虫--学习笔记
- 树莓派学习笔记(4):利用yeelink实现在线硬件状态监控
- 应用统计学与R语言实现学习笔记(一)——简介
- 应用统计学与R语言实现学习笔记(十二)——主成分分析
- 应用统计学与R语言实现学习笔记(五)——参数估计
- 应用统计学与R语言实现学习笔记(十四)——案例与实践
- 【知了堂学习笔记】利用ajax实现web中的批量删除