How do I obtain a variance-covariance matrix?
Show older comments
I am trying to maintain the variance-covariance matrix of a 10 asset portfolio of stocks. The data is represented by a column of returns for 10 stocks. I.e.
Stock A Stock B
Return 1 Return 1
Return 2 Return 2
Etc Etc
When I upload my data I have tried the cov(data) function but it will not work. I keep receiving this message:
"Undefined function 'sum' for input arguments of type 'dataset'.
Error in cov (line 154) xc = bsxfun(@minus,x,sum(x,1)/m); % Remove meanUndefined function 'sum' for input arguments of type 'dataset'.
Error in cov (line 154) xc = bsxfun(@minus,x,sum(x,1)/m); % Remove mean"
My question is how do I proceed with finding the average returns of each stock and the variance-covariance matrix?
3 Comments
jgg
on 26 Jan 2016
The issue seems to be the data type of your data. Is it imported as a dataset? You probably need to send it to an array instead.
It might also be a good idea not to use this data type, since it is deprecated with the implementation of table. Use that instead.
Calum Crichton
on 26 Jan 2016
jgg
on 27 Jan 2016
No, what is the data type of the information you've loaded in. It looks like you're passing the entire dataset object, instead of just the data, but I can't tell without seeing your code.
Answers (0)
Categories
Find more on Portfolio Optimization and Asset Allocation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!