본문 바로가기
금융공학

상관관계가 있는 여러 자산이 움직이는 모습

by hustler78 2022. 10. 13.
728x90
반응형

 

 

이 글은

2022.09.30 - [금융공학] - 상관관계를 보이는 두 자산의 움직임 모델

 

상관관계를 보이는 두 자산의 움직임 모델

파생상품은 기초자산의 움직임에 연동하여 수익이 결정되는 금융상품이라고 하였습니다. 대표적으로 ○ 선물, 선도 : [금융공학] - 선도와 선물 #1 : 선도 ○ 옵션 : 옵션 #1. 옵션이란? 옵션의 유

sine-qua-none.tistory.com

의 확장판입니다. 위 글에서는 두 개의 자산이 상관관계를 가질 때, 이를 어떻게 모델링하는지를  알아보았었죠.

 

이를 $n$개의 자산으로 확장시켜 봅니다.  $n$개의 자산을 

$$X_1, X_2, \cdots, X_n$$

이라 합시다. 그리고 각각이 모두 GBM을 따른다고 해보죠. 구체적으로 $X_i$의 변동성을 $\sigma_i$, 연속 배당률을 $q_i$,  이 자산을 확률 과정으로 만드는 위너프로세스를 $W_i$라고 해보겠습니다.  시장의 무위험 이자율을 $r$이라 할 때,

 

$$dX_i(t) /X_i(t)=  (r-q_i)dt + \sigma_i dW_i(t)$$

라는 얘기겠죠.  (예전 글들에서는 자산 $X$의 시간에 따른 과정을 $X_t$라고 썼는데, 지금 상황에서는 아래 첨자 $i$와 $t$가 부딪히므로 $X_i(t)$로 명확하게 쓴 것입니다.)

 

 

 

상관계수 행렬의 정의

지난 글 상관관계를 보이는 두 자산의 움직임 모델에서 힌트를 얻어 다음과 같은 상관계수 행렬을 만들어 봅시다.

 

○ $i, j$에 대해, $X_i$와 $X_j$의 일일 로그수익률의 상관계수를 $\rho_{ij}$라 한다.
○ $\rho_{ij}$를 $i$행, $j$열의 원소로 갖는 행렬 $\mathbf{R}$을 만든다.

 

 

일일 로그수익률의 표준화(Z-score)

자산 $X_i$의 일일 로그수익률은, 1일을 $\Delta t$라 할 때,

$$ \ln(X_i(t+\Delta t) /X_i(t)) =(r-q_i-\textstyle{\frac12}\sigma_i^2)\Delta t + \sigma_i (W_i(t+\Delta t) - W_i(t)) \tag{1} $$

이므로 이것을 표준화(Z-score)하면

$$ \frac{W_i(t+\Delta t)-W_i}{\sqrt{\Delta t}}$$

입니다. 이 값을 $\omega_i$라 합시다. 그러면

○ $\omega_i \sim \mathcal{N}(0,1)~~,~~i=1,2,\cdots,n$ 
○ $\omega_i$와 $\omega_j$의 상관계수는 $\rho_{ij}$

를 만족하죠. 따라서

상관관계를 가지는 $n$개의 표준 정규분포 난수 $\omega_i$ 추출하기

로 귀결되죠. 따라서  [수학의 재미/행렬 이론] - 촐레스키 분해를 이용할 수 있습니다.

 

 

촐레스키 분해를 이용

$n$개의 서로 상관관계를 가진 표준정규분포 난수를 뽑는 것이 목적이므로, 우선 서로 독립인 $n$개의 표준 정규분포 난수 

$$ z_1, z_2, \cdots, z_n$$

를 추출합니다. 

 

그다음 상관계수 행렬 $\mathbf{R}$를

$$ \mathbf{R} = \mathbf{L}\mathbf{L}^t$$

로 촐레스키 분해해보죠. 여기서 $\mathbf{L}$은 하삼각행렬입니다.

 

마지막으로 

$$
\mathbf{L}
\begin{pmatrix}
z_1\\z_2\\ \vdots \\ z_n
\end{pmatrix}
$$

을 하면 우리가 원하는 $\omega_i$들, 즉,

 

$$
\begin{pmatrix}
\omega_1\\ \omega_2\\ \vdots \\ \omega_n
\end{pmatrix}
=
\mathbf{L}
\begin{pmatrix}
z_1\\z_2\\ \vdots \\ z_n
\end{pmatrix}
$$

를 얻습니다.

 

 

마무리

식(1)에 따르면
$$ \ln(X_i(t+\Delta t) /X_i(t)) =(r-q_i-\textstyle{\frac12}\sigma_i^2)\Delta t + \sigma_i \sqrt{\Delta t} \omega_i ,$$

$$ X_i(t+\Delta t) = X_i(t) \exp \left((r-q_i-\textstyle{\frac12}\sigma_i^2)\Delta t + \sigma_i \sqrt{\Delta t} \omega_i  \right) \tag{2}$$

로  recursively $X_i$의 주가 패스를 만들 수 있습니다. $\Delta t$는 1일 간격이 아닌 어떠한 시간 간격이라도 상관없습니다.

 

기초자산 2개인 경우

기초자산이 2개인 경우 상관계수 행렬은

$$
\begin{pmatrix}
1 & \rho \\ \rho &1 
\end{pmatrix}
$$

이고 촐레스키 분해를 하면

$$
\begin{pmatrix}
1 & 0 \\ \rho &\sqrt{1-\rho^2} 
\end{pmatrix}
$$

입니다.

따라서 식(2)는

$$ 
\begin{align}
X_1{t+\Delta t} &= X_1(t) \exp \left((r-q_1-\textstyle{\frac12}\sigma_1^2)\Delta t + \sigma_1 \sqrt{\Delta t} z_1  \right) \\
X_2{t+\Delta t} &= X_2(t) \exp \left((r-q_2-\textstyle{\frac12}\sigma_2^2)\Delta t + \sigma_2 \sqrt{\Delta t} (\rho z_1+\sqrt{1-\rho^2}z_2  \right) 
\end{align}
$$

로 쓰일 수 있고, 이것은 바로 [금융공학] - 상관관계가 있는 두 자산이 움직이는 모습은? 에서 다루었던 내용과 완전히 똑같죠.

 

 

다음 글에서 python을 통하여 상관관계가 있는 3개 자산이 어떻게 움직이는지를 모델링해보겠습니다.

 

 

 

728x90
반응형

댓글