バックテスト指標辞典:CAGR・MDD・シャープレシオ・カルマーレシオの意味と計算方法

CAGR、実質リターン、MDD、ボラティリティ、シャープレシオ・ソルティノレシオ・カルマーレシオ、TWRR・MWRRが何を測るのかを実例の値で整理し、Lifolioでの計算方法とよくある誤解を解説します。

ガイド 5/5 14分で読めます
この記事の流れ 11
  1. 年率リターン(CAGR)
  2. 実質リターン
  3. 最大ドローダウン(MDD)
  4. 回復期間
  5. ボラティリティ(標準偏差)
  6. シャープレシオ(シャープ・レシオ)
  7. ソルティノレシオ
  8. カルマーレシオ(Calmar ratio)
  9. ローリングリターン(保有期間別の成果)
  10. TWRR・MWRR(時間加重収益率・金額加重収益率)
  11. よくある質問

同じ結果画面に、年率リターン+7.63%とカルマーレシオ−0.01が並んで表示されます。前者は10年全体を、後者は最後の3年だけを対象に計算しているため、このような違いが生じます。バックテストの結果に表示される10の指標について、何を測るのか、Lifolioでどう計算しているのか、例ではいくつだったのか、どこで誤解しやすいのかを順にまとめました。

例は、SPY 60% · TLT 40%に$10,000を投じ、2015-01-02から2024-12-31まで毎月リバランスしたドル建ての結果です。条件の全体はバックテスト結果の見方にあります。

指標 ひとことで言うと 例の値
年率リターン(CAGR) 期間全体の成果を、毎年一定の複利の伸び率に直した値 +7.63%
実質リターン 年2.5%の物価上昇を仮定して差し引いたリターン 年+5.00%
最大ドローダウン(MDD) 高値からの最大の下落 日次 −27.65% · 月末 −26.21%
回復期間 最大ドローダウンの底から直前の高値を回復するまで 23か月
ボラティリティ 月次リターンの振れ幅(年率換算) 11.35%
シャープレシオ ボラティリティ1単位あたりの超過リターン 0.55
ソルティノレシオ 下方の振れ1単位あたりの超過リターン 0.83
カルマーレシオ 直近36か月の年率リターン ÷ 同じ期間の最大ドローダウン −0.01
ローリングリターン 開始時点をずらしながら見た、同じ長さの区間ごとのリターン 1年保有の最低 −23.31%
TWRR・MWRR 投資対象そのものの成果と、自分のお金の成果 毎月$500積立時 7.63% · 7.55%

結果画面で「全指標を見る」を押すと、これらの指標の多くが「リターンと成果」「リスクと回復」「リスク効率」「投資結果」の4つのグループに分かれて表示されます。前半の2グループと後半の2グループを順に掲載します。

「全指標」ウィンドウの「リターンと成果」「リスクと回復」グループ。年率リターン +7.63%、日次・月末の最大ドローダウン、ボラティリティ 11.35%、MDD回復期間 23か月が見える
「全指標」ウィンドウ① リターンと成果 · リスクと回復、2026-11-06時点
「全指標」ウィンドウの「リスク効率」「投資結果」グループ。シャープレシオ 0.55、ソルティノレシオ 0.83、カルマーレシオ −0.01が見える
「全指標」ウィンドウ② リスク効率 · 投資結果、2026-11-06時点

この例をLifolioでそのまま開く

年率リターン(CAGR)

10年間で$10,000が$20,852になりました。毎年まったく同じ割合で増えたとすると、その割合は7.63%です。これが年率リターン(CAGR、年平均成長率)で、サマリーカードには+7.6%と表示されます。

Lifolioは2段階で計算します。まず毎日、その日の評価額からその日に入金した積立額を差し引き、前日の評価額と比べて日次リターンを求めます。これを期間の終わりまで掛け合わせて累積リターンを出します。次に、(1 + 累積リターン)^(1 ÷ 年数) − 1で1年あたりに換算します。積立額を除いてリターンをつなぐこの方式が、後述するTWRRです。期間が1年未満の場合は年率換算せず、累積リターンをそのまま表示します。

最もよくある誤解は、この値を毎年得られた平均リターンだと考えることです。例の10年分の年次リターンを単純平均すると8.54%で、年率リターンより0.9ポイントほど高くなります。年ごとのリターンのばらつきが大きいほど、複利でつないだ値は単純平均より低くなります。

実質リターン

「パフォーマンス」セクションの下部にある「購買力の変化」を開くと、名目の年率7.63%を実質5.00%に、名目の累積108.52%を実質62.89%に換算して表示します。折りたたんだ状態の要約行にも「物価を除くと年+5.0% · 物価反映前+7.6%」と表示されます。ここで差し引いている物価は、実際に測定された消費者物価指数(CPI)ではありません。毎年2.5%ずつ上昇すると置いた仮定の値で、タイトルにある「年2.5%のインフレを仮定」はその意味です。ウォン建ての結果にも同じ2.5%が使われます。

計算は引き算ではなく割り算です。年率は (1 + 名目年率リターン) ÷ 1.025 − 1、累積は (1 + 名目累積リターン) ÷ 1.025^年数 − 1です。そのため、7.63%から単純に2.5ポイントを引いた5.13%より少し低い、5.00%になります。

この値を、その10年間の実際の物価を反映した結果と受け取ってしまいがちですが、物価が大きく上がった年もあまり上がらなかった年も、一律2.5%で計算しています。仮定を変えれば値も変わる、参考値として見てください。

最大ドローダウン(MDD)

それまでの最高値からの最大の下落率です。各時点の評価額をその時点までの最高評価額で割って1を引き、そのうち最も小さい値を選びます。ここでも積立の影響を除いた値を使います。サマリーカードの−27.6%(「最大ドローダウン · 日次」)はすべての取引日の値で測った日次基準で、「全指標」ウィンドウには各月の最終取引日の値だけを使った月末基準もあわせて表示されます。

MDDはこの期間に実際に起きた最大の下落1回分であって、今後経験しうる損失の上限ではありません。2つの基準がどんなときに大きく開くのか、ほかのサービスのMDDとどう比べればよいのかは、MDDの日次・月末基準と回復期間で解説しています。

回復期間

最大ドローダウンの底から、直前の高値を再び上回るまでにかかった期間です。例のサマリーカードには「底から回復まで23か月」と表示されます。起点が高値ではなく底なので、高値を下回っていた期間全体はこれより長くなります。期間の終わりまでに高値を回復できなかった場合は、数字の代わりに「回復中」と表示されます。下落の日数と回復の日数を分けて読む方法はMDDの日次・月末基準と回復期間にまとめました。

ボラティリティ(標準偏差)

月次リターンが平均からどれだけばらついていたかを、年率換算した値です。積立の影響を除いた月末の値から毎月のリターンを求めますが、開始や終了が月の途中にかかる端数の月は除きます。そのリターンの標本標準偏差に√12を掛けたものがボラティリティで、例では11.35%です。

この数字は上げ下げの方向を区別しません。大きく上がった月も、大きく下がった月と同じようにボラティリティを押し上げます。さらに注意したいのは、1か月単位の振れしか測らないという点です。何か月にもわたって少しずつ続く下落はあまり捉えられないため、ボラティリティが11.35%のこの例でも、高値からは−27.65%まで下落しました。「1年に11%前後動く」という感覚と、実際に経験した下落との間には、かなりの開きがあります。

シャープレシオ(シャープ・レシオ)

無リスク金利を上回ったリターンが、ボラティリティ1単位あたりどれだけだったかを示します。定義は、William F. Sharpe本人による解説The Sharpe Ratioで確認できます。Lifolioでは、毎月のリターンからその月の無リスク金利を引いた超過リターンを求め、その平均を標本標準偏差で割ったうえで√12を掛けます。

無リスク金利は結果の通貨によって決まります。ドル建ての結果には米国3か月国債の金利TB3MS(FRED)を、ウォン建ての結果には韓国銀行ECOSのCD 91日物金利を使い、各月に前月の観測値を適用します。CD金利を無リスク金利の代わりに使うことの限界はウォン換算リターンがドル建てリターンと異なる理由で説明しています。必要な金利データが欠けている場合、シャープレシオのように金利を使う指標は「計算不可」と表示されます。

例のシャープレシオは0.55、同じ条件のSPYは0.76です。ほかで見たシャープレシオと比べるときは、計算の前提から確かめる必要があります。日次リターンで計算したのか月次リターンで計算したのか、無リスク金利として何を差し引いたのかによって、同じポートフォリオでも値が変わりえます。

ソルティノレシオ

分子はシャープレシオと同じ超過リターンで、分母だけを下方偏差に置き換えた値です。下方偏差は、月次の超過リターンのうち0を下回る部分だけを2乗して平均し、平方根をとってから√12を掛けて求めます。平均をとるときはすべての月を含め、基準以上の月は不足分を0として数えます。

例では0.83と、シャープレシオの0.55より高くなっています。分子が同じなので、下方の振れが全体の振れより小さかったということです。

よくある間違いは、「全指標」ウィンドウの「下方偏差(月次)」2.08%を使ってソルティノレシオを計算し直そうとすることです。この値は無リスク金利ではなく0%を基準にしており、年率換算していない月次の値です。計算式が違うので、数字が合わないのは当然です。

カルマーレシオ(Calmar ratio)

直近36か月の年率リターンを、同じ36か月間の月末基準の最大ドローダウン(絶対値)で割った値です。ほかの指標が期間全体を使うのに対し、この値だけは直近3年を対象にしています。ところが「全指標」ウィンドウには「カルマーレシオ」という名前しか書かれておらず、36か月という説明は名前の横のヘルプを開かないと見えません。同じ表のほかの数字と同じように、10年全体の値だと思い込みやすいところです。

例の計算期間は2022年1月から2024年12月まで、月次リターン36個分です。

  • 分子:2021年末に約$21,100だった残高が、3年後に$20,852になりました。年率換算すると−0.39%で、「パフォーマンス」セクションの「直近期間のリターン」の表にある3年の値と同じです。
  • 分母:同じ期間の月末基準の最大ドローダウンは−26.21%です。10年間で最大の下落がこの3年の中に含まれているため、期間全体の月末MDDと同じ値になりました。
  • 比率:−0.39 ÷ 26.21 ≈ −0.015で、画面では小数第2位まで表示するため−0.01となります。
2015〜2024年のポートフォリオの成長曲線。最後の36か月にあたる2022年1月〜2024年12月に網掛けがあり、期間全体の年7.63%と直近36か月の年−0.39%のラベルが付いている
カルマーレシオの計算期間。ドル建て、2026-10-31計算

期間全体の年率リターンを期間全体の月末MDDで割ると0.29ほど(7.63 ÷ 26.21)になるので、−0.01はまったく別の期間の数字です。計算期間は常に最後の3年に固定されているため、期間の終わりを動かすと値も大きく変わります。同じポートフォリオを2021年末で終えると計算期間は2019〜2021年に変わり、カルマーレシオは2.85になります。月次リターンが36個に満たない場合や、その期間に下落がない場合は計算せず、期間全体の値で代用することもしません。

ローリングリターン(保有期間別の成果)

同じ長さの区間を、開始時点だけを変えながら何度も切り出して計算したリターンです。「パフォーマンス」セクションの「保有期間別の成果」は、N年間の区間を1か月ずつずらしながら区間ごとの年率リターンを求め、保有期間ごとに最も悪かったとき〜最も良かったときの範囲と損失の割合を棒で表示します。平均まで含めた表は、その下を開くと表示されます。例では1年保有の区間が109あり、最も悪かったのは2022年1〜12月の−23.31%でした。

区間同士が大きく重なっているので、109区間を独立した109回の経験として数えることはできません。保有期間ごとの損失割合とその限界は、バックテストの限界で解説しています。

TWRR・MWRR(時間加重収益率・金額加重収益率)

途中で資金を追加したり引き出したりすると、リターンの測り方は2通りに分かれます。時間加重収益率(TWRR)は、年率リターンで見たとおり積立の影響を除いてつないだ値なので、いつ、いくら入れても値は変わらず、投資対象そのものの成果を示します。金額加重収益率(MWRR)は、初期投資額、途中の積立額、最終評価額をそれぞれ実際の時点に置き、その現在価値の合計が0になる割引率、つまり内部収益率(IRR)です。多くの資金が入っていた時期の成果ほど大きく反映されるため、自分のお金が実際に上げた成果に近くなります。Lifolioではキャッシュフローを月単位でまとめて計算し、年率で表示します。

MWRRは総投資額が初期投資額の1.01倍を超える場合にだけ計算され、そのとき「全指標」ウィンドウに「個人リターン (MWRR)」の行が加わります。サマリーカードの年率リターンとの差が0.05ポイント以上あれば、カードの下に「積立のタイミング込みで」の行も表示されます。積立のない基本の例にはこの行がなく、7.63%がそのままTWRRです。

同じ組み合わせに最初に$10,000を入れ、毎月$500ずつ10年間積み立てると、カードは次のように変わります。

毎月$500を積み立てた例の4枚のサマリーカード。最終資産 $108,684(投資 $70,000、損益 +$38,684)、年率リターン +7.6%とその下の「積立のタイミング込みで +7.5%」、最大ドローダウン · 日次 −27.6%、1年保有で損失 17%が見える
初期$10,000 + 毎月$500の積立、そのほかの条件は基本の例と同じ。2026年11月6日時点の画面

毎月$500積立の例をLifolioで開く

投入した資金は合計$70,000、最終評価額は$108,684です。年率リターン(TWRR)は7.63%と、積立がない場合とまったく同じで、カードにも+7.6%がそのまま表示されます。投入資金ベースのMWRRは7.55%で、カードには「積立のタイミング込みで +7.5%」と表示されます。最大ドローダウン−27.6%、1年保有で損失17%、シャープレシオ0.55も変わりません。リターンとリスク指標をすべて、積立の影響を除いた値で計算しているためです。

2つの値の差が0.08ポイントにとどまったのは、毎月同じ金額を機械的に積み立てたからです。上がる月にも下がる月にも均等に資金が入るので、特定の時点の運が結果を大きく左右することはありません。MWRRがわずかに低いのは、積立が進むほど後半の年に多くの資金が入っていて、その最後の3年の成果が年−0.39%と振るわなかった影響と考えられます。

2つの値が大きく開くのは、まとまった資金が特定の時点に集中するときです。下落相場の直前にまとまった資金を投じれば、その資金が下落をまともに受けてMWRRはTWRRより低くなり、反発の直前に投じていれば逆に高くなります。このときもTWRRは変わらないので、2つの数字の差は投資対象ではなく、資金を投じたタイミングによって生じたものです。

計算式とデータ処理のルールの全体は計算方法論に、金利と為替レートのデータの出典はデータソースにあります。すべての値は過去のデータで計算した結果であり、将来のリターンを示すものではありません。

よくある質問

シャープレシオはいくつ以上なら良い?

どんな場合にも通用する合格ラインはありません。シャープレシオは、期間、リターンを測る間隔、無リスク金利がそろった結果同士を並べたときに初めて比較が成り立ちます。例のポートフォリオも2015〜2024年では0.55でしたが、終了日を2021年末に早めると1.18になりました。数字1つを基準線と比べるより、同じ条件で計算したベンチマークの値(例ではSPYの0.76)と並べて見てください。

カルマーレシオがマイナスなのは悪い結果ですか?

マイナスは、直近36か月の年率リターンが0を下回ったことを意味します。例の−0.01も、10年全体では年7.63%を上げたポートフォリオが、最後の3年は足踏みしたというシグナルにすぎず、期間全体の評価ではありません。マイナスの値同士で大小を比べるときは注意が必要です。リターンがマイナスのときは、下落幅が大きいほど割り算の結果が0に近づくため、より大きく下げたほうがかえって良く見えることがあります。

TWRRとMWRR、どちらを見ればよいですか?

目的によります。ポートフォリオや戦略同士を比べるときは、積立の金額やタイミングの影響を除いたTWRRが共通の物差しになります。自分で決めた積立計画で投じたお金が、実際に年何%で増えたかを知りたいならMWRRを見ます。MWRRは積立の金額やタイミングが変われば一緒に変わるため、2つのポートフォリオのMWRRを比べるには、まず積立条件をまったく同じにそろえる必要があります。

この記事の数字は、2026年11月6日に同じ条件で計算し直し、確認したものです。誤りにお気づきの場合は、画面右下の「フィードバックを送る」ボタンからお知らせください。