KPSS 정상성 검정: 귀무가설, 통계량, 대역폭
KPSS 검정의 귀무가설과 부분합 통계량, 수준·추세 정상성의 차이, 장기분산 대역폭이 결과에 미치는 영향을 살펴봅니다
이 글에서 다루는 내용KPSS 검정은 정상성을 귀무가설로 놓고 묻습니다
짧은 요약
KPSS 검정은 수준 정상성이나 추세 정상성을 귀무가설로 둡니다. 선택한 결정론적 항을 제거한 뒤 잔차를 누적하고, 부분합 제곱을 장기분산 추정치로 나눠 통계량을 만듭니다. 통계량이 크면 지정한 정상성 모형에 반하는 증거가 될 수 있지만, 기각하지 못했다고 정상성이나 수익성 있는 평균회귀가 증명되지는 않습니다.
KPSS 검정은 정상성을 귀무가설로 놓고 묻습니다
Kwiatkowski–Phillips–Schmidt–Shin 검정은 보통 KPSS 검정이라고 부릅니다. 익숙한 Dickey–Fuller 계열 검정과 귀무가설이 반대입니다. KPSS의 귀무가설은 검정에 넣은 결정론적 항을 기준으로 시계열이 정상이라는 내용입니다. 원 논문은 양의 분산을 가진 랜덤워크 성분이 들어가는 대립가설을 둡니다.
이 차이를 알아야 결과를 읽을 수 있습니다. KPSS 통계량이 충분히 크면 지정한 수준 또는 추세 정상성 귀무가설을 기각할 근거가 됩니다. 통계량이 작다는 말은 선택한 모형과 표본 아래에서 귀무가설을 기각할 근거가 충분하지 않았다는 뜻입니다. 과정이 영원히 정상이라거나 평균이 항상 일정하다거나 가격이 매매 가능한 수준으로 돌아온다는 증명은 아닙니다.
정상성과 단위근 안내는 서로 연결된 개념을 넓게 다룹니다. ADF와 Phillips–Perron 비교 글은 대신 단위근을 귀무가설로 두는 검정 두 가지를 설명합니다. 두 검정은 같은 질문을 다른 방식으로 푸는 게 아니라 서로 다른 귀무가설을 확인합니다.
귀무가설은 랜덤워크 성분의 분산을 0으로 둡니다
KPSS는 관측값을 다음처럼 나타냅니다.
\[ y_t = d_t + r_t + \epsilon_t,\qquad r_t=r_{t-1}+u_t. \]
여기서 \(d_t\)는 결정론적 항, \(r_t\)는 랜덤워크 성분, \(\epsilon_t\)는 정상 오차입니다. 수준 정상성 검정에서는 \(d_t\)에 상수가 들어갑니다. 추세 정상성 검정에서는 상수와 선형 시간 추세를 함께 둡니다.
귀무가설은 랜덤워크 혁신의 분산을 0으로 둡니다. 즉, \(\sigma_u^2=0\)이면 시계열은 지정된 상수나 결정론적 추세를 중심으로 움직입니다. 대립가설은 \(\sigma_u^2>0\)을 허용하므로 충격이 기준 경로 주변에서 사라지지 않고 확률적 추세를 만들 수 있습니다.
이 식은 검정이 유지하는 모형이지, 모든 대립 상황이 교과서적인 랜덤워크라는 뜻은 아닙니다. 구조적 단절, 분수 적분에 따른 지속성, 비선형 동학, 변하는 분산, 잘못 고른 결정론적 항도 정상성 모형과 표본이 맞지 않게 만들 수 있습니다. 검정은 선택한 가정과 데이터 사이의 긴장을 드러낼 뿐, 대체 모형 하나를 찾아주지는 않습니다.
잔차 부분합이 지속성을 통계량으로 바꿉니다
먼저 관측값을 검정에 넣을 결정론적 항에 회귀하고 잔차를 \(\hat e_t\)라고 둡니다. 잔차의 누적 부분합은 다음과 같습니다.
\[ S_t=\sum_{j=1}^{t}\hat e_j. \]
KPSS 통계량은 보통 다음처럼 씁니다.
\[ \eta=\frac{1}{n^2\hat{\omega}^{\,2}}\sum_{t=1}^{n}S_t^2, \]
여기서 \(n\)은 표본 크기이고 \(\hat{\omega}^{\,2}\)는 잔차의 장기분산 추정치입니다. 잔차의 부호가 한동안 같으면 \(S_t\)가 0에서 멀어집니다. 부분합을 제곱하므로 한두 번의 큰 움직임보다 지속적으로 쌓이는 차이가 더 크게 반영됩니다.
통계량은 음수가 될 수 없습니다. 장기분산에 비해 누적 편차가 크면 정상성 귀무가설을 유지하기 어려워집니다. 분모는 중요합니다. 정상적인 과정에서도 잔차의 시차 의존성이 부분합의 변동성을 바꾸기 때문입니다.
수준 정상성과 추세 정상성은 먼저 정해야 합니다
수준 검정은 시계열이 상수 주변에서 정상인지 묻습니다. 추세 검정은 상수와 선형 시간 추세를 먼저 제거한 뒤 나머지가 정상인지 확인합니다. 흔히 쓰는 구현은 두 경우를 mu와 tau로 표시하지만 이름과 출력 형식은 소프트웨어마다 다를 수 있습니다.
결정론적 항을 바꾸면 잔차와 기준분포가 함께 바뀝니다. 추세 정상인 시계열에서 추세를 빠뜨리면 긴 잔차 패턴이 남아 통계량이 커질 수 있습니다. 반대로 근거 없이 추세를 넣으면 검정할 모형 자체가 달라지고 일부 대립가설을 찾는 힘이 약해질 수 있습니다. 경제적 질문과 데이터 정의를 보고 선택한 뒤 결과를 바꾸어 유리한 수치만 고르지 마세요.
KPSS 임계값은 표준 t분포나 카이제곱 분포가 아니라 수준·추세 경우에 따른 비표준 점근분포를 사용합니다. 일반적인 t 또는 카이제곱 임계값과 비교하면 안 됩니다. 외워둔 하나의 숫자를 모든 결정론적 설정에 적용해서도 안 됩니다. 해당 경우에 맞는 표나 소프트웨어 결과와 유의수준을 함께 적으세요.
구현에 따라 임계값 표의 일부 분위수와 비교한 p값 범위만 출력하기도 합니다. 이때 근거가 없는 소수점 자릿수를 덧붙이지 말고 출력이 뒷받침하는 범위만 보고하세요. 수준·추세 설정과 임계값 출처를 함께 적으면 다른 독자가 같은 판단을 재현하기 쉽습니다.
<!-- learn:illustration -->

장기분산 추정치와 대역폭이 통계량의 크기를 조절합니다
장기분산은 잔차의 자기공분산을 가중해 추정할 수 있습니다.
\[ \hat{\omega}^{\,2}=\hat{\gamma}_0+2\sum_{j=1}^{\ell}w_j\hat{\gamma}_j. \]
여기서 \(\hat{\gamma}_j=n^{-1}\sum_{t=j+1}^{n}\hat e_t\hat e_{t-j}\)는 분모 \(n\)을 쓰는 시차 \(j\)의 표본 자기공분산이며, 유한 표본 계산 규약은 구현마다 다를 수 있습니다.
Bartlett 가중치를 쓰면 \(w_j=1-j/(\ell+1)\)입니다. 절단 대역폭 \(\ell\)은 몇 개의 잔차 자기공분산을 포함할지, 포함한 항의 가중치를 얼마나 빨리 줄일지를 정합니다. 구현마다 커널, 대역폭 선택법, 유한 표본 계산이 다를 수 있으므로 결과를 재현할 수 있게 그 설정을 밝혀야 합니다.
여기서 대역폭은 ADF 회귀식에 추가하는 차분 시차 개수와 다릅니다. KPSS에서는 장기분산 추정에 들어갈 자기공분산의 범위를 정합니다. ADF에서는 차분 시차항이 회귀식 자체에 포함됩니다. 소프트웨어가 둘 다 lag라고 부를 수 있으므로 “시차 4”만 적으면 어떤 설정인지 알기 어렵습니다.
대역폭이 너무 짧으면 장기분산 추정치에서 필요한 단기 의존성을 놓칠 수 있습니다. 너무 길면 잡음이 큰 표본 자기공분산을 많이 더할 수 있습니다. 어느 쪽이든 통계량과 검정의 크기·검정력을 바꿀 수 있지만 모든 잔차에 같은 방향으로 작용하지는 않습니다. 커널과 시차 선택 규칙을 적고, 사전에 정한 합리적인 대안에서도 해석이 바뀌는지 확인하세요.
장기분산 보정은 이분산·자기상관 일치 공분산 추정과 닿아 있습니다. 그렇다고 구조적 단절이나 모든 의존 구조, 잘못 설정한 결정론적 항까지 해결하는 것은 아닙니다. Newey–West 공분산 안내는 HAC 추정의 역할과 한계를 더 넓게 설명합니다.
부분합 통계량을 작은 예로 계산해봅니다
여섯 개의 가상 관측값에 추세 회귀를 적용했고 잔차가 \(1,-1,0,0,-1,1\)이라고 합시다. 잔차 합은 0이고 선형 시간 추세와의 내적도 0입니다. 추세 회귀에서 나온 잔차라면 이 조건을 만족해야 합니다. 잔차의 부분합은 \(1,0,0,0,-1,0\)이고 제곱의 합은 \(2\)입니다.
산술 구조를 보이려고 분모가 \(n\)인 표본 자기공분산과 대역폭 1인 Bartlett 가중치를 사용하겠습니다. 잔차 분산항은 \(\hat{\gamma}_0=4/6=2/3\)입니다. 1시차 자기공분산은 \(\hat{\gamma}_1=-2/6=-1/3\), 가중치는 \(1/2\)이므로 장기분산은 다음과 같습니다.
\[ \hat{\omega}^{\,2}=\frac{2}{3}+2\left(\frac{1}{2}\right)\left(-\frac{1}{3}\right)=\frac{1}{3}, \qquad \eta=\frac{2}{6^2(1/3)}=\frac{1}{6}\approx0.167. \]
이 여섯 관측값 계산은 공식이 작동하는 방식만 보여줍니다. 점근적 KPSS 판단을 뒷받침하기에는 표본이 너무 작습니다. 계산한 값을 실제 경험적 결과처럼 논문 임계값과 비교해서는 안 됩니다.
KPSS와 단위근 귀무가설 검정을 함께 읽습니다
KPSS와 ADF 계열 검정을 나란히 실행하면 결론이 귀무가설에 얼마나 기대는지 볼 수 있습니다. 두 검정은 서로 다른 모형 아래의 증거를 줍니다.
| ADF 계열 검정 | KPSS 검정 | 신중한 해석 |
|---|---|---|
| 단위근 기각 | 정상성 기각 못 함 | 선택한 결정론적 항 아래에서 정상성과 양립하지만 증명은 아님 |
| 단위근 기각 못 함 | 정상성 기각 | 선택한 정상성 모형에 반하는 증거이며 지속적인 과정과 양립하지만, 단순 단위근의 증명은 아님 |
| 기각 못 함 | 기각 못 함 | 표본만으로 결론을 내리기 어려울 수 있고, 두 검정의 검정력이 낮았을 가능성도 있음 |
| 기각 | 기각 | 구조적 단절, 결정론적 항, 시차·대역폭, 유지 모형의 적절성을 다시 확인 |
두 검정은 시차 보정, 결정론적 항, 사용 표본, 유한 표본 근사에서 차이가 날 수 있습니다. 가능한 경우 설정을 맞추고 차이가 있다면 기록하세요. 네 칸의 결과를 자동 차분 규칙으로 바꾸지 마세요. 어느 쪽도 기각하지 못했다는 사실은 귀무가설이 참이라는 뜻이 아닙니다.
구조적 단절과 지속성이 검정을 혼란스럽게 할 수 있습니다
평균이 한 번 이동하거나 추세가 바뀌거나 분산이 달라지면, 국면별로는 정상인 과정도 전체 표본에서는 비정상처럼 보일 수 있습니다. 반대로 근이 1에 가까우면 제한된 데이터로 정상과 단위근을 구별하기 어려워집니다. 짧은 표본, 이상치, 두꺼운 꼬리, 비선형 조정, 분수 적분도 기준 근사를 흔듭니다.
결과를 적기 전에 수준값, 선택한 결정론적 적합값, 잔차를 그려보세요. 단절이 의심되면 귀무가설과 단절 처리, 임계값을 명시한 단절 대응 설계를 쓰세요. 단절 날짜나 대역폭을 여러 개 시도했다면 탐색 범위도 공개해야 합니다. 시도한 조합 중 가장 작은 p값만 보고하는 것은 미리 정한 검정이 아닙니다.
두 자산의 스프레드를 연구한다면 KPSS는 공적분 여부를 검정하지 않습니다. Engle–Granger 안내는 잔차 기반 공적분 검정과 별도의 임계값 문제를 설명합니다. Johansen 공적분 차수 안내는 시스템 접근을 다룹니다. 한 가격 계열에 대한 KPSS 결과로 둘 중 하나를 대체할 수는 없습니다.
추정한 헤지 비율, ARMA 모형, 선택한 단절 시점을 적용한 뒤 얻은 잔차에 KPSS를 돌릴 때는 앞선 추정 단계도 생각해야 합니다. 모수 추정과 모형 선택이 귀무분포를 바꿀 수 있습니다. 기본 임계값이 전체 절차에 그대로 맞는다고 가정하지 말고, 추정된 모형에 맞춰 보정된 잔차 검정이나 앞선 추정을 반복하는 부트스트랩을 사용하세요.
설정을 보고하고 매매 주장은 따로 검증합니다
변수와 변환, 관측 개수, 수준 또는 추세 귀무가설, 결정론적 항, 장기분산 커널, 대역폭 규칙, 통계량, 해당 임계값이나 p값, 유의수준을 적으세요. 민감도 결과를 함께 보여줄 때는 대안을 고른 이유와 설정을 모두 공개해야 합니다. 여러 기간과 버전을 시도한 뒤 가장 설득력 있어 보이는 값만 고르지 마세요.
시장 자료라면 표본 날짜, 빈도, 거래 세션 정렬, 결측치 처리, 수준값·수익률·잔차·스프레드 중 무엇을 검정했는지 밝혀야 합니다. KPSS 귀무가설을 기각하지 못했다고 스프레드가 곧 수렴한다는 뜻은 아닙니다. 평균회귀 전략이라면 균형값 정의, 표본 외 검증, 주문 시점에 쓸 수 있는 신호, 스프레드·펀딩·대차·체결 비용을 따로 검증해야 합니다.
로그 가격 수준에 대한 검정과 로그 가격의 1차 차분인 수익률에 대한 검정은 서로 다른 질문입니다. 어떤 모형에서는 차분이 확률적 추세를 제거하지만, 분석 대상도 바꾸며 두 자산 사이의 장기 관계를 증명하지는 않습니다. 관심 있는 모수와 모형에 맞춰 변환을 정하고 결과에 분명히 적으세요.
자주 묻는 질문
Q1KPSS와 ADF는 같은 귀무가설을 검정하나요?
아닙니다. KPSS는 수준 또는 추세 정상성을 귀무가설로 둡니다. 표준 ADF 변형은 선택한 결정론적 항 아래에서 단위근을 귀무가설로 둡니다.
Q2수준 검정과 추세 검정은 무엇이 다른가요?
수준 검정은 상수 주변의 정상성을 묻습니다. 추세 검정은 결정론적 선형 추세를 먼저 제거한 뒤 남은 성분이 정상인지 확인합니다.
Q3대역폭이 왜 중요한가요?
대역폭은 장기분산 추정에 포함할 잔차 자기공분산의 수와 가중치를 정합니다. 합리적인 선택에 따라 통계량이 달라질 수 있으니 선택 규칙을 기록하고, 유리한 결과만 고르지 마세요.
Q4KPSS가 정상성을 기각하지 못하면 스프레드가 평균회귀하나요?
아닙니다. 선택한 표본과 설정에서 정상성 귀무가설을 기각하지 못했다는 뜻일 뿐입니다. 공적분, 수렴 기간, 거래 비용을 뺀 수익성을 입증하지 않습니다.
출처와 더 읽을 자료
내용 정정 제보
이 아티클 링크를 담은 이메일 초안을 준비합니다. 직접 보내야 Mark에 제보가 접수됩니다
QUICK CHECK
글을 다 읽었다면, 3문항으로 확인해보세요
Question 01
KPSS 검정의 귀무가설은 무엇인가요?
정답을 고르면 바로 설명을 볼 수 있어요