当前位置:天才代写 > tutorial > 其他教程 > R语言与马克维茨资产组公道论进修条记(操作fportfolio包实现)

R语言与马克维茨资产组公道论进修条记(操作fportfolio包实现)

2017-12-04 08:00 星期一 所属: 其他教程 浏览:889

仍然以fportfolio包中的数据集LPP2005.RET为例。[plain] view plaincopyprint?

  1. library(fPortfolio)  

[plain] view plaincopyprint?

  1. #模子设定  
  2. mvspec<-portfolioSpec()  
  3. setRiskFreeRate(mvspec)<-0  
  4. setSolver(mvspec)<-“solveRshortExact”  
  5. print(mvspec)  
  6. data<-100*LPP2005  
  7. Data<-portfolioData(100*LPP2005.RET,mvspec)#100*LPP2005.RET一些股票的收益率  
  8. print(Data)  
  9. constrains<-“Short”  
  10. portfolioConstraints(data,mvspec,constrains)  

[plain] view plaincopyprint?

  1. #方差最小组合求解  
  2. globminportfolio<-minvariancePortfolio(Data,mvspec,constrains)  
  3. print(globminportfolio)  

[plain] view plaincopyprint?

  1. #求解特定组合的均值方差  
  2. m1vspec<-portfolioSpec()  
  3. data1<-100*LPP2005.RET  
  4. Data1<-portfolioData(100*LPP2005.RET,m1vspec)  
  5. n<-ncol(data1)  
  6. setWeights(m1vspec)<-rep(1/n,n)  
  7. m1vPortfolio<-feasiblePortfolio(Data1,m1vspec,constraints=”LongOnly”)  
  8. print(m1vPortfolio)  

[plain] view plaincopyprint?

  1. #在上面同等收益下,优化组合  
  2. mvspec1<-portfolioSpec()  
  3. setRiskFreeRate(mvspec1)<-0.05  
  4. targetReturn<-getTargetReturn(m1vPortfolio@portfolio)[“mean”]  
  5. setTargetReturn(mvspec1)<-targetReturn  
  6. efficientportfolio<-efficientPortfolio(Data,spec=mvspec1)  
  7. weightsPie(efficientportfolio)  
  8. efficientportfolio  

[plain] view plaincopyprint?

  1. #做出有效前沿  
  2. data2<-100*LPP2005.RET  
  3. lppspec<-portfolioSpec()  
  4. setRiskFreeRate(lppspec)<-0.005  
  5. frontier<-portfolioFrontier(data2,lppspec)  
  6. #plot(frontier)  
  7. tailoredFrontierPlot(frontier)  
  8. frontierPlot(frontier)  
  9. cmlPoints(frontier,col=2)  
  10. frontier  
  11. weightsPlot(frontier)  
 

    关键字:

天才代写-代写联系方式