Q

PRIVATE NAVIGATION MODE

ML4T 탭 잠금 해제

패스워드를 확인하면 이 브라우저에서 ML4T 탭과 검색 결과를 표시합니다.

STUDY SEARCH

학습 자료 검색

제목과 설명, 키워드, 학습 본문에서 찾습니다.

검색 범위

검색어를 입력해 주세요.

SEARCH THE NOTEBOOK

찾고 싶은 금융·통계·전략 개념을 입력해 보세요.

CHAPTER 03.1 / ANNUALIZED RETURN

3.1 기간 수익률과 연환산의 출발점

가격 변화와 현금수익을 기간수익률로 바꾸고, 서로 다른 기간을 복리 연환산할 때 필요한 가정을 살펴봅니다.

3장. 수익률·복리·변동성·유동성과 레버리지초급 학습 노트

3.1 기간 수익률과 연환산의 출발점

이 페이지는 3장의 필수 개념이다. 시작값과 끝값만 보고 막연히 많이 올랐다고 말하지 않고, 무엇을 포함한 어느 기간의 수익률인지 표시하는 것이 목표다.

2장에서는 원하는 가격과 수량으로 실제 거래할 수 있는지 살펴보았다. 이제 체결된 포지션의 시작값과 끝값을 비교 가능한 숫자로 바꿔야 한다. **Return(수익률)**은 번 돈의 절대 금액이 아니라 처음 노출한 가치에 비해 자산가치가 얼마나 변했는지를 나타내는 비율이다.

수익률에는 무엇을 포함했는지 적어야 한다

같은 자산도 가격만 비교했는지, 배당 같은 현금수익까지 포함했는지에 따라 결과가 달라진다.

표현포함하는 값답하는 질문
Price return(가격수익률)가격 변화가격 자체가 얼마나 변했는가?
Total return(총수익률)가격 변화와 재투자를 가정한 현금수익보유로 얻은 전체 가치가 얼마나 변했는가?
Net return(순수익률)총수익에서 거래·운용 비용 차감비용을 내고 실제로 얼마가 남았는가?

가격이 100에서 108이 되고 현금수익 2를 받았다면 가격수익률은 8%지만 비용 전 총수익률은 10%다. 현금수익을 소비해 버렸다면 계좌 안에서 자동으로 복리 성장한 것은 아니므로, 재투자 여부도 함께 적어야 한다.

Holding-period return(기간수익률)은 한 구간의 출발점이다

외부 입출금이 없고 기간 중 받은 현금수익만 있다고 하자.

Rperiod=VendVbegin+CVbeginR_{\mathrm{period}} = \frac{V_{\mathrm{end}} - V_{\mathrm{begin}} + C}{V_{\mathrm{begin}}}
RperiodR_{\mathrm{period}}
Holding-period return(기간수익률)
단위: 보유 기간의 비율 또는 퍼센트
VbeginV_{\mathrm{begin}}
시작 자산가치
단위: 가격 또는 통화
VendV_{\mathrm{end}}
종료 자산가치
단위: 가격 또는 통화
CC
기간 중 현금수익
단위: 시작값과 같은 통화

시작값 100, 종료값 120, 현금수익 0이면 다음과 같다.

120100+0100=0.20=20%\frac{120 - 100 + 0}{100} = 0.20 = 20\%

이 숫자만으로는 아직 충분하지 않다. 20%가 하루, 6개월, 2년 가운데 어느 기간의 결과인지 반드시 붙여야 한다. 이 예시는 **6개월 기간수익률 20%**다.

Annual return(연간 수익률)과 Annualized return(연환산 수익률)은 다르다

정확히 1년 동안 관측한 수익률은 연간 수익률이라고 부를 수 있다. 1년보다 짧거나 긴 결과를 1년 기준의 일정한 복리율로 바꾼 값은 **Annualized return(연환산 수익률)**이다.

Rann=(1+Rperiod)1t1R_{\mathrm{ann}} = \left(1 + R_{\mathrm{period}}\right)^{\frac{1}{t}} - 1
RannR_{\mathrm{ann}}
Annualized return(연환산 수익률)
단위: 연간 비율 또는 퍼센트
RperiodR_{\mathrm{period}}
Holding-period return(기간수익률)
단위: 보유 기간의 비율 또는 퍼센트
tt
연 단위 보유 기간
단위: 년

6개월은 0.5년이므로 6개월 기간수익률 20%를 연환산하면 다음과 같다.

Rann=(1+0.20)10.51=1.2021=0.44=44%\begin{aligned} R_{\mathrm{ann}} &= \left(1 + 0.20\right)^{\frac{1}{0.5}} - 1 \\ &= 1.20^2 - 1 \\ &= 0.44 = 44\% \end{aligned}
RannR_{\mathrm{ann}}
Annualized return(연환산 수익률)
단위: 연간 퍼센트

44%는 실제로 1년 동안 44%를 벌었다는 뜻이 아니다. 첫 6개월의 20%가 다음 6개월에도 동일하게 반복되고, 첫 기간의 이익까지 함께 투자된다고 가정했을 때의 비교값이다. 짧은 기간의 우연한 상승을 연환산하면 매우 큰 숫자가 될 수 있다.

월 수익률에 12를 곱하면 실현된 연간 복리가 되지 않는다

월 수익률 2%에 12를 곱한 24%는 Arithmetic annualization(산술 연환산)의 단순한 근사다. 매달 2%가 복리로 반복된 경우의 정확한 연간 누적수익률은 다음과 같다.

(1.02)12126.82%\left(1.02\right)^{12} - 1 \approx 26.82\%

반대로 매달 수익률이 서로 다르면 각 월 수익률에 1을 더해 곱해야 한다. 월평균만 12배 한 값은 실제 누적 자산가치와 다를 수 있다.

외부 입출금이 있으면 끝점만으로 운용 성과를 알 수 없다

시작 계좌가 100이고 중간에 100을 추가 입금해 종료 계좌가 210이 되었다고 하자.

2101001=110%\frac{210}{100} - 1 = 110\%

110%를 운용 수익률이라고 부르면 추가 입금 100을 이익으로 잘못 센다. 입금 직전에 계좌가 얼마였는지, 입금 뒤 자산이 어떻게 움직였는지가 필요하다.

  • Time-weighted return(시간가중수익률)은 외부 현금흐름 전후의 수익 구간을 나누어 운용 자체의 성과를 묻는다.
  • Money-weighted return(금액가중수익률)은 투자자가 실제로 넣고 뺀 금액과 시점을 반영해 투자자의 경험을 묻는다.

두 방법은 서로 다른 질문에 답한다. 이 페이지에서는 외부 입출금이 있으면 단순 끝점 공식을 멈춰야 한다는 원칙만 잡는다.

같은 계좌인데 두 수익률이 달라지는 이유

이번에는 두 방법의 차이가 분명히 드러나는 1년 사례를 보자. 핵심은 적은 돈이 들어 있을 때 크게 벌었지만, 큰돈을 추가로 넣은 뒤 손실이 났다는 점이다.

시점사건계좌 평가액
1월 1일100만 원 투자100만 원
6월 30일첫 6개월 동안 +100%+100\% 상승200만 원
7월 1일900만 원 추가 입금1,100만 원
12월 31일다음 6개월 동안 10%-10\% 하락990만 원

먼저 실제 돈의 증감을 따라가 보자.

  • 첫 6개월에는 100만 원이 200만 원이 되어 100만 원을 벌었다.
  • 900만 원을 추가로 넣은 뒤에는 1,100만 원이 990만 원이 되어 110만 원을 잃었다.
  • 따라서 총 1,000만 원을 넣고 990만 원이 남았으며, 실제 손익은 10만 원 손실이다.

Time-weighted return(시간가중수익률)은 900만 원이라는 외부 입금의 크기를 제거하고, 입금 전후의 운용 수익률만 차례로 연결한다.

RTWR=(1+R1)(1+R2)1=(1+100%)(110%)1=80%\begin{aligned} R_{\mathrm{TWR}} &= \left(1 + R_1\right)\left(1 + R_2\right) - 1 \\ &= \left(1 + 100\%\right)\left(1 - 10\%\right) - 1 \\ &= 80\% \end{aligned}
RTWRR_{\mathrm{TWR}}
Time-weighted return(시간가중수익률)
단위: 1년의 비율 또는 퍼센트
R1R_1
외부 입금 전 첫 6개월 수익률
단위: 6개월의 비율 또는 퍼센트
R2R_2
외부 입금 후 다음 6개월 수익률
단위: 6개월의 비율 또는 퍼센트

이 결과는 투자자에게 80%의 이익이 남았다는 뜻이 아니다. 외부 입금 없이 같은 운용 경로만 100만 원으로 따라갔다면 100만 원 → 200만 원 → 180만 원이 되었을 것이라는 뜻이다. 즉, 운용 경로 자체를 평가한 값이다.

Money-weighted return(금액가중수익률)은 투자자가 실제로 얼마를 언제 넣었는지까지 반영한다. 투자자가 계좌에 넣은 돈은 음수, 마지막에 보유한 계좌가치는 양수로 놓고 Internal rate of return(내부수익률)을 구한다.

0=100만 원900만 원(1+RMWR)0.5+990만 원1+RMWR0 = -100\text{만 원} - \frac{900\text{만 원}}{\left(1 + R_{\mathrm{MWR}}\right)^{0.5}} + \frac{990\text{만 원}}{1 + R_{\mathrm{MWR}}}
RMWRR_{\mathrm{MWR}}
Money-weighted return(금액가중수익률)
단위: 연간 비율 또는 퍼센트

이 현금흐름을 만족하는 연 수익률은 다음과 같다.

RMWR1.81%R_{\mathrm{MWR}} \approx -1.81\%
RMWRR_{\mathrm{MWR}}
Money-weighted return(금액가중수익률)
단위: 연간 비율 또는 퍼센트

총투자금 1,000만 원과 종료 계좌 990만 원만 비교한 단순 손익률은 1%-1\%다. 그러나 추가로 넣은 900만 원은 1년이 아니라 반년만 투자되었다. Money-weighted return(금액가중수익률)은 이 기간 차이를 연 단위로 환산하므로 약 1.81%-1.81\%가 된다.

계산 방식묻는 질문결과이 사례의 해석
Time-weighted return(시간가중수익률)운용 경로 자체는 어땠는가?+80%+80\%투자 금액의 크기를 제거한 성과
Money-weighted return(금액가중수익률)투자자가 실제로 경험한 연 수익률은 얼마인가?1.81%-1.81\%실제 입금액과 입금 시점을 반영한 성과
단순 끝점 계산시작 100만 원과 종료 990만 원만 비교하면?+890%+890\%추가 입금 900만 원을 이익으로 잘못 세므로 사용하면 안 되는 값

적은 돈으로 크게 벌고 큰돈을 넣은 뒤 조금만 잃어도, 운용 경로의 시간가중수익률은 높지만 투자자가 경험한 금액가중수익률은 낮거나 음수가 될 수 있다.

Simple return(단순수익률)과 Log return(로그수익률)은 쓰임이 다르다

연속된 두 양의 가격이 있을 때 다음 두 표현을 사용할 수 있다.

Rsimple=PtPt11Rlog=ln(PtPt1)\begin{aligned} R_{\mathrm{simple}} &= \frac{P_t}{P_{t-1}} - 1 \\ R_{\log} &= \ln\left(\frac{P_t}{P_{t-1}}\right) \end{aligned}
RsimpleR_{\mathrm{simple}}
Simple return(단순수익률)
단위: 기간 비율 또는 퍼센트
RlogR_{\log}
Log return(로그수익률)
단위: 무차원 로그 비율
PtP_t
현재 가격
단위: 가격 또는 통화
Pt1P_{t-1}
이전 가격
단위: 가격 또는 통화

100에서 110으로 오르면 단순수익률은 10%, 로그수익률은 약 9.53%다. 외부 입출금이 없다면 단순수익률은 이전 자산가치에 이번 기간의 수익이나 손실을 반영해 현재 자산가치를 계산할 때 직접 사용한다.

Vt=Vt1(1+Rt)V_t = V_{t-1}\left(1 + R_t\right)
VtV_t
현재 기간이 끝난 뒤의 자산가치
단위: 통화
Vt1V_{t-1}
이번 기간의 수익률을 반영하기 전 자산가치
단위: 통화
RtR_t
이번 기간의 Simple return(단순수익률)
단위: 해당 기간의 비율 또는 퍼센트

예를 들어 이전 자산이 100만 원이고 이번 기간의 단순수익률이 10%라면 다음과 같다.

100만 원×(1+0.10)=110만 원100\text{만 원}\times\left(1 + 0.10\right) = 110\text{만 원}

여기서 11은 기존 자산 100%, 0.100.10은 새로 얻은 수익 10%를 뜻한다. 반대로 수익률이 10%-10\%라면 10.101-0.10을 곱해 자산은 90만 원이 된다.

사용 1. 일간 수익률을 월간·연간 수익률로 합칠 때

Log return(로그수익률)은 여러 기간의 값을 더하면 전체 기간 로그수익률이 된다. 가격이 첫날 100에서 110으로 오르고 다음 날 110에서 99로 내렸다고 하자.

  • 첫날 Simple return(단순수익률)은 +10%+10\%다.
  • 다음 날 Simple return(단순수익률)은 10%-10\%다.

두 값을 더하면 0%0\%지만 실제 가격은 100에서 99로 내려갔다. 전체 기간의 Simple return(단순수익률)은 다음과 같이 1%-1\%다.

991001=1%\frac{99}{100}-1 = -1\%

Simple return(단순수익률)은 기간별로 더하지 않고, 각 기간의 성장계수인 1+Rt1+R_t를 곱해야 한다. 반면 두 날의 Log return(로그수익률)은 다음과 같이 바로 더할 수 있다.

ln(110100)0.09531ln(99110)0.105360.09531+(0.10536)0.01005ln(99100)0.01005\begin{aligned} \ln\left(\frac{110}{100}\right) &\approx 0.09531 \\ \ln\left(\frac{99}{110}\right) &\approx -0.10536 \\ 0.09531 + \left(-0.10536\right) &\approx -0.01005 \\ \ln\left(\frac{99}{100}\right) &\approx -0.01005 \end{aligned}

합산한 Log return(로그수익률)을 실제 Cumulative return(누적수익률)로 읽으려면 다시 Simple return(단순수익률)로 변환한다.

Rsimple=exp(Rlog)1R_{\mathrm{simple}} = \exp\left(R_{\log}\right)-1
RsimpleR_{\mathrm{simple}}
Simple return(단순수익률)
단위: 전체 기간의 비율 또는 퍼센트
RlogR_{\log}
합산한 Log return(로그수익률)
단위: 전체 기간의 무차원 로그 비율
exp(0.01005)11%\exp\left(-0.01005\right)-1 \approx -1\%

이 성질은 일간 Log return(로그수익률)을 더해 주간·월간 로그수익률을 만들거나, 한 해의 거래일 로그수익률을 합산해 연간 로그수익률을 구할 때 사용한다. 최종 투자성과는 합산값을 Simple return(단순수익률)로 변환해 보고한다.

사용 2. 되돌아오는 가격 움직임을 대칭적으로 표현할 때

가격이 100에서 200으로 오른 뒤 다시 100으로 돌아왔다고 하자. Simple return(단순수익률)은 상승 구간에서 +100%+100\%, 하락 구간에서 50%-50\%다. 출발 가격으로 돌아왔지만 두 숫자의 크기는 다르다.

Log return(로그수익률)은 서로 반대인 가격 비율을 같은 크기와 반대 부호로 표현한다.

ln(200100)=ln(2)0.6931ln(100200)=ln(0.5)0.69310.6931+(0.6931)=0\begin{aligned} \ln\left(\frac{200}{100}\right) &= \ln\left(2\right) \approx 0.6931 \\ \ln\left(\frac{100}{200}\right) &= \ln\left(0.5\right) \approx -0.6931 \\ 0.6931 + \left(-0.6931\right) &= 0 \end{aligned}

이 성질은 가격 경로를 구간별로 분해하거나, 상승 뒤 정확히 반대 비율로 되돌아온 움직임을 Statistical model(통계 모형)에서 비교할 때 사용한다. 다만 투자자가 경험한 실제 손익을 설명할 때는 100% 상승 뒤 50% 하락해야 원금으로 돌아온다는 Simple return(단순수익률)의 표현이 더 직접적이다.

Log return(로그수익률)은 시간 합산과 통계 분석에 사용하고, 실제 포트폴리오 손익과 복리 자산가치는 Simple return(단순수익률)로 확인한다. 로그수익률 9.53%를 실제 계좌가 9.53% 늘었다고 그대로 읽으면 안 된다.

INTERACTIVE STUDY TOOL기간수익률과 연환산 계산기시작값·끝값·현금수익과 기간을 바꾸면서 기간수익률과 복리 연환산의 차이를 확인합니다.
100
120
0
0.5년
0
계산 결과
기간수익률
20.00%
복리 연환산
44.00%
연환산 값은 같은 기간 성과가 반복된다는 비교용 가정이며 미래 수익률이 아닙니다.

Backtest(백테스트)에서는 분자와 분모의 시점을 맞춘다

백테스트 수익률을 계산할 때는 다음을 먼저 고정한다.

  1. 시작 자산가치는 어느 시점의 체결 가능 가치인가?
  2. 종료 자산가치에는 현금, 미정산 손익과 받은 현금수익이 포함되는가?
  3. 외부 입출금이 있었는가?
  4. 수수료, 스프레드와 세전·세후 가운데 무엇을 반영했는가?
  5. 일간·주간·월간 가운데 어느 빈도인가?

종가에서 신호를 만든 뒤 같은 종가에 이미 체결된 것으로 두면 수익률 공식이 맞아도 시간축이 잘못된다. 수익률은 항상 실제로 보유할 수 있었던 구간을 사용해야 한다.

자주 생기는 오해

  • 6개월 수익률 20%는 연간 수익률 20%와 같은 말이 아니다.
  • 연환산 44%는 이후 6개월에도 20%가 반복된다는 예측이 아니다.
  • 현금수익을 제외한 가격수익률과 현금수익을 재투자한 총수익률은 다르다.
  • 외부 입금을 이익으로 세면 운용 수익률을 크게 과대평가한다.
  • 월 수익률에 12를 곱한 값은 복리로 실현된 연간 누적수익률과 다를 수 있다.
  • 로그수익률은 실제 포트폴리오 가치 변화율과 그대로 같지 않다.
  • 기간과 비용 기준이 다른 수익률 숫자를 크기만 보고 비교하면 안 된다.

이해 점검

100이 120이 된 6개월의 기간수익률과 복리 연환산 수익률은 얼마인가?

기간수익률은 1201001=20%\frac{120}{100} - 1 = 20\%다.

6개월은 0.5년이므로 연환산은 (1.20)21=44%\left(1.20\right)^2 - 1 = 44\%다. 44%는 비교용 가정값이지 미래 수익 보장이 아니다.

가격이 100에서 108이 되고 현금수익 2를 받았다면 가격수익률과 비용 전 총수익률은 어떻게 다른가?

가격수익률은 108100100=8%\frac{108 - 100}{100} = 8\%다.

현금수익을 포함한 비용 전 총수익률은 108100+2100=10%\frac{108 - 100 + 2}{100} = 10\%다.

시작 100, 중간 입금 100, 종료 210에서 110%를 운용 수익률이라고 할 수 없는 이유는 무엇인가?

종료값 210에는 투자수익뿐 아니라 외부에서 새로 넣은 100도 포함되어 있기 때문이다.

입금 전후의 계좌가치와 입금 시점을 알아야 시간가중 또는 금액가중 방식으로 질문에 맞는 성과를 계산할 수 있다.

단순수익률과 로그수익률 가운데 실제 자산가치 복리에 바로 사용하는 값은 무엇인가?

단순수익률이다. 다음 자산가치는 Vt=Vt1(1+Rt)V_t = V_{t-1}\left(1 + R_t\right)로 계산한다.

로그수익률은 기간별 합산이 편리하지만 실제 계좌 손익률과 그대로 같지는 않다.

완료 기준

시작값, 종료값, 현금수익과 기간을 보고 가격수익률·총수익률·기간수익률·연환산 수익률을 구분하고, 외부 입출금이 있을 때 단순 계산을 멈춰야 하는 이유를 설명할 수 있으면 다음 페이지로 넘어간다. 다음 페이지에서는 여러 기간의 수익률을 자산가치에 차례로 연결한다.

이 자료는 수익률 계산의 일반 원리를 설명하는 교육 자료이며 투자 권유나 미래 성과 예측이 아니다.