So I added some logging and yeah, I do get quite a lot of these negative variances..
I want to try to shrink my correlation matrix, but I don't quite understand what it means (sorry if it should be obvious

).
So the paper defines shrinking as "αM1 + (1 − α)M0" where, as I understand, M1 is my actual correlation matrix that I want to 'fix', α should be 0.5 and M0 is some matrix that I will shrink towards (usually previous or average\default in some sense).
That M0, as Rob wrote above is
an indepedent matrix (off diagionals are zero)
, so what values are on-diagonal, all '1'?, i.e. M0 is just an identity matrix same size as mine?
Or we should have something else on the diagonal like average of all pairwise correlations?
And the operation itself, do we just apply "αM1 + (1 − α)M0" element-by-element in matching positions (i.e. just like the normal operations of addition, subtraction and multiplication by a number are defined for matrixes)?
i.e. so far, the way I understand this operation is this:
M1(my initial correlation matrix):
1 |0.35
0.35 |1
M0: (the matrix I shrink towards - identity matrix):
1 |0
0 |1
the result, i.e. my 'fixed' correlation matrix:
0.5*1+0.5*1 |0.5*0.35+0.5*0
0.5*0.35+0.5*0 |0.5*1+0.5*1
=
1 |0.175
0.175 |1
which boils down to simply dividing by 2 each correlation value (except of on-diagonal) in my original correlation matrix
Is that correct ?