더북(TheBook)

np.cov를 사용해 공분산을 계산한다.

import numpy as np

x = [ 8, 3, 6, 6, 9, 4, 3, 9, 3, 4 ]
y = [ 6, 2, 4, 6, 10, 5, 1, 8, 4, 5 ]
cov = np.cov( x, y )
print( cov )

그런데 이때 xy의 공분산뿐만 아니라 xy 각각의 분산도 계산된다.

결과

array( [ [6.05, 5.61 ],
         [5.61, 6.98 ] ] )

원하는 xy의 공분산(5.61)만 얻으려면 cov[ 0, 1 ]만 취하면 된다.

다음은 수익률의 공분산을 구하는 코드다.

# 공분산 계산
covars = np.cov( returns )
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.