【Excel】YIELD関数-定期的に利息が支払われる証券(固定利付債)の利回りを求める-


(約文字)

2020-06-08

  • Keyword
  • Excel
  • YIELD関数
  • 定期的
  • 利息
  • 証券
  • 固定利付債
  • 利回り

YIELD関数とは

エクセルの「YIELD関数」は定期的に利息が支払われる証券(固定利付債)の利回りを返す関数です。

債券の利回りを計算する場合に利用するのが「YIELD関数」です。

構文と引数

  • 365
  • 2019
  • 2016
  • 2013
  • 2010
  • 2007

=YIELD(受渡日,満期日,利率,現在価値,償還価額,頻度,[基準日数])

重要:日付は、DATE関数を使って入力するか、他の数式または他の関数の結果として指定します。 例えば2020年6月8日を入力する場合は、DATE(2020,6,8) を使用します。 日付を文字列として入力した場合(例えば、DATE("2020-6-8")など)、エラーが発生することがあります。

引数必要性内容
受渡日必須証券の受渡日を指定します。発行日以降に証券が買い手に引き渡される日付です。
満期日必須 証券の満期日を指定します。 証券の支払期日です。
利率必須証券の年利を指定します。
現在価値必須 額面100に対する証券の価値を指定します。
償還価額必須額面100に対する証券の償還額を指定します。
頻度必須年間の利息の支払回数を指定します。 年1回の場合は1、年2回の場合は2、四半期毎の場合は4を指定します。
[基準日数][省略可]計算に使用する基準日数を示す数値を指定します。
基準日数を示す数値基準日数 (月/年)
0or省略30日/360日(NASD方式)
1実際の日数/実際の日数
2実際の日数/360日
3実際の日数/365日
430日/360日(ヨーロッパ方式)

YIELD関数の解説

  • ・Excelでは、日付を連続したシリアル値として処理することで、日付の計算が行われています。既定では、1900年1月1日がシリアル値1として保存され、2020年6月8日は1900年1月1日から●日後に当たるので、シリアル値は●になります。
  • ・受渡日とは、証券(債券など)の売買代金の決済日です。満期日とは、証券の支払期日です。例えば、2020年1月1日に発行された30年債券を、発行日の6か月後に購入したとします。この債券は、発行日が2020年1月1日、受渡日が2020年7月1日になり、満期日は、発行日の30年後に当たる2050年1月1日になります。
  • ・受渡日、満期日、頻度、基準に整数以外の値を指定すると、小数点以下が切り捨てられます。
  • ・受渡日または満期日に無効な日付を指定すると、エラー値#VALUE!が返されます。
  • ・利率 < 0 の場合は、エラー値#NUM!が返されます。
  • ・現在価値 ≦ 0 または償還価額 ≦ 0 の場合は、エラー値#NUM!が返されます。
  • ・頻度に 1、2、4 以外の数値を指定すると、エラー値#NUM!が返されます。
  • ・基準 < 0 または基準> 4 の場合は、エラー値#NUM!が返されます。
  • ・受渡日 ≧満期日の場合は、エラー値 #NUM! が返されます。
  • ・1利払期間内に償還が行われない場合、YIELD関数の計算には、反復計算の手法が使用されます。 このとき、PRICE関数で使用される数式に基づくニュートン法が用いられます。利回りを含む概算価格が実際の価格になるまで、利回りの値を変えて反復計算が最大100回実行されます。
  • ・1利払期間以内に償還が行われる場合、YIELD関数は次の計算式で表されます。
出典:Microsoft - Office サポート

YIELD関数の使用例

データ説明
2020-2-15受渡日
2030-10-15満期日
4.75%利率
9603.374現在価値
\10000償還価額
2頻度 (年 2 回)
0基準日数 (30 日/360 日)

上のデータに対する、債券の利回りを求めます。

=YIELD(A2,A3,A4,A5,A6,A7,A8)

=0.43%

関連する関数

  • PRICE関数:定期的に利息が支払われる証券(固定利付債)の額面100あたりの価格を返す関数を求める
  • ACCRINT関数:定期的に利息が支払われる証券(固定利付債)の未収利息額を返す関数を求める
  • YIELD関数:定期的に利息が支払われる証券(固定利付債)の利回りを返す関数を求める