Utilizando la fórmula w*Cov*t(w) puedo generar una varianza negativa de la cartera. ¿Cuáles son las implicaciones de una varianza negativa? ¿Debo asumir que es cero? Una varianza negativa es problemática porque no se puede sacar root cuadrada (para estimar la desviación estándar) de un número negativo sin recurrir a números imaginarios. Tampoco parece coherente con la fórmula de la varianza, que es la media de las desviaciones al cuadrado de la media, ya que el cuadrado siempre produce un número positivo.
La varianza negativa es la punta del iceberg de mi verdadero problema. Tengo una matriz de covarianza que representa las expectativas (ex-ante). No tengo ni deseo utilizar los rendimientos históricos. Tengo 23 clases de activos. He estado jugando con un poco de optimización de la cartera (no la varianza media). Tengo un conjunto de ponderaciones (w) para una cartera óptima. También tengo un conjunto de ponderaciones para mi índice de referencia (b). Calculo el tracking error. El cuadrado del error de seguimiento debería ser (w-b) * cov * t(w-b). Esto es lo que es negativo.
Además, mis ponderaciones son lo suficientemente diferentes de mi punto de referencia como para que la inspección y la intuición me digan que el cero es la respuesta equivocada. Para probar esto, generé 1000 retornos aleatorios (usando mis suposiciones para el retorno y la matriz de covarianza) para las clases de activos y calculé 1000 retornos para w y para b. Luego calculé la diferencia y luego tomé la varianza. Y como tengo un ordenador repetí esto 1000 veces. El menor error de seguimiento (root cuadrada de la varianza de las diferencias) fue del 2,7%. Así que estoy seguro de que la varianza debe ser positiva.
Por cierto, tengo una matriz de covarianza de 23x23. La mayor parte proviene de una fuente pública ( Afiliados a la investigación ). Agrego bonos municipales. Estoy bastante contento con la matriz de covarianza en el sentido de que otros usos para ella - por ejemplo, la varianza de la cartera de w y de b parecen ser grandes.
Se agradecería cualquier idea sobre lo que podría estar haciendo mal, ya sea computacionalmente o por interpretación. Todo mi trabajo está en R y podría compartir algunos datos y código.