情報処理装置、情報処理方法、及びプログラム
【課題】利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することを目的とする。
【解決手段】利払間隔の情報を記憶する記憶部を有する情報処理装置が、利払間隔の実日数に基づく期間年率を算出し、二分法により、期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とすることで課題を解決する。
【解決手段】利払間隔の情報を記憶する記憶部を有する情報処理装置が、利払間隔の実日数に基づく期間年率を算出し、二分法により、期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とすることで課題を解決する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年のグローバル化に伴って国際的に統一された会計基準の必要性が高まり、国際財務報告基準(International Financial Reporting Standards。以下、IFRSと称する。)が制定された。日本では、2009年6月に企業会計審議会により公表された「我が国における国際会計基準の取扱について(中間報告)」の中で、数年後にはIFRS強制適用(アダプション)の可能性が示されている。また一部の企業では既にIFRSの任意適用が開始されている。
IFRSに対応する際、金融機関を中心として金融商品の会計に大きな影響を受けることになる。例えば、IFRSでは、保有する金融商品についてIFRSに則った分類の見直しや償却原価や公正価値による測定などの対応が求められている。
【0003】
償却原価とは、債券(社債など)や債権(貸出金など)等の取得価額等による当初認識額と償還金額(元本あるいは額面金額等)との差額(以下、当該差額と称する。)が金利の調整に起因する場合、当該差額を満期までの期間に配分して調整した簿価である。ここで、償却原価を計算する場合、当該差額を保有期間に応じて期間按分する計算を行うことになるが、この期間按分の計算手法には実効金利法と定額法の2つがある。
日本の会計基準では、償却原価を計算する場合、原則として実効金利法で計算する必要があるが、継続適用を条件として定額法も認められている。定額法は、各期の調整額が一定となるように、即ち当該差額を満期までの期間で除して、当該差額を各期に配分する方法である。定額法では、比較的容易に償却原価を計算することが可能であり、日本では税法の関係上、定額法が一般的に用いられている。
しかしながら、IFRSでは定額法が認められておらず、実効金利法に基づいて償却計算を行う必要がある。実効金利法は、将来のキャッシュフロー(CF)に対して各期の利回りが一定(即ち各期の利息/償却原価が一定)となるように、当該差額を各期の損益に配分して帳簿価額を調整する方法である。なお、当該差額は、日本基準と同様にプラスの場合もマイナスの場合もあり得るが、IFRSでは実効金利により定率的に差額調整を行う必要がある。また、IFRSでは創出手数料・費用等も勘案する必要性がある。当該手数料・費用は、CFインの場合もCFアウトの場合もある。
【0004】
以下、IFRSベースの実効金利法に基づいて償却原価を計算する場合の想定される手法を説明する。前期の期末の償却原価を当期の期首の償却原価とし、期首の償却原価に計算日時点の金利差(実効利息と約定利息との差)を加算して償却原価を算出する。つまり、前の期から順に利息を積み上げていく方式(以下、積上げ方式と称する。)により各期の償却原価を算出することになる。
図10は、積上げ方式による償却原価の計算方法を説明するための図である。図10(A)は、金融機関が30億円の貸出を、手数料・費用60万円、約定金利5%、満期期間2年で行った場合の明細情報の例を示している。
【0005】
また、図10(B)に示すとおり、想定の積上げ方式によれば、期間1の各計算基準日の償却原価は、期間0の期末(この場合は貸出実行日)の償却原価(a)に各計算基準日の金利差(=実効利息−経過利息)を加算することによって算出される。また、期間1の期末の償却原価(b)は、期末時点の「実効利息−利息CF」を前期の期末(この場合は貸出実行日)の償却原価に加算する。本例は、金利差がプラスの場合であるが、金利差はマイナスの場合もある。なお、実効利息および約定利息は、下記の式によって求められる。
実効利息=(元本+手数料・費用)×実効金利×(利払日または貸出実行日から計算時点までの経過日数/1年の日数相当数)
経過利息=元本×約定金利×(利払日または貸出実行日から計算時点までの経過日数/1年の日数相当数)
なお、債券については、実効利息の計算において、元本を当初認識額に置き換え、経過利息の計算において、元本を額面に置き換える必要がある。
【0006】
また、上述の実効金利については事前に計算されている。ここで、実効金利について説明する。実効金利の基本計算式は、図12の(式A)に示すとおりである。(式A)中のirrが実効金利である。また、CFnは、n番目の将来キャッシュフローである。
図12の(式A)は、将来キャッシュフローが1年ごとに発生する場合の式であるが、利払いは必ずしも1年ごととは限らず、例えば半年毎の場合もあり、契約によって異なる。利払間隔が1年ごとではない場合、利払間隔を考慮した実効金利の計算式となる。より具体的には、利払間隔が1年未満である場合、利払間隔の年間日数に対する割合(期間年率と称する。)を実効金利に乗じて計算式をたてる必要がある。
一般的に、期間年率は、契約(約定)の内容によらず、一定の値が用いられる。期間年率を一定(例えばA/365)とした場合、実効金利は、図12の(式B)に示す実効金利計算関数f(x)を用いて求められる。
【0007】
図12の(式B)において、f(x)=0となるときのxが実効金利(irr)である。このf(x)=0となるようなxを求める場合、一般的にはニュートン法が用いられる。ニュートン法とは、接線の性質を利用してf(x)=0の解を数値計算により求めるものであり、高速に解を求めることができる。
図13は、ニュートン法の計算に係るフローチャートを示す図である。図13に示すとおり、ニュートン法においては、実効金利計算関数f(x)の微分関数f'(x)を求める必要がある。
ところで、一般的には期間年率として上述のとおり一定の値(例えばA/365)が用いられるが、より厳密に計算を行うためには、利払間隔の実日数に合わせた期間年率を用いて実効金利を計算することが考えられる。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】「銀行経理の実務」第6版 銀行経理問題研究会編 出版社きんざい(社団法人金融財政事情研究会)
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、利払間隔の実日数に合わせた期間年率を用いて、上記従来の手法によりニュートン法を用いて実効金利を計算しようとすると、微分関数の計算負荷が非常に高くなるという問題が発生する。
より具体的には、利払間隔の実日数に合わせた期間年率を用いる場合、実効金利計算関数f(x)は、図12の(式C)のように表される。
【0010】
図12の(式C)において、Day1、Day2…Daynは、利払間隔の実日数である。将来キャッシュフローの数が1つや2つであれば、f(x)の微分の計算負荷もそれほど大きくはならないが、通常、将来キャッシュフローは最大500程度となるため、f(x)の微分の計算負荷は非常に大きいものとなる。このため、実日数に合わせた期間年率を用いてニュートン法により実効金利を計算することは非常に困難である。
【0011】
本発明はこのような問題点に鑑みなされたもので、利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することを目的とする。
【課題を解決するための手段】
【0012】
そこで、本発明に係る情報処理装置は、利払間隔の情報を記憶する記憶部を有する情報処理装置であって、前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段と、を有することを特徴とする。
【0013】
ここで、「期間年率算出手段」は、例えば、後述する期間年率算出部111に対応する。「実効金利算出手段」は、例えば、後述する実効金利算出部112に対応する。
なお、本発明は、情報処理方法、プログラム、記録媒体、システム等としてもよい。
【発明の効果】
【0014】
本発明によれば、利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することができる。
【図面の簡単な説明】
【0015】
【図1】情報処理装置の構成の一例を示す図である。
【図2】データの一例を示す図である(貸出の例)。
【図3】実効金利算出処理に係るフローチャートの一例を示す図である。
【図4】解探索処理に係るフローチャートの一例を示す図である。
【図5】償却原価・内訳算出処理に係るフローチャートの一例を示す図である。
【図6】基準日の償却原価を求める仕組みの一例を示す図である。
【図7】貸出の償却原価等の計算結果の一例を示す図である(キャッチアップ差なし)。
【図8】貸出の償却原価等の計算結果の一例を示す図である(キャッチアップ差あり)。
【図9】解探索処理に係るフローチャートの一例を示す図である。
【図10】想定の技術を説明するための図である(積上げ方式)。
【図11】想定の技術を説明するための図である(償却原価の内訳のイメージ)。
【図12】想定の技術を説明するための図である。
【図13】想定の技術を説明するための図である(ニュートン法)。
【図14】データの一例を示す図である(債券の例)。
【図15】債券の償却原価等の計算結果の一例を示す図である(キャッチアップ差なし)。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について図面に基づいて説明する。
【0017】
<第1の実施形態>
本実施形態は、償却原価の算出に関するものである。本実施形態では、基準日とは計算を行う日のことであり、利払日とは利息等を受け取る日(ただし契約内容等により元本等の償還が発生した場合は、利息調整が行われるとみなして、元本等の償還が発生した日は利払日となる。)のことである。なお、基準日=利払日のこともある。
はじめに、本実施形態に係る情報処理装置100について図1を用いて説明する。図1(A)は、情報処理装置100のハードウェア構成の一例を示す図である。情報処理装置100は、コンピュータの一例であり、制御装置101、記憶装置102、インタフェース装置103、入力装置104、及び出力装置105を含んで構成される。各装置は、バス106を介して通信可能に接続されている。
【0018】
制御装置101は、CPU(Central Processing Unit)等であり、必要に応じて、記憶装置102からプログラムを読み出し、プログラムを実行することで、情報処理装置100の機能、後述するフローチャートに係る処理等を実現する。なお、情報処理装置100の機能、後述するフローチャートに係る処理の一部、又は全部を専用のハードウェアを用いて構成してもよい。
記憶装置102は、ROM(Read Only Memory)、RAM(Random Access Memory)、HD(Hard Disk)等の記憶部であり、例えば、情報処理装置100の電源投入時に最初に読み込まれるプログラム等を記憶する。また、例えば、記憶装置102は、情報処理装置100のメインメモリであり、制御装置101で用いられる各種のデータを一時記憶し、テーブル等の各種のデータを記憶する。
【0019】
インタフェース装置103は、情報処理装置100をLAN等のネットワークに接続する。入力装置104は、情報処理装置100の操作者(又はユーザ)が操作するキーボード、マウス等を含んで構成され、キーボード、マウス等の操作(ユーザ操作)に応答して情報処理装置100に各種の操作情報等を入力する。出力装置105は、情報処理装置100のユーザが利用するディスプレイ等を含んで構成され、各種の情報(又は画面)等をディスプレイに表示する。
なお、上述したプログラムなどの各種のデータは、例えば、CD−ROM等の記録媒体によって情報処理装置100に提供されてもよいし、ネットワーク等を介してダウンロードされてもよい。例えば、記録媒体からプログラムが提供される場合は、プログラムのインストールを指示するユーザ操作に応答して、プログラムが記録媒体から記録媒体ドライブ装置(図示せず。)を介して記憶装置102に格納される。
【0020】
図1(B)は、情報処理装置100の機能構成(モジュール)の一例を示す図である。情報処理装置100は、実効金利計算部110、償却原価計算部120、及び内訳計算部130を有する。
実効金利計算部110は、期間年率算出部111及び実効金利算出部112を有する。期間年率算出部111は、期間年率を算出する。実効金利算出部112は、期間年率算出部111で算出された期間年率を用いて実効金利を算出する。
償却原価計算部120は、将来キャッシュフロー展開部121、割引現在価値算出部122、及び償却原価算出部123を有する。将来キャッシュフロー展開部121は、基準日時点の最新の契約内容に基づいて将来キャッシュフローを展開する。割引現在価値算出部122は、将来キャッシュフロー展開部121で展開された将来キャッシュフローから、将来に受け取れる価値が現在受け取れたとしたときの価値を示す割引現在価値を利払日について算出する。償却原価算出部123は、実効金利算出部112で算出された実効金利、割引現在価値算出部122で算出された割引現在価値などから、基準日の償却原価を算出する。
なお、上述の将来キャッシュフローは取得した債券、債権等について、期限前償還、変動金利の金利見直し、延滞などによって、変更になることがあり、当該要素を勘案して将来キャッシュフローを見積もる必要がある。
内訳計算部130は、金利差算出部131、キャッチアップ差算出部132、及び償却原価差算出部133を有する。金利差算出部131は、償却原価算出部123で算出された償却原価から基準日の金利差を算出する。キャッチアップ差算出部132は、償却原価算出部123で算出された償却原価から基準日のキャッチアップ差を算出する。償却原価差算出部133は、償却原価算出部123で算出された償却原価から償却原価差を算出する。なお、各モジュールの詳細については後述する。
【0021】
図2は、記憶装置102に記憶されるデータの一例(明細情報)を示す図である。明細情報は、元本、手数料・費用、約定金利、満期期間、利払間隔、実効金利の情報を含んで構成される。元本、手数料・費用、約定金利、満期期間、及び利払間隔の情報は、契約の内容であり、適宜の方法及びタイミングで情報処理装置100に入力され、各約定明細に対応づけて記憶装置102に格納される。実効金利の情報は、実効金利計算部110により、原則として最初の基準日において契約の内容をもとに計算され、記憶装置102に格納される。
以下では、手数料・費用「60万円」、約定金利「5%」、満期期間「2年」、利払間隔「6M(6カ月)」で、元本「30億円」が2009/3/31に貸し出された場合を例に挙げて適宜説明する。
【0022】
まず、実効金利について説明する。図3は、実効金利を算出する実効金利算出処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、実効金利計算部110は、計算対象の約定明細について、約定金利、元本(簿価残高)、手数料・費用、利払間隔、及び満期期間の情報を記憶装置102から読み出す(S10)。
続いて、実効金利計算部110は、約定金利、元本、利払間隔、及び満期期間の情報をもとに将来キャッシュフローを利息CF等に展開し、元本および手数料・費用の総額を現時点のCFとして立てる(S15)。この際、実効金利計算部110は、各利息CFを下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。
利息CF=元本×約定金利×期間年率
上述の利息CFの計算式は期限前償還等将来の見積りを考慮していないケースであり、将来の見積りを勘案した場合、上述の契約の内容に将来の見積りを加味する。例えば、下記の式により計算される。
将来見積勘案後利息CF=元本×約定金利×期間年率×見積掛目
ここで、見積掛目(将来の見積りに関する情報)は、期限前償還等を勘案した係数であり、記憶装置102に記憶されている。上述の式は一例であり、これに限られるものではない。
ここで、期間年率の計算では、図12の(式B)に示すような利払間隔に基づいた一定の値(C/365、例えば半年であれば一律180日)ではなく、利払間隔の実日数が用いられ、実効金利計算部110は、期間年率を下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。このとき、実効金利計算部110は、利払間隔の情報をもとに利息CF発生時における前回の利払日(又は貸出実行日)からの経過日数を算出する。
期間年率=前回の利払日(又は貸出実行日)からの経過日数/1年の日数相当数(1年の日数相当数が約定の内容により異なるが、以下では便宜上365日と見なす。)
前記において1年の日数相当数を365日にて記述しているがこれは一例であり、本実施形態においては1年の日数相当数について約定の内容に従った全てのケースを適用範囲として想定している。また、1年の日数相当数も適宜の方法及びタイミングで情報処理装置100に入力され、記憶装置102に格納される。
なお、前記手数料・費用は、一般的にCFインの場合もCFアウトも場合もある。
【0023】
続いて、実効金利計算部110は、現時点のネットのCFアウトと将来キャッシュフロー(CFイン。例えば、利息、元本等)とが等価になるように関数(実効金利計算関数f(x))を立て、二分法により、実効金利計算関数f(x)=0の解を求める(S20)。
より具体的には、実効金利計算部110は、下記の式においてf(x)=0となるxを求める。
【数1】
上述の式において、CFnは、n番目のCFであり、Daynは、前回の利払日からn番目のCFが発生するまでの経過日数(即ち利払間隔の実日数)である。また、Day1/365、Day2/365・・・は、利払間隔の実日数の期間年率である。
【0024】
一般的には、実効金利関数f(x)の数値解析には、図13に示すニュートン法が用いられてきたが、より精緻に実効金利を求めるために利払間隔の実日数の期間年率を用いる場合、実効金利計算関数f(x)の微分関数f’(x)が複雑になり、計算が困難となる。そこで、本実施形態では、二分法を用いて数値解析を行うこととする。なお、解探索処理の詳細については図4を参照して説明する。
続いて、実効金利計算部110は、実効金利xを記憶装置102に格納し(S25)、処理を終了する。
【0025】
図4は、解探索処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、実効金利計算部110は、実効金利計算関数f(x)を生成し、解の初期存在範囲および解の許容誤差(許容範囲)を記憶装置102から読み出す(S105)。なお、本実施形態では、解の初期存在範囲および解の許容誤差の情報については、記憶装置102に事前に登録されている。続いて、実効金利計算部110は、解の存在範囲の中間値を求め、求めた中間値を実効金利計算関数f(x)に代入する(S110)。
続いて、実効金利計算部110は、実効金利計算関数f(x)の解がゼロ以上であるか否かを判断する(S115)。このとき、実効金利計算部110は、ゼロ以上であると判断した場合、S120に処理を移し、他方、ゼロより小さいと判断した場合、S125に処理を移す。
【0026】
S120では、実効金利計算部110は、解の存在範囲の下限値を中間値で置き換える。S125では、実効金利計算部110は、解の存在範囲の上限値を中間値で置き換える。
続いて、実効金利計算部110は、中間値における実効金利計算関数f(x)の値の絶対値が解の許容誤差内(規定値より小さい値)であるか否かを判断する(S130)。このとき、実効金利計算部110は、許容誤差内であると判断した場合、S135に処理を移し、他方、許容誤差外であると判断した場合、S110に処理を移す。
S135では、実効金利計算部110は、中間値を実効金利(irr)の値と決定し、処理を戻す。
【0027】
ここで、解の初期存在範囲が「2%、100%」であり、解の許容誤差が「10-4」である場合を例に挙げて解探索処理を説明する。
まず、S110では、中間値として(2+100)/2=51%が求められる。そして、S115では、f(51%)<0であることから、NOであると判断される。そして、S125では、解の存在範囲の上限値「100%」が「51%」に書き換えられる。そして、S130では、|f(51%)|≧10-4であることから、NOであると判断される。そして、S110では、中間値として(2+51)/2=26.5%が求められる。
このように、S110〜S130の処理が繰り返され、中間値が「4.989368645095」であるとき、f(4.989368645095)=0.000055となり、|f(4.989368645095)|<10-4であることから、S130では、YESであると判断される。そして、S135では、実効金利の値として「4.989368645095」が決定される。
【0028】
次に、償却原価、及び内訳(金利差、キャッチアップ差、償却原価差)について図5を用いて説明する。図5は、償却原価、及び内訳を算出する償却原価・内訳算出処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、償却原価計算部120は、基準日以降の将来キャッシュフローを展開する(S205)。なお、償却原価計算部120は、上述の実効金利計算部110と同様に、基準日以降の将来キャッシュフロー(各利息CF「元本×約定金利×期間年率」等)を計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。また、後述のように契約変更によって例えば早期返済することになった場合には将来キャッシュフローが変更になるため、将来キャッシュフローを展開する計算は、基準日時点の最新の契約内容に基づいて行われる。
【0029】
続いて、償却原価計算部120は、基準日直前の利払日の割引現在価値を求める(S210)。より具体的には、償却原価計算部120は、記憶装置102から元本、各利息CF、実効金利、期間年率を読み出し、利払日の割引現在価値を下記の式により計算する。償却原価計算部120は、計算した割引現在価値を計算対象の約定明細に対応付けて記憶装置102に格納する。
【数2】
ここで、CF(i)は、i番目のCFである。また、T(j)は、j−1番目のCFが発生した日からj番目のCFが発生した日までの期間年率であり、「j−1からjまでの日数相当数/1年の日数相当数」が設定される。なお、j=1の場合は、計算基準日から1番目のCFが発生した日までとなる。また、irrは、実効金利である。
【0030】
例えば、利払日2009/9/30の割引現在価値は、2010/3/31のCF×DF+2010/9/30のCF×DF+2011/3/31のCF×DFとなる。DF(ディスカウントファクタ)とは、CFや価額等の将来価値を現在価値等に割り引くために乗ずる係数である。
なお、利払日時点の利息CFを将来キャッシュフローに含めて表現することも可能である。この場合、利払日2009/9/30の割引現在価値は、2009/9/30のCF×DF+2010/3/31のCF×DF+2010/9/30のCF×DF+2011/3/31のCF×DF−経過利息となる。
【0031】
続いて、償却原価計算部120は、基準日の償却原価を求める(S215)。より具体的には、償却原価計算部120は、記憶装置102から読み出した基準日直前の利払日の割引現在価値を用いて、基準日の償却原価SNNを下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。なお、SNNは、基準日N時点で計算したN時点の償却原価を意味している。
【数3】
なお、[数3]の期間年率は、基準日Nの直前の利払日から基準日Nまでの経過日数/365であり、例えば、基準日が2009/10/31である場合、「前回利払日2009/9/30から基準日2009/10/31までの経過日数/365」で計算される。
【0032】
ここで、基準日の償却原価を求める償却原価算出処理(S205からS215までの処理)の仕組み(特質)について図6を用いて説明する。
上述のS205では基準日以降の将来キャッシュフローを展開しているが、これは、CFの見積りに変更があった場合、当該処理において変更が反映されることを意味する。
また、本実施形態では、会計上により経過利息が期間による単利按分で算出されることに鑑み、経過利息が0である時点の償却原価については複利ベースで求め、経過利息が0でない時点の償却原価については会計に合わせて単利按分で求める。
より具体的には、基準日直前の利払日においては経過利息が「0」であるので、S210において複利ベースの割引現在価値(複利法で割引現在価値)が求められる。なお、これは、基準日直前の利払日までは割引現在価値方式で計算することにより、日々の積上げが不要になることを意味する。また、基準日においては経過利息が「0」でないので、S215において基準日直前の利払日から実効金利を単利按分して(単利法で)現時点の償却原価が求められる。
上述の構成を採用することで、利払間隔に合わせた精緻な償却原価の計算を実現している。
【0033】
続いて、償却原価計算部120は、次の基準日の償却原価を求める(S220)。より具体的には、償却原価計算部120は、基準日直前の利払日の割引現在価値を用いて、次の基準日の償却原価SNN+1を下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。なお、SNN+1は、基準日N時点で計算した次の基準日N+1時点の償却原価を意味している。
【数4】
上述の[数4]および図5では、基準日と次の基準日との間に利払いが発生しないケースを想定しているが、基準日と次の基準日との間に利払日を挟んでいる場合には、次の基準日の償却原価の算出処理は、上述の挟んでいる直前の利払日の割引現在価値を求め、当該割引現在価値を用い、次の基準日の償却原価を算出する処理になる。すなわち、上記の[数4]の「基準日の直前の利払日の割引現在価値」は「次の基準日の直前の利払日の割引現在価値」となる。
なお、[数4]の期間年率は、基準日Nの直前の利払日(基準日Nと基準日N+1との間に利払がある場合には基準日N+1の直前の利払日となる。)から基準日N+1までの経過日数/365であり、例えば、基準日が2009/10/31である場合、「前回利払日2009/9/30から次の基準日2009/11/30までの経過日数/365」で計算される。
【0034】
次に、内訳計算部130は、S225において基準日の償却原価の内訳を算出する(内訳算出処理)。より具体的には、内訳計算部130は、基準日の償却原価SNNと償却原価SNN+1とに加えて、さらに、前の基準日に同様の計算により求めた前の基準日の償却原価SN-1N-1と償却原価SN-1Nとを用いて、基準日の償却原価の内訳を計算する。
SN-1N-1は、基準日Nの1つ前の基準日N−1時点で計算した基準日N−1時点の償却原価であり、SN-1Nは、基準日Nの1つ前の基準日N−1時点で計算した基準日N時点の償却原価であり、何れも計算対象の約定明細に対応付けて記憶装置102に格納されている。
より具体的には、内訳計算部130は、記憶装置102からSNNおよびSN-1N-1を読み出して償却原価差をSNN−SN-1N-1により求める(S2251)。また、内訳計算部130は、記憶装置102からSN-1NおよびSN-1N-1を読み出して金利差をSN-1N−SN-1N-1により求める(S2252)。また、内訳計算部130は、記憶装置102からSNNおよびSN-1Nを読み出してキャッチアップ差をSNN−SN-1Nにより求める(S2253)。
なお、S2251、S2252、S2253の処理の順序は、上述の順序に限られるものではなく、適宜の順序を採用できる。
上述の処理により、償却原価差=金利差+キャッチアップ差として、償却原価差の内訳が導出される。
【0035】
ここで、償却原価の内訳について図7及び図8に示す計算結果を例に挙げて説明する。図7は、将来キャッシュフローの変更がない場合の償却原価等の計算結果の一例を示す図であり、図8は、将来キャッシュフローの変更がある場合の償却原価等の計算結果の一例を示す図である。また、図7(A)は、2009/9/30における計算結果の一例を示す図であり、図7(B)は、2009/10/31における計算結果の一例を示す図である。また、図8(A)は、2009/10/31における計算結果の一例を示す図であり、図8(B)は、2009/11/30における計算結果の一例を示す図である。
【0036】
まず、将来キャッシュフローの変更がない場合について図7を参照して説明する。図7に示す例では、図7(A)の計算を実行した基準日(2009/9/30)の時点と図7(B)の計算を実行した基準日(2009/10/31)の時点とで将来キャッシュフローの変更がない。なお、この場合の利払日は、2009/9/30であり、2009/9/30の割引現在価値としては、S210において「3,000,455,102」が算出される。また、図7(B)に示すとおり、基準日2009/10/31の償却原価SNNとしては、S215において「3,000,429,942」が算出される。また、次の基準日2009/11/30の償却原価SNN+1としては、S220において「3,000,405,594」が算出される。
また、図7(A)に示すとおり、前の基準日2009/9/30においては、同様に、前の基準日2009/9/30の償却原価SN-1N-1としては、S215において「3,000,455,102」が算出されている。また、その次の基準日2009/10/31の償却原価SN-1Nとしては、S220において「3,000,429,942」が算出されている。
【0037】
したがって、基準日2009/10/31の償却原価差としては、SNN「3,000,429,942」−SN-1N-1「3,000,455,102」により「-25,160」が算出される。
また、基準日2009/10/31の金利差としては、SN-1N「3,000,429,942」−SN-1N-1「3,000,455,102」により「-25,160」が算出される。
また、基準日2009/10/31のキャッチアップ差としては、SNN「3,000,429,942」−SN-1N「3,000,429,942」により「0」が算出される。
【0038】
次に、将来キャッシュフローの変更がある場合(例えば2009/11/1に返済計画に変更が発生し早期返済が決定した場合)について図8を用いて説明する。図8に示す例では、図8(A)の計算を実行した基準日(2009/10/31)の時点では早期返済の決定前であり、2011/3/31に元本の返済が行われると共に利息CFが発生しているが、図8(B)の計算を実行した基準日(2009/11/30)の時点では早期返済の決定後であり、2010/9/30に元本の早期返済が行われることで、2011/3/31に利息CFが発生していない。なお、この場合の利払日は、2009/9/30であり、2009/10/31に計算した2009/9/30の割引現在価値としては、S210において「3,000,455,102」が算出され、2009/11/30に計算した2009/9/30の割引現在価値としては、S210において「3,000,307,391」が算出される。また、図8(B)に示すとおり、基準日2009/11/30の償却原価SN+1N+1としては、S215において「3,000,256,651」が算出される。また、次の基準日2009/12/31の償却原価SN+1N+2としては、S220において「3,000,230,866」が算出される。
また、図8(A)に示すとおり、前の基準日2009/10/31においては、前の基準日2009/10/31の償却原価SNNとしては、S215において「3,000,429,942」が算出されている。また、その次の基準日2009/11/30の償却原価SNN+1としては、S220において「3,000,405,594」が算出されている。
【0039】
したがって、基準日2009/11/30の償却原価差としては、SN+1N+1「3,000,256,651」−SNN「3,000,429,942」により「-173,291」が算出される。
また、基準日2009/11/30の金利差としては、SNN+1「3,000,405,594」−SNN「3,000,429,942」により「-24,348」が算出される。
また、基準日2009/11/30のキャッチアップ差としては、SN+1N+1「3,000,256,651」−SNN+1「3,000,405,594」により「-148,943」が算出される。
【0040】
本実施形態によれば、上述のように将来キャッシュフローが変更されたとしても、同様の処理で、変更された以降の基準日の償却原価、及び償却原価の内訳を算出することができる。
また、想定の手法では、償却原価を計算する際、前回の基準日の償却原価に今回の金利差を加えて今回の償却原価を求めていた。即ち、計算は、積上げ金利差を算出し、積上げ金利差+前回の償却原価により今回償却原価を算出する順序で行われる。
しかしながら、本実施形態では、将来キャッシュフローから直前の利払日の割引現在価値を求め、その割引現在価値に基づいて、金利差の積上げを行わずに、各基準日の償却原価を算出する。故に、本実施形態によれば、積上げ金利差の算出を行う必要がない。
【0041】
ただし、貸出等の実務においては、金利差を把握しておきたい。そこで、本実施形態では、基準日Nにおける金利差を、基準日N−1の時点で算出した基準日Nの償却原価と基準日N−1の償却原価との差により算出している。これにより、金利差の積上げを行っていないにもかかわらず、金利差を把握することができるようになる。また、本実施形態では、上述のように、キャッチアップ差も容易に計算可能である。また、上述のように、償却原価差をおさえることもできる。
このように、本実施形態では、将来キャッシュフローの割引現在価値に基づいて償却原価を算出するので、過去の分を意識せずに将来キャッシュフローのみを勘案して償却原価の内訳を算出することができる。なお、利払いの予定と実績との差についてはキャッチアップ差で吸収するという前提に立っている。
即ち、本実施形態によれば、将来キャッシュフローの割引現在価値に基づいて基準日と次の基準日との償却原価が基準日ごとに求められるので、金利差、キャッチアップ差、及び償却原価差を容易に得ることができる。
【0042】
<第2の実施形態>
第1の実施形態では、基準日の償却原価を基準日直前の利払日の割引現在価値により計算(基準日の償却原価=基準日直前の利払日の償却原価×(1+実効金利利率×利息計算間隔「前回利払日〜基準日の実日数/365」)−経過利息を計算)し、より具体的には下記の式により計算したが、この算出方法に限られるものでない。
【数5】
【0043】
例えば、基準日の償却原価を基準日直後の利払日の割引現在価値により計算(基準日の償却原価=(基準日直後の利払日の償却原価÷(1+実効金利利率×利払間隔「日数」)×(1+実効金利利率×利息計算間隔「前回利払日〜基準日の実日数/365」)−経過利息を計算)し、より具体的には下記の式により計算してもよい。
【数6】
【0044】
また、例えば、基準日の償却原価を基準日直前の利払日の割引現在価値と基準日直後の利払日の割引現在価値との線形補間により計算し、より具体的には下記の式により計算してもよい。
【数7】
【0045】
なお、本実施形態のその他の構成は、第1の実施形態の構成と同一であるので、その説明を省略する。
本実施形態によれば、第1の実施形態と同様の効果が得られる。なお、上述した何れの計算式においても、基準日直前の利払日および基準日直後の利払日までは割引現在価値方式で計算されているので、日々の積上げが不要である。
【0046】
<第3の実施形態>
二分法は、第1の実施形態で説明したように、解の上限値と下限値とを設定しておき、これらの中間値を計算し、計算した中間値における実効金利計算関数f(x)の値に応じて、上限値と下限値との何れかを中間値と置き換えることを繰り返す方法である。そして、中間値における実効金利計算関数f(x)の値が所定の閾値(許容誤差σ)よりも小さくなったとき(即ちf(中間値)≒0のとき)、その中間値を実効金利としている。
しかしながら、2分法は、一般的にニュートン法よりも収束するまでに時間がかかるので、初期の上限値(初期上限値)、及び初期の下限値(初期下限値)をより適切に設定することが好適である。
【0047】
そこで、本実施形態では、(i)満期日のDF(ディスカウントファクタ、計算式については後述する。)の分母がゼロ相当の規定値未満にならないように定めた値、(ii)実効金利の算出時の複利サイクルあたりのDFの分母がゼロ相当の規定値未満にならないように定めた値、(iii)予め定めた値のうち、最大となる値(最大の初期値)を初期下限値(IRRmin(0))として設定する。なお、(iii)の予め定めた値としては、一般的には、十分小さい値-10(実効金利が-1000%以下になることは業務上、想定されない)を利用し、実績の値を考慮した上でパフォーマンス向上の目的として変更可能である。
この構成によれば、実効金利を算出するための必要条件(DFの分母がゼロ相当の規定値以上)を満たす最大の初期下限値を取得できることから、探索の範囲を最低限に抑えられ、結果として、2分法の計算を高速に収束させることができるようになる。
なお、本実施形態では、第1の実施形態の構成と同一の構成については同一の符号を用いてその説明を適宜省略する。
【0048】
ここで、DFは、以下に示す式のように表される。なお、本来DFは[数2]のように表されるが、2分法により解の初期下限値を算出するために利用する算出式としては、[数2]の近似式[数8]を用いる。
【数8】
ここで、Tは、基準日から満期日までの期間年率である。
【0049】
故に、(i)満期日のDF分母がゼロ相当の規定値δ未満にならないように定めた値は、下記の式のように表される。
【数9】
ここで、Tは、基準日から満期日までの期間年率である。
【0050】
また、(ii)実効金利の算出時の複利サイクルあたりのDFの分母がゼロ相当の規定値δ未満にならないように定めた値は、下記の式のように表される。
【数10】
【0051】
次に、本実施形態の解探索処理について説明する。図9は、解探索処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、実効金利計算部110は、初期値を設定する(S305)。より詳細に説明すると、実効金利計算部110は、上述の(i)〜(iii)の値のうち、最大となる値を初期下限値IRRmin(0)として設定する。
【0052】
また、実効金利計算部110は、初期上限値IRRmax(0)については、通常考えられる最大値(=100%)とエラーを防ぐために設けた値(設定ファイルに記憶された値)との2種類を利用して、初期上限値を定める。より具体的には、実効金利計算部110は、初期上限値IRRmax(0)の候補である第1の値を100%とし、f(IRRmin(0))とf(IRRmax(0)=100%)とが同符号である場合は、初期上限値の候補である第2の値(設定ファイルに記憶させた値)で初期上限値(100%)を置き換える。なお、実効金利計算部110は、初期中間値IRR(0)を[初期下限値IRRmin(0)+初期上限値IRRmax(0)]/2により算出する。
なお、上述f(IRR)は、[数1]のxにIRRを代入した値を意味する。下記のf(IRR)についても本記述と同様である。
【0053】
続いて、実効金利計算部110は、実効金利計算関数f(IRR(k))の値の絶対値が解の許容誤差σより小さいか否かを判断する(S310)。このとき、実効金利計算部110は、小さいと判断した場合、S315に処理を移し、他方、小さいと判断しなかった場合、S320に処理を移す。
S315では、実効金利計算部110は、中間値IRR(k)を実効金利(irr)として決定し、処理を戻す。
S320では、実効金利計算部110は、下限値IRRmin(k)と上限値IRRmax(k)とがIRR精度で一致しているか否かを判断する。IRR精度は、例えば、小数点以下n桁(実効金利が格納されるテーブルのフィールドの桁数等)を示す値であり、設定ファイルに記憶されている。この場合、下限値IRRmin(k)と上限値IRRmax(k)との各々を小数点以下n桁で丸めたものが一致するか否かが判断される。
このとき、実効金利計算部110は、一致していると判断した場合、S315に処理を移し、他方、一致していないと判断した場合、S325に処理を移す。
【0054】
S325では、実効金利計算部110は、試行回数kが最大試行回数以上になったか否かを判断する。このとき、実効金利計算部110は、試行回数kが最大試行回数以上であると判断した場合、S330に処理を移し、他方、試行回数kが最大試行回数未満であると判断した場合、S335に処理を移す。
S330では、実効金利計算部110は、中間値IRR(k)を実効金利(irr)として決定し、警告情報(中間値IRR(k)等)を出力装置105に出力し、処理を戻す。
【0055】
S335では、実効金利計算部110は、f(IRR(k))がf(IRRmin(k))と同符号であるか否かを判断する。このとき、実効金利計算部110は、同符号であると判断した場合、S340に処理を移し、他方、異符号であると判断した場合、S345に処理を移す。
S340では、実効金利計算部110は、次の下限値IRRmin(k+1)を中間値IRR(k)に更新する。なお、実効金利計算部110は、次の上限値IRRmax(k+1)についてはIRRmax(k)を用いる。
S345では、実効金利計算部110は、次の上限値IRRmax(k+1)を中間値IRR(k)に更新する。なお、実効金利計算部110は、次の下限値IRRmin(k+1)についてはIRRmin(k)を用いる。
続いて、実効金利計算部110は、次の中間値IRR(k+1)を求める(S350)。より具体的には、次の中間値IRR(k+1)を、{次の下限値IRRmin(k+1)+次の上限値IRRmax(k+1)}/2により算出する。続いて、実効金利計算部110は、試行回数kに「1」を加算し、S310に処理を移す。
【0056】
なお、本実施形態では、収束判定として、S320及びS325の判定を更に示したが、この構成に限られるものではない。例えば、S320及びS325の何れか一方の判定を採用してもよいし、何れの判定も採用しなくてもよい。
上述した構成によれば、利払日間の実日数を考慮した場合の実効金利の計算負荷をより低減することができる。なお、本実施形態によれば、第1の実施形態と同様の効果も得られる。
【0057】
<第4の実施形態>
上述した実施形態では貸出を例に挙げて説明しているが、貸出の例に限られるものではない。例えば、債券の場合は、(1)購入額等の当初認識額(手数料・費用を除く。)と額面等との差額と、(2)手数料・費用を、定額法でなく実効金利によって償却することになる。
また、債券の場合は、購入額等の当初認識額(手数料・費用を除く。)と手数用・費用とをネットしたCFとをCFアウトとし、額面とクーポン(利息)とをCFインとして、実効金利により前記(1)と(2)との差額を償却する。
なお、上述の貸出の例では、前記(1)の当初認識額と額面とは、何れも元本にあたり、両者に差額はない場合が多い。
【0058】
CFアウトの情報については、当初認識額(貸出の場合は元本)と手数料・費用となり、CFインの情報の1つとして、額面(貸出の場合は元本)となる。
例えば、図14に示すように、手数料・費用「100万円」、額面「30億円」、約定金利「5%」、満期期間「2年」、利払間隔「6M(6カ月)」で、当初認識額「27億」が2009/3/31に認識された約定明細とする。この場合、債券の償却原価等の計算結果は、図15のようになる。
【0059】
ここで、実効金利、償却原価の算出については貸出の場合とほぼ同じである。償却原価の算出において、図15に示すように、当初認識額と額面とに差額があるため、ネットCFアウトの計算式は貸出のものと異なり、ネットCFアウトは、当初認識額+手数料・費用により算出される。
また、上述した実施形態の貸出の例の償却原価計算式([数3]〜[数6])において、「元本」を「額面」に置き換えると、債券の償却原価の計算式となる。他の実効金利算出、利息CFの算出に係わる記述も同様であり、「元本」を「額面」に読み替えると、債券の記述となる。
なお、本実施形態では、債券1銘柄を1約定明細分購入の例で記述しているが、この例に限られるものではない。
【0060】
<その他の実施形態>
上述した実施形態では、プレーンな貸出や債券を例に挙げて説明したが、他の債権、他の債券、借入金、預金、発行社債等にも適用可能である。その際のキャッシュフローの情報等は契約の内容等により異なる。なお、資産でなく負債の場合はCFインとCFアウトが逆になる。
また、手数料・費用は、当初のCF情報の一部として記述しているが、これに限られるものではない。
また、実効金利の算出は、最初の基準日として記述しているが、これに限られるものではない。
また、上述した実施形態の適用は、金融機関に限られるものではない。
また、上述した実施形態の構成は、適宜組み合わせて採用できる。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
上述した構成によれば、償却原価の計算負荷をより低減することができる。また、上述した構成によれば、利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することができる。
【符号の説明】
【0061】
101 制御装置
102 記憶装置
103 インタフェース装置
104 入力装置
105 出力装置
106 バス
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年のグローバル化に伴って国際的に統一された会計基準の必要性が高まり、国際財務報告基準(International Financial Reporting Standards。以下、IFRSと称する。)が制定された。日本では、2009年6月に企業会計審議会により公表された「我が国における国際会計基準の取扱について(中間報告)」の中で、数年後にはIFRS強制適用(アダプション)の可能性が示されている。また一部の企業では既にIFRSの任意適用が開始されている。
IFRSに対応する際、金融機関を中心として金融商品の会計に大きな影響を受けることになる。例えば、IFRSでは、保有する金融商品についてIFRSに則った分類の見直しや償却原価や公正価値による測定などの対応が求められている。
【0003】
償却原価とは、債券(社債など)や債権(貸出金など)等の取得価額等による当初認識額と償還金額(元本あるいは額面金額等)との差額(以下、当該差額と称する。)が金利の調整に起因する場合、当該差額を満期までの期間に配分して調整した簿価である。ここで、償却原価を計算する場合、当該差額を保有期間に応じて期間按分する計算を行うことになるが、この期間按分の計算手法には実効金利法と定額法の2つがある。
日本の会計基準では、償却原価を計算する場合、原則として実効金利法で計算する必要があるが、継続適用を条件として定額法も認められている。定額法は、各期の調整額が一定となるように、即ち当該差額を満期までの期間で除して、当該差額を各期に配分する方法である。定額法では、比較的容易に償却原価を計算することが可能であり、日本では税法の関係上、定額法が一般的に用いられている。
しかしながら、IFRSでは定額法が認められておらず、実効金利法に基づいて償却計算を行う必要がある。実効金利法は、将来のキャッシュフロー(CF)に対して各期の利回りが一定(即ち各期の利息/償却原価が一定)となるように、当該差額を各期の損益に配分して帳簿価額を調整する方法である。なお、当該差額は、日本基準と同様にプラスの場合もマイナスの場合もあり得るが、IFRSでは実効金利により定率的に差額調整を行う必要がある。また、IFRSでは創出手数料・費用等も勘案する必要性がある。当該手数料・費用は、CFインの場合もCFアウトの場合もある。
【0004】
以下、IFRSベースの実効金利法に基づいて償却原価を計算する場合の想定される手法を説明する。前期の期末の償却原価を当期の期首の償却原価とし、期首の償却原価に計算日時点の金利差(実効利息と約定利息との差)を加算して償却原価を算出する。つまり、前の期から順に利息を積み上げていく方式(以下、積上げ方式と称する。)により各期の償却原価を算出することになる。
図10は、積上げ方式による償却原価の計算方法を説明するための図である。図10(A)は、金融機関が30億円の貸出を、手数料・費用60万円、約定金利5%、満期期間2年で行った場合の明細情報の例を示している。
【0005】
また、図10(B)に示すとおり、想定の積上げ方式によれば、期間1の各計算基準日の償却原価は、期間0の期末(この場合は貸出実行日)の償却原価(a)に各計算基準日の金利差(=実効利息−経過利息)を加算することによって算出される。また、期間1の期末の償却原価(b)は、期末時点の「実効利息−利息CF」を前期の期末(この場合は貸出実行日)の償却原価に加算する。本例は、金利差がプラスの場合であるが、金利差はマイナスの場合もある。なお、実効利息および約定利息は、下記の式によって求められる。
実効利息=(元本+手数料・費用)×実効金利×(利払日または貸出実行日から計算時点までの経過日数/1年の日数相当数)
経過利息=元本×約定金利×(利払日または貸出実行日から計算時点までの経過日数/1年の日数相当数)
なお、債券については、実効利息の計算において、元本を当初認識額に置き換え、経過利息の計算において、元本を額面に置き換える必要がある。
【0006】
また、上述の実効金利については事前に計算されている。ここで、実効金利について説明する。実効金利の基本計算式は、図12の(式A)に示すとおりである。(式A)中のirrが実効金利である。また、CFnは、n番目の将来キャッシュフローである。
図12の(式A)は、将来キャッシュフローが1年ごとに発生する場合の式であるが、利払いは必ずしも1年ごととは限らず、例えば半年毎の場合もあり、契約によって異なる。利払間隔が1年ごとではない場合、利払間隔を考慮した実効金利の計算式となる。より具体的には、利払間隔が1年未満である場合、利払間隔の年間日数に対する割合(期間年率と称する。)を実効金利に乗じて計算式をたてる必要がある。
一般的に、期間年率は、契約(約定)の内容によらず、一定の値が用いられる。期間年率を一定(例えばA/365)とした場合、実効金利は、図12の(式B)に示す実効金利計算関数f(x)を用いて求められる。
【0007】
図12の(式B)において、f(x)=0となるときのxが実効金利(irr)である。このf(x)=0となるようなxを求める場合、一般的にはニュートン法が用いられる。ニュートン法とは、接線の性質を利用してf(x)=0の解を数値計算により求めるものであり、高速に解を求めることができる。
図13は、ニュートン法の計算に係るフローチャートを示す図である。図13に示すとおり、ニュートン法においては、実効金利計算関数f(x)の微分関数f'(x)を求める必要がある。
ところで、一般的には期間年率として上述のとおり一定の値(例えばA/365)が用いられるが、より厳密に計算を行うためには、利払間隔の実日数に合わせた期間年率を用いて実効金利を計算することが考えられる。
【先行技術文献】
【非特許文献】
【0008】
【非特許文献1】「銀行経理の実務」第6版 銀行経理問題研究会編 出版社きんざい(社団法人金融財政事情研究会)
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、利払間隔の実日数に合わせた期間年率を用いて、上記従来の手法によりニュートン法を用いて実効金利を計算しようとすると、微分関数の計算負荷が非常に高くなるという問題が発生する。
より具体的には、利払間隔の実日数に合わせた期間年率を用いる場合、実効金利計算関数f(x)は、図12の(式C)のように表される。
【0010】
図12の(式C)において、Day1、Day2…Daynは、利払間隔の実日数である。将来キャッシュフローの数が1つや2つであれば、f(x)の微分の計算負荷もそれほど大きくはならないが、通常、将来キャッシュフローは最大500程度となるため、f(x)の微分の計算負荷は非常に大きいものとなる。このため、実日数に合わせた期間年率を用いてニュートン法により実効金利を計算することは非常に困難である。
【0011】
本発明はこのような問題点に鑑みなされたもので、利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することを目的とする。
【課題を解決するための手段】
【0012】
そこで、本発明に係る情報処理装置は、利払間隔の情報を記憶する記憶部を有する情報処理装置であって、前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段と、を有することを特徴とする。
【0013】
ここで、「期間年率算出手段」は、例えば、後述する期間年率算出部111に対応する。「実効金利算出手段」は、例えば、後述する実効金利算出部112に対応する。
なお、本発明は、情報処理方法、プログラム、記録媒体、システム等としてもよい。
【発明の効果】
【0014】
本発明によれば、利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することができる。
【図面の簡単な説明】
【0015】
【図1】情報処理装置の構成の一例を示す図である。
【図2】データの一例を示す図である(貸出の例)。
【図3】実効金利算出処理に係るフローチャートの一例を示す図である。
【図4】解探索処理に係るフローチャートの一例を示す図である。
【図5】償却原価・内訳算出処理に係るフローチャートの一例を示す図である。
【図6】基準日の償却原価を求める仕組みの一例を示す図である。
【図7】貸出の償却原価等の計算結果の一例を示す図である(キャッチアップ差なし)。
【図8】貸出の償却原価等の計算結果の一例を示す図である(キャッチアップ差あり)。
【図9】解探索処理に係るフローチャートの一例を示す図である。
【図10】想定の技術を説明するための図である(積上げ方式)。
【図11】想定の技術を説明するための図である(償却原価の内訳のイメージ)。
【図12】想定の技術を説明するための図である。
【図13】想定の技術を説明するための図である(ニュートン法)。
【図14】データの一例を示す図である(債券の例)。
【図15】債券の償却原価等の計算結果の一例を示す図である(キャッチアップ差なし)。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について図面に基づいて説明する。
【0017】
<第1の実施形態>
本実施形態は、償却原価の算出に関するものである。本実施形態では、基準日とは計算を行う日のことであり、利払日とは利息等を受け取る日(ただし契約内容等により元本等の償還が発生した場合は、利息調整が行われるとみなして、元本等の償還が発生した日は利払日となる。)のことである。なお、基準日=利払日のこともある。
はじめに、本実施形態に係る情報処理装置100について図1を用いて説明する。図1(A)は、情報処理装置100のハードウェア構成の一例を示す図である。情報処理装置100は、コンピュータの一例であり、制御装置101、記憶装置102、インタフェース装置103、入力装置104、及び出力装置105を含んで構成される。各装置は、バス106を介して通信可能に接続されている。
【0018】
制御装置101は、CPU(Central Processing Unit)等であり、必要に応じて、記憶装置102からプログラムを読み出し、プログラムを実行することで、情報処理装置100の機能、後述するフローチャートに係る処理等を実現する。なお、情報処理装置100の機能、後述するフローチャートに係る処理の一部、又は全部を専用のハードウェアを用いて構成してもよい。
記憶装置102は、ROM(Read Only Memory)、RAM(Random Access Memory)、HD(Hard Disk)等の記憶部であり、例えば、情報処理装置100の電源投入時に最初に読み込まれるプログラム等を記憶する。また、例えば、記憶装置102は、情報処理装置100のメインメモリであり、制御装置101で用いられる各種のデータを一時記憶し、テーブル等の各種のデータを記憶する。
【0019】
インタフェース装置103は、情報処理装置100をLAN等のネットワークに接続する。入力装置104は、情報処理装置100の操作者(又はユーザ)が操作するキーボード、マウス等を含んで構成され、キーボード、マウス等の操作(ユーザ操作)に応答して情報処理装置100に各種の操作情報等を入力する。出力装置105は、情報処理装置100のユーザが利用するディスプレイ等を含んで構成され、各種の情報(又は画面)等をディスプレイに表示する。
なお、上述したプログラムなどの各種のデータは、例えば、CD−ROM等の記録媒体によって情報処理装置100に提供されてもよいし、ネットワーク等を介してダウンロードされてもよい。例えば、記録媒体からプログラムが提供される場合は、プログラムのインストールを指示するユーザ操作に応答して、プログラムが記録媒体から記録媒体ドライブ装置(図示せず。)を介して記憶装置102に格納される。
【0020】
図1(B)は、情報処理装置100の機能構成(モジュール)の一例を示す図である。情報処理装置100は、実効金利計算部110、償却原価計算部120、及び内訳計算部130を有する。
実効金利計算部110は、期間年率算出部111及び実効金利算出部112を有する。期間年率算出部111は、期間年率を算出する。実効金利算出部112は、期間年率算出部111で算出された期間年率を用いて実効金利を算出する。
償却原価計算部120は、将来キャッシュフロー展開部121、割引現在価値算出部122、及び償却原価算出部123を有する。将来キャッシュフロー展開部121は、基準日時点の最新の契約内容に基づいて将来キャッシュフローを展開する。割引現在価値算出部122は、将来キャッシュフロー展開部121で展開された将来キャッシュフローから、将来に受け取れる価値が現在受け取れたとしたときの価値を示す割引現在価値を利払日について算出する。償却原価算出部123は、実効金利算出部112で算出された実効金利、割引現在価値算出部122で算出された割引現在価値などから、基準日の償却原価を算出する。
なお、上述の将来キャッシュフローは取得した債券、債権等について、期限前償還、変動金利の金利見直し、延滞などによって、変更になることがあり、当該要素を勘案して将来キャッシュフローを見積もる必要がある。
内訳計算部130は、金利差算出部131、キャッチアップ差算出部132、及び償却原価差算出部133を有する。金利差算出部131は、償却原価算出部123で算出された償却原価から基準日の金利差を算出する。キャッチアップ差算出部132は、償却原価算出部123で算出された償却原価から基準日のキャッチアップ差を算出する。償却原価差算出部133は、償却原価算出部123で算出された償却原価から償却原価差を算出する。なお、各モジュールの詳細については後述する。
【0021】
図2は、記憶装置102に記憶されるデータの一例(明細情報)を示す図である。明細情報は、元本、手数料・費用、約定金利、満期期間、利払間隔、実効金利の情報を含んで構成される。元本、手数料・費用、約定金利、満期期間、及び利払間隔の情報は、契約の内容であり、適宜の方法及びタイミングで情報処理装置100に入力され、各約定明細に対応づけて記憶装置102に格納される。実効金利の情報は、実効金利計算部110により、原則として最初の基準日において契約の内容をもとに計算され、記憶装置102に格納される。
以下では、手数料・費用「60万円」、約定金利「5%」、満期期間「2年」、利払間隔「6M(6カ月)」で、元本「30億円」が2009/3/31に貸し出された場合を例に挙げて適宜説明する。
【0022】
まず、実効金利について説明する。図3は、実効金利を算出する実効金利算出処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、実効金利計算部110は、計算対象の約定明細について、約定金利、元本(簿価残高)、手数料・費用、利払間隔、及び満期期間の情報を記憶装置102から読み出す(S10)。
続いて、実効金利計算部110は、約定金利、元本、利払間隔、及び満期期間の情報をもとに将来キャッシュフローを利息CF等に展開し、元本および手数料・費用の総額を現時点のCFとして立てる(S15)。この際、実効金利計算部110は、各利息CFを下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。
利息CF=元本×約定金利×期間年率
上述の利息CFの計算式は期限前償還等将来の見積りを考慮していないケースであり、将来の見積りを勘案した場合、上述の契約の内容に将来の見積りを加味する。例えば、下記の式により計算される。
将来見積勘案後利息CF=元本×約定金利×期間年率×見積掛目
ここで、見積掛目(将来の見積りに関する情報)は、期限前償還等を勘案した係数であり、記憶装置102に記憶されている。上述の式は一例であり、これに限られるものではない。
ここで、期間年率の計算では、図12の(式B)に示すような利払間隔に基づいた一定の値(C/365、例えば半年であれば一律180日)ではなく、利払間隔の実日数が用いられ、実効金利計算部110は、期間年率を下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。このとき、実効金利計算部110は、利払間隔の情報をもとに利息CF発生時における前回の利払日(又は貸出実行日)からの経過日数を算出する。
期間年率=前回の利払日(又は貸出実行日)からの経過日数/1年の日数相当数(1年の日数相当数が約定の内容により異なるが、以下では便宜上365日と見なす。)
前記において1年の日数相当数を365日にて記述しているがこれは一例であり、本実施形態においては1年の日数相当数について約定の内容に従った全てのケースを適用範囲として想定している。また、1年の日数相当数も適宜の方法及びタイミングで情報処理装置100に入力され、記憶装置102に格納される。
なお、前記手数料・費用は、一般的にCFインの場合もCFアウトも場合もある。
【0023】
続いて、実効金利計算部110は、現時点のネットのCFアウトと将来キャッシュフロー(CFイン。例えば、利息、元本等)とが等価になるように関数(実効金利計算関数f(x))を立て、二分法により、実効金利計算関数f(x)=0の解を求める(S20)。
より具体的には、実効金利計算部110は、下記の式においてf(x)=0となるxを求める。
【数1】
上述の式において、CFnは、n番目のCFであり、Daynは、前回の利払日からn番目のCFが発生するまでの経過日数(即ち利払間隔の実日数)である。また、Day1/365、Day2/365・・・は、利払間隔の実日数の期間年率である。
【0024】
一般的には、実効金利関数f(x)の数値解析には、図13に示すニュートン法が用いられてきたが、より精緻に実効金利を求めるために利払間隔の実日数の期間年率を用いる場合、実効金利計算関数f(x)の微分関数f’(x)が複雑になり、計算が困難となる。そこで、本実施形態では、二分法を用いて数値解析を行うこととする。なお、解探索処理の詳細については図4を参照して説明する。
続いて、実効金利計算部110は、実効金利xを記憶装置102に格納し(S25)、処理を終了する。
【0025】
図4は、解探索処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、実効金利計算部110は、実効金利計算関数f(x)を生成し、解の初期存在範囲および解の許容誤差(許容範囲)を記憶装置102から読み出す(S105)。なお、本実施形態では、解の初期存在範囲および解の許容誤差の情報については、記憶装置102に事前に登録されている。続いて、実効金利計算部110は、解の存在範囲の中間値を求め、求めた中間値を実効金利計算関数f(x)に代入する(S110)。
続いて、実効金利計算部110は、実効金利計算関数f(x)の解がゼロ以上であるか否かを判断する(S115)。このとき、実効金利計算部110は、ゼロ以上であると判断した場合、S120に処理を移し、他方、ゼロより小さいと判断した場合、S125に処理を移す。
【0026】
S120では、実効金利計算部110は、解の存在範囲の下限値を中間値で置き換える。S125では、実効金利計算部110は、解の存在範囲の上限値を中間値で置き換える。
続いて、実効金利計算部110は、中間値における実効金利計算関数f(x)の値の絶対値が解の許容誤差内(規定値より小さい値)であるか否かを判断する(S130)。このとき、実効金利計算部110は、許容誤差内であると判断した場合、S135に処理を移し、他方、許容誤差外であると判断した場合、S110に処理を移す。
S135では、実効金利計算部110は、中間値を実効金利(irr)の値と決定し、処理を戻す。
【0027】
ここで、解の初期存在範囲が「2%、100%」であり、解の許容誤差が「10-4」である場合を例に挙げて解探索処理を説明する。
まず、S110では、中間値として(2+100)/2=51%が求められる。そして、S115では、f(51%)<0であることから、NOであると判断される。そして、S125では、解の存在範囲の上限値「100%」が「51%」に書き換えられる。そして、S130では、|f(51%)|≧10-4であることから、NOであると判断される。そして、S110では、中間値として(2+51)/2=26.5%が求められる。
このように、S110〜S130の処理が繰り返され、中間値が「4.989368645095」であるとき、f(4.989368645095)=0.000055となり、|f(4.989368645095)|<10-4であることから、S130では、YESであると判断される。そして、S135では、実効金利の値として「4.989368645095」が決定される。
【0028】
次に、償却原価、及び内訳(金利差、キャッチアップ差、償却原価差)について図5を用いて説明する。図5は、償却原価、及び内訳を算出する償却原価・内訳算出処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、償却原価計算部120は、基準日以降の将来キャッシュフローを展開する(S205)。なお、償却原価計算部120は、上述の実効金利計算部110と同様に、基準日以降の将来キャッシュフロー(各利息CF「元本×約定金利×期間年率」等)を計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。また、後述のように契約変更によって例えば早期返済することになった場合には将来キャッシュフローが変更になるため、将来キャッシュフローを展開する計算は、基準日時点の最新の契約内容に基づいて行われる。
【0029】
続いて、償却原価計算部120は、基準日直前の利払日の割引現在価値を求める(S210)。より具体的には、償却原価計算部120は、記憶装置102から元本、各利息CF、実効金利、期間年率を読み出し、利払日の割引現在価値を下記の式により計算する。償却原価計算部120は、計算した割引現在価値を計算対象の約定明細に対応付けて記憶装置102に格納する。
【数2】
ここで、CF(i)は、i番目のCFである。また、T(j)は、j−1番目のCFが発生した日からj番目のCFが発生した日までの期間年率であり、「j−1からjまでの日数相当数/1年の日数相当数」が設定される。なお、j=1の場合は、計算基準日から1番目のCFが発生した日までとなる。また、irrは、実効金利である。
【0030】
例えば、利払日2009/9/30の割引現在価値は、2010/3/31のCF×DF+2010/9/30のCF×DF+2011/3/31のCF×DFとなる。DF(ディスカウントファクタ)とは、CFや価額等の将来価値を現在価値等に割り引くために乗ずる係数である。
なお、利払日時点の利息CFを将来キャッシュフローに含めて表現することも可能である。この場合、利払日2009/9/30の割引現在価値は、2009/9/30のCF×DF+2010/3/31のCF×DF+2010/9/30のCF×DF+2011/3/31のCF×DF−経過利息となる。
【0031】
続いて、償却原価計算部120は、基準日の償却原価を求める(S215)。より具体的には、償却原価計算部120は、記憶装置102から読み出した基準日直前の利払日の割引現在価値を用いて、基準日の償却原価SNNを下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。なお、SNNは、基準日N時点で計算したN時点の償却原価を意味している。
【数3】
なお、[数3]の期間年率は、基準日Nの直前の利払日から基準日Nまでの経過日数/365であり、例えば、基準日が2009/10/31である場合、「前回利払日2009/9/30から基準日2009/10/31までの経過日数/365」で計算される。
【0032】
ここで、基準日の償却原価を求める償却原価算出処理(S205からS215までの処理)の仕組み(特質)について図6を用いて説明する。
上述のS205では基準日以降の将来キャッシュフローを展開しているが、これは、CFの見積りに変更があった場合、当該処理において変更が反映されることを意味する。
また、本実施形態では、会計上により経過利息が期間による単利按分で算出されることに鑑み、経過利息が0である時点の償却原価については複利ベースで求め、経過利息が0でない時点の償却原価については会計に合わせて単利按分で求める。
より具体的には、基準日直前の利払日においては経過利息が「0」であるので、S210において複利ベースの割引現在価値(複利法で割引現在価値)が求められる。なお、これは、基準日直前の利払日までは割引現在価値方式で計算することにより、日々の積上げが不要になることを意味する。また、基準日においては経過利息が「0」でないので、S215において基準日直前の利払日から実効金利を単利按分して(単利法で)現時点の償却原価が求められる。
上述の構成を採用することで、利払間隔に合わせた精緻な償却原価の計算を実現している。
【0033】
続いて、償却原価計算部120は、次の基準日の償却原価を求める(S220)。より具体的には、償却原価計算部120は、基準日直前の利払日の割引現在価値を用いて、次の基準日の償却原価SNN+1を下記の式により計算し、計算対象の約定明細に対応付けて記憶装置102に格納する。なお、SNN+1は、基準日N時点で計算した次の基準日N+1時点の償却原価を意味している。
【数4】
上述の[数4]および図5では、基準日と次の基準日との間に利払いが発生しないケースを想定しているが、基準日と次の基準日との間に利払日を挟んでいる場合には、次の基準日の償却原価の算出処理は、上述の挟んでいる直前の利払日の割引現在価値を求め、当該割引現在価値を用い、次の基準日の償却原価を算出する処理になる。すなわち、上記の[数4]の「基準日の直前の利払日の割引現在価値」は「次の基準日の直前の利払日の割引現在価値」となる。
なお、[数4]の期間年率は、基準日Nの直前の利払日(基準日Nと基準日N+1との間に利払がある場合には基準日N+1の直前の利払日となる。)から基準日N+1までの経過日数/365であり、例えば、基準日が2009/10/31である場合、「前回利払日2009/9/30から次の基準日2009/11/30までの経過日数/365」で計算される。
【0034】
次に、内訳計算部130は、S225において基準日の償却原価の内訳を算出する(内訳算出処理)。より具体的には、内訳計算部130は、基準日の償却原価SNNと償却原価SNN+1とに加えて、さらに、前の基準日に同様の計算により求めた前の基準日の償却原価SN-1N-1と償却原価SN-1Nとを用いて、基準日の償却原価の内訳を計算する。
SN-1N-1は、基準日Nの1つ前の基準日N−1時点で計算した基準日N−1時点の償却原価であり、SN-1Nは、基準日Nの1つ前の基準日N−1時点で計算した基準日N時点の償却原価であり、何れも計算対象の約定明細に対応付けて記憶装置102に格納されている。
より具体的には、内訳計算部130は、記憶装置102からSNNおよびSN-1N-1を読み出して償却原価差をSNN−SN-1N-1により求める(S2251)。また、内訳計算部130は、記憶装置102からSN-1NおよびSN-1N-1を読み出して金利差をSN-1N−SN-1N-1により求める(S2252)。また、内訳計算部130は、記憶装置102からSNNおよびSN-1Nを読み出してキャッチアップ差をSNN−SN-1Nにより求める(S2253)。
なお、S2251、S2252、S2253の処理の順序は、上述の順序に限られるものではなく、適宜の順序を採用できる。
上述の処理により、償却原価差=金利差+キャッチアップ差として、償却原価差の内訳が導出される。
【0035】
ここで、償却原価の内訳について図7及び図8に示す計算結果を例に挙げて説明する。図7は、将来キャッシュフローの変更がない場合の償却原価等の計算結果の一例を示す図であり、図8は、将来キャッシュフローの変更がある場合の償却原価等の計算結果の一例を示す図である。また、図7(A)は、2009/9/30における計算結果の一例を示す図であり、図7(B)は、2009/10/31における計算結果の一例を示す図である。また、図8(A)は、2009/10/31における計算結果の一例を示す図であり、図8(B)は、2009/11/30における計算結果の一例を示す図である。
【0036】
まず、将来キャッシュフローの変更がない場合について図7を参照して説明する。図7に示す例では、図7(A)の計算を実行した基準日(2009/9/30)の時点と図7(B)の計算を実行した基準日(2009/10/31)の時点とで将来キャッシュフローの変更がない。なお、この場合の利払日は、2009/9/30であり、2009/9/30の割引現在価値としては、S210において「3,000,455,102」が算出される。また、図7(B)に示すとおり、基準日2009/10/31の償却原価SNNとしては、S215において「3,000,429,942」が算出される。また、次の基準日2009/11/30の償却原価SNN+1としては、S220において「3,000,405,594」が算出される。
また、図7(A)に示すとおり、前の基準日2009/9/30においては、同様に、前の基準日2009/9/30の償却原価SN-1N-1としては、S215において「3,000,455,102」が算出されている。また、その次の基準日2009/10/31の償却原価SN-1Nとしては、S220において「3,000,429,942」が算出されている。
【0037】
したがって、基準日2009/10/31の償却原価差としては、SNN「3,000,429,942」−SN-1N-1「3,000,455,102」により「-25,160」が算出される。
また、基準日2009/10/31の金利差としては、SN-1N「3,000,429,942」−SN-1N-1「3,000,455,102」により「-25,160」が算出される。
また、基準日2009/10/31のキャッチアップ差としては、SNN「3,000,429,942」−SN-1N「3,000,429,942」により「0」が算出される。
【0038】
次に、将来キャッシュフローの変更がある場合(例えば2009/11/1に返済計画に変更が発生し早期返済が決定した場合)について図8を用いて説明する。図8に示す例では、図8(A)の計算を実行した基準日(2009/10/31)の時点では早期返済の決定前であり、2011/3/31に元本の返済が行われると共に利息CFが発生しているが、図8(B)の計算を実行した基準日(2009/11/30)の時点では早期返済の決定後であり、2010/9/30に元本の早期返済が行われることで、2011/3/31に利息CFが発生していない。なお、この場合の利払日は、2009/9/30であり、2009/10/31に計算した2009/9/30の割引現在価値としては、S210において「3,000,455,102」が算出され、2009/11/30に計算した2009/9/30の割引現在価値としては、S210において「3,000,307,391」が算出される。また、図8(B)に示すとおり、基準日2009/11/30の償却原価SN+1N+1としては、S215において「3,000,256,651」が算出される。また、次の基準日2009/12/31の償却原価SN+1N+2としては、S220において「3,000,230,866」が算出される。
また、図8(A)に示すとおり、前の基準日2009/10/31においては、前の基準日2009/10/31の償却原価SNNとしては、S215において「3,000,429,942」が算出されている。また、その次の基準日2009/11/30の償却原価SNN+1としては、S220において「3,000,405,594」が算出されている。
【0039】
したがって、基準日2009/11/30の償却原価差としては、SN+1N+1「3,000,256,651」−SNN「3,000,429,942」により「-173,291」が算出される。
また、基準日2009/11/30の金利差としては、SNN+1「3,000,405,594」−SNN「3,000,429,942」により「-24,348」が算出される。
また、基準日2009/11/30のキャッチアップ差としては、SN+1N+1「3,000,256,651」−SNN+1「3,000,405,594」により「-148,943」が算出される。
【0040】
本実施形態によれば、上述のように将来キャッシュフローが変更されたとしても、同様の処理で、変更された以降の基準日の償却原価、及び償却原価の内訳を算出することができる。
また、想定の手法では、償却原価を計算する際、前回の基準日の償却原価に今回の金利差を加えて今回の償却原価を求めていた。即ち、計算は、積上げ金利差を算出し、積上げ金利差+前回の償却原価により今回償却原価を算出する順序で行われる。
しかしながら、本実施形態では、将来キャッシュフローから直前の利払日の割引現在価値を求め、その割引現在価値に基づいて、金利差の積上げを行わずに、各基準日の償却原価を算出する。故に、本実施形態によれば、積上げ金利差の算出を行う必要がない。
【0041】
ただし、貸出等の実務においては、金利差を把握しておきたい。そこで、本実施形態では、基準日Nにおける金利差を、基準日N−1の時点で算出した基準日Nの償却原価と基準日N−1の償却原価との差により算出している。これにより、金利差の積上げを行っていないにもかかわらず、金利差を把握することができるようになる。また、本実施形態では、上述のように、キャッチアップ差も容易に計算可能である。また、上述のように、償却原価差をおさえることもできる。
このように、本実施形態では、将来キャッシュフローの割引現在価値に基づいて償却原価を算出するので、過去の分を意識せずに将来キャッシュフローのみを勘案して償却原価の内訳を算出することができる。なお、利払いの予定と実績との差についてはキャッチアップ差で吸収するという前提に立っている。
即ち、本実施形態によれば、将来キャッシュフローの割引現在価値に基づいて基準日と次の基準日との償却原価が基準日ごとに求められるので、金利差、キャッチアップ差、及び償却原価差を容易に得ることができる。
【0042】
<第2の実施形態>
第1の実施形態では、基準日の償却原価を基準日直前の利払日の割引現在価値により計算(基準日の償却原価=基準日直前の利払日の償却原価×(1+実効金利利率×利息計算間隔「前回利払日〜基準日の実日数/365」)−経過利息を計算)し、より具体的には下記の式により計算したが、この算出方法に限られるものでない。
【数5】
【0043】
例えば、基準日の償却原価を基準日直後の利払日の割引現在価値により計算(基準日の償却原価=(基準日直後の利払日の償却原価÷(1+実効金利利率×利払間隔「日数」)×(1+実効金利利率×利息計算間隔「前回利払日〜基準日の実日数/365」)−経過利息を計算)し、より具体的には下記の式により計算してもよい。
【数6】
【0044】
また、例えば、基準日の償却原価を基準日直前の利払日の割引現在価値と基準日直後の利払日の割引現在価値との線形補間により計算し、より具体的には下記の式により計算してもよい。
【数7】
【0045】
なお、本実施形態のその他の構成は、第1の実施形態の構成と同一であるので、その説明を省略する。
本実施形態によれば、第1の実施形態と同様の効果が得られる。なお、上述した何れの計算式においても、基準日直前の利払日および基準日直後の利払日までは割引現在価値方式で計算されているので、日々の積上げが不要である。
【0046】
<第3の実施形態>
二分法は、第1の実施形態で説明したように、解の上限値と下限値とを設定しておき、これらの中間値を計算し、計算した中間値における実効金利計算関数f(x)の値に応じて、上限値と下限値との何れかを中間値と置き換えることを繰り返す方法である。そして、中間値における実効金利計算関数f(x)の値が所定の閾値(許容誤差σ)よりも小さくなったとき(即ちf(中間値)≒0のとき)、その中間値を実効金利としている。
しかしながら、2分法は、一般的にニュートン法よりも収束するまでに時間がかかるので、初期の上限値(初期上限値)、及び初期の下限値(初期下限値)をより適切に設定することが好適である。
【0047】
そこで、本実施形態では、(i)満期日のDF(ディスカウントファクタ、計算式については後述する。)の分母がゼロ相当の規定値未満にならないように定めた値、(ii)実効金利の算出時の複利サイクルあたりのDFの分母がゼロ相当の規定値未満にならないように定めた値、(iii)予め定めた値のうち、最大となる値(最大の初期値)を初期下限値(IRRmin(0))として設定する。なお、(iii)の予め定めた値としては、一般的には、十分小さい値-10(実効金利が-1000%以下になることは業務上、想定されない)を利用し、実績の値を考慮した上でパフォーマンス向上の目的として変更可能である。
この構成によれば、実効金利を算出するための必要条件(DFの分母がゼロ相当の規定値以上)を満たす最大の初期下限値を取得できることから、探索の範囲を最低限に抑えられ、結果として、2分法の計算を高速に収束させることができるようになる。
なお、本実施形態では、第1の実施形態の構成と同一の構成については同一の符号を用いてその説明を適宜省略する。
【0048】
ここで、DFは、以下に示す式のように表される。なお、本来DFは[数2]のように表されるが、2分法により解の初期下限値を算出するために利用する算出式としては、[数2]の近似式[数8]を用いる。
【数8】
ここで、Tは、基準日から満期日までの期間年率である。
【0049】
故に、(i)満期日のDF分母がゼロ相当の規定値δ未満にならないように定めた値は、下記の式のように表される。
【数9】
ここで、Tは、基準日から満期日までの期間年率である。
【0050】
また、(ii)実効金利の算出時の複利サイクルあたりのDFの分母がゼロ相当の規定値δ未満にならないように定めた値は、下記の式のように表される。
【数10】
【0051】
次に、本実施形態の解探索処理について説明する。図9は、解探索処理に係るフローチャートの一例を示す図である。なお、本フローチャートに係るプログラム、及びプログラムの実行に必要なデータは、記憶装置102に記憶されており、制御装置101によって読み出されて実行される。
まず、実効金利計算部110は、初期値を設定する(S305)。より詳細に説明すると、実効金利計算部110は、上述の(i)〜(iii)の値のうち、最大となる値を初期下限値IRRmin(0)として設定する。
【0052】
また、実効金利計算部110は、初期上限値IRRmax(0)については、通常考えられる最大値(=100%)とエラーを防ぐために設けた値(設定ファイルに記憶された値)との2種類を利用して、初期上限値を定める。より具体的には、実効金利計算部110は、初期上限値IRRmax(0)の候補である第1の値を100%とし、f(IRRmin(0))とf(IRRmax(0)=100%)とが同符号である場合は、初期上限値の候補である第2の値(設定ファイルに記憶させた値)で初期上限値(100%)を置き換える。なお、実効金利計算部110は、初期中間値IRR(0)を[初期下限値IRRmin(0)+初期上限値IRRmax(0)]/2により算出する。
なお、上述f(IRR)は、[数1]のxにIRRを代入した値を意味する。下記のf(IRR)についても本記述と同様である。
【0053】
続いて、実効金利計算部110は、実効金利計算関数f(IRR(k))の値の絶対値が解の許容誤差σより小さいか否かを判断する(S310)。このとき、実効金利計算部110は、小さいと判断した場合、S315に処理を移し、他方、小さいと判断しなかった場合、S320に処理を移す。
S315では、実効金利計算部110は、中間値IRR(k)を実効金利(irr)として決定し、処理を戻す。
S320では、実効金利計算部110は、下限値IRRmin(k)と上限値IRRmax(k)とがIRR精度で一致しているか否かを判断する。IRR精度は、例えば、小数点以下n桁(実効金利が格納されるテーブルのフィールドの桁数等)を示す値であり、設定ファイルに記憶されている。この場合、下限値IRRmin(k)と上限値IRRmax(k)との各々を小数点以下n桁で丸めたものが一致するか否かが判断される。
このとき、実効金利計算部110は、一致していると判断した場合、S315に処理を移し、他方、一致していないと判断した場合、S325に処理を移す。
【0054】
S325では、実効金利計算部110は、試行回数kが最大試行回数以上になったか否かを判断する。このとき、実効金利計算部110は、試行回数kが最大試行回数以上であると判断した場合、S330に処理を移し、他方、試行回数kが最大試行回数未満であると判断した場合、S335に処理を移す。
S330では、実効金利計算部110は、中間値IRR(k)を実効金利(irr)として決定し、警告情報(中間値IRR(k)等)を出力装置105に出力し、処理を戻す。
【0055】
S335では、実効金利計算部110は、f(IRR(k))がf(IRRmin(k))と同符号であるか否かを判断する。このとき、実効金利計算部110は、同符号であると判断した場合、S340に処理を移し、他方、異符号であると判断した場合、S345に処理を移す。
S340では、実効金利計算部110は、次の下限値IRRmin(k+1)を中間値IRR(k)に更新する。なお、実効金利計算部110は、次の上限値IRRmax(k+1)についてはIRRmax(k)を用いる。
S345では、実効金利計算部110は、次の上限値IRRmax(k+1)を中間値IRR(k)に更新する。なお、実効金利計算部110は、次の下限値IRRmin(k+1)についてはIRRmin(k)を用いる。
続いて、実効金利計算部110は、次の中間値IRR(k+1)を求める(S350)。より具体的には、次の中間値IRR(k+1)を、{次の下限値IRRmin(k+1)+次の上限値IRRmax(k+1)}/2により算出する。続いて、実効金利計算部110は、試行回数kに「1」を加算し、S310に処理を移す。
【0056】
なお、本実施形態では、収束判定として、S320及びS325の判定を更に示したが、この構成に限られるものではない。例えば、S320及びS325の何れか一方の判定を採用してもよいし、何れの判定も採用しなくてもよい。
上述した構成によれば、利払日間の実日数を考慮した場合の実効金利の計算負荷をより低減することができる。なお、本実施形態によれば、第1の実施形態と同様の効果も得られる。
【0057】
<第4の実施形態>
上述した実施形態では貸出を例に挙げて説明しているが、貸出の例に限られるものではない。例えば、債券の場合は、(1)購入額等の当初認識額(手数料・費用を除く。)と額面等との差額と、(2)手数料・費用を、定額法でなく実効金利によって償却することになる。
また、債券の場合は、購入額等の当初認識額(手数料・費用を除く。)と手数用・費用とをネットしたCFとをCFアウトとし、額面とクーポン(利息)とをCFインとして、実効金利により前記(1)と(2)との差額を償却する。
なお、上述の貸出の例では、前記(1)の当初認識額と額面とは、何れも元本にあたり、両者に差額はない場合が多い。
【0058】
CFアウトの情報については、当初認識額(貸出の場合は元本)と手数料・費用となり、CFインの情報の1つとして、額面(貸出の場合は元本)となる。
例えば、図14に示すように、手数料・費用「100万円」、額面「30億円」、約定金利「5%」、満期期間「2年」、利払間隔「6M(6カ月)」で、当初認識額「27億」が2009/3/31に認識された約定明細とする。この場合、債券の償却原価等の計算結果は、図15のようになる。
【0059】
ここで、実効金利、償却原価の算出については貸出の場合とほぼ同じである。償却原価の算出において、図15に示すように、当初認識額と額面とに差額があるため、ネットCFアウトの計算式は貸出のものと異なり、ネットCFアウトは、当初認識額+手数料・費用により算出される。
また、上述した実施形態の貸出の例の償却原価計算式([数3]〜[数6])において、「元本」を「額面」に置き換えると、債券の償却原価の計算式となる。他の実効金利算出、利息CFの算出に係わる記述も同様であり、「元本」を「額面」に読み替えると、債券の記述となる。
なお、本実施形態では、債券1銘柄を1約定明細分購入の例で記述しているが、この例に限られるものではない。
【0060】
<その他の実施形態>
上述した実施形態では、プレーンな貸出や債券を例に挙げて説明したが、他の債権、他の債券、借入金、預金、発行社債等にも適用可能である。その際のキャッシュフローの情報等は契約の内容等により異なる。なお、資産でなく負債の場合はCFインとCFアウトが逆になる。
また、手数料・費用は、当初のCF情報の一部として記述しているが、これに限られるものではない。
また、実効金利の算出は、最初の基準日として記述しているが、これに限られるものではない。
また、上述した実施形態の適用は、金融機関に限られるものではない。
また、上述した実施形態の構成は、適宜組み合わせて採用できる。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
上述した構成によれば、償却原価の計算負荷をより低減することができる。また、上述した構成によれば、利払日間の実日数を考慮した場合の実効金利の計算負荷を低減することができる。
【符号の説明】
【0061】
101 制御装置
102 記憶装置
103 インタフェース装置
104 入力装置
105 出力装置
106 バス
【特許請求の範囲】
【請求項1】
利払間隔の情報を記憶する記憶部を有する情報処理装置であって、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、
二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段と、を有することを特徴とする情報処理装置。
【請求項2】
前記実効金利算出手段は、二分法における初期下限値を、満期日のディスカウントファクタの分母がゼロ相当の規定値未満にならないように定めた値、実効金利の算出時の複利サイクルあたりのディスカウントファクタの分母がゼロ相当の規定値未満にならないように定めた値、及び予め定めた下限値のうち最大となるものとすることを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記記憶部には、二分法における初期上限値の候補である第1の値、及び前記第1の値とは異なる第2の値が記憶され、
前記実効金利算出手段は、前記第1の値における前記実効金利関数の値の符号が、前記初期下限値における前記実効金利関数の値の符号と同じであると判断した場合、二分法における初期上限値を前記第2の値とすることを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記実効金利算出手段は、前記初期上限値、及び前記初期下限値の各々を予め定められた小数点以下の桁数で丸めた各々の値が一致したと判断した場合、前記値を実効金利とすることを特徴とする請求項3記載の情報処理装置。
【請求項5】
利払間隔の情報を記憶する記憶部を有する情報処理装置が実行する情報処理方法であって、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出工程と、
二分法により、前記期間年率算出工程で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出工程と、を有することを特徴とする情報処理方法。
【請求項6】
利払間隔の情報を記憶する記憶部を有するコンピュータを、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、
二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段として機能させるプログラム。
【請求項7】
契約の内容、及び利払間隔の情報を記憶した記憶部を有する情報処理装置であって、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、
二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段と、
前記契約の内容から、計算を行う日を示す基準日の直前の利払日、及び前記基準日の直後の利払日の少なくとも一方の利払日の将来キャッシュフローを展開する将来キャッシュフロー展開手段と、
前記契約の内容、前記実効金利算出手段で求められた実効金利、及び前記将来キャッシュフロー展開手段で展開された将来キャッシュフローから、将来に受け取れる価値が現在受け取れたとしたときの価値を示す割引現在価値を前記利払日について複利法により算出する割引現在価値算出手段と、
前記契約の内容、前記実効金利、及び前記割引現在価値算出手段で算出された割引現在価値から、前記基準日の償却原価を単利法により算出する償却原価算出手段と、を有することを特徴とする情報処理装置。
【請求項1】
利払間隔の情報を記憶する記憶部を有する情報処理装置であって、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、
二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段と、を有することを特徴とする情報処理装置。
【請求項2】
前記実効金利算出手段は、二分法における初期下限値を、満期日のディスカウントファクタの分母がゼロ相当の規定値未満にならないように定めた値、実効金利の算出時の複利サイクルあたりのディスカウントファクタの分母がゼロ相当の規定値未満にならないように定めた値、及び予め定めた下限値のうち最大となるものとすることを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記記憶部には、二分法における初期上限値の候補である第1の値、及び前記第1の値とは異なる第2の値が記憶され、
前記実効金利算出手段は、前記第1の値における前記実効金利関数の値の符号が、前記初期下限値における前記実効金利関数の値の符号と同じであると判断した場合、二分法における初期上限値を前記第2の値とすることを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記実効金利算出手段は、前記初期上限値、及び前記初期下限値の各々を予め定められた小数点以下の桁数で丸めた各々の値が一致したと判断した場合、前記値を実効金利とすることを特徴とする請求項3記載の情報処理装置。
【請求項5】
利払間隔の情報を記憶する記憶部を有する情報処理装置が実行する情報処理方法であって、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出工程と、
二分法により、前記期間年率算出工程で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出工程と、を有することを特徴とする情報処理方法。
【請求項6】
利払間隔の情報を記憶する記憶部を有するコンピュータを、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、
二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段として機能させるプログラム。
【請求項7】
契約の内容、及び利払間隔の情報を記憶した記憶部を有する情報処理装置であって、
前記利払間隔の実日数に基づく期間年率を算出する期間年率算出手段と、
二分法により、前記期間年率算出手段で算出された期間年率を用いた実効金利関数の値が規定値より小さい値となる解を求め、求めた解を実効金利とする実効金利算出手段と、
前記契約の内容から、計算を行う日を示す基準日の直前の利払日、及び前記基準日の直後の利払日の少なくとも一方の利払日の将来キャッシュフローを展開する将来キャッシュフロー展開手段と、
前記契約の内容、前記実効金利算出手段で求められた実効金利、及び前記将来キャッシュフロー展開手段で展開された将来キャッシュフローから、将来に受け取れる価値が現在受け取れたとしたときの価値を示す割引現在価値を前記利払日について複利法により算出する割引現在価値算出手段と、
前記契約の内容、前記実効金利、及び前記割引現在価値算出手段で算出された割引現在価値から、前記基準日の償却原価を単利法により算出する償却原価算出手段と、を有することを特徴とする情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2013−88930(P2013−88930A)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願番号】特願2011−227270(P2011−227270)
【出願日】平成23年10月14日(2011.10.14)
【特許番号】特許第5017489号(P5017489)
【特許公報発行日】平成24年9月5日(2012.9.5)
【出願人】(000191076)新日鉄住金ソリューションズ株式会社 (136)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願日】平成23年10月14日(2011.10.14)
【特許番号】特許第5017489号(P5017489)
【特許公報発行日】平成24年9月5日(2012.9.5)
【出願人】(000191076)新日鉄住金ソリューションズ株式会社 (136)
[ Back to top ]