반응형
 

1. ETF 리밸런싱이란?

해외 ETF 투자를 하다 보면 특정 종목만 올라서 포트폴리오 비중이 한쪽으로 쏠리는 경험, 다들 있을 겁니다.

예를 들어 TQQQ 25%, QQQ 35%, SCHD 40%로 시작했는데, TQQQ만 급등해서 TQQQ가 50%가 되어버리면 레버리지 리스크가 한쪽에 집중됩니다.

리밸런싱은 이렇게 쏠린 비율을 원래 목표대로 되돌리는 것입니다. 많이 오른 건 일부 팔고, 적은 건 사서 비율을 맞추는 거죠.

특히 TQQQ 같은 3배 레버리지 ETF는 변동성이 크기 때문에, 리밸런싱 없이 방치하면 포트폴리오 전체가 레버리지 리스크에 노출됩니다. 문제는 이걸 매번 수동으로 하기가 귀찮다는 겁니다.

그래서 시장 국면에 따라 비중을 자동으로 조절하는 리밸런싱 봇을 직접 만들어봤습니다.

 

2. 왜 TQQQ / QQQ / SCHD인가

이 3종 조합은 공격 + 안정 + 배당을 동시에 잡는 구성입니다.

ETF 성격 역할
TQQQ 나스닥100 3배 레버리지 상승장에서 수익 극대화
QQQ 나스닥100 추종 안정적 성장 + 핵심 포지션
SCHD 미국 고배당 ETF 하락장 방어 + 배당 수익

핵심은 시장이 좋을 때는 TQQQ 비중을 높이고, 나쁠 때는 SCHD로 방어하는 것입니다. 이걸 사람이 매번 판단하기 어려우니, 시장 국면 판단까지 자동화했습니다.

 

3. 시장 국면별 전략

봇은 매일 QQQ 가격, MA200(200일 이동평균), VIX(공포지수)를 확인해서 시장 국면을 자동 판단합니다.

국면 판단 기준

국면 조건
BULL QQQ > MA200 AND VIX < 25 AND 낙폭 > -20%
SIDEWAYS QQQ > MA200 AND 25 ≤ VIX ≤ 30
BEAR QQQ < MA200 OR VIX > 30 OR 낙폭 ≤ -20%

국면별 목표 비중

ETF BULL SIDEWAYS BEAR
TQQQ 25% 20% 10%
QQQ 35% 38% 40%
SCHD 40% 42% 50%

상승장(BULL)에서는 TQQQ 비중을 25%까지 높여 수익을 극대화하고, 하락장(BEAR)에서는 10%로 줄이고 SCHD를 50%까지 올려 방어합니다. 국면이 바뀌면 자동으로 비중을 재조정합니다.

 

4. 왜 직접 만들었나

기존에도 ETF 자동매매 서비스가 있지만:

  • API 키를 남의 서비스에 맡기는 게 불안했음
  • 시장 국면별로 비중을 달리하는 세밀한 전략을 적용하고 싶었음
  • TQQQ 같은 레버리지 ETF의 리밸런싱 트리거를 직접 설정하고 싶었음
  • 개발자니까 직접 만들어보고 싶었음

그래서 한국투자증권(KIS) REST API + Python으로 자동 리밸런싱 봇을 만들었고, 실제로 8일간 실전 운영해본 결과를 공유합니다.

 

5. 시스템 구성

직접 만든 웹 대시보드에서 모든 걸 관리합니다.

주요 기능:

  • 포트폴리오 현재 비중 vs 목표 비중을 한눈에 확인
  • 시장 국면(BULL/SIDEWAYS/BEAR) 실시간 표시
  • QQQ 현재가, MA200, VIX, 낙폭 지표
  • Kill Switch (긴급 정지)
  • 텔레그램 알림 (주문 전/후, 오류 발생 시)

자동 실행: 미국 장 마감 30분 전에 자동 실행됩니다. 겨울에는 오전 5:30, 썸머타임에는 오전 4:30에 리밸런싱을 체크하고, TQQQ 비중이 트리거 기준을 넘으면 자동 매매가 실행됩니다.

기술 스택

  • 백엔드: Python + FastAPI
  • 증권 API: 한국투자증권 KIS REST API (직접 호출)
  • 시세 데이터: yfinance (QQQ, VIX, 환율)
  • 알림: Telegram Bot API
  • 배포: Docker + Mac 서버 24시간 운용
 

6. 8일간 운영 결과

운영 기간

  • 시작일: 2026년 3월 9일
  • 현재: 2026년 3월 16일 (8일차)

자산 변화

항목 시작 (3/9) 현재 (3/16) 변화
총 자산 $67.22 $739.75 +$672.53
TQQQ $0 $143.34 (3주) -
QQQ $0 $0 (0주) -
SCHD $0 $309.87 (10주) -
USD 현금 $67.22 $286.64 -
참고: 자산 증가분 대부분은 추가 환전(원화 → 달러)에 의한 것입니다. 시스템이 자동으로 달러 잔고를 목표 비중에 맞게 분배해줍니다.

현재 비중 vs 목표 (BULL 기준)

ETF 목표 현재 편차
TQQQ 25% 19.37% -5.63%p
QQQ 35% 0% -35%p
SCHD 40% 41.88% +1.88%p
USD 현금 - 38.75% -

QQQ를 아직 못 사고 있는 이유: QQQ 1주가 약 $601입니다. 현재 총 자산이 $739이니 1주만 사도 포트폴리오의 81%가 QQQ가 됩니다. 소액 운용 시 고가 ETF는 최소 거래 단위 문제로 비중 조절이 어렵습니다. 자산 규모가 커지면 자연스럽게 해결될 부분입니다.

 

7. 실제 리밸런싱 이력

8일간 총 6회 리밸런싱이 실행되었습니다. (실제 매매 4회 + 비중 체크 2회)

날짜 국면 매수 내역 TQQQ 가격
03.09 BEAR SCHD 3주 $46.01
03.09 BEAR SCHD 3주 $46.24
03.11 BULL TQQQ 1주 $49.33
03.12 SIDEWAYS TQQQ 3주, SCHD 7주 $49.11
03.13 SIDEWAYS 트리거 미충족 (스킵) $47.24
03.16 SIDEWAYS 트리거 미충족 (스킵) $45.93

이력 해석

  • 3/9 (BEAR): 최초 달러 입금 후 초기 매수 — BEAR 국면이라 SCHD만 매수 (안전자산 우선)
  • 3/11 (BULL): 국면이 BULL로 전환 → TQQQ 매수 시작
  • 3/12 (SIDEWAYS): 추가 환전 후 대규모 매수 — TQQQ 3주 + SCHD 7주
  • 3/13, 3/16: 비중 편차가 트리거 기준 이내 → 자동 스킵 (불필요한 매매 방지)

8일 동안 BEAR → BULL → SIDEWAYS로 국면이 세 번 바뀌었고, 봇이 각 국면에 맞게 자동으로 포지션을 조절했습니다.

 

8. 장단점 정리

장점

  • 시장 국면 자동 판단: QQQ MA200, VIX를 매일 체크해서 BULL/SIDEWAYS/BEAR 자동 분류
  • 감정 배제: 공포에 팔고 탐욕에 사는 실수를 방지
  • 자동 분산: 달러 환전만 하면 목표 비중대로 자동 분배
  • 투명한 이력: 모든 매매와 국면 변화가 기록됨
  • 텔레그램 알림: 매매 결과를 실시간으로 받아볼 수 있음
  • 안전장치: Kill Switch, Circuit Breaker 등 긴급 정지 기능

단점

  • 소액 한계: QQQ가 $601/주라 소액으로는 비중 조절 불가 (현재 0주)
  • 달러 환전 수동: 원화 → 달러 환전은 직접 해야 함 (봇은 달러만 사용)
  • 미국장 시간 제약: 주문은 미국 장 시간(한국 23:30~06:00)에만 가능
  • 서버 필요: 24시간 돌아가는 서버가 있어야 함 (Mac 서버 + Docker 사용 중)

이런 분에게 추천

  • 해외 ETF 포트폴리오를 분산 투자하고 싶은데 수동 관리가 귀찮은 분
  • 레버리지 ETF(TQQQ)의 비중을 시장 상황에 맞게 조절하고 싶은 분
  • 감정적 매매를 줄이고 규칙 기반 투자를 하고 싶은 분
 

9. 마무리

8일간 실전 운영해본 결과, 자동 리밸런싱 봇은 생각보다 잘 동작합니다.

특히 국면 전환(BEAR → BULL → SIDEWAYS)이 자동으로 감지되고, 그에 맞게 포지션이 조절되는 게 인상적이었습니다. 사람이라면 "지금 사도 되나?" 고민하며 타이밍을 놓치기 쉬운 상황에서, 봇은 규칙대로 묵묵히 실행합니다.

아직은 소액($739)이라 QQQ를 못 사고 있지만, 자산 규모가 커지면 3종 ETF가 모두 목표 비중에 맞춰질 것입니다. 다음 글에서는 주간 운영 후기와 함께 국면 변화에 따른 수익률 분석을 해보겠습니다.

같은 시스템으로 암호화폐(BTC/ETH/XRP) 자동 리밸런싱도 운영 중입니다.
코인 리밸런싱 후기가 궁금하시면 → 암호화폐 자동 리밸런싱 12일 후기
 
면책 고지: 이 글은 개인적인 투자 기록이며 특정 종목의 매수·매도를 권유하지 않습니다. 모든 투자의 책임은 본인에게 있으며, 레버리지 ETF(TQQQ)는 높은 변동성으로 원금 손실 위험이 큽니다. 투자 결정 전 충분한 검토를 권장합니다.

태그: #ETF #TQQQ #QQQ #SCHD #자동리밸런싱 #한국투자증권 #해외주식 #포트폴리오관리 #시장국면 #자동매매 #레버리지ETF #Python

반응형

+ Recent posts