1
ここは新しいです。 :)私は最初に検索しようとしましたが、探しているものを正確に見つけることができなかったので、ここに行きます。ワークシートにVBAを使って一連の共分散行列を作成したい
私は、ExcelのワークシートにN個の資産の日付とTの1日のリターンで構成されるセットを持っています。私がやりたいことは、過去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
ありがとうございました! :)私はそれを実装するいくつかの問題を抱えていますが、私はあなたが行くところを参照してください。うまくいけば、私はそれが私が望むことをするためにファッジすることができます。とても有難い! – L1meta