Я понял это благодаря парфе, ответ на случай, если кому-то понадобится, следующий:
bHS.mv <- function(wa, P, rets){
w <- c(wa, 1-wa)
Pw <- -P*w
loss <- rowSums(t(Pw * t(rets)))
result <- quantile(loss, 0.95)
return(c(wa, result))
wts <- seq(0, 1, by = 0.01)
sapply(wts, bHS.mv, 2000, Port.Vol.Ad)
minvar <- sapply(wts, bHS.mv, 2000, Port.Vol.Ad)
minvar[,which.min(minvar[2,])]
Это дает вам вес, при котором портфель из двух факторов риска имеет минимальное значение риска