我是新来的。:) 我先尝试搜索,但找不到我要找的确切内容,所以就到这里。
我的 Excel 工作表中有一组包含 N 资产的日期列和 T 每日回报。我想要做的是根据过去 x 天所有资产的收益为每个月初创建一个 N*N 协方差矩阵。
我这里有这段代码用于创建协方差矩阵,但我不知道如何让 excel/vba 在每个月初自动创建其中的几个。如果你们中的任何人可以帮助我,那就太棒了。:)
Function VarCovar(Rng As range) As Variant
Dim i As Integer
Dim j As Integer
Dim numcols As Integer
numcols = Rng.Columns.Count
Dim matrix() As Double
ReDim matrix(numcols - 1, numcols - 1)
For i = 1 To numcols
For j = 1 To numcols
matrix(i - 1, j - 1) = Application.WorksheetFunction.Covar(Rng.Columns(i), Rng.Columns(j))
Next j
Next i
VarCovar = matrix
End Function