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 )
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.