brunch

You can make anything
by writing

C.S.Lewis

by 퀀트대디 Mar 18. 2021

아웃라이어

퀀트 투자와 일곱 개의 대죄

# 모난 돌이 정 맞는다, 아웃라이어

일곱 개의 대죄, 그 여섯 번째는 바로 아웃라이어(Outlier)이다. 아웃라이어는 금융 데이터에서는 매우 흔하게 나타나는 현상이다. 아웃라이어는 그것을 어떻게 다루냐에 따라 그것이 적이 될 수도 아니면 아군이 될 수도 있다. 여기서는 금융 데이터 속에 존재하는 아웃라이어, 즉 이상치를 다루는 몇 가지 방법론에 대해 다룬다.



# 윈저화를 통한 아웃라이어 컨트롤

아웃라이어를 다루는 가장 쉬운 방법은 바로 그들을 제어하는 것이다. 아웃라이어는 보통 데이터 오류에 의해 발생하기도 하지만 미래에 반복될 것 같지 않은 아주 특별한 이벤트를 통해서도 발생한다. 아웃라이어에는 중요한 정보가 포함되어 있을 확률이 낮으며, 보통 이러한 아웃라이어는 데이터 분석을 힘들게 만든다. 우리는 데이터 샘플에서 이것을 아예 지워버리는 방법을 사용하거나 혹은 윈저화라는 기법을 통해 이에 특정한 제약을 부여할 수도 있다.


데이터 절삭과 다르게, 윈저화(Winsorization)라는 기법은 아웃라이어를 극단적인 값이 아닌 값으로 대체하는 것을 의미한다. 아래는 이러한 윈저화 기법을 사용한 대표적인 예시이다. 러셀 3000 지수의 12개월 트레일링 영업이익 수익률 데이터에 이상치가 존재하는 것을 확인할 수 있다. 윈저화를 적용하면 보다 안정적인 시계열 데이터가 생성된다.

윈저화 적용 전과 후 (출처: Deutsche Bank)

물론 윈저화를 적용하는 것에는 몇 가지 이슈가 존재한다. 우선, 이상치가 어떤 정보를 가지고 있는 경우에도 이 데이터를 제거한다는 것이다. 이상치가 실제로 중요 정보를 담고 있는가 아닌가에 대해서는 보다 깊은 차원의 연구가 필요하다. 또 다른 이슈는 윈저화에 사용되는 역치 패러미터가 주관적이고 임의적이라는 사실이다. 모든 상황에 적합한 단 하나의 패러미터 값은 존재하지 않으며, 시기와 상황에 따라 사용되어야 할 값은 계속해서 달라질 수밖에 없다. 또한 이 패러미터를 어떤 값으로 설정하느냐에 따라 백테스팅 결과가 달라질 수 있는 것 또한 윈저화를 사용할 때 염두에 두고 있어야 할 이슈이다.



# IQR을 통한 이상치 절삭

윈저화 이외에도 이상치를 식별하고 제거하기 위한 또 다른 쉬운 방법은 바로 IQR이라는 것을 활용하는 것이다. IQR은 Inter-Quartile Range의 약자로, 이 기법은 25% 분위보다 낮거나 75% 분위보다 높은 데이터를 이상치로 지정하는 방식이다. 즉, Q1(25% 분위)과 Q3(75% 분위)를 기준으로 삼아 이상치를 상정한다.


아래는 원자료 데이터와 윈저화 그리고 IQR을 비교해 놓은 차트이다. 이는 홍콩 시장의 전체 PBR을 나타내고 있다. IQR 기법이 윈저화보다 더 부드러운 곡선의 결과를 보여주고 있다.

윈저화 vs. IQR (출처: Deutsche Bank)

하지만 IQR은 데이터의 왜도가 매우 심하거나 분포가 정규분포에서 멀어질 때 잘 작동하지 않는다는 문제점이 있다. 이런 경우 우리는 먼저 데이터 전체를 변형시켜야 한다. 또한 데이터 분석 목적에 따라 어떤 기법이 더 적절한가는 달라질 수밖에 없다.



# Z-Score 정규화 vs. 랭킹 정규화

물론 데이터를 정규화시키는 가장 유명한 방법론은 Z-Score를 사용하는 것이다. 이를 사용하면 원자료 데이터는 그것의 평균과 표준편차를 통해 다음과 같이 변형된다.

Z-Score 정규화를 통한 데이터 구조 변형을 일반적인 방법이지만, 이것의 문제점은 변형 후에도 유의미한 이상치가 잔존한다는 것이며, 데이터의 분포가 여전히 정규분포를 따르지 않을 수 있다는 점이다.

이상치가 존재하는 데이터 분포와 Z-Score 변환 (출처: Deutsche Bank)

이러한 문제를 해결하기 위한 대안은 바로 랭킹 정규화(Ranking Transformation)를 사용하는 것이다. 랭킹 정규화는 우선 랭킹 변환을 사용하여 어떤 데이터의 분포던지 이것을 균등 분포로 변환시킨다. 이렇게 되면, 모든 이상치가 허용 가능한 데이터 범주 내로 들어오게 되는데, 이때 다시 이렇게 변환된 데이터 분포를 역정규화 변환(Inverse Normal Transformation) 과정에 투과시키면 비로소 표준정규분포를 얻을 수 있다.

랭킹 변환과 역정규화 변환 (출처: Deutsche Bank)

아래의 그림은 각각 Z-Score 정규화와 랭킹 정규화를 사용했을 때 멀티 팩터 모델의 성과를 비교한 결과이다. 몇몇 국가를 제외한 대부분의 경우 랭킹 정규화가 Z-Score 정규화보다 더 나은 성과를 보여주고 있는 것을 확인할 수 있다. 이는 팩터 스코어들 간의 거리보다는 그 순위가 더 중요한 정보를 담고 있다고 해석할 수 있다.

랭킹 정규화와 Z-Score 정규화의 성과 비교 (출처: Deutsche Bank)

다만 예외적인 경우가 있는데, 바로 모멘텀 팩터이다. 몇몇 연구들은 모멘텀 스코어 간의 거리가 미래 수익률에 대한 유용한 정보를 담고 있다고 제시하고 있다. 실제로도 정규화를 거친 모멘텀 팩터와 그렇지 않은 모멘텀 팩터의 성과를 비교해보면 이것이 확연히 드러난다. 이러한 현상이 발생하는 이유는 어쩌면 다른 팩터들과 다르게 모멘텀 시그널이 그 자체만으로 수익률 공간에 자리하고 있기 때문일 수 있다. 즉, 기대 수익률과 비슷한 크기와 분포적 특성을 가지고 있기 때문에 다른 팩터들과 같이 정규화를 거치는 것이 필수적이지 않게 되는 것이다.

정규화의 예외, 모멘텀 팩터 (출처: Deutsche Bank)
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari