콘텐츠로 이동

기본적 분석 11장: 백테스트하는 기본적 전략

백테스트 기본적 전략

10장에서 복합 점수를 사용해 20개의 후보 종목을 스크리닝했습니다. 이제 이 후보군들을 실제 포트폴리오로 운용했을 때 어떤 성과가 나왔는지 백테스트합니다. 밸류, 퀄리티, 복합 전략 3가지로 월별 리밸런싱을 시뮬레이션하고, 누적수익률, 샤프 비율, 최대낙폭을 비교합니다.

항목
검증 기간2026-01-01 ~ 2026-09-04 (166거래일)
표본기준일 거래대금 상위 300종
리밸런싱 주기월별 (매월 첫 거래일)
보유 비중조건을 만족한 종목에 동일 비중 (상위 25%)
거래비용거래 시 0.15% (왕복)
벤치마크전체 300종의 등비중 평균
전략팩터방향성설명
ValuePER + PBR낮을수록 좋음밸류 주식 선택
QualityROE + ROA + 영업이익률높을수록 좋음퀄리티 주식 선택
CompositePER + PBR + ROE + ROA + 배당 + 매출성장 + 현금흐름종합밸류 + 퀄리티 + 성장 + 배당
import pandas as pd
import numpy as np
df = pd.read_csv("fundamental_daily.csv", dtype={"code": str})
df["month"] = df["date"].str[:6]
val_cols = ["per", "pbr", "roe", "roa", "div_yield", "revenue_growth", "cash_flow"]
for col in val_cols:
df[col] = df[col].fillna(df[col].median())
# Value: low PER + low PBR (rank within month, ascending)
df["score"] = df.groupby("month")["per"].rank() + df.groupby("month")["pbr"].rank()
# Quality: high ROE + high ROA + high operating_margin
df["score"] = df.groupby("month")["roe"].rank(ascending=False) + df.groupby("month")["roa"].rank(ascending=False) + df.groupby("month")["operating_margin"].rank(ascending=False)
# Composite: combination of all factors
df["score"] = (
df.groupby("month")["per"].rank() + df.groupby("month")["pbr"].rank()
+ df.groupby("month")["roe"].rank(ascending=False) + df.groupby("month")["roa"].rank(ascending=False)
+ df.groupby("month")["div_yield"].rank(ascending=False) + df.groupby("month")["revenue_growth"].rank(ascending=False)
+ df.groupby("month")["cash_flow"].rank(ascending=False)
)
전략누적수익률연환산수익률Sharpe최대낙폭보유 종목 수(평균)
Value+35.39%+58.41%1.44-25.52%76
Quality+58.26%+100.76%1.56-34.12%76
Composite+48.80%+82.82%1.63-19.00%76
벤치마크(등비중)+54.33%+89.47%0.79-19.08%300

Value 전략 누적수익률

Quality 전략 누적수익률

Composite 전략 누적수익률

1. Quality가 유일하게 벤치마크를 능가했다

섹션 제목: “1. Quality가 유일하게 벤치마크를 능가했다”
전략벤치마크 대비
Value-18.94%p (하방)
Quality+3.93%p (우위)
Composite-5.53%p (하방)

검증 기간(2026년 1~9월)에는 Quality 전략만이 벤치마크(등비중 300종)를 능가했습니다. Value와 Composite는 각각 -18.94%p, -5.53%p 하방에서 마감했습니다.

전략Sharpe벤치마크 Sharpe
Value1.440.79
Quality1.560.79
Composite1.630.79

샤프 비율(위험조정수익)은 모든 전략이 벤치마크(0.79)를 2배 이상 높게 기록했습니다. 이는 개별 지표 기반 포트폴리오가 동일 비중 전략에 비해 더 안정적인 수익을 낸다는 것을 보여줍니다(단, 높은 샤프는 낮은 변동성에서도 나올 수 있음).

3. 최대낙폭은 Quality가 가장 컸다

섹션 제목: “3. 최대낙폭은 Quality가 가장 컸다”
전략최대낙폭
Value-25.52%
Quality-34.12%
Composite-19.00%

Quality 전략은 가장 높은 수익률을 냈지만 가장 큰 낙폭(-34.12%)도 기록했습니다. 반면 Composite는 수익률은 Value보다 높고 낙폭은 더 작아(-19.00%), 위험 조정 수익률 면에서 가장 균형 잡힌 전략이었습니다.

  • 검증 기간의 시장 구조가 설명한다: 2026년 1~9월은 퀄리티/성장 주가 강세였습니다. 밸류 주식(저PER)은 상대적으로 하방 성과가 좋지 않았습니다.
  • 하나의 구간으로 전략을 평가하면 안 된다: 기술적 분석 시리즈 12장에서도 강조했듯이, 이 결과는 “밸류 전략이 절대 안 좋다”는 것이 아니라 “2026년 1~9월 시장에서는 밸류가 어려웠다”는 것입니다. 다른 시장 국면에서는 역순일 수 있습니다.
  • 샤프 비율 vs 누적수익률: Composite은 샤프(1.63)가 가장 높고 낙폭(-19.00%)도 가장 작지만, 누적수익률(48.80%)은 벤치마크를 못 넘어섰습니다. 이는 ‘변화성이 낮다’는 것이 ‘수익이 높다’는 것을 의미하지 않는다는 교훈을 줍니다.
  • 거래비용의 영향: 300종 대상 상위 25%(≈75종)를 매월 리밸런싱하면 연간 거의 12회의 리밸런싱이 발생합니다. 0.15% 비용은 총 누적수익률에 약 3~5%p의 마이너스 영향을 미칩니다.

결과 원본은 전략 결과 CSV, Value equity CSV, Quality equity CSV에서 확인할 수 있습니다.


이 글은 투자 판단을 위한 참고 자료이며, 특정 종목의 매수·매도를 권유하지 않습니다. 과거의 검증 결과는 미래의 수익을 보장하지 않습니다.