Guest User

Untitled

a guest
Jul 21st, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. dvec = matrix(colMeans(returns_full),ncol = 1)
  2. Dmat = cov(returns_full)
  3. A.Constraint1 <- matrix(c(1,1,1,1,1,1), ncol=1)
  4. A.Constraint2 = matrix(c(1,1,1,1,1,1), ncol=1)
  5. Amat <- cbind(A.Equality1,A.Equality2, dvec)
  6. bvec <- c(-lev_ub,lev_lb,target_return)
  7. qp <- solve.QP(Dmat, dvec, Amat, bvec, meq=0)
  8.  
  9. target_return <- 0.0002
  10. num_assets <- 6
  11. dvec <- rep(0,num_assets) # dvec = 0 when minimizing only the variance
  12. Dmat <- cov(return_full)
  13. Amat <- matrix(rep(1, num_assets), ncol=num_assets) # budget constraint: sum of wts = 1
  14. Amat <- rbind(Amat, c(.3, .7, -.3, 1, 1.1, 1.3) ) # beta constraint: sum of wt*beta = 0
  15. Amat <- rbind(Amat, colMeans(return_full) ) # portfolio return = target_return
  16. # Amat <- rbind(Amat, diag(1,nrow=num_assets, ncol=num_assets) ) # would be used for long-only solutions: wts >= 0
  17. Amat <- t(Amat)
  18. bvec <- c(budget = 1, beta = 0, return = target_return ) # rhs of constraint eqns
  19. # bvec <- c(bvec, rep(0,num_assets) ) # would be used with long-only constraint
  20. qp <- solve.QP(Dmat, dvec, Amat, bvec, meq=3)
Add Comment
Please, Sign In to add comment