ODDLPRICE関数 – 財務

ODDLPRICE関数 – 期末が端数期間の債券の価格を計算する関数


1. 使い方と活用例

ODDLPRICE関数は、満期直前の利払い期間が通常と異なる(端数期間となる)債券の価格を計算する関数です。
通常の債券では対応できない不規則なクーポン構造を持つ証券の価格評価に使用されます。
債券の設計や財務モデル、投資判断において正確な価格算定を行う場面で活用されます。

2. 基本の書式

=ODDLPRICE(settlement, maturity, last_interest, rate, yld, redemption, frequency, [basis])

3. 引数の説明

  • settlement – 必須。債券の受渡日(購入日)を指定します。
  • maturity – 必須。債券の満期日(元本が償還される日)を指定します。
  • last_interest – 必須。最後の通常の利払い日を指定します。
  • rate – 必須。表面利率(年利)を指定します。
  • yld – 必須。市場利回り(年利)を指定します。
  • redemption – 必須。満期時に支払われる額(通常は100)を指定します。
  • frequency – 必須。利払いの頻度(1=年1回、2=年2回、4=年4回)を指定します。
  • basis – 省略可能。日数計算の基準方式(0〜4)を指定します。
    • 0 = 30/360(米国方式、既定値)
    • 1 = 実際/実際
    • 2 = 実際/360
    • 3 = 実際/365
    • 4 = 30/360(欧州方式)

4. 使用シーン

  • 満期直前の利払い期間が通常より短い・長い債券の価格を評価したいとき。
  • 特別なスケジュールで設計された債券や一部の企業債の価格分析を行うとき。
  • 不規則な利払いスケジュールに対応する財務モデルを構築したい場合。

5. 応用のポイント

ODDLPRICE関数は、PRICE関数では対応できない「端数の最終期間」に対応できる高度な関数です。
正確な日付と金利、利回りの指定が必要であり、特に last_interestmaturity の日付関係に注意が必要です。
市場価格(price)を求める関数であるため、利回りから価格を逆算する場合などに役立ちます。

6. 具体例とその解説

以下の条件で債券の価格を求めるとします。
受渡日:2023/2/1
満期日:2025/6/15(端数期間あり)
最後の通常利払い日:2025/1/15
表面利率:4.5%
市場利回り:5%
償還金額:100
利払い回数:2回/年
日数基準:実/実(1)

この場合、数式は次のようになります。

=ODDLPRICE(DATE(2023,2,1), DATE(2025,6,15), DATE(2025,1,15), 0.045, 0.05, 100, 2, 1)

この式により、端数の最終利払い期間を考慮した債券の理論価格が算出されます。

7. 関連関数の紹介

  • ODDFPRICE関数 – 初回の利払い期間が端数の債券の価格を求める関数。
  • ODDLFPRICE関数 – 期末が端数の債券価格(ヨーロッパ基準)に対応した関数(※Excel標準には存在しないがVBAでは自作可能)。
  • YIELD関数 – 通常の債券の利回りを計算する関数。
  • ODDLFYIELD関数 – 期末が端数期間の債券の利回りを求める関数。
  • PRICE関数 – 定期的な利払いスケジュールを持つ通常の債券の価格を計算する関数。

8. まとめ

ODDLPRICE関数は、満期直前の期間が通常と異なる(端数)債券の価格を精密に計算できる専門的な関数です。
債券のキャッシュフロー構造が標準でない場合にも正確に対応でき、金融・投資分野での応用度が高い関数です。
日付や利率の指定にミスがないように慎重に扱いましょう。

9. 対応バージョン

ODDLPRICE関数は、Excel 2007以降のすべてのバージョンで使用可能です。
Microsoft 365、Excel 2019、Excel Online でも問題なく利用できます。