<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MDURATION関数 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/mduration%e9%96%a2%e6%95%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Tue, 21 Apr 2026 14:38:06 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>MDURATION関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのMDURATION関数の使い方｜修正デュレーション</title>
		<link>https://mashukabu.com/spreadsheet-mduration-function/</link>
					<comments>https://mashukabu.com/spreadsheet-mduration-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 21 Apr 2026 14:38:06 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[MDURATION関数]]></category>
		<category><![CDATA[債券]]></category>
		<category><![CDATA[経理・財務]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6163</guid>

					<description><![CDATA[GoogleスプレッドシートのMDURATION関数を使えば、債券の修正デュレーション（金利感応度）を一発で計算できます。金利1%の変化で価格が何%動くかの概算、ポートフォリオ加重平均MDURATION、BPV算出、DURATION関数との使い分けまで、経理・財務担当者向けに同僚に教える感覚で解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「金利が1%上がったら、うちの社債ポートフォリオって何%下がるの？」と上司に聞かれたとき、電卓を叩かず即答できたら頼もしいですよね。その答えを出す鍵が「修正デュレーション」で、スプレッドシートのMDURATION関数なら一発で計算できますよ。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのMDURATION関数の使い方を、基本構文から金利シナリオの一覧化・ポートフォリオ加重平均・BPV（ベーシスポイントバリュー）・凸性との関係まで、同僚に教える感覚で解説します。<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>との使い分けも整理しているので、経理・財務の金利リスク管理にぜひ活用してくださいね。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのMDURATION関数とは？</a></li><li><a href="#toc2" tabindex="0">MDURATION関数の構文と引数</a><ol><li><a href="#toc3" tabindex="0">日数計算基準（basis）の設定値</a></li></ol></li><li><a href="#toc4" tabindex="0">MDURATION関数の基本的な使い方</a><ol><li><a href="#toc5" tabindex="0">半年払い社債の修正デュレーションを求める</a></li><li><a href="#toc6" tabindex="0">年1回払い利付国債の修正デュレーションを求める</a></li><li><a href="#toc7" tabindex="0">DURATIONとMDURATIONを並べて検算する</a></li></ol></li><li><a href="#toc8" tabindex="0">修正デュレーションの数字の読み方</a><ol><li><a href="#toc9" tabindex="0">「4.49」をどう解釈するか</a></li><li><a href="#toc10" tabindex="0">決算説明会で1分で説明するなら</a></li></ol></li><li><a href="#toc11" tabindex="0">金利変動シミュレーションを一覧化する</a><ol><li><a href="#toc12" tabindex="0">価格変動率の基本式</a></li><li><a href="#toc13" tabindex="0">金利変化幅からセルで計算する実装例</a></li></ol></li><li><a href="#toc14" tabindex="0">ポートフォリオ全体の加重平均MDURATIONを計算する</a><ol><li><a href="#toc15" tabindex="0">複数銘柄は時価加重で合算する</a></li><li><a href="#toc16" tabindex="0">SUMPRODUCT関数で一発計算</a></li></ol></li><li><a href="#toc17" tabindex="0">BPV（ベーシスポイントバリュー）で実額リスクを測る</a><ol><li><a href="#toc18" tabindex="0">BPVとは「1bp動いたときの金額変動」</a></li><li><a href="#toc19" tabindex="0">リスク管理部門との共通言語</a></li></ol></li><li><a href="#toc20" tabindex="0">DURATION関数との使い分け</a><ol><li><a href="#toc21" tabindex="0">構造把握 vs. 価格変動概算</a></li><li><a href="#toc22" tabindex="0">実務の流れに当てはめると</a></li></ol></li><li><a href="#toc23" tabindex="0">凸性（コンベクシティ）でMDURATIONの誤差を補正する</a><ol><li><a href="#toc24" tabindex="0">金利変化が大きいと誤差が増える</a></li><li><a href="#toc25" tabindex="0">実務での使いどころ</a></li></ol></li><li><a href="#toc26" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc27" tabindex="0">#NUM!エラー</a></li><li><a href="#toc28" tabindex="0">#VALUE!エラー</a></li><li><a href="#toc29" tabindex="0">#NAME?エラー</a></li><li><a href="#toc30" tabindex="0">結果がDURATIONより大きくなる</a></li></ol></li><li><a href="#toc31" tabindex="0">Excelとの互換性</a></li><li><a href="#toc32" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのMDURATION関数とは？</span></h2>



<p class="wp-block-paragraph">スプレッドシートのMDURATION関数は、<strong>定期利付債の修正デュレーション（Modified Duration）を年単位で計算する財務関数</strong>です。修正デュレーションは、金利が1単位動いたときに債券価格が何%変化するかの近似値を表す指標で、「金利感応度」とも呼ばれますよ。</p>



<p class="wp-block-paragraph">計算の仕組みはシンプルで、次のように<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>が返すマコーレー・デュレーションを「1+利回り÷利払い頻度」で割った値になります。</p>



<pre class="wp-block-code"><code>修正デュレーション = マコーレー・デュレーション ÷ (1 + 利回り ÷ 頻度)</code></pre>



<p class="wp-block-paragraph">ざっくり覚え方は、「DURATIONで債券の構造を理解し、MDURATIONで金利リスクを計算する」ですよ。債券の金利感応度を数字で示せるので、決算説明会の資料や投資委員会の報告書で、修正デュレーションは定番の指標として使われます。</p>



<h2 class="wp-block-heading"><span id="toc2">MDURATION関数の構文と引数</span></h2>



<p class="wp-block-paragraph">MDURATION関数の構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=MDURATION(受渡日, 満期日, 利率, 利回り, 頻度, [日数計算基準])</code></pre>



<p class="wp-block-paragraph">英語表記だと <code>=MDURATION(settlement, maturity, rate, yield, frequency, [day_count_convention])</code> となります。引数の種類と数は<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>と完全に同じです。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>省略</th><th>説明</th></tr></thead><tbody><tr><td>受渡日（settlement）</td><td>必須</td><td>債券の購入日。DATE関数での指定を推奨</td></tr><tr><td>満期日（maturity）</td><td>必須</td><td>債券の満期日。受渡日より後の日付</td></tr><tr><td>利率（rate）</td><td>必須</td><td>債券の年利クーポン率（例: 0.03 = 年3%）</td></tr><tr><td>利回り（yield）</td><td>必須</td><td>投資家の年利回り（市場利回り、小数で指定）</td></tr><tr><td>頻度（frequency）</td><td>必須</td><td>年あたりの利払い回数（1, 2, 4のいずれか）</td></tr><tr><td>日数計算基準（basis）</td><td>省略可</td><td>1年の日数計算方式（下表参照、省略時は0）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">頻度（frequency）は「1=年1回払い」「2=半年ごと」「4=四半期ごと」の3種類のみで、それ以外は#NUM!エラーになりますよ。</p>



<h3 class="wp-block-heading"><span id="toc3">日数計算基準（basis）の設定値</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>値</th><th>1年の日数計算</th></tr></thead><tbody><tr><td>0（省略時）</td><td>30日/360日（米国NASD方式）</td></tr><tr><td>1</td><td>実際の日数/実際の日数</td></tr><tr><td>2</td><td>実際の日数/360日</td></tr><tr><td>3</td><td>実際の日数/365日</td></tr><tr><td>4</td><td>30日/360日（ヨーロッパ方式）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日本の国債や社債の実務では <strong>basis=1（実際/実際）</strong> が定番です。迷ったら対象債券の目論見書で採用方式を確認しておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc4">MDURATION関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc5">半年払い社債の修正デュレーションを求める</span></h3>



<p class="wp-block-paragraph">額面100・年利クーポン3%・半年ごと利払い・期間5年の社債を、市場利回り4%で評価するケースを計算してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>セル</th><th>項目</th><th>値</th></tr></thead><tbody><tr><td>B2</td><td>受渡日</td><td>2026/4/21</td></tr><tr><td>B3</td><td>満期日</td><td>2031/4/21</td></tr><tr><td>B4</td><td>クーポン利率</td><td>0.03</td></tr><tr><td>B5</td><td>利回り</td><td>0.04</td></tr><tr><td>B6</td><td>頻度（半年）</td><td>2</td></tr></tbody></table></figure>



<pre class="wp-block-code"><code>=MDURATION(B2, B3, B4, B5, B6, 1)</code></pre>



<p class="wp-block-paragraph">結果は <strong>約4.49年</strong> になります。同じ条件でDURATION関数を使うと約4.58年なので、マコーレー（4.58）を <code>(1 + 0.04/2) = 1.02</code> で割った4.49と一致しますよ。電卓でサッと検算できる関係なので、数字の信頼性も確認しやすいです。</p>



<p class="wp-block-paragraph">直接日付を入れる場合はDATE関数を使うと安全です。</p>



<pre class="wp-block-code"><code>=MDURATION(DATE(2026,4,21), DATE(2031,4,21), 0.03, 0.04, 2, 1)</code></pre>



<h3 class="wp-block-heading"><span id="toc6">年1回払い利付国債の修正デュレーションを求める</span></h3>



<p class="wp-block-paragraph">額面100・年利1.2%・年1回利払い・期間10年の利付国債を、市場利回り1.5%で評価するケースです。</p>



<pre class="wp-block-code"><code>=MDURATION(DATE(2026,4,21), DATE(2036,4,21), 0.012, 0.015, 1, 1)</code></pre>



<p class="wp-block-paragraph">結果は <strong>約9.33年</strong> になります。DURATION関数の結果（約9.46年）を <code>(1 + 0.015/1) = 1.015</code> で割った値とほぼ一致しますよ。低クーポン・長期の国債は修正デュレーションも大きく、金利変動の影響を強く受ける債券だとわかります。</p>



<h3 class="wp-block-heading"><span id="toc7">DURATIONとMDURATIONを並べて検算する</span></h3>



<p class="wp-block-paragraph">両関数を横に並べて数字の関係を確認しておくと、後の実務で安心して使えます。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>値</th></tr></thead><tbody><tr><td>DURATION（マコーレー）</td><td>4.58年</td></tr><tr><td>1 + 利回り/頻度</td><td>1 + 0.04/2 = 1.02</td></tr><tr><td>MDURATION（修正）</td><td>4.58 ÷ 1.02 ≒ 4.49年</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">修正デュレーションは<strong>必ずマコーレー・デュレーションより小さく</strong>なります。逆転する結果が出たら、どこかの引数を疑うサインですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">修正デュレーションの数字の読み方</span></h2>



<h3 class="wp-block-heading"><span id="toc9">「4.49」をどう解釈するか</span></h3>



<p class="wp-block-paragraph">MDURATION関数が返した「4.49」という数字は、<strong>金利が1%動いたら、債券価格がおおよそ4.49%反対方向に動く</strong>という意味です。金利が上がれば債券価格は下がるので、符号はマイナスで覚えておくとしっくりきますよ。</p>



<p class="wp-block-paragraph">実務での翻訳フレーズはシンプルです。</p>



<ul class="wp-block-list"><li>修正デュレーション 4.5 → 金利+1%で価格-4.5%</li><li>修正デュレーション 9.3 → 金利+1%で価格-9.3%</li><li>修正デュレーション 2.0 → 金利+1%で価格-2.0%</li></ul>



<p class="wp-block-paragraph">「修正デュレーション＝金利1%あたりの価格変動率（%）」と丸暗記しておくだけで、数字を見た瞬間にリスクの大きさが体感できますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">決算説明会で1分で説明するなら</span></h3>



<p class="wp-block-paragraph">上司や経営会議で使うときは、次のような一言が効きます。</p>



<ul class="wp-block-list"><li>「保有社債の修正デュレーションは4.5です。金利が0.5%上昇すると、およそ2.25%の価格下落が見込まれます」</li><li>「10年国債のMDURATIONは9.3なので、金利1%の上昇で9%超の含み損になります」</li></ul>



<p class="wp-block-paragraph">数値の大小ではなく「価格変動率に直接翻訳」する伝え方が、決算説明会や投資委員会では好まれますよ。</p>



<h2 class="wp-block-heading"><span id="toc11">金利変動シミュレーションを一覧化する</span></h2>



<h3 class="wp-block-heading"><span id="toc12">価格変動率の基本式</span></h3>



<p class="wp-block-paragraph">修正デュレーションを使った価格変動の概算式はこちらです。</p>



<pre class="wp-block-code"><code>価格変動率 ≒ -MDURATION × 金利変化幅</code></pre>



<p class="wp-block-paragraph">先ほどの5年物社債（MDURATION 4.49）で、金利が複数シナリオで動いたときの影響を、SUMPRODUCTやセル参照でまとめると実務資料になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>金利変化</th><th>価格変動率の概算</th><th>額面1億円の場合の価格変動</th></tr></thead><tbody><tr><td>+0.25%</td><td>-1.12%</td><td>約-112万円</td></tr><tr><td>+0.50%</td><td>-2.25%</td><td>約-225万円</td></tr><tr><td>+1.00%</td><td>-4.49%</td><td>約-449万円</td></tr><tr><td>+2.00%</td><td>-8.98%</td><td>約-898万円</td></tr><tr><td>-0.50%</td><td>+2.25%</td><td>約+225万円</td></tr><tr><td>-1.00%</td><td>+4.49%</td><td>約+449万円</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">このような<strong>シナリオテスト表</strong>をスプレッドシート1枚にまとめておくと、金利動向が動いたときの有価証券含み損益の試算に何度でも使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc13">金利変化幅からセルで計算する実装例</span></h3>



<p class="wp-block-paragraph">セルA2に金利変化幅（例: 0.01 = +1%）、B2にMDURATIONを置くとします。</p>



<pre class="wp-block-code"><code>=-B2*A2</code></pre>



<p class="wp-block-paragraph">これで価格変動率（小数）が出せます。額面金額C2を掛ければ実額リスクに変わりますよ。</p>



<pre class="wp-block-code"><code>=-B2*A2*C2</code></pre>



<p class="wp-block-paragraph">シナリオ表ではA列を動かすだけで結果が自動更新されるので、<strong>金利上昇メッセージが出た日に3分で損益影響を出せる</strong>体制が作れます。</p>



<h2 class="wp-block-heading"><span id="toc14">ポートフォリオ全体の加重平均MDURATIONを計算する</span></h2>



<h3 class="wp-block-heading"><span id="toc15">複数銘柄は時価加重で合算する</span></h3>



<p class="wp-block-paragraph">複数の債券を保有している場合、ポートフォリオ全体の修正デュレーションは<strong>各銘柄のMDURATIONを時価で加重平均</strong>して求めます。</p>



<figure class="wp-block-table"><table><thead><tr><th>銘柄</th><th>MDURATION</th><th>時価（億円）</th></tr></thead><tbody><tr><td>A社 5年社債</td><td>4.49</td><td>10</td></tr><tr><td>B省 10年国債</td><td>9.33</td><td>15</td></tr><tr><td>C社 3年社債</td><td>2.80</td><td>5</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ポートフォリオ全体のMDURATIONは次の式で計算できますよ。</p>



<pre class="wp-block-code"><code>加重平均MDURATION = Σ(各銘柄MDURATION × 各銘柄時価) ÷ 総時価</code></pre>



<h3 class="wp-block-heading"><span id="toc16">SUMPRODUCT関数で一発計算</span></h3>



<p class="wp-block-paragraph">スプレッドシートならSUMPRODUCT関数（配列の対応要素同士を掛けて合計する関数）が便利です。B列にMDURATION、C列に時価が入っているなら、次の数式で計算できます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT(B2:B4, C2:C4) / SUM(C2:C4)</code></pre>



<p class="wp-block-paragraph">上の例なら <code>(4.49×10 + 9.33×15 + 2.80×5) / 30 = 6.62</code> となり、<strong>ポートフォリオ全体の修正デュレーションは約6.62</strong>です。金利が1%上昇したらポートフォリオは約6.62%の含み損、という概算ができますね。</p>



<p class="wp-block-paragraph">実務ではこの加重平均値をモニタリング指標として定期レポートに載せます。ALM（資産負債管理）担当なら、負債側の修正デュレーションと突き合わせてギャップを管理するのが基本ですよ。</p>



<h2 class="wp-block-heading"><span id="toc17">BPV（ベーシスポイントバリュー）で実額リスクを測る</span></h2>



<h3 class="wp-block-heading"><span id="toc18">BPVとは「1bp動いたときの金額変動」</span></h3>



<p class="wp-block-paragraph">実務では「価格変動率」ではなく「金額」で報告することも多いです。そんなときに使うのが<strong>BPV（ベーシスポイントバリュー）</strong>で、金利が1bp（0.01%）動いたときの金額変動を表しますよ。</p>



<p class="wp-block-paragraph">計算式はシンプルです。</p>



<pre class="wp-block-code"><code>BPV = 金額 × MDURATION × 0.0001</code></pre>



<p class="wp-block-paragraph">額面10億円・MDURATION 4.49の社債なら、BPVは次のように計算できます。</p>



<pre class="wp-block-code"><code>=10_0000_0000 * 4.49 * 0.0001
→ 約449,000円</code></pre>



<p class="wp-block-paragraph">「金利が1bp上昇すると約44.9万円の含み損」という感覚が、一発でつかめますよ。</p>



<h3 class="wp-block-heading"><span id="toc19">リスク管理部門との共通言語</span></h3>



<p class="wp-block-paragraph">BPVはリスク管理部門やトレーディング部門との会話に出てくる定番指標です。各銘柄のBPVを足し合わせれば、ポートフォリオ全体のBPVも出せます。</p>



<figure class="wp-block-table"><table><thead><tr><th>銘柄</th><th>金額（億円）</th><th>MDURATION</th><th>BPV（円）</th></tr></thead><tbody><tr><td>A社 5年社債</td><td>10</td><td>4.49</td><td>449,000</td></tr><tr><td>B省 10年国債</td><td>15</td><td>9.33</td><td>1,399,500</td></tr><tr><td>C社 3年社債</td><td>5</td><td>2.80</td><td>140,000</td></tr><tr><td>合計</td><td>—</td><td>—</td><td><strong>1,988,500</strong></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ポートフォリオBPVが約199万円なら、「金利が1bp動くと200万円前後の含み損益が動く」とシンプルに報告できますよ。「1bpで何円動く？」はリスク管理の共通言語なので、BPVで報告する習慣をつけておくと社内コミュニケーションがスムーズです。</p>



<h2 class="wp-block-heading"><span id="toc20">DURATION関数との使い分け</span></h2>



<h3 class="wp-block-heading"><span id="toc21">構造把握 vs. 価格変動概算</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>とMDURATION関数は似ていますが、役割がはっきり分かれます。</p>



<figure class="wp-block-table"><table><thead><tr><th>観点</th><th>DURATION（マコーレー）</th><th>MDURATION（修正）</th></tr></thead><tbody><tr><td>返す値</td><td>加重平均回収期間</td><td>金利感応度（価格変動率の近似）</td></tr><tr><td>単位</td><td>年</td><td>%/金利1単位</td></tr><tr><td>計算式</td><td>各CFの現在価値加重平均</td><td>マコーレー ÷ (1 + 利回り/頻度)</td></tr><tr><td>主な用途</td><td>キャッシュフロー構造の把握</td><td>金利変動による価格変動の見積もり</td></tr><tr><td>実務の出番</td><td>「何年で回収できるか」を見るとき</td><td>「金利1%でいくら動くか」を見るとき</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc22">実務の流れに当てはめると</span></h3>



<p class="wp-block-paragraph">金利リスク分析でよくある一連の流れはこちらです。</p>



<ol class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-yield-function/">YIELD関数</a>で現在の市場利回りを計算する</li><li>その利回りを<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>に入れて、マコーレー・デュレーションで回収構造を確認する</li><li>MDURATION関数で金利感応度を出し、シナリオテストで価格変動を概算する</li><li>精緻な価格は<a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a>で逆算して検証する</li></ol>



<p class="wp-block-paragraph">このように<strong>DURATIONで構造、MDURATIONでリスクの数値化、PRICEで精緻化</strong>という使い分けを覚えておくと、どの関数に手を伸ばせばよいか迷わなくなりますよ。</p>



<h2 class="wp-block-heading"><span id="toc23">凸性（コンベクシティ）でMDURATIONの誤差を補正する</span></h2>



<h3 class="wp-block-heading"><span id="toc24">金利変化が大きいと誤差が増える</span></h3>



<p class="wp-block-paragraph">MDURATIONを使った価格変動の概算は、<strong>金利変化幅が小さい範囲でよく合う近似式</strong>です。債券価格と金利の関係は直線ではなく下に凸のカーブなので、金利変化が大きくなるとMDURATIONだけでは誤差が出てきますよ。</p>



<p class="wp-block-paragraph">この誤差を補正する概念が<strong>凸性（コンベクシティ、Convexity）</strong>です。凸性は、金利変化に対する価格カーブの「曲がり具合」を表す指標で、次のような性質を持ちます。</p>



<ul class="wp-block-list"><li>金利が大きく上昇したとき、MDURATIONだけだと価格下落を<strong>過大に見積もる</strong></li><li>金利が大きく下落したとき、MDURATIONだけだと価格上昇を<strong>過小に見積もる</strong></li><li>凸性を加えると、どちら側の誤差も補正できる</li></ul>



<h3 class="wp-block-heading"><span id="toc25">実務での使いどころ</span></h3>



<p class="wp-block-paragraph">スプレッドシートの標準関数には凸性を直接返すものはありませんが、実務では次のような使い分けが定着しています。</p>



<ul class="wp-block-list"><li>金利変化幅が<strong>±1%以内</strong>: MDURATIONだけで十分</li><li>金利変化幅が<strong>±2%以上</strong>: 凸性も加味するか、<a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a>で実際の価格を直接計算する</li></ul>



<p class="wp-block-paragraph">ざっくり目安として「2%を超える大きな金利変化はPRICE関数で直接検証する」を覚えておけば、MDURATIONの限界でつまずきません。凸性は金融の専門書でじっくり学ぶ領域なので、ここではまず<strong>MDURATIONの誤差範囲</strong>だけ頭に入れておけば十分ですよ。</p>



<h2 class="wp-block-heading"><span id="toc26">よくあるエラーと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc27">#NUM!エラー</span></h3>



<p class="wp-block-paragraph">以下のケースで発生します。</p>



<figure class="wp-block-table"><table><thead><tr><th>発生条件</th><th>対処法</th></tr></thead><tbody><tr><td>受渡日 ≥ 満期日</td><td>受渡日が満期日より前になるよう修正する</td></tr><tr><td>頻度が 1, 2, 4 以外</td><td>1、2、4のいずれかに修正する</td></tr><tr><td>basis が 0〜4 以外</td><td>0、1、2、3、4のいずれかに修正する</td></tr><tr><td>利率が負の値</td><td>0以上の利率を指定する</td></tr><tr><td>利回りが負の値</td><td>0以上の利回りを指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">よくあるのが<strong>頻度の指定ミス</strong>で、月1回払いを想定して「12」を入れるとエラーになりますよ。MDURATION関数は年1回・半年・四半期の3パターンしか対応しないので気をつけてくださいね。</p>



<h3 class="wp-block-heading"><span id="toc28">#VALUE!エラー</span></h3>



<p class="wp-block-paragraph">引数に数値・日付以外の文字列が入っている場合に発生します。日付を直接書くときは <code>DATE(2026,4,21)</code> のようにDATE関数を使うと確実です。セル参照の場合は、参照先のセルが日付書式になっているかも合わせて確認しましょう。</p>



<h3 class="wp-block-heading"><span id="toc29">#NAME?エラー</span></h3>



<p class="wp-block-paragraph">関数名のスペルミスが原因です。「MDURATON」「MODURATION」のような打ち間違いが典型例ですよ。入力候補から選ぶようにすれば防げます。また、<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>と混同して「DURATION」と打ってしまうケースもあるので、修正デュレーションを出したいときは必ず頭に<strong>M</strong>が付いているか確認してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc30">結果がDURATIONより大きくなる</span></h3>



<p class="wp-block-paragraph">定義上、修正デュレーションはマコーレー・デュレーションより<strong>必ず小さく</strong>なります。MDURATIONの結果がDURATIONより大きい場合、数式や参照セルを取り違えている可能性が高いので、引数を見直してみてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc31">Excelとの互換性</span></h2>



<p class="wp-block-paragraph">MDURATION関数はExcelとGoogleスプレッドシートで同じ計算結果を返します。Excelファイル（.xlsx）をスプレッドシートで開いても動作はそのままですよ。</p>



<p class="wp-block-paragraph">スプレッドシートでは引数名が日本語（「受渡日」「満期日」「利率」「利回り」「頻度」「日数計算基準」）で表示されます。Excelの英語表記（<code>settlement</code>、<code>maturity</code>、<code>rate</code>、<code>yield</code>、<code>frequency</code>、<code>basis</code>）と見た目は違いますが、動作は完全に同じです。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>もExcel・スプレッドシート間で互換性があるので、両方の環境で同じ分析ファイルを共有できます。チーム内で金利リスク分析のテンプレートを統一しやすいですよ。</p>



<h2 class="wp-block-heading"><span id="toc32">まとめ</span></h2>



<p class="wp-block-paragraph">スプレッドシートのMDURATION関数は、定期利付債の修正デュレーション（金利感応度）を計算する財務関数です。ポイントをまとめておきます。</p>



<ul class="wp-block-list"><li>引数は<strong>受渡日・満期日・利率・利回り・頻度</strong>の5つが必須。日数計算基準（basis）は省略可</li><li>頻度（frequency）は <strong>1, 2, 4 のいずれか</strong>のみ（年1回/半年/四半期）</li><li>返す値は<strong>金利感応度</strong>。「4.5」なら金利1%上昇で価格約4.5%下落と翻訳する</li><li>価格変動率 ≒ <strong>-MDURATION × 金利変化幅</strong> で概算できる</li><li>複数銘柄のポートフォリオはSUMPRODUCT関数で<strong>時価加重平均MDURATION</strong>を算出する</li><li><strong>BPV = 金額 × MDURATION × 0.0001</strong> で1bpあたりの実額リスクを出せる</li><li><a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>との使い分けは「構造把握 vs. 価格変動概算」</li><li>大きな金利変化（±2%超）は凸性の影響で誤差が増えるので、<a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a>で直接検証する</li></ul>



<p class="wp-block-paragraph">金利動向が注目される局面では、修正デュレーションを使った金利リスクのモニタリングが決算・投資判断の定番業務になります。MDURATION関数を<a href="https://mashukabu.com/spreadsheet-yield-function/">YIELD関数</a>・<a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a>・<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>とセットで使いこなして、保有債券の金利リスクをサッと数値化できるようになっておくと、経理・財務の現場で一段頼りにされますよ。名前が紛らわしい<a href="https://mashukabu.com/spreadsheet-pduration-function/">PDURATION関数</a>は投資期間を求める別物なので、こちらもあわせてチェックしておくと安心ですね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-mduration-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
