初学乍练,从网上资料里查的算法,自己写的R代码(以下代码中的BETA函数),不知道靠谱不靠谱,大家帮忙看看:
- BETA <- function(vecNAV,vecBenchmark){
- retFund<-vector()
- retBenchmark<-vector()
- for (i in 1:(length(vecNAV)-1)){
- retFund<-c(retFund, (vecNAV[i+1]-vecNAV[i])/vecNAV[i])
- retBenchmark<-c(retBenchmark, (vecBenchmark[i+1]-vecBenchmark[i])/vecBenchmark[i])
- }
- return (cov(retFund,retBenchmark)/var(retBenchmark))
- }
- B<-c(4205.92,4333.58,4401.22,4375.76,4378.31,4308.69,4283.49,4417.55,4446.29,4529.42,4657.60)
- F<-c(1.7992,1.8508,1.8732,1.8558,1.8558,1.8232,1.8052,1.8664,1.8772,1.9109,1.9542)
- BETA(F,B)
复制代码