PRICEMAT
満期日に利息が支払われる証券の額面 \100 ドルあたりの価格を返します。
構文
PRICEMAT(<settlement>, <maturity>, <issue>, <rate>, <yld>[, <basis>])
パラメーター
用語 | 定義 |
---|---|
settlement | 証券の受渡日。 証券の受渡日とは、発行日の後、証券が買い手に引き渡される日付です。 |
maturity | 証券の満期日。 満期日とは、証券の有効期限日です。 |
イシュー | 証券の発行日。 |
rate | 発行日の証券の利率。 |
yld | 証券の年利回り。 |
basis | (任意) 日数の計算に使用する基準の種類。 basis を省略した場合は、0 であると見なされます。 指定できる値をこの表の下に示します。 |
basis パラメーターには、次の値を指定できます。
基準 | 日数の基準 |
---|---|
0 または省略 | 米国 (NASD) 30/360 |
1 | 実際の日数/実際の日数 |
2 | 実際の日数/360 日 |
3 | 実際の日数/365 日 |
4 | 30 日/360 日 (ヨーロッパ方式) |
戻り値
額面 \$100 あたりの価格。
解説
日付は、計算で使用できるように、連続するシリアル番号として格納されます。 DAX では、1899 年 12 月 30 日が 0 日目であり、2008 年 1 月 1 日は、1899 年 12 月 30 日の 39,448 日後であるため、39,448 日目となります。
受渡日は、買い手が債券などの利札を購入した日付です。 満期日は、利札の有効期限日です。 たとえば、30 年債が 2008 年 1 月 1 日に発行され、6 か月後に買い手が購入したとします。 発行日は 2008 年 1 月 1 日になり、受渡日は 2008 年 7 月 1 日、満期日は発行日の 2008 年 1 月 1 日から 30 年後の 2038 年 1 月 1 日になります。
PRICEMAT は、次のように算出されます。
$$\text{PRICEMAT} = \frac{100 + (\frac{\text{DIM}}{\text{B}} \times \text{rate} \times 100)}{1 + (\frac{\text{DSM}}{\text{B}} \times \text{yld})} - (\frac{\text{A}}{\text{B}} \times \text{rate} \times 100)$$
ここで、
- $\text{B}$ = 年基準に応じた、年の日数。
- $\text{DSM}$ = 受渡から満期までの日数。
- $\text{DIM}$ = 発行から満期までの日数。
- $\text{A}$ = 発行から受渡までの日数。
settlement、maturity、および issue、は整数に切り捨てられます。
basis は、最も近い整数に丸められます。
次の場合はエラーが返されます。
- settlement、maturity、または issue が有効な日付ではない。
- maturity > settlement > issue が満たされていない。
- rate < 0。
- yld < 0。
- basis < 0 または basis > 4。
この関数は、計算列または行レベルのセキュリティ (RLS) ルールで使用される場合、DirectQuery モードでの使用はサポートされません。
例
次の DAX クエリを実行します。
データ | 説明 |
---|---|
2008 年 2 月 15 日 | 受渡日 |
2008 年 4 月 13 日 | 満期日 |
2007 年 11 月 11 日 | 発行日 |
6.10% | 半年の表面利率 |
6.10% | 利回り |
0 | 30/360 基準 |
EVALUATE
{
PRICEMAT(DATE(2008,2,15), DATE(2008,4,13), DATE(2007,11,11), 0.061, 0.061, 0)
}
上記で指定した条件で、証券の額面 \100 ドルあたりの価格を返します。
[値] |
---|
99.9844988755569 |