次の方法で共有


MDURATION

適用対象: 計算列計算テーブルメジャービジュアル計算

\$100 と想定される同等の値を持つセキュリティの変更されたマコーレー期間を返します。

構文

MDURATION(<settlement>, <maturity>, <coupon>, <yld>, <frequency>[, <basis>])

パラメーター

用語 定義
settlement 証券の受渡日。 証券決済日は、証券が購入者に取引される発行日の後の日付です。
maturity セキュリティの成熟日。 満期日は、セキュリティの有効期限が切れる日付です。
coupon セキュリティの年間利率。
yld セキュリティの年間利回り。
frequency 1 年あたりのクーポン支払いの数。 年間支払いの場合、頻度 = 1。半期の場合は frequency = 2。四半期の場合は frequency = 4 です。
basis (省略可能)使用する日数基準の種類。 基準を省略すると、0 と見なされます。 この表の下に、使用できる値を示します。

basis パラメーターは、次の値を受け入れます。

Basis 日数基準
0 または省略 米国 (NASD) 30/360
1 Actual/actual
2 実績/360
3 実績/365
4 ヨーロッパ 30/360

戻り値

変更されたマコーレー期間。

備考

  • 日付は連続したシリアル番号として格納されるため、計算に使用できます。 DAXでは、1899 年 12 月 30 日は 0 日目、1899 年 12 月 30 日から 39,448 日後であるため、2008 年 1 月 1 日は 39448 です。

  • 受渡日は、買い手が債券などのクーポンを購入した日付です。 満期日は、クーポンの有効期限が切れる日付です。 たとえば、30 年債が 2008 年 1 月 1 日に発行され、6 か月後に購入者によって購入されたとします。 発行日は 2008 年 1 月 1 日、受渡日は 2008 年 7 月 1 日、満期日は発行日の 2008 年 1 月 1 日から 30 年後の 2038 年 1 月 1 日です。

  • 変更された期間は次のように定義されます。

    $$\text{MDURATION} = \frac{\text{DURATION}}{1 + (\frac{\text{Market yield}}}{\text{Coupon payments per year}})}$$

  • 受渡日と満期日は整数に切り捨てられます。

  • 頻度と基準は、最も近い整数に丸められます。

  • 次の場合、エラーが返されます。

    • 受渡日または満期日が有効な日付ではありません。
    • 受渡日≥満期日
    • クーポン < 0。
    • yld < 0
    • 頻度は、1、2、または 4 以外の任意の数です。
    • 基準 < 0 または基準 > 4。
  • この関数は、計算列または行レベル セキュリティ (RLS) 規則で使用する場合、DirectQuery モードでは使用できません。

データ 説明
1/1/2008 受渡日
1/1/2016 満期日
8% パーセントクーポン
9% 利回り率
2 頻度は半期です (上記を参照)
1 実績/実績基準 (上記参照)

次の DAX クエリ:

EVALUATE
{
  MDURATION(DATE(2008,1,1), DATE(2016,1,1), 0.08, 0.09, 2, 1)
}

上記で指定した条件を使用して、債券の変更されたマコーレー期間を返します。

[値]
5.73566981391884