듀얼모멘텀 전략 (3): 리밸런싱 자동화 엑셀 스프레드시트
듀얼모멘텀 전략의 실행을 위해 리밸런싱 및 모니터가 가능한 구글 스프레드시트를 공유합니다. 위험 자산 선택, 반추기간(Lookback period) 기준 설정, 월말 리밸런싱, 거래 기록 자동화 등 구글 스프레드시트(엑셀) 파일 사용을 위한 설명을 곁들입니다.
1. 듀얼모멘텀 전략과 이 스프레드시트의 기능
이 스프레드시트는 듀얼모멘텀 전략(상대 모멘텀 + 절대 모멘텀)의 실행을 돕기 위해 구글 스프레드시트로 제작되었습니다. 듀얼모멘텀 전략에 대한 백테스트 글에서 소개한, 반추기간(Lookback period)를 여러 개 설정할 수 있고, 위험자산의 유니버스를 직접 입력할 수 있도록 만들어 보았습니다.
https://docs.google.com/spreadsheets/d/1dKz5-PgJUPqkIhs5HgGKdNkCLjYS4CJZLnRu9Yp7F3o/edit?usp=sharing
듀얼모멘텀_매매_블로그용
ABCDEFGHIJKLMNOPQRSTUVWXYZ오늘2025-04-03월말 여부FALSE투자원금$10,000위험자산$6,190환율1456.37Lookback적용여부안전자산$3,018미국채3M4.20%1M0현금$109(B1날짜기준)5Y3.95%3M1포트폴리오$9,31710Y4.20%6M1누적수익률-6.83%
docs.google.com
듀얼모멘텀에 대한 이전 글입니다.
https://trendwealthhub.com/entry/gem-strategy-backtest-2014-2025
듀얼모멘텀 전략 (2): GEM 공개 이후 백테스트
GEM 전략을 2014년부터 2025년까지 백테스트하여 실제 성과를 분석합니다. 안전자산 및 유니버스 변경, 룩백 기간 조정 등 다양한 수정 버전도 비교하며 듀얼모멘텀 전략의 한계와 개선 가능성을
trendwealthhub.com
듀얼모멘텀 전략과 이 파일에 대해서 간략히 써보자면,
- 위험자산 유니버스 중 모멘텀이 가장 강한 자산에(상대모멘텀 기준), 절대 모멘텀이 양(+)일 때만 투자
- 반추기간을 복수로 설정 시, 절대모멘텀이 양인 비중만큼 투자비중 설정
- 월말 리밸런싱 시 자동으로 매매수량 계산
- 실시간 ETF 가격 업데이트
- 실시간 미국채 금리 업데이트
등으로 간략히 요약가능합니다.
2. 파일 구성 및 시트 설명
시트설명입니다.
main | 전략 계산의 중심 시트. 투자 비중, 리밸런싱 판단, 필요 매매 수량 계산 포함 |
raw | 2022년부터 ETF 가격 일자별 저장소. Apps Script로 자동 업데이트됨 |
record | 매매 기록 보관. 리밸런싱한 내역을 입력하면 잔고와 수익률 자동 계산 |
holiday | 미국 시장 휴일 정보가 포함되어 있어 월말 영업일 판단에 사용됨 |
3. 사용자가 설정할 수 있는 항목
main 시트에서 다음 항목만 사용자가 직접 입력하여 설정하시면 됩니다.
- F4:F7: 각 룩백 기간(1개월, 3개월, 6개월, 12개월) 사용 여부 (0 = 미사용, 1 = 사용)
- 룩백기간을 다양하게 할 수 있지만, 제가 이제껏 해본 백테스트 경험으로는 1,3,6,12개월 정도에서 하나(하나만 선택한다면 12개월) 혹은 여러 개를 선택하는 것이 항상 결과가 좋았던 거 같아서, 룩백기간 설정 옵션을 1,3,6,12개월로 하였습니다. 여러 개 설정할수록 MDD는 작아지고, 연수익률은 조금 손해를 보는 것 같습니다.
- C10: 안전자산 티커 (예: BIL)
- 위험자산에 대한 투자하지 않는 자금은 모두 안전자산에 투자하는데, 이 안전자산을 대변하는 티커를 입력하시면 됩니다. BIL, SHY 등을 입력하면 될 거 같습니다. GEM에서는 AGG를 사용하는데, 이전 글의 백테스트 결과에서 볼 수 있듯이 BIL 등에 비해서는 변동성이 큽니다.
- D10:Z10: 위험자산 티커 입력 (예: SPY, QQQ, ACWX)
- 위험자산 유니버스를 설정할 수 있습니다. SPY, QQQ, ACWX, SCHF 등등 입력하시면 될 듯 합니다.
- I1: 투자 원금 입력 (예: $10000)
4. 월말 리밸런싱 방법
리밸런싱은 매월 마지막 영업일에만 수행합니다.
- 월말인지 확인
- Apps Script로 자동 인식됨 (함수: IS_END_OF_MONTH_BUSINESS_DAY).
- 가격 업데이트
- 상단 메뉴 “📊 듀얼모멘텀 > 🔄 가격 업데이트” 클릭
- 파일을 열면 가격 업데이트를 한번 수행해 주면 raw 시트에 가격이 업데이트되어 기록됩니다.
- 필요 매매 수량 확인
- 월말에는 리밸런싱 작업을 해야 하는데, 상대모멘텀, 절대모멘텀 등이 알아서 계산되고, 어떤 자산을 어떤 비중으로 사야 할지가 표시됩니다.
- main 시트의 C57:Z57에 각 자산별 매수/매도 수량이 표시되므로, 이 수량대로 매매를 수행하면 됩니다.
- 리밸런싱 매매 실행 후 기록
- record 시트에 매매일, 티커, 수량, 단가, 매수/매도 구분하여 입력하면, 그다음 날부터 포트폴리오 가치를 알아서 계산하여 시트에 보여줍니다.
5. 평소 사용하는 방법 및 데이터 확인
- 평일에는 시트 확인용으로만 사용
월말이 아닌 경우에는 가격 업데이트만 수행하여 누적 수익률, 자산 평가금액 등을 확인할 수 있습니다. - Apps Script 기능
- 모든 ETF 가격은 Yahoo Finance API를 통해 불러옴
- 필요시 “📊 듀얼모멘텀 > 종가 전체 초기화” 기능으로 과거 전체 데이터 재설정 가능
6. 주의사항 및 활용 팁
- 입력할 수 있는 셀 이외에는 건드릴 필요가 없습니다.
- 리밸런싱 후에는 record 시트에 반드시 기록해야 자산 평가가 반영됩니다.
- 티커는 Yahoo Finance 기준 티커를 사용해야 합니다 (SPY, QQQ, BIL, ACWX 등).
- 실거래에 적용 시에는 매매 수수료, 세금 등을 따로 고려해야 합니다.
7. 다운로드 및 복사 링크 안내
🔗 시트 링크 (읽기 전용):
📋 복사해서 사용하고 싶다면?
해당 링크에 접속 후
파일 > 사본 만들기 클릭하여 본인 Google Drive에 저장 후 자유롭게 사용하세요.
마무리
이 스프레드시트는 듀얼모멘텀 전략을 직관적이고 자동화된 방식으로 적용해 볼 수 있도록 구성되어 있습니다.
리밸런싱 시기를 놓치지 않고, 수익률과 기록까지 꼼꼼히 추적할 수 있기 때문에 투자 관리를 정교하게 할 수 있습니다. 파일을 참고해서 개인화된 파일을 만드셔도 좋을 거 같습니다.
댓글