Estoy intentando formular esta sencilla función de utilidad MVO con una penalización lineal de costes de transacción añadida utilizando Quadprog en MATLAB
tcost = 0,001; lambda = 4; mu = vector de rendimientos esperados (digamos 4x1) S = matriz de covarianza (4x4)
max w'*mu - lambda *w' S w - lambda_TC * tcost *suma(abs(w(i) - w0(i))
Entiendo que para que sea lineal podemos sustituir w(i) - w0(i) por una variable y(i) sustituyendo la ecuación anterior por
max w'*mu - lambda *w' S w - lambda_TC * tcost *suma(y(i))
y añadimos las restricciones y(i)>= w(i) - w0(i) y y(i)>= - (w(i) - w0(i))
Además, tengo una restricción de sólo largo y la suma de los pesos debe sumar 1
No estoy seguro de cómo formular esto en quadprog en MATLAB. Cualquier ayuda será apreciada.
¡Muchas gracias!