Fermer X

Construcción de la Frontera Eficiente de Markowitz

Daiver Cardona
Universidad Autónoma de Occidente
Cali, Colombia
(last modification date: March 7, 2018)
Version pdf de ce document
Version sans bandeaux

Contents

1 Introduccíon

Harry Markowitz publicó en 1952 un artículo titulado Portfolio Selection en el Journal of Finance, en el que estudiaba el proceso de selección de un portafolio de inversión (Markowitz, 1959). De acuerdo con Markowitz, el proceso de selección de un portafolio consta de dos etapas. La primera comienza con la observación y la experiencia, y termina con las expectativas del comportamiento futuro de los valores. La segunda etapa comienza con las expectativas y finaliza con la selección del portafolio. El artículo de Markowitz se ocupa de estudiar la segunda parte del proceso de la selección de un portafolio. Para seleccionar dicho portafolio se utilizara el concepto que propuso Markowitz, bajo la regla de ’valor esperado-varianza’ en la cual el decisor preferirá un proyecto A sobre un proyecto B si alguna de estas afirmaciones es válida:

  • La rentabilidad esperada de A es mayor o igual que B, y la varianza de A es menor que la de B
  • La rentabilidad esperada de A es mayor que B, y la varianza de A es menor o igual que la de B

Y en donde un conjunto de activos de inversión tendrían infinidad de proporciones para configurarse, que al limitarse forman lo que se conoce como una frontera eficiente. Una ampliación de esta teoría fue desarrollado por Van Horne (Horne, 1997) y a Myers (Myers, 1996), entre otros.


PIC


Figure 1: Frontera eficiente de Markowitz

De forma matemática (Modigliani, 2009), el problema abordado por Markowitz consistía entonces en determinar el portafolio que minimizara la varianza total, sujeto a un nivel de rentabilidad preestablecido, y que la suma de las proporciones de cada una de las acciones sumara uno, tal como se muestra a continuación:

pict

Donde: k: Numero de activos en el portafolio
wi: Peso correpondiente al activo i en el portafolio
σik: Covarianza de las activos i y j
μi: Retorno promedio del activo i
μV : Retorno promedio del portafolio

Dado una la serie de tiempo de k activos, como la que se muestra a continuación:

 0.017493163, 0.013775699,-0.012664013,-0.032112293,-0.001563728,-0.001206748,-0.003444991  
-0.009635254, 0.017420718,-0.001664985,-0.023123840, 0.003016665,-0.005834478,-0.008603939  
 0.006884279, 0.014866955,-0.000441565, 0.073000011, 0.014786433,-0.004765397,-0.007368444  
 0.010017838,-0.023613460,-0.026895290, 0.161726978, 0.021102229,-0.005031333,-0.006857958  
 0.014553364, 0.012877052, 0.001886491, 0.017607726, 0.013633602,-0.002221401,-0.004829981  
 .  
 .  
 .  
 0.003496320, 0.009791342, 0.007339280, 0.026682111, 0.006734098, 0.003662802, 0.002317393  
 0.010487466, 0.010730456, 0.012105470,-0.024510396,-0.001844428, 0.006443206, 0.004603714  
 

Los datos completos se encuentran en el archivo retornos.csv, que corresponden a 7 activos y 60 periodos, en este caso días. Para cargar el archivo en Scicolab use:

loadmatfile('-ascii','U:\ScicosLab\Es_frontera\code\retornos.csv')

Para calcular el promedio de rendimiento y la matriz de covarianza para k activos use las siguientes lineas de comando de Scicoslab:

r = retornos; // guarda los retornos  
m = mean(r,r); // genera vector de medias de los retornos  
C = mvvacov(r); // genera matriz de covarianzas

Pregunta 1 ¿Cúal de los 7 activos tiene mayor rendimiento promedio?
¿Cúal de los 7 activos tiene menor rendimiento promedio?
¿Cúal de los 7 activos tiene mayor riesgo?
¿Cúal de los 7 activos tiene menor riesgo?

2 Valor esperado y varianza de un portafolio

El valor esperado de los retornos μV = E(KV ) y la varianza σV 2 = V ar(K V ) de un portafolio con pesos w esta dado por:

pict

Donde: m es el vector de promedios de los activos y C es la matriz de covarianzas de los activos

La siguiente función en Scicoslab calcula el valor esperado y varianza de un portafolio dado, las entrada son: el vector con los pesos del portafolio, el vetor de retornos promedios y a matriz de covarianza, devuelve el retorno promedio y la varianza del portafolio.

  function [mup,sigma2p] = mvp(w,m,C)
  // MVP calcula la media y varianza de un portafolio
  mup     = m*w';
  sigma2p = w*C*w';
  endfunction

Pregunta 2 Construye un portafolio w que de el mismo peso a los activos identificados en la pregunta 1. ¿Cúal es el promedio y la varianza de ése portafolio?

3 Portafolio de Varianza Mínima

El portafolio con varianza mínima en el conjunto posible esta definido por los siguientes pesos:

        − 1
w = -uC-----
    uC − 1u′
(3)

Donde u = [1 1 1⋅⋅⋅1] con k columnas, correspondiente al número de activos del portafolio

La siguiente función en Scicoslab calcula el Portafolio de Varianza Mínima, la entrada es la matriz de covarianza, devuelve los pesos del portafolio de varianza mínima.

  function wmv = pmv(C)
  // PMV calcula el portafolio w de minima varianza
  n   = size(C,'r');
  u   = ones(1,n);
  wmv =  1/(u*inv(C)*u')*(u*inv(C));
  endfunction

Pregunta 3 ¿Cúal es el Portafolio de Varianza Mínima dada la canasta de los 7 activos del archivo retornos?
¿Qué peso tiene en el portafolio el activo de mayor riesgo?
¿Qué peso tiene en el portafolio el activo de mayor retorno?
¿Cúal es el retorno promedio y la varianza del Portafolio de Varianza Mínima?

4 Línea de varianza mínima

La cartera con la menor varianza entre las carteras alcanzables con retorno esperado μV tiene los siguientes pesos:

     |              |        |              |
     || 1   uC − 1m ′ ||   − 1  || uC − 1u′  1  ||    −1
     | μv  mC  −1m ′|uC    + | mC  −1u′  μv |mC
w =  ------------|----−-1-′-----−1--′-|------------
                 || uC    u   uC   m   ||
                 | mC  −1u′  mC − 1m ′ |
(4)

La siguiente función en Scicoslab calcula La cartera con la menor varianza entre las carteras alcanzables con un retorno esperado μV dado. Las entradas son: retorno esperado μV , vector de promedios de rendimiento de activos y la matriz de covarianza, devuleve los pesos del portafolio de varianza mínima dado el retorno esperado.

  function w = lvm(e,m,C)
  // LVM calcula el portafolio de minima varianza dado un retorno esperado
  a1 = det([1 u*inv(C)*m'; e m*inv(C)*m']);
  a2 = det([u*inv(C)*u' 1; m*inv(C)*u' e]);
  a3 = det([u*inv(C)*u' u*inv(C)*m'; m*inv(C)*u' m*inv(C)*m']);
  w = (a1/a3)*u*inv(C)+(a2/a3)*m*inv(C)
  endfunction

Pregunta 4 ¿Cúal es el Portafolio de Varianza Mínima para un portafolio con retorno esperado igual al rendimiento promedio más alto de los 7 activos?
¿Cúal es la varianza de ése portafolio? comparalá con la varianza del activo de rendimiento más alto. ¿Qué se puede concluir al respecto?

5 Construción de la frontera eficiente Markowitz

Para construir la frontera eficiente de Markowitz se deben integrar las funciones construidas en un script como el siguiente.

  //taller frontera eficiente
  loadmatfile('-ascii','U:\ScicosLab\retornos.csv');  // carga el archivo
  r = retornos;     // guarda los retornos
  m = mean(r,'r');  // genera vector de medias de los retornos
  C = mvvacov(r);   // genera matriz de covarianzas
  wmv = pmv(C); // calculo de portafolio de minima varianza
  [mup,sigma2p] = mvp(wmv,m,C); // calcula promdio y varianza para wmv
  mueff    = mup:0.0001:mup*10; // define secuencia para retornos esperados
  sigmaeff = zeros(1,size(mueff,'c')); // define vector de varianzas eficientes
  for i=1:size(mueff,'c')
      tempo = lvm(mueff(i),m,C);
      [mueff(i),sigmaeff(i)] = mvp(tempo,m,C);
  end
  plot(sigmaefi,mediaefi) // grafica sigma2 eficiente vs medias eficientes
  title('Frontera Eficiente') // Titulo de la gráfica
  xlabel('Varianza del Portafolio') // titulo eje X
  ylabel('Retorno del Portafolio') // titulo eje y

Pregunta 5 Construya la frontera eficiente dada la canasta de los activos que contiene el archivo retornos.
Identifique en el gráfico el promedio y la varianza de los cuatro activos identificados en la pregunta 1. ¿Cúales son eficientes?
Identifique en el gráfico el promedio y la varianza del portafolio de la pregunta 2. ¿És eficientes?

L'École des Ponts ParisTech est membre fondateur de

L'École des Ponts ParisTech est certifiée 

ParisTech ParisEst ParisTech

 

Copyright 2014
École des Ponts ParisTech
All rights reserved