본문 바로가기
금융공학

기초자산 변동성: EWMA 변동성#1

by hustler78 2022. 12. 6.
728x90
반응형

이번 글도 변동성에 대해 알아보겠습니다.

 

지난 글

2022.11.30 - [금융공학] - 기초자산 변동성: 역사적 변동성#1

 

기초자산 변동성: 역사적 변동성#1

기초자산의 GBM 모델은 위험 중립 측도(risk neutral measure) 하에서 다음과 같이 주어집니다. 기초자산 프로세스를 $S_t$라 하면 $$ dS_t/S_t = (r-q)dt + \sigma dW_t$$ 로 주어집니다. 여기서 ○ $r$ : 무위험 이

sine-qua-none.tistory.com

 

2022.12.01 - [금융공학] - 기초자산 변동성: 역사적 변동성#2

 

기초자산 변동성: 역사적 변동성#2

이번 글은 역사적 변동성의 두 번째 글로서 2022.11.30 - [금융공학] - 기초자산 변동성: 역사적 변동성#1 기초자산 변동성: 역사적 변동성#1 기초자산의 GBM 모델은 위험 중립 측도(risk neutral measure) 하

sine-qua-none.tistory.com

에서 역사적 변동성을 알아보았습니다. 

 

미래를 완벽히 예측하지 못하는 이상, 미래에 실제 형성되는 변동성을 추정하기란 불가능합니다. 과거를 조망하여 미래에 대입하는 방법이 바로 역사적 변동성이었는데요, 역사적 변동성의 식을 조금 바꾸어 다른 형태의 변동성을 만들 수 있습니다.

 

우선 역사적 변동성에서 다루었던 내용 중 방법 II를 우선 복습합시다.

 

 

역사적 변동성 복습(방법II)

주가의 일일 등락률의 평균을 0으로 간주하여 다음과 같이 일일등락률의 제곱의 기댓값, 즉 2차 모멘텀을 구하여 역사적 변동성을 구할 수 있다고 하였습니다. 좀 더 자세하게

오늘의 주가를 $S_t$ 라 하고, 과거의 주가를 어제, 그제 순으로
$$ S_{t-1}, S_{t-2}, \cdots, $$
라 하자. 

#1. 시점 $t-i$에서의 일반수익률을 $u_{t-i}$라 하자. 즉,
$$ u_{t-i} = \frac{S_{t-i}-S_{t-i-1}}{S_{t-i-1}}$$

#2. 위의 1에서 구한 일반수익률 샘플을 $N$개 모은다. 즉,
$$ u_t, u_{t-1} , \cdots, u_{t-N+1}$$
이 최근 일반수익률 샘플이다.

#3. 2에서 구한 샘플들을 제곱하여 $N$으로 나눈다. 즉, 샘플의 2차모멘텀(제곱의 기댓값)을 구한다. 
그리고 이것을 제곱근한다.

#4. 연변동성을 구하기 위해 $\sqrt{252}$를 3의 결과에 곱한다. 

 

위를 수식으로 써 보면, 시점 $t$에서의 역사적 변동성 $\sigma_t$는 

 

$$ \sigma_t = \sqrt{252} \left( \frac1N u_{t}^2 + \frac1N u_{t-1}^2 + \frac1N u_{t-2}^2 + \cdots + \frac1N u_{t-(N-1)}^2 \right)$$

 

입니다. 한 번에 묶어 쓸 수 있는 수 $\frac{1}{N}$을 분리해서 쓴 이유는 

$\sigma_t$을 $N$개의 샘플 $u_t^2 , u_{t-1}^2, \cdots, u_{t-(N-1)}^2$의 동일 가중 평균으로 이해할 수 있다

는 사실 때문입니다. 사실 기댓값이라는 게 샘플의 동일 가중평균이죠.

 

따라서 자연스럽게 이 동일 가중평균을 가중 평균으로 바꿔 생각해 볼 수 있습니다. 가중평균 기법 중 가장 유명한 것이 

 

EWMA
(
Exponentially Weighted Moving Average: 지수가중이동평균)

 

입니다.  이 방법은

○ 가장 최근 샘플에 더 많은 가중치를 부여함

○ 가중치의 형태가 지수의 형태를 따름

의 성질을 만족합니다. 어떤 식으로 가중치를 부여하는지 알아보겠습니다.

 

 

 

EWMA의 가중치 생성

 

EWMA 용 가중치는 다음과 같이 생성합니다.

 

우선, $\lambda<1$인 실수 하나를 정합니다. $\lambda$는 보통 0.96, 0.94 정도를 씁니다. $\lambda<1$이므로

$$ 1+\lambda+ \lambda^2 + \lambda^3 +\cdots = \frac1{1-\lambda}$$

입니다. 이 식을 다시 멋있게 쓰면

$$ \sum_{i=1}^\infty (1-\lambda)\lambda^{i-1} =1$$

입니다. 이제

$$ \alpha_i = (1-\lambda)\lambda^{i-1}$$

이라 하면

$$ \sum_{i=1}^\infty \alpha_i = 1$$ 이므로 훌륭한 가중치의 조건이 되죠. 하지만 무한합을 가중치로 쓰기는 적절하지 않죠. 따라서 부분합을 고려해야 합니다,

 

부분합으로 1을 만들 수는 없으므로, 어떤 허용오차(tolerance)를 정하고 그 안에 오차가 들어오는 항의 개수를 설정할 필요가 있습니다.

 

예를 들어 허용오차를 $\epsilon$이라 하면,

$$ 1-\sum_{i=1}^N (1-\lambda)\lambda^{i-1} <\epsilon$$

인 $N$을 찾아주는 겁니다. 좌변의 등비급수의 합은 $\frac{1-\lambda^N}{1-\lambda}$이므로 정리하면

$$ \lambda^N < \epsilon$$

이고 따라서

$$ N > \frac{\log_{10}\epsilon}{\log_{10}\lambda}$$

입니다. 이를 만족하는 최소의 자연수를 $N_\lambda$ 라 하면, 이 수까지의 부분합은 1로 봐도 무방하므로

$$\sum_{i=1}^{N_\lambda} \alpha_i =1$$

이라 간주하겠습니다.

 

 

EWMA 변동성 산출(정의에 입각하여)

 

오늘 시점을 $t$라 하고 어제, 그제, 3일 전을 $t-1, t-2, t-3,\cdots,$ 이런 식으로 표현합시다. 그리고 이 날의 어제, 그제 등등의 수익률을 각각

$$r_{t-1}, r_{t-2},\cdots, $$

라 합시다. 이제 앞에서 봤던 가중치를 고려하여

$$ \alpha_1 r_{t-1}^2 + \alpha_2 r_{t-2}^2 + \cdots =\sum_{i=1}^\infty \alpha_i r_{t-i}^2$$

에 연변동성 변환 팩터 252를 곱한 값을 $\sigma_t^2$이라 정의합니다. 수식으로 쓰면,

 

$$\sigma_t^2 = 252 \sum_{i=1}^\infty \alpha_i r_{t-i}^2 $$

입니다. 이것이 바로 EWMA 변동성입니다. 앞에서 살펴봤던 대로, 무한합을 할 수 없기에 

$$\sigma_t^2 = 252 \sum_{i=1}^{N_\lambda} \alpha_i r_{t-i}^2~~,~~ \alpha_i = (1-\lambda)\lambda_{i-1}$$

로 구하면 됩니다.

 

 

EWMA 변동성 산출(재귀적 형태)

 

위의 정의에 입각한 EWMA 변동성은

$$\sigma_t^2 = 252 \sum_{i=1}^\infty \alpha_i r_{t-i}^2 $$

였습니다. 다시 $\alpha_i$ 를 넣어 정리해보겠습니다. $\beta :=252$ 라 놓죠.

 

$$
\begin{align}
\sigma_t^2 &= \beta  \sum_{i=1}^\infty (1-\lambda)\lambda^{i-1} r_{t-i}^2\\
&= \beta \left( (1-\lambda)r_{t-1}^2 + \sum_{i=2}^\infty (1-\lambda)\lambda^{i-1} r_{t-i}^2 \right)\\
& = \beta \left( (1-\lambda)r_{t-1}^2 + \sum_{j=1}^\infty (1-\lambda)\lambda^{j} r_{t-(j+1)}^2 \right)\\
& = \beta \left( (1-\lambda)r_{t-1}^2 + \lambda \sum_{j=1}^\infty (1-\lambda)\lambda^{j-1} r_{t-1-j}^2 \right)\\
& = \beta (1-\lambda)r_{t-1}^2 + \lambda \sigma_{t-1}^2 \\
& = 252 (1-\lambda)r_{t-1}^2 + \lambda \sigma_{t-1}^2 \\
\end{align}
$$

 

정리하면

$$ \sigma_t^2 = 252 (1-\lambda)r_{t-1}^2 + \lambda \sigma_{t-1}^2 $$

입니다.

 

 

이처럼 재귀적으로 EWMA 변동성을 계산할 수 있습니다. 

정의에 입각한 방법은 무한합을 계산해야 하고, 이것이 현실적으로 불가능하므로 가중치 합의 거의 1이 되게끔 에러 마진을 도입하여 수많은 항을 계산해야 합니다.

하지만 재귀적 방법은 한 시점의 EWMA 변동성만 알면 재귀적으로 그다음 모든 시점의 값을 알 수 있게 되죠.

 

 

 

다음 글에서는 직접 코드를 구현하여 EWMA 값을 계산해 보도록 하겠습니다.

 

 

 

 

 

 

728x90
반응형

댓글