위 그림은 HRP의 알고리즘을 거치지 않은 상태의 자료로 만든 상관 행렬이다. 이 글에서는 HRP의 각 단계를 거치면서 Data Transformation과 그 결과를 살펴볼 것이다.
1. Tree Clustering
Tree clustering 단계에서는 포트폴리오를 구성하는 상품들을 가격 움직임이 비슷한 정도에 따라 순서대로 묶는다. 그 과정은 아래와 같다.
- 가격 움직임이 가장 비슷한(= 유클리디안 거리가 가장 가까운) 두 상품을 가장 먼저 묶는다. 이 묶음을 Link로 나타낸다.
- Link와 다른 모든 상품 간의 유클리디안 거리를 재정의한다.
- 새롭게 정의된 유클리디안 거리를 행렬에 추가하고(+1), 기존에 있던 묶인 두 상품은 행렬에서 제외한다(-2).(= 총 -1)
- 이를 반복하다 보면 행렬은 하나의 Link로 묶이게 된다.
이 단계에서 linkage matrix Y∈M₍ₙ₋₁₎ₓ₄를 정의한다. linkage matrix의 각 행이 하나의 link를 의미한다.
Y = {(yₘ,₁, yₘ,₂, yₘ,₃, yₘ,₄)}ₘ₌₀,₁,..,ₙ₋₂
_ yₘ,₁, yₘ,₂ : 비슷해서 묶인 두 상품(혹은 link)
_ yₘ,₃ : yₘ,₁과 yₘ,₂ 사이의 거리
_ yₘ,₄ : 해당 Link 아래에 있는 원소의 수(Link가 아닌, original entry의 수)
2. Quasi-Diagonalization
위 그림은 준대각화의 결과 상관 행렬로 대각선을 따라 정렬된 모습을 보인다. 상관계수가 클수록 대각선과 가까운 곳에 위치하며, 이는 유사한 상품끼리 가깝도록 배치되었다는 것을 의미한다.
앞에서 정의한 linkage matrix의 각 행은 두 가지를 하나로 묶은 link를 말한다. 각 행 (yₘ,₁, yₘ,₂)의 클러스터들을 m=n-2부터(끝부터) m=0까지 풀어가면서 최종 결과가 original entry들로만 묶일 때까지 반복한다. 이 과정은 클러스터링의 순서를 보존한 정렬로, 유클리디안 행렬의 기저(basis)를 변화시키지 않는다. 다시말해 이 단계에서 우리는 n차원 상의 유클리디안 거리를 1차원 list로써 나타는데, 유클리디안 행렬의 기저를 보존함으로써 유클리디안 거리가 가까운 상품들은 list 내에서도 가까운 곳에, 유클리디안 거리가 먼 상품들은 list 내에서도 먼 곳에 위치하도록 상품들을 정렬했다.
Quasi-Diagonaliztion 단계에서는 상품의 위치를 재조정하고, 유사한 상품들이 list에서 가까운 자리에 위치하게 함으로써 list를 절반으로 나누기만 해도 비슷한 상품들끼리 묶여, Recursive Bisection 단계를 원활히 수행할 수 있게 되었다.
3. Recursive Bisection
위에서 정렬한 list를 토대로 재배열된 상품들의 순서에 기반해 가중치 할당(weight allocation)을 수행하는 단계이다. List에서는 이미 유사한 상품이 가까운 곳에 배치되어 있기 때문에, 절반으로 쪼개어도 각 군집에는 비슷한 상품들끼리 모여있다. 절반으로 쪼개어진 각각의 군집에 각 cluster 분산의 역수비대로 가중치를 할당한다. 그리고 이 과정을 군집 안에 하나의 원소만 남아있게 될 때까지 반복하면, 각 상품마다의 가중치가 계산된다.
'Mathematical Data Science > 연구 일지' 카테고리의 다른 글
계층적 리스크 패리티(Hierarchical Risk Parity) 개요 (0) | 2024.04.05 |
---|---|
논문 읽기 전 알아두면 좋을 개념 정리(조건수와 Norm, 공분산 행렬) (0) | 2024.04.04 |