경제

글로벌 경기침체 시그널 완벽 분석: 불황 대비 자산배분 전략

2025년 1월 28일
22분 읽기
#경기침체#불황대비#자산배분#수익률곡선#경기선행지수#PMI#방어투자#안전자산#포트폴리오#리스크관리

경기침체 예측 지표와 실전 대응 전략을 상세히 분석합니다. 수익률 곡선, 경기 선행지수, GDP 성장률 등 핵심 지표를 통해 불황을 예측하고, 자산별 안전한 포트폴리오 구성 방법을 제시합니다.



글로벌 경기침체 시그널 완벽 분석: 불황 대비 자산배분 전략


경기침체는 예측하기 어렵지만, 명확한 선행 지표들이 존재합니다. 주요 경기침체 신호를 분석하고, 불황기에 자산을 지키고 오히려 수익을 낼 수 있는 전략을 알아보겠습니다.


1. 경기침체 정의와 역사


1.1 경기침체(Recession)란?


기술적 정의

```

미국 기준 (NBER):

  • 경제활동의 광범위한 감소
  • 수개월 이상 지속
  • GDP, 고용, 소득, 생산, 소매판매 등 하락

일반적 기준:

  • 2분기 연속 GDP 마이너스 성장
  • 실업률 급증
  • 기업 이익 감소

```


한국 기준

```

경기침체: 잠재성장률(2-3%) 대비 현저히 낮은 성장

  • GDP 성장률 1% 미만
  • 실업률 4% 이상
  • 제조업 가동률 70% 미만

경기불황: GDP 마이너스 성장 (매우 드뭄)

```


1.2 과거 주요 경기침체


```python

import pandas as pd


recessions = pd.DataFrame({

'시기': [

'1973-1975', '1980-1982', '1990-1991', '2000-2001',

'2007-2009', '2020', '2022-?'

],

'명칭': [

'1차 오일쇼크', '볼커 쇼크', '1차 걸프전', '닷컴 버블',

'글로벌 금융위기', '코로나 팬데믹', '인플레 대응 긴축'

],

'GDP_하락': [

'-0.5%', '-2.7%', '-1.4%', '-0.3%',

'-4.3%', '-3.4%', '?'

],

'지속기간': [

'16개월', '16개월', '8개월', '8개월',

'18개월', '2개월', '진행중?'

],

'실업률_최고': [

'9.0%', '10.8%', '7.8%', '6.3%',

'10.0%', '14.8%', '3.7%'

],

'S&P500_하락': [

'-48%', '-27%', '-20%', '-49%',

'-57%', '-34%', '-25%'

]

})


print(recessions)

```


교훈

```

  1. 평균 지속기간: 10-17개월
  2. GDP 평균 하락: -2% ~ -4%
  3. 주식 평균 하락: -30% ~ -50%
  4. 회복 소요 시간: 1-3년
  5. 침체 원인 다양: 금리, 전쟁, 버블, 팬데믹 등

```


2. 경기침체 조기 경보 지표


2.1 수익률 곡선 역전 (Yield Curve Inversion)


가장 신뢰도 높은 지표

```python

import numpy as np

import matplotlib.pyplot as plt


수익률 곡선 예시

def plot_yield_curve(rates_normal, rates_inverted):

"""

정상 vs 역전 수익률 곡선

"""

maturities = ['3M', '2Y', '5Y', '10Y', '30Y']


plt.figure(figsize=(10, 6))

plt.plot(maturities, rates_normal, marker='o', label='정상 곡선', linewidth=2)

plt.plot(maturities, rates_inverted, marker='s', label='역전 곡선', linewidth=2)

plt.xlabel('만기')

plt.ylabel('수익률 (%)')

plt.title('수익률 곡선: 정상 vs 역전')

plt.legend()

plt.grid(True)

plt.show()


정상 곡선: 만기 길수록 수익률 높음

rates_normal = [4.5, 4.2, 4.0, 3.9, 4.1]


역전 곡선: 단기 금리가 장기 금리보다 높음 (위험 신호!)

rates_inverted = [5.2, 5.0, 4.3, 4.0, 4.2]


plot_yield_curve(rates_normal, rates_inverted)

```


10년물 - 2년물 스프레드 (핵심 지표)

```

정상: 10년물 > 2년물 (양수 스프레드)

예: 10년 4.5%, 2년 4.0% → +0.5%p


역전: 10년물 < 2년물 (음수 스프레드) ⚠️

예: 10년 4.0%, 2년 4.8% → -0.8%p


역사적 신뢰도:

  • 과거 50년간 역전 발생 → 6-18개월 후 침체 (100%)
  • 2022년 7월 역전 → 2023년 침체 우려
  • 단, 2024년 현재까지 침체 미발생 (이례적)

해석:

역전 = 시장이 미래 경기 둔화 예상

→ 중앙은행 금리 인하 예상

→ 장기 금리 하락

```


실전 활용

```

역전 발생 시 전략:

  1. 즉시 주식 전량 매도 ❌ (시차 6-18개월)
  2. 점진적 방어 자산 비중 확대 ✅
  3. 역전 후 6개월 시점부터 경계 강화
  4. 역전 해소(정상화) 시점이 오히려 위험

2022-2023년 사례:

2022년 7월: 역전 시작

2023년: 계속 역전 유지

→ 침체 아직 안 옴 (2024년 현재)

→ 하지만 경계는 계속 필요

```


2.2 경기선행지수 (LEI - Leading Economic Index)


구성 요소

```

미국 LEI (Conference Board):


  1. 주가 (S&P 500)
  2. 제조업 신규 주문
  3. 건축 허가
  4. 주간 실업수당 청구
  5. ISM 신규 주문
  6. 소비자 기대지수
  7. 수익률 곡선 스프레드
  8. 장단기 금리차
  9. 평균 주당 노동시간
  10. 신용 여건

총 10개 지표를 종합하여 선행지수 산출

```


해석 방법

```python

def analyze_LEI(current_LEI, LEI_3months_ago, LEI_6months_ago):

"""

경기선행지수 분석

"""

change_3m = ((current_LEI - LEI_3months_ago) / LEI_3months_ago) * 100

change_6m = ((current_LEI - LEI_6months_ago) / LEI_6months_ago) * 100


print(f"3개월 변화율: {change_3m:.2f}%")

print(f"6개월 변화율: {change_6m:.2f}%")


if change_6m < -3:

signal = "🔴 강력한 침체 신호"

strategy = "방어적 포지션 확대"

elif change_6m < -1:

signal = "🟡 침체 경고"

strategy = "리스크 자산 축소 시작"

elif change_6m < 0:

signal = "🟡 경기 둔화"

strategy = "주의 관찰"

elif change_6m < 2:

signal = "🟢 완만한 성장"

strategy = "정상 포트폴리오 유지"

else:

signal = "🟢 강한 성장"

strategy = "리스크 자산 확대"


return signal, strategy


2023년 예시

signal, strategy = analyze_LEI(103.5, 105.2, 107.8)

print(f"

신호: {signal}")

print(f"전략: {strategy}")

```


한국 경기선행지수 (통계청)

```

구성:

  • 재고순환지표
  • 건설수주액
  • 수출입물가비율
  • 종합주가지수
  • 장단기금리차

해석:

100 기준 (기준년도 대비)

  • 100 이상: 경기 확장
  • 100 미만: 경기 수축
  • 3개월 연속 하락: 경기 정점 신호
  • 3개월 연속 상승: 경기 저점 신호

2024년 현재: 98.5 (경기 둔화)

```


2.3 실업률과 Sahm Rule


Sahm Rule (샴 법칙)

```

정의:

3개월 평균 실업률이

12개월 최저점 대비 0.5%p 이상 상승

→ 경기침체 시작


예시:

2023년 4월: 실업률 3.4% (12개월 최저)

2023년 10월: 3개월 평균 3.9%

→ 0.5%p 상승

→ Sahm Rule 발동 ⚠️


신뢰도:

  • 과거 50년간 오류 없음
  • 발동 시점 = 이미 침체 진입
  • 선행 지표보다는 확인 지표

실전 활용:

Sahm Rule 발동 = 침체 확정

→ 즉시 방어 포트폴리오 전환

```


2.4 제조업 PMI (구매관리자지수)


```python

def analyze_PMI(current_PMI, trend_months):

"""

PMI 지수 분석

50 기준: 50 이상 확장, 50 미만 수축

"""

if current_PMI >= 55:

status = "🟢 강한 확장"

signal = "경기 호황"

elif current_PMI >= 50:

status = "🟢 약한 확장"

signal = "경기 성장 지속"

elif current_PMI >= 45:

status = "🟡 약한 수축"

signal = "경기 둔화 - 주의"

else:

status = "🔴 강한 수축"

signal = "경기침체 임박"


# 추세 확인

if trend_months >= 3 and current_PMI < 50:

signal += " - 3개월 연속 수축 (침체 강력 시사)"


return status, signal


2024년 예시

current = 48.5

trend = 4 # 4개월 연속 하락


status, signal = analyze_PMI(current, trend)

print(f"PMI 상태: {status}")

print(f"신호: {signal}")

```


글로벌 PMI 모니터링

```

주요 국가 PMI:

  • 미국 ISM 제조업
  • 중국 Caixin PMI
  • 유로존 PMI
  • 한국 제조업 PMI

투자 활용:

✅ 미국 + 중국 + 유로존 모두 50 미만

→ 글로벌 침체 신호

→ 위험자산 비중 축소


✅ 한국만 50 미만, 글로벌은 50 이상

→ 한국 수출주 약세

→ 내수주, 해외 투자 고려

```


3. 추가 모니터링 지표


3.1 소비자 신뢰지수


```

미시간대 소비자신뢰지수:

  • 70 이하: 소비 위축, 침체 우려
  • 70-85: 보통
  • 85 이상: 소비 활발, 경기 양호

현재 기대 vs 미래 기대:

  • 현재 > 미래: 경기 둔화 예상
  • 현재 < 미래: 경기 개선 예상

한국 소비자심리지수 (CSI):

  • 100 기준
  • 100 이상: 낙관
  • 100 미만: 비관

2024년: 95 (비관적)

```


3.2 신용 스프레드 (Credit Spread)


```python

회사채 스프레드 분석

def analyze_credit_spread(BBB_yield, treasury_10y_yield):

"""

BBB 등급 회사채와 국채 수익률 차이

"""

spread = BBB_yield - treasury_10y_yield


if spread >= 3.0:

return "🔴 매우 높음 - 신용 경색, 침체 임박"

elif spread >= 2.0:

return "🟡 높음 - 경기 둔화"

elif spread >= 1.5:

return "🟢 보통 - 정상"

else:

return "🟢 낮음 - 경기 양호, 신용 건전"


2024년 예시

BBB = 6.2

treasury = 4.3

result = analyze_credit_spread(BBB, treasury)

print(f"신용 스프레드: {BBB - treasury:.1f}%p")

print(f"해석: {result}")

```


하이일드 스프레드

```

정크본드와 국채 수익률 차이


정상: 3-5%p

경계: 5-7%p

위험: 7%p 이상


2008년 금융위기: 20%p (역대 최고)

→ 신용시장 붕괴


투자 활용:

스프레드 확대 = 기업 부도 위험 증가

→ 주식 매도 신호

→ 안전자산 확보

```


3.3 부동산 지표


```

주택 판매 (미국):

  • 기존주택 판매: 연 500만채 이하 → 침체 신호
  • 신규주택 판매: 연 60만채 이하 → 침체 신호

주택 가격:

  • Case-Shiller 지수 전년비 -5% 이상 → 침체 우려

한국:

  • 아파트 거래량: 월 3천건 미만 (서울) → 경기 둔화
  • 미분양: 7만호 이상 → 건설경기 위축

부동산 침체 선행:

주택 시장 약세 → 6-12개월 후 전체 경기 침체

```


4. 종합 침체 스코어카드


4.1 경기침체 확률 계산


```python

def calculate_recession_probability(indicators):

"""

각 지표에 가중치를 부여하여 침체 확률 계산

"""

score = 0

max_score = 100


# 수익률 곡선 역전 (25점)

if indicators['yield_curve_10y2y'] < -0.5:

score += 25

elif indicators['yield_curve_10y2y'] < 0:

score += 15


# LEI 6개월 변화 (20점)

if indicators['LEI_6m_change'] < -3:

score += 20

elif indicators['LEI_6m_change'] < -1:

score += 12


# 실업률 변화 (Sahm Rule) (20점)

if indicators['unemployment_change'] >= 0.5:

score += 20

elif indicators['unemployment_change'] >= 0.3:

score += 10


# PMI (15점)

if indicators['PMI'] < 45:

score += 15

elif indicators['PMI'] < 50:

score += 10

elif indicators['PMI'] < 52:

score += 5


# 소비자신뢰지수 (10점)

if indicators['consumer_confidence'] < 70:

score += 10

elif indicators['consumer_confidence'] < 80:

score += 5


# 신용 스프레드 (10점)

if indicators['credit_spread'] >= 3.0:

score += 10

elif indicators['credit_spread'] >= 2.0:

score += 5


probability = (score / max_score) * 100


if probability >= 70:

assessment = "🔴 침체 거의 확실 (70% 이상)"

elif probability >= 50:

assessment = "🟠 침체 가능성 높음 (50-70%)"

elif probability >= 30:

assessment = "🟡 침체 주의 (30-50%)"

else:

assessment = "🟢 침체 가능성 낮음 (30% 미만)"


return score, probability, assessment


2024년 초 예시

indicators_2024 = {

'yield_curve_10y2y': -0.6, # 역전

'LEI_6m_change': -2.5, # 하락

'unemployment_change': 0.2, # 소폭 증가

'PMI': 48.5, # 수축

'consumer_confidence': 78, # 약세

'credit_spread': 1.9 # 정상-약간 높음

}


score, prob, assessment = calculate_recession_probability(indicators_2024)

print(f"

침체 스코어: {score}/100")

print(f"침체 확률: {prob:.1f}%")

print(f"평가: {assessment}")

```


5. 경기침체 대비 자산배분 전략


5.1 침체 확률별 포트폴리오


침체 확률 30% 미만 (정상)

```

현금/단기채: 10%

중장기 국채: 15%

투자등급 회사채: 10%

국내 주식: 35%

해외 주식: 20%

대체투자: 10%


특징: 공격적 성장 포트폴리오

기대수익: 연 8-12%

변동성: 높음

```


침체 확률 30-50% (주의)

```

현금/단기채: 15%

중장기 국채: 25%

투자등급 회사채: 15%

국내 주식: 25%

해외 주식: 10%

대체투자: 10%


변화:

  • 주식 45% 축소
  • 국채 10% 증가
  • 현금 5% 증가

기대수익: 연 5-8%

변동성: 중간

```


침체 확률 50-70% (경계)

```

현금/단기채: 25%

중장기 국채: 35%

투자등급 회사채: 15%

국내 주식: 15%

해외 주식: 5%

금/원자재: 5%


변화:

  • 주식 20%로 대폭 축소
  • 국채 35%로 증가
  • 현금 25% 확보

기대수익: 연 3-5%

변동성: 낮음

목표: 자본 보존

```


침체 확률 70% 이상 (확실)

```

현금/단기채: 40%

중장기 국채: 40%

투자등급 회사채: 5%

국내 주식: 5%

금: 10%


변화:

  • 주식 거의 제로 (5%)
  • 현금 40% (대기 자금)
  • 국채 40% (안전자산)
  • 금 10% (인플레 대비)

기대수익: 연 2-4%

변동성: 매우 낮음

목표: 자본 보존 + 저점 매수 준비

```


5.2 자산별 침체기 성과


```python

import pandas as pd


2008년 금융위기 자산별 수익률

recession_2008 = pd.DataFrame({

'자산': ['S&P 500', 'Nasdaq', '금', '미국 10년 국채', '회사채 BBB', '원자재', '현금', '리츠'],

'2008년_수익률': ['-37%', '-40%', '+5.8%', '+20.1%', '-8.3%', '-35%', '+1.5%', '-37%'],

'2009년_회복': ['+26%', '+44%', '+24%', '-11%', '+23%', '+18%', '0%', '+28%']

})


print(recession_2008)

```


교훈

```

침체기 승자:

  1. 미국 국채 (+20%) ⭐⭐⭐
  2. 금 (+5.8%)
  3. 현금 (+1.5%)

침체기 패자:

  1. 주식 (-37% ~ -40%)
  2. 원자재 (-35%)
  3. 리츠 (-37%)

회복기 승자:

  1. Nasdaq (+44%)
  2. 리츠 (+28%)
  3. S&P 500 (+26%)

시사점:

침체기 = 국채, 현금, 금

회복기 = 주식 (특히 기술주)

→ 타이밍 전환이 핵심!

```


5.3 섹터 로테이션


침체 초기

```

매도:

❌ 경기 민감주 (반도체, 자동차, 화학)

❌ 금융주 (은행, 증권)

❌ 소비재 (백화점, 여행)


매수:

✅ 필수소비재 (식품, 생활용품)

✅ 헬스케어 (제약, 의료기기)

✅ 유틸리티 (전력, 가스)

✅ 방어주 (통신)

```


침체 진행

```

보유:

✅ 필수소비재, 헬스케어

✅ 현금, 국채


회피:

❌ 모든 경기 민감 자산

```


침체 후반 (회복 초기)

```

매수 준비:

✅ 기술주 (침체 중 -50% 하락)

✅ 금융주 (금리 인하로 회복)

✅ 산업재 (경기 회복 수혜)


단계적 매도:

⚠️ 방어주 (상승 여력 제한)

⚠️ 국채 (금리 상승으로 가격 하락)

```


6. 실전 시나리오별 대응


시나리오 1: 연착륙 (Soft Landing)


```

상황:

  • 인플레이션 잡힘
  • 금리 인하 시작
  • 경기 둔화 but 침체 회피

확률: 40% (2024년 현재 목표)


포트폴리오:

현금: 15%

국채: 20%

회사채: 15%

주식: 40% (방어주 → 성장주로 전환)

대체투자: 10%


전략:

✅ 경기 민감주 비중 확대

✅ 장기채 매수 (금리 하락 수혜)

✅ 리스크 자산 점진적 확대

```


시나리오 2: 경착륙 (Hard Landing)


```

상황:

  • 금리 인상 부작용
  • 실업률 급등
  • 2008년형 침체

확률: 20%


포트폴리오:

현금: 40%

국채: 40%

금: 10%

주식: 5% (필수소비재만)

회사채: 5%


전략:

🔴 주식 대부분 매도

✅ 현금 확보 (저점 매수 대기)

✅ 장기 국채 매수

✅ 금 일부 보유

```


시나리오 3: 장기 저성장


```

상황:

  • 침체는 아니지만 성장 정체
  • 일본형 잃어버린 10년

확률: 30%


포트폴리오:

현금: 20%

국채: 25%

배당주: 30%

해외주식: 15%

금/원자재: 10%


전략:

✅ 배당주 중심 (현금흐름 확보)

✅ 해외 분산 (한국 저성장 회피)

✅ 인플레 대비 금 보유

```


시나리오 4: 스태그플레이션


```

상황:

  • 저성장 + 고인플레
  • 1970년대형

확률: 10%


포트폴리오:

현금: 10%

물가연동채(TIPS): 30%

금: 20%

원자재: 15%

배당주: 15%

부동산(리츠): 10%


전략:

✅ 인플레 보호 자산 집중

✅ 금, 원자재 비중 확대

✅ 물가연동채 필수

❌ 일반 국채 회피 (실질수익 마이너스)

```


7. 글로벌 vs 국내 침체


7.1 동조화 vs 디커플링


```python

한국 경기 vs 글로벌 경기

def analyze_decoupling(korea_PMI, global_PMI, korea_exports_change):

"""

한국 경기가 글로벌과 분리되는지 분석

"""

PMI_gap = korea_PMI - global_PMI


if abs(PMI_gap) < 3 and korea_exports_change < 0:

return "동조화 - 글로벌 침체 시 한국도 침체"

elif PMI_gap > 5:

return "디커플링 - 한국 경기 양호 (중국 내수, 반도체 호황 등)"

elif PMI_gap < -5:

return "역디커플링 - 한국만 침체 (수출 부진)"

else:

return "부분 동조화"


예시

korea = 48.0

global_avg = 51.5

exports = -8.5 # %


result = analyze_decoupling(korea, global_avg, exports)

print(f"한국 PMI: {korea}, 글로벌 PMI: {global_avg}")

print(f"수출 증감: {exports}%")

print(f"결론: {result}")

```


한국 투자자 전략

```

글로벌 침체 징후 시:


  1. 한국 수출주 먼저 매도
    • 반도체 (삼성전자, SK하이닉스)
    • 자동차 (현대차, 기아)
    • 화학 (LG화학)

  1. 한국 내수주로 전환
    • 필수소비재 (식품, 생활용품)
    • 유틸리티 (한국전력 제외)
    • 통신 (SK텔레콤, KT)

  1. 해외 자산 비중 확대
    • 미국 국채
    • 미국 방어주 ETF
    • 금 (달러 자산)

  1. 원화 약세 대비
    • 달러 자산 확대
    • 환헤지 비용 고려

```


8. 실전 체크리스트


월간 모니터링 리스트


```

매월 첫째 주 확인:


[ ] 미국 10Y-2Y 수익률 곡선 (FRED 사이트)

[ ] LEI 최신 데이터 (Conference Board)

[ ] 미국 실업률 (첫째 금요일 발표)

[ ] 미국 ISM 제조업 PMI

[ ] 한국 제조업 PMI

[ ] 소비자신뢰지수

[ ] BBB 회사채 스프레드


침체 신호 3개 이상:

→ 포트폴리오 재조정 검토


침체 신호 5개 이상:

→ 즉시 방어 포트폴리오 전환

```


포트폴리오 리밸런싱 트리거


```python

def should_rebalance(recession_prob_before, recession_prob_now):

"""

리밸런싱 필요 여부 판단

"""

change = recession_prob_now - recession_prob_before


if change >= 20:

return "🔴 즉시 리밸런싱 필요 - 침체 확률 급등"

elif change >= 10:

return "🟡 리밸런싱 검토 - 2주 내 결정"

elif change <= -20:

return "🟢 공격적 전환 검토 - 침체 우려 완화"

else:

return "⚪ 현재 포트폴리오 유지"


예시: 침체 확률 30% → 55%

before = 30

now = 55

decision = should_rebalance(before, now)

print(f"침체 확률 변화: {before}% → {now}%")

print(f"결정: {decision}")

```


9. 결론 및 핵심 요약


경기침체 조기 경보 시스템


```

1단계 경고 (주의):

  • 수익률 곡선 역전
  • LEI 3개월 연속 하락

→ 6-12개월 후 침체 가능


2단계 경고 (경계):

  • PMI 50 미만
  • 소비자신뢰 급락
  • 신용스프레드 확대

→ 3-6개월 후 침체 가능


3단계 경고 (확정):

  • Sahm Rule 발동
  • GDP 2분기 연속 마이너스

→ 침체 진행 중


대응:

1단계: 방어 자산 20% 확대

2단계: 방어 자산 40% 확대

3단계: 방어 자산 70% 확대

```


핵심 원칙


```

  1. 조기 경보 지표 정기 모니터링 (월 1회)
  2. 침체 확률 30% 넘으면 포트폴리오 조정 시작
  3. 완벽한 타이밍보다 방향성이 중요
  4. 침체는 기회 - 현금 확보가 핵심
  5. 회복 초기 진입이 최고 수익
  6. 글로벌 + 국내 지표 모두 확인
  7. 감정보다 데이터 우선

침체는 피할 수 없지만,

준비된 투자자에게는 기회입니다.

```