레슨 1 / 6 · 약 8분
단순수익률·연환산수익률·기하평균
기간이 다른 수익률을 연 단위로 맞추고, 산술평균이 성과를 부풀리는 이유를 확인합니다
수익률은 하나의 숫자처럼 보이지만 기간, 평균 내는 방식, 배당과 입출금 처리에 따라 같은 계좌에서도 여러 값이 나옵니다. 이 모듈은 성과 숫자를 스스로 계산하고, 남이 제시한 숫자를 검증하는 방법을 다룹니다. 첫 레슨은 기간이 서로 다른 수익률을 같은 잣대로 맞추는 방법입니다.
단순수익률과 총수익률
- 단순수익률(보유기간 수익률)
- (기말 평가액 − 기초 평가액) ÷ 기초 평가액. 보유 기간이 얼마든 시작과 끝만 비교한 값입니다. 기간 중에 받은 배당까지 더하면 총수익률(토털 리턴)이라고 부릅니다.
"수익률 50%"라는 말은 기간이 붙지 않으면 비교할 수 없습니다. 1년에 50%와 10년에 50%는 전혀 다른 성과입니다. 배당을 넣었는지도 확인해야 합니다. 배당수익률이 연 3%인 종목을 5년 들고 있었다면, 배당을 빼고 계산한 수익률은 실제보다 대략 15%p 이상 낮게 나옵니다(배당을 재투자하면 차이는 더 커집니다).
연환산수익률(CAGR)
- 연환산수익률(CAGR, 연평균 복리 수익률)
- "매년 같은 비율로 불었다면 몇 %씩이었나"를 거꾸로 구한 값입니다. 식은 (기말 ÷ 기초)^(1 ÷ 연수) − 1입니다. 말로 풀면, 전체 배수에 연수만큼 제곱근을 씌운 뒤 1을 뺍니다.
기초 1,000만 원 → 3년 뒤 1,500만 원. 단순수익률 = 50%
전체 배수 = 1,500 ÷ 1,000 = 1.5
연환산 = 1.5^(1/3) − 1 = 1.1447 − 1 = 14.47%
검산: 1.1447 × 1.1447 × 1.1447 = 1.4999 (반올림 오차)
50% ÷ 3 = 16.7%로 나누면 복리 효과를 이중으로 세어 연 2.2%p를 부풀린다
2개월 동안 10% 상승. 1년은 2개월이 6번
연환산 = 1.10^6 − 1 = 1.7716 − 1 = 77.2%
같은 10%가 6번 연속 반복된다는 가정이 들어간 숫자
실제로 다음 10개월에 같은 일이 일어난다는 근거는 없다
| 연환산수익률 | 5년 누적 | 10년 누적 |
|---|---|---|
| 연 3% | +15.9% | +34.4% |
| 연 5% | +27.6% | +62.9% |
| 연 7% | +40.3% | +96.7% |
| 연 10% | +61.1% | +159.4% |
- 연 3%
- 연 7%
- 연 10%
계산 예시. 평가액 = 1,000만 원 × (1 + 연환산)^연수, 만 원 미만 반올림. 처음 몇 년은 선이 붙어 있다가 뒤로 갈수록 벌어진다
산술평균과 기하평균
여러 기간의 수익률을 평균 낼 때 그냥 더해서 나누면(산술평균) 실제로 계좌가 불어난 속도보다 높게 나옵니다. 계좌는 곱셈으로 불어나기 때문입니다. 실제 성장 속도는 각 기간의 (1 + 수익률)을 모두 곱한 뒤 기간 수만큼 제곱근을 씌운 기하평균이 나타냅니다. CAGR도 기하평균의 한 형태입니다.
산술평균 = (50% + (−50%)) ÷ 2 = 0%
실제 계좌 = 1,000만 원 × 1.5 × 0.5 = 750만 원 (−25%)
기하평균 = √(1.5 × 0.5) − 1 = √0.75 − 1 = 0.8660 − 1 = −13.4%
"평균 0%"라는 설명과 달리 계좌는 25% 줄었다
| 구분 | 1기 | 2기 | 3기 | 4기 | 평균 |
|---|---|---|---|---|---|
| 기간 수익률 | +20% | −10% | +15% | −20% | 산술 +1.25% |
| 누적 배수 | 1.200 | 1.080 | 1.242 | 0.9936 | 기하 −0.16% |
두 평균의 차이는 변동성이 클수록 벌어집니다. 대략 "기하평균 ≈ 산술평균 − 분산 ÷ 2"라는 관계가 있어서, 같은 산술평균이라도 오르내림이 큰 전략일수록 실제로 남는 돈이 적습니다. 레버리지 ETF의 변동성 끌림도 같은 원리이며 ETF 기초 모듈에서 자세히 다룹니다. 광고나 보고서에 "연평균 수익률"이 나오면 산술평균인지 기하평균(CAGR)인지부터 확인합니다. 해마다 크게 오르내린 전략일수록 산술평균 쪽이 눈에 띄게 높게 나오기 때문입니다.
1년차 −20%, 2년차 +30%, 3년차 +10%
산술평균 = (−20 + 30 + 10) ÷ 3 = 6.67%
누적 배수 = 0.80 × 1.30 × 1.10 = 1.144 → 3년 누적 +14.4%
연환산 = 1.144^(1/3) − 1 = 1.0459 − 1 = 4.59%
"연평균 6.7%"와 "연 4.6%"는 같은 기록에서 나온 숫자다. 차이 2.1%p는 첫해 손실을 되찾는 데 쓰인 몫이다
가상 사례: 수익률 광고를 다시 계산하기
가상의 투자자 김 씨가 "7년 누적 수익률 120%, 연평균 17%"라는 투자 강좌 광고를 봤습니다. 김 씨는 광고 숫자를 그대로 믿기 전에 같은 기록을 연환산수익률로 바꿔 보기로 했습니다. 누적 120%는 1,000만 원이 2,200만 원이 됐다는 뜻이므로 전체 배수는 2.2입니다. 2.2에 7제곱근을 씌우면 1.119, 즉 연 11.9%입니다. 120%를 7로 나눈 17.1%와는 5%p 넘게 차이 납니다. 광고의 "연평균"은 누적 수익률을 연수로 나눈 단순 평균이었던 것입니다.
전체 배수 = 1 + 120% = 2.2
연환산 = 2.2^(1/7) − 1 = 1.1192 − 1 = 11.9%
광고식 계산 = 120% ÷ 7 = 17.1% (복리를 무시해 부풀린 값)
검산: 1.1192^7 = 2.200 (소수 넷째 자리 반올림)
남은 질문: 기간이 7년 전체인가, 배당은 넣었나, 같은 기간 코스피는 얼마였나
- 숫자를 바꾼 다음 김 씨가 던진 질문: 광고의 시작 시점이 큰 하락 직후는 아닌가, 7년 중 손실 난 해가 있었나, 실제 계좌 기록인가 모의 계산인가. 시작 시점과 비교 대상을 묻는 방법은 이 모듈의 벤치마크 레슨에서, 모의 계산의 함정은 백테스트 레슨에서 다룹니다.
- 1년 반 동안 20%를 벌었다면 연환산해도 되나: 기간이 1년을 넘으면 연수에 1.5를 넣어 계산합니다. 1.2^(1/1.5) − 1 = 12.9%입니다. 1년 미만은 기간 수익률 그대로 씁니다.
- 배당은 어떻게 넣나: 받은 배당을 기말 평가액에 더하면 됩니다. 배당을 받자마자 같은 종목에 다시 샀다면 이미 평가액에 들어가 있으므로 두 번 더하지 않습니다.
- 중간에 돈을 넣고 뺐다면: 기초와 기말만 비교하는 단순수익률이 틀어집니다. 다음 레슨의 시간가중·금액가중 수익률을 씁니다.
- 월별 수익률을 연 수익률로 바꾸려면: 12개월 수익률을 (1 + 월 수익률)로 모두 곱한 뒤 1을 뺍니다. 월 수익률 평균에 12를 곱하는 방식은 산술평균과 같은 이유로 실제보다 높게 나옵니다.
핵심 정리
- 수익률에는 항상 기간과 배당 포함 여부를 붙입니다
- 연환산은 (기말÷기초)^(1÷연수) − 1이며, 1년 미만 수익률은 연환산하지 않는 편이 정확합니다
- 계좌의 실제 성장 속도는 산술평균이 아니라 기하평균이 나타냅니다
- 변동성이 클수록 산술평균과 기하평균의 차이가 커집니다