I have a data set with index fund quotes, and I'm trying to compute the efficient portfolio frontier for it.
But some data points are missing. In some cases there are few funds that trading even on holidays, while for the rest there is no data on that day. Sometimes there is a single day of data missing here and there. Some funds have no data for 4-5 days or even a month in a row.
For 3 years, I would expect 3 * 252 = 756 days of data. But I have from 624 up to 784.
To compute covariance, I need to normalise my data - either to strip out the days and/or funds where the some data is missing, or fill the gaps with some synthesised data.
I've tried to strip out days for each pair of funds to minimise loss of data, but I've ended up with matrix which is not Positive semi-definite and I end up with negative values for total variance.
How can I normalize my data to be able to compute covariance matrix?