Advertisement
Guest User

TE V

a guest
Sep 23rd, 2014
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1.  
  2. low_te_port = portfolio.spec(assets=as.character(Sics_Winners$identifier))
  3. ##Rescale weights to be a fn of 1
  4. wb = Sics_Winners$cap_weight
  5.  
  6. upper_bound = pmin(20*Sics_Winners$cap_weight,0.1)
  7. upper_bound = ifelse(Sics_Winners$long_flag==0,0,upper_bound)
  8.  
  9. min_mult = rep(0,nrow(Sics_Winners))
  10. max_mult = ifelse(as.numeric(upper_bound)==0,0,as.numeric(upper_bound/wb))
  11.  
  12. low_te_port = add.constraint(portfolio=low_te_port,type='box',min=rep(0,nrow(Sics_Winners)),max=as.numeric(upper_bound),min_mult=0,max_mult=sum(upper_bound))
  13. low_te_port = add.constraint(portfolio=low_te_port,type='weight_sum',min=1,max=1)
  14.  
  15. ##Calc beta exposures (set na to 0 )
  16. beta_exposures = ifelse(is.na(Sics_Winners$factor_data),0,Sics_Winners$factor_data)
  17. low_te_port = add.constraint(portfolio=low_te_port,type='factor_exposure',B= beta_exposures,lower=0,upper=carbon_contrib_target)
  18. low_te_port = add.objective(portfolio=low_te_port,type='risk',name="Expected_TE")
  19. ##Calc cov ledoit wolf
  20. # cov_sample = cov.sample(dailyprime)
  21. # const_corr = cov.prior.cc(cov_sample)
  22. # small_delta = shrinkage.intensity(dailyprime,const_corr,cov_sample)
  23.  
  24. daily_temp_mat = dailyprime[,colnames(dailyprime)%in%Sics_Winners$identifier]
  25. my_cov = cov.shrink(daily_temp_mat )
  26. my_port = optimize.portfolio(R=daily_temp_mat,portfolio=low_te_port,
  27. optimize_method="DEoptim",
  28. search_size=1,wb=wb,sigma=my_cov)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement