(57)【特許請求の範囲】
【請求項１】
複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得部と、
前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出する中央値算出部と、
前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出する差分算出部と、
前記第１の差分に基づいて、前記複数のカウンタパーティのそれぞれについて重みを導出する重み導出部と、
前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、前記重みが付与された前記レートについて、前記複数のカウンタパーティの全体の中央値を、コアレートとして生成するコアレート生成部と、
を備えることを特徴とするコアレート生成装置。
【請求項２】
前記複数のレートの中間値を前記複数のカウンタパーティについてそれぞれ算出する中間値算出部をさらに備え、
前記中央値算出部は、前記複数のカウンタパーティの前記中間値の全体の中央値を算出し、
前記差分算出部は、前記中間値と、前記中央値との第２の差分を、前記複数のカウンタパーティのそれぞれについて算出し、
前記コアレート生成部は、前記複数のカウンタパーティのそれぞれについて、前記中間値に、前記重みを付与して、コアレートを生成する、
ことを特徴とする請求項１に記載のコアレート生成装置。
【請求項３】
前記重み導出部は、前記中間値と前記中央値との前記第２の差分を指数関数の入力として、前記複数のカウンタパーティのそれぞれの正確性を算出し、算出された前記正確性から前記重みを導出する
ことを特徴とする請求項２に記載のコアレート生成装置。
【請求項４】
前記重み導出部は、前記複数のカウンタパーティのそれぞれの前記正確性を所定期間に亘り算出し、算出された複数の前記正確性に基づいて前記重みを導出する
ことを特徴とする請求項３に記載のコアレート生成装置。
【請求項５】
前記重み導出部は、前記所定期間に亘り算出された複数の前記正確性の指数移動平均を算出することで、前記重みを導出する
ことを特徴とする請求項４に記載のコアレート生成装置。
【請求項６】
複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得部と、
前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出する中央値算出部と、
前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出する差分算出部と、
前記第１の差分を指数関数の入力として、前記複数のカウンタパーティのそれぞれの正確性を所定期間に亘り算出し、算出された複数の前記正確性の指数移動平均を算出することで、重みを導出する重み導出部と、
前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、コアレートを生成するコアレート生成部と、
を備えることを特徴とするコアレート生成装置。
【請求項７】
前記複数のレートの中間値を前記複数のカウンタパーティについてそれぞれ算出する中間値算出部をさらに備え、
前記中央値算出部は、前記複数のカウンタパーティの前記中間値の全体の中央値を算出し、
前記差分算出部は、前記中間値と、前記中央値との第２の差分を、前記複数のカウンタパーティのそれぞれについて算出し、
前記コアレート生成部は、前記複数のカウンタパーティのそれぞれについて、前記中間値に、前記重みを付与して、コアレートを生成する、
ことを特徴とする請求項６に記載のコアレート生成装置。
【請求項８】
前記コアレート生成部は、前記重みが付与された前記中間値について、前記複数のカウンタパーティの全体の中央値を、前記コアレートとして生成する
ことを特徴とする請求項７に記載のコアレート生成装置。
【請求項９】
前記重み導出部により、前記正確性から前記重みを導出する際の、前記指数移動平均の第１のパラメータを、所定の評価関数を用いて調整する第１の調整部をさらに備える
ことを特徴とする請求項５から８のいずれか１項に記載のコアレート生成装置。
【請求項１０】
前記重み導出部により、前記第２の差分を前記指数関数の入力として、前記正確性を算出する際の、前記指数関数の第２のパラメータを、所定の評価関数を用いて調整する第２の調整部をさらに備える
ことを特徴とする請求項３から５、および７のいずれか１項に記載のコアレート生成装置。
【請求項１１】
前記コアレート生成部は、さらに、生成された前記コアレートに所定のスプレッド幅でスキューを付与することにより、顧客への提示レートを生成する
ことを特徴とする請求項１から１０のいずれか１項に記載のコアレート生成装置。
【請求項１２】
コアレート生成装置が実行するコアレート生成方法であって、
複数のカウンタパーティでそれぞれ生成される複数のレートを取得するステップと、
前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出するステップと、
前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出するステップと、
前記第１の差分に基づいて、前記複数のカウンタパーティのそれぞれについて重みを導出するステップと、
前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、前記重みが付与された前記レートについて、前記複数のカウンタパーティの全体の中央値を、コアレートとして生成するステップと、
を含むことを特徴とするコアレート生成方法。
【請求項１３】
コアレート生成装置が実行するコアレート生成方法であって、
複数のカウンタパーティでそれぞれ生成される複数のレートを取得するステップと、
前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出するステップと、
前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出するステップと、
前記第１の差分を指数関数の入力として、前記複数のカウンタパーティのそれぞれの正確性を所定期間に亘り算出し、算出された複数の前記正確性の指数移動平均を算出することで、重みを導出するステップと、
前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、コアレートを生成するステップと、
を含むことを特徴とするコアレート生成方法。
【請求項１４】
コアレート生成処理をコンピュータに実行させるためのコアレート生成プログラムであって、該プログラムは、前記コンピュータに、
複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得処理と、
前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出する中央値算出処理と、
前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出する差分算出処理と、
前記第１の差分に基づいて、前記複数のカウンタパーティのそれぞれについて重みを導出する重み導出処理と、
前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、前記重みが付与された前記レートについて、前記複数のカウンタパーティの全体の中央値を、コアレートとして生成するコアレート生成処理と、を含む処理を実行させるためのものである、
ことを特徴とするコアレート生成プログラム。
【請求項１５】
コアレート生成処理をコンピュータに実行させるためのコアレート生成プログラムであって、該プログラムは、前記コンピュータに、
複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得処理と、
前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出する中央値算出処理と、
前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出する差分算出処理と、
前記第１の差分を指数関数の入力として、前記複数のカウンタパーティのそれぞれの正確性を所定期間に亘り算出し、算出された複数の前記正確性の指数移動平均を算出することで、前記複数のカウンタパーティのそれぞれについて重みを導出する重み導出処理と、
前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、コアレートを生成するコアレート生成処理と、を含む処理を実行させるためのものである、
ことを特徴とするコアレート生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コアレート生成装置、コアレート生成方法およびプログラムに関し、特に、複数のカウンタパーティにより提示される複数のレートから、顧客に提示すべきレートの基礎となるコアレートを自動生成する技術に関する。
【背景技術】
【０００２】
例えば、ＦＸ（外国為替証拠金取引）等の為替レートをベースとする金融取引を行う事業者は、ウェブプラットフォーム等で構築されるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を介して、顧客（投資家）に、通貨ペアごとに、事業者の売値（ＢＩＤ）と買値（ＡＳＫ）を随時提供する。
顧客は、取引口座を開設し、自己資金に所定のレバレッジ（日本の顧客の場合２５：１）を掛けて、提供された買値（ＡＳＫ）および売値（ＢＩＤ）で自己資金を売買する。【０００３】
事業者は、別途の手数料を徴収することなく、ＡＳＫとＢＩＤの差分であるスプレッドから利益を取得することができる。
例えば、米ドル／日本円（ＵＳＤ／ＪＰＹ）の通貨ペアで、事業者の買値（ＡＳＫ）が１米ドル当たり１０９．９４７円、売値（ＢＩＤ）が１０９．９４４円とすると、スプレッドは０．００３円（０．３ｐｉｐｓ：１ｐｉｐ＝１銭）となる。【０００４】
事業者は、カバー先である複数のカウンタパーティ（例えば、銀行や証券会社等の金融機関）と、顧客との相対取引で事業者に発生したポジションをヘッジするための売買取引を行うことで、マーケットリスク（相場変動に伴うリスク）を相殺している。
このため、一般的には、事業者が顧客に提示する投資家提示レートは、複数のカウンタパーティからそれぞれ取得される、カウンタパーティが事業者に提示するカウンタパーティ提示レートに基づいて生成される。【０００５】
具体的には、事業者は、複数のカウンタパーティのカウンタパーティ提示レートをモニターし、信頼性の高いカウンタパーティのサブセットをマニュアルで選択する。次に、事業者は、選択されたカウンタパーティのサブセットのカウンタパーティ提示レートの中から、例えば、事業者にとって最も有利である直近のＡＳＫレートとＢＩＤレートとを用いることにより、コアレートを生成する。
このコアレートに、事業者の利益となるスプレッドを付加して、スプレッド付加レートを生成する。さらに、このスプレッドに対して、任意の大きさのスキュー値を増減するスキュー処理を適用して、顧客に提示すべき投資家提示レートを生成する。【０００６】
特許文献１（特願２０１４−１３５１６号公報）は、複数のカウンタパーティ（マーケットメーカ）から、例えば、０．０５秒から０．１秒等の短い時間間隔で繰り返し送信されてくるマーケットメーカ提示レートを取得して、コアレートを生成するＯＴＣ（Ｏｖｅｒ  Ｔｈｅ  Ｃｏｕｎｔｅｒ）−ＦＸ業務用のレート生成システムを開示する。具体的には、特許文献１のレート生成システムは、通貨ペアを米ドル／日本円（ＵＳＤ／ＪＰＹ）とした場合、取得した複数のマーケットメーカ提示レートから、ＢＩＤについては、ＦＸ業者が最も高く米ドルを売ることができるレート（すなわち、最も高く米ドルを買ってくれるマーケットメーカの提示レート）をＢＩＤコアレートとして選択し、一方、ＡＳＫについては、ＦＸ業者が最も安く米ドルを買うことができるレート（すなわち、最も安く米ドルを売ってくれるマーケットメーカの提示レート）をＡＳＫコアレートとして選択する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１４−１３５１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、マニュアルで選択されたカウンタパーティのサブセット（通常は２，３のカウンタパーティ）のカウンタパーティ提示レートが、常に事業者にとって最も有利なレートを含むとは限らない。このため、従来は、事業者にとって最適なコアレートが生成できず、コアレートの精度が低いおそれがあった。
特に、選択されたカウンタパーティのうち、いずれかのカウンタパーティで突発的に不正確で変則的変動（ブレ）のあるレートが提示された場合、このような不正確で変則的変動（ブレ）のあるレートが偶然ベストＢＩＤ／ＡＳＫの値となってしまうと、最終的に生成されるコアレートが、カウンタパーティ提示レートの変則的変動（ブレ）の影響をそのまま受けてしまう。
さらに、市場において１日に実行すべき為替取引のトランザクションのボリュームは、例えば、数百億米ドルに上り、レートの更新頻度も、例えば、５ｍｓと極めて高頻度であって、１日に数百万回に及ぶレートの更新が発生する。このため、コアレートを自動的に算出する処理は、システム資源への負荷の増大を低減しつつ、より高速で実行可能な処理でなければならない。【０００９】
本発明は上記課題を解決するためになされたものであり、その目的は、複数のカウンタパーティから提示されるレートに発生する変則的変動（ブレ）に対して堅牢であり、かつより高精度にコアレートを生成することが可能なコアレート生成装置、コアレート生成方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明に係るコアレート生成装置の一態様は、複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得部と、前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出する中央値算出部と、前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出する差分算出部と、前記第１の差分に基づいて、前記複数のカウンタパーティのそれぞれについて重みを導出する重み導出部と、前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、コアレートを生成するコアレート生成部と、を備える。【００１１】
前記コアレート生成装置は、前記複数のレートの中間値を前記複数のカウンタパーティについてそれぞれ算出する中間値算出部をさらに備え、前記中央値算出部は、前記複数のカウンタパーティの前記中間値の全体の中央値を算出し、前記差分算出部は、前記中間値と、前記中央値との第２の差分を、前記複数のカウンタパーティのそれぞれについて算出し、前記コアレート生成部は、前記複数のカウンタパーティのそれぞれについて、前記中間値に、前記重みを付与して、コアレートを生成してよい。【００１２】
前記コアレート生成部は、前記重みが付与された前記中間値について、前記複数のカウンタパーティの全体の中央値を、前記コアレートとして生成してよい。【００１３】
前記重み導出部は、前記中間値と前記中央値との前記第２の差分を指数関数の入力として、前記複数のカウンタパーティのそれぞれの正確性を算出し、算出された前記正確性から前記重みを導出してよい。【００１４】
前記重み導出部は、前記複数のカウンタパーティのそれぞれの前記正確性を所定期間に亘り算出し、算出された複数の前記正確性に基づいて前記重みを導出してよい。【００１５】
前記重み導出部は、前記所定期間に亘り算出された複数の前記正確性の指数移動平均を算出することで、前記重みを導出してよい。【００１６】
前記コアレート生成装置は、前記重み導出部により、前記正確性から前記重みを導出する際の、前記指数移動平均の第１のパラメータを、所定の評価関数を用いて調整する第１の調整部をさらに備えてよい。【００１７】
前記コアレート生成装置は、前記重み導出部により、前記第２の差分を前記指数関数の入力として、前記正確性を算出する際の、前記指数関数の第２のパラメータを、所定の評価関数を用いて調整する第２の調整部をさらに備えてよい。
前記コアレート生成部は、さらに、生成された前記コアレートに所定のスプレッド幅でスキューを付与することにより、顧客への提示レートを生成してよい。  【００１８】
本発明に係るコアレート生成方法の一態様は、コアレート生成装置が実行するコアレート生成方法であって、複数のカウンタパーティでそれぞれ生成される複数のレートを取得するステップと、前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出するステップと、前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出するステップと、前記第１の差分に基づいて、前記複数のカウンタパーティのそれぞれについて重みを導出するステップと、前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、コアレートを生成するステップと、を含む。【００１９】
本発明に係るコアレート生成プログラムの一態様は、コアレート生成処理をコンピュータに実行させるためのコアレート生成プログラムであって、該プログラムは、前記コンピュータに、複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得処理と、前記複数のカウンタパーティの前記複数のレートの全体の中央値を算出する中央値算出処理と、前記複数のレートのそれぞれと、前記中央値との第１の差分を、前記複数のカウンタパーティのそれぞれについて算出する差分算出処理と、前記第１の差分に基づいて、前記複数のカウンタパーティのそれぞれについて重みを導出する重み導出処理と、前記複数のカウンタパーティのそれぞれについて、前記レートに前記重みを付与して、コアレートを生成するコアレート生成処理と、を含む処理を実行させるためのものである。
【発明の効果】
【００２０】
本発明によれば、複数のカウンタパーティから提示されるレートに発生する変則的変動（ブレ）に対して堅牢であり、かつより高精度にコアレートを生成することができる。
上記した本発明の目的、態様及び効果並びに上記されなかった本発明の目的、態様及び効果は、当業者であれば添付図面及び請求の範囲の記載を参照することにより下記の発明を実施するための形態から理解できるであろう。
【図面の簡単な説明】
【００２１】
【図１】図１は、本発明の実施形態に係る為替取引ネットワークシステムのネットワーク構成の一例を示すブロック図である。
【図２】図２は、本発明の実施形態に係るレート生成装置１の機能構成の一例を示すブロック図である。
【図３】図３は、複数のカウンタパーティから取得されるカウンタパーティ提示レートに変則的変動（ブレ）が生したことにより、ベストレート算出においてプライシングエラーが発生する例を説明する時系列グラフである。
【図４】図４は、本発明の実施形態に係るレート生成装置が実行するレート生成処理の概略処理手順の一例を示すフローチャートである。
【図５】図５は、図４のＳ４で実行される重み算出処理の詳細処理手順の一例を示すフローチャートである。
【図６】図６は、本実施形態のコアレート生成装置１が生成するコアレートと従来のベストレートから算出されるコアレートとを比較する時系列グラフである。
【図７】図７は、本発明の実施形態に係るレート生成装置１のハードウエア構成の一例を示す図である。
【発明を実施するための形態】
【００２２】
以下、添付図面を参照して、本発明を実施するための実施形態について詳細に説明する。以下に開示される構成要素のうち、同一機能を有するものには同一の符号を付し、その説明を省略する。なお、以下に開示される実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００２３】
以下、本実施形態に係るレート生成装置が、ＦＸ（外国為替証拠金取引）において顧客（投資家）に提示すべきレートを導出する基礎となるコアレートを生成する非限定的一例を説明するが、本実施形態はこれに限定されない。
本実施形態に係るレート生成装置は、株式、仮想通貨、あるいは複数の通貨価値に換算可能なグローバルポイント等、通貨の為替レートに基づくあらゆる取引に適用することができる。
【００２４】
＜ＦＸ取引システムのネットワーク構成＞
図１は、本実施形態に係るＦＸ取引システムのネットワーク構成の一例を示すブロック図である。
図１に示すＦＸ取引システム１０は、レート生成装置１と、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎを備える。レート生成装置１と、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎとは、ネットワーク３を介して相互通信可能に接続されている。
【００２５】
レート生成装置１は、ＦＸ事業者により保有、またはアクセス可能に管理され、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎからそれぞれ一定の頻度（例えば、５〜１０ｍｓ）で提示される、カウンタパーティの提示レートを取得して、取得された提示レートに基づいて、顧客（投資家）に提示すべきレートを導出するためのコアレートを生成する。
レート生成装置１はまた、顧客（投資家）のコンピュータ（不図示）とネットワークを介して接続され、生成されたコアレートから導出された投資家提示レートを顧客のコンピュータに送信するとともに、顧客コンピュータから売買注文を受け付けてＦＸ取引を実行する。
カウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎはそれぞれ、複数の異なるカウンタパーティ（例えば、銀行、証券会社等の金融機関）により保有、またはアクセス可能に管理され、一定の頻度で、各カウンタパーティのＦＸ事業者の提示レートを提示する。なお、レート生成装置１は、それぞれのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎに対して、当該カウンタパーティの提示レートの送信を要求する要求メッセージを送信してもよい。この場合、要求メッセージを受信したカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎは、レート生成装置１に提示レートを送信し、レート生成装置１は送信される提示レートを受信することで、提示レートを取得してよい。
【００２６】
＜レート生成装置１の機能構成＞
図２は、レート生成装置１の機能構成の一例を示すブロック図である。
図２に示すレート生成装置１は、記憶部１１、レート取得部１２、差分算出部１３、重み算出部１４、レート算出部１５、通信部１６、および表示部１７を備える。
記憶部１１は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性メモリ、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の不揮発性メモリ、着脱可能な外部メモリ等から構成されてよい。記憶部１１は、システムバスを介して、レート生成装置１内の各ブロック１２〜１７が共有して利用可能な記憶領域であり、各種データの保存やワークメモリとして使用される。
【００２７】
レート取得部１２は、通信部１６を介して、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎからそれぞれ一定の頻度で提示される、カウンタパーティの提示レートを取得して、取得されたカウンタパーティの提示レートを、タイムスタンプや識別子を付与して記憶部１１に逐次記憶する。
差分算出部１３は、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎ全体について算出される指標となるカウンタパーティ提示レートと、それぞれのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎから取得されるカウンタパーティ提示レートとの差分を、それぞれのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎのバラつき（エラー）として算出する。
【００２８】
具体的には、差分算出部１３は、まず、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎのそれぞれから取得した、それぞれのカウンタパーティの提示レートのＢＩＤレートとＡＳＫレートとの中間値（ｍｉｄ  ｒａｔｅ）を算出する。
差分算出部１３はまた、すべてのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎから取得したすべてのカウンタパーティの提示レートについて算出されたすべての中間値の中央値（ｍｅｄｉａｎ）を指標となるカウンタパーティ提示レートとして算出する。
差分算出部１３は、このように算出されたすべてのカウンタパーティの提示レートの中央値と、それぞれのカウンタパーティの提示レートの中間値との差分を算出して、重み算出部１４に供給する。
なお、本実施形態で説明する差分は一例であり、差分算出部１３によって算出される差分は、例えば、それぞれのカウンタパーティの提示レートと、すべてのカウンタパーティの提示レートの中央値との差分であってもよい。
【００２９】
重み算出部１４は、差分算出部１３により算出された差分（エラー）に基づいて、それぞれのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎについての重みを算出（導出）する。具体的には、重み算出部１４はまず、それぞれのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎのカウンタパーティ提示レートについて、正確性（精度）を算出する。次に、重み算出部１４は、それぞれのカウンタパーティについて算出された正確性に基づいて、コアレート算出においてそれぞれのカウンタパーティに付与すべき重みを算出する。重み算出部１４が行う処理の詳細は、図５を参照して後述する。
【００３０】
レート算出部１５は、レート取得部１２により取得されたすべてのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎのカウンタパーティの提示レートを使用して、コアレートを生成し、生成されたコアレートに所定のスプレッドを付与し、スプレッド付与コアレートにスキューを適用して、顧客に提示すべき投資家提示レートを算出（生成）する。
【００３１】
本実施形態において、レート算出部１５は、それぞれのカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎの提示レートの中間値に対して、それぞれのカウンタパーティについて重み算出部１４で算出された重みを付与し、それぞれのカウンタパーティの重み付けされた中間値の中央値を算出することにより、コアレートを生成する。レート算出部１５が行う処理の詳細は、図４および図５を参照して後述する。
【００３２】
通信部１６は、ネットワーク３とのインタフェースを提供し、ネットワーク３を介してカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎや顧客のコンピュータ装置との通信を実行する。実施形態では、通信部１６は、イーサネット（登録商標）等の通信規格に準拠する有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や専用回線を介した通信を実行してよい。ただし、本実施形態で利用可能なネットワークはこれに限定されず、無線ネットワークで構成されてもよい。この無線ネットワークは、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＺｉｇＢｅｅ（登録商標）、ＵＷＢ（Ｕｌｔｒａ  Ｗｉｄｅ  Ｂａｎｄ）等の無線ＰＡＮ（Ｐｅｒｓｏｎａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む。また、Ｗｉ−Ｆｉ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）（登録商標）等の無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や、ＷｉＭＡＸ（登録商標）等の無線ＭＡＮ（Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む。さらに、ＬＴＥ／３Ｇ、４Ｇ、５Ｇ等の無線ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む。なお、ネットワークは、各機器を相互に通信可能に接続し、通信が可能であればよく、通信の規格、規模、構成は上記に限定されない。
【００３３】
表示部１７は、レート生成装置１が実行するコアレート生成処理の実行結果を、表示装置を介して表示出力する。表示部１７はまた、ＧＵＩ（Ｇｒａｐｈｉｃａｌ Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を提供し、このＧＵＩは、コアレート生成処理で使用される各種パラメータや通信パラメータ等をコアレート生成装置１へ指示入力させる。
【００３４】
図３は、複数のカウンタパーティから取得されるカウンタパーティ提示レートに変則的変動（ブレ）が生したことにより、ベストレート算出においてプライシングエラーが発生する例を説明する時系列グラフである。
図３において、実線は、時系列上の真の中間値（ＡＳＫレートとＢＩＤレートの中間値）を示し、それぞれの時点について、次のタイムフレームの中間値群の中央値がプロットされている。一方、一点鎖線は、従来のように、複数のカウンタパーティからマニュアルで選択されたカウンタパーティのサブセットのうち、ベストレートとして抽出された、時系列上のカウンタパーティ提示レートの中間値を示す。
図３に示すように、時系列上の１５：２８までは、一点鎖線のベストレートは、実線の真の中間値に追従しているが、１５：２８以降、次第に真の中間値から乖離し、１５：３０前から１５：３１過ぎまでの間は、ベストレートがフリーズしてフラットとなり、ベストレートがプロットできないプライシングエラーが発生している。
【００３５】
このような事象は、いずれかのカウンタパーティが突発的に不正確で変則的変動（ブレ）のあるレートをカウンタパーティ提示レートとして取得し、このような不正確で変則的変動（ブレ）のあるレートが偶然ベストＢＩＤ／ＡＳＫの値となってしまうことにより、コアレートとすべきベストレートが、カウンタパーティ提示レートの変則的変動（ブレ）の影響をそのまま受けてしまうものと考えられる。
本実施形態では、このようなカウンタパーティ提示レートの変則的変動（ブレ）の影響を低減するため、それぞれのカウンタパーティのカウンタパーティ提示レートの正確性（精度）に基づき算出された重みを考慮して、すべてのカウンタパーティのカウンタパーティ提示レートからコアレートを生成する。
【００３６】
＜コアレート生成処理の概略処理手順＞
図４は、本実施形態に係るコアレート生成装置１が実行するコアレート生成処理の概略処理手順の一例を示すフローチャートである。
なお、図４の各ステップは、コアレート生成装置１の記憶部に記憶されたプログラムをＣＰＵが読み出し、実行することで実現される。また、図４に示すフローチャートの少なくとも一部をハードウエアにより実現してもよい。ハードウエアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）上に自動的に専用回路を生成すればよい。また、ＦＰＧＡと同様にしてＧａｔｅ  Ａｒｒａｙ回路を形成し、ハードウエアとして実現するようにしてもよい。また、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により実現するようにしてもよい。
【００３７】
Ｓ１で、コアレート生成装置１のレート取得部１２は、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎから、それぞれ、所定の周期で、カウンタパーティ提示レートを取得する。Ｓ１で取得されるカウンタパーティ提示レートは、複数のカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎからネットワークを介して送信されてもよく、記憶部１１を介して入力されてもよい。
【００３８】
Ｓ２で、コアレート生成装置１の差分算出部１３は、中間値算出部を含み、Ｓ１で取得されたそれぞれのカウンタパーティについて、カウンタパーティ提示レート（ＡＳＫレートおよびＢＩＤレート）の中間値（ｍｉｄ  ｒａｔｅ）を、下記式１のように算出する。
ｍｉｄ  ｒａｔｅ＝（ＡＳＫレート＋ＢＩＤレート）／２                     （式１）
代替的に、コアレート生成装置１は、カウンタパーティ提示レートの中間値を算出することなく、カウンタパーティ提示レートのＡＳＫレートおよびＢＩＤレートそれぞれについて、Ｓ３〜Ｓ６までの処理を実行してもよい。この場合、図４のＳ２の処理を省略することができ、後続の処理において、カウンタパーティ提示レートの中間値に替えて、ＡＳＫレートおよびＢＩＤレートの双方またはいずれか一方を処理対象とすればよい。
【００３９】
Ｓ３で、コアレート生成装置1の差分算出部１３は、中央値算出部を含み、Ｓ２で算出されたカウンタパーティ提示レートの中間値のすべての中央値（ｍｅｄｉａｎ  ｍｉｄ）を算出する。
なお、中間値算出部および中央値算出部は、差分算出部１３に含まれてもよく、あるいは、コアレート生成装置１は、差分算出部１３とは異なる別ユニットとして、中間値算出部および中央値算出部を備えてもよい。
S４で、コアレート生成装置１の重み算出部１４は、Ｓ２で算出された各カウンタパーティのカウンタパーティ提示レートの中間値と、Ｓ３で算出されたすべてのカウンタパーティのカウンタパーティ提示レートの中間値の中央値とに基づいて、それぞれのカウンタパーティのカウンタパーティ提示レートに付与すべき重みＷを算出するが、その詳細は図５を参照して後述する。
【００４０】
Ｓ５で、コアレート生成装置１のレート算出部１５は、各時点ｔにおけるすべてのカウンタパーティの中間値に対して、Ｓ４で算出された重みＷで重み付けし、すべてのカウンタパーティについての重み付けされた中間値の中央値を、コアレート（ｈｏｕｓｅ  ｍｉｄ）として、下記式２のように算出する。
【数１】
0006841982.tif 000002
（式２）
なお、Δtは、サンプリング間隔であって、例えば、１００ｍｓであるがこれに限定されない。
【００４１】
Ｓ６で、コアレート生成装置１のレート算出部１５は、Ｓ５で算出されたコアレートに、所定のスプレッド幅でスキューを付与して、顧客（投資家）に提示すべき投資家提示レートを生成する。なお、スキューを付与する際のスプレッド幅は任意に決定されてよい。
【００４２】
＜各カウンタパーティの重み算出処理詳細＞
図５は、図４のＳ４でコアレート生成装置１の重み算出部１４が実行する、各カウンタパーティの重みＷの算出処理の詳細処理手順の一例を示すフローチャートである。
Ｓ４１で、コアレート生成装置１の重み算出部１４は、各時点ｔにおける各カウンタパーティの真の中央値（ｔｒｕｅ  ｍｉｄ）からのエラーεを下記式３のように算出する。
【数２】
0006841982.tif 000003
（式３）
【００４３】
式３に示されるように、各カウンタパーティのエラーεは、各時点ｔにおける、図４のＳ２で算出された各カウンタパーティのカウンタパーティ提示レートの中間値（ＣＰ  ｍｉｄ）と、すべてのカウンタパーティのカウンタパーティ提示レートの中間値の中央値（ｍｅｄｉａｎ  ｍｉｄ）との差分（絶対差）として算出される。
【００４４】
Ｓ４２で、コアレート生成装置１の重み算出部１４は、Ｓ４１で算出された各カウンタパーティのエラーεを指数関数に入力として、各時点ｔにおける各カウンタパーティ（ＣＰｊ、ｊ＝｛１、…、Ｎ｝）の正確性（精度）（ａｃｃｕｒａｃｙ：ａｃｃ）を下記式４のように算出する。
【数３】
0006841982.tif 000004
（式４）
【００４５】
式４から理解されるように、カウンタパーティＣＰのエラーεの値が増加すると、当該カウンタパーティＣＰの正確性ａｃｃは、指数関数的に減少する。
さらに、調整パラメータλの値が増加すると、正確性ａｃｃは、より急激に減少する。Ｓ４２で算出される正確性ａｃｃは、０と１の間の値を取り、ａｃｃが０に近いほどエラーεの値が大きく、コアレートを算出するために有用でないことを示す。一方、ａｃｃが１に近いほどエラーεの値が小さく、コアレートを算出するため有用であることを示す。すなわち、各カウンタパーティＣＰのエラーεを、式４の指数関数への入力とすることにより、エラーεには指数関数的にペナルティが科されることになる。
【００４６】
式４のように各カウンタパーティの正確性ａｃｃを算出することにより、変則的変動（ブレ）等が生じたカウンタパーティの提示レートの影響を可及的に低減することができ、変則的変動（ブレ）に対して高い堅牢性を有するコアレート生成が実現される。
【００４７】
Ｓ４３で、コアレート生成装置１の重み算出部１４は、所定期間について、Ｓ４２で算出された各カウンタパーティＣＰの正確性ａｃｃの指数平滑移動平均（ｅｘｐｏｎｅｎｔｉａｌ  ｍｏｖｉｎｇ  ａｖｅｒａｇｅ：ｅｍａ）を算出することにより、各時点ｔにおける各カウンタパーティＣＰの重みＷを下記式５のように算出する。
【数４】
0006841982.tif 000005
（式５）
【００４８】
各カウンタパーティＣＰの正確性ａｃｃに対して、指数平滑移動平均関数ｅｍａを適用するため、過去の時点での正確性ａｃｃへの加重を指数関数的に減少させて、正確性ａｃｃの平均値が算出される。すなわち、最新の正確性ａｃｃが2倍されることで直近の正確性が重視されるため、算出される重みＷのデータ鮮度（ｆｒｅｓｈｎｅｓｓ）を高めることができる。
【００４９】
重み算出部１４は、Ｓ４３で算出された各カウンタパーティＣＰに対し、重みＷで重み付けを行う。レート算出部１５は、図４のＳ５で、時点ｔにおけるすべてのカウンタパーティのカウンタパーティ提示レートの中間値の中央値（ｍｅｄｉａｎ  ｍｉｄ）を、時点ｔにおけるコアレートとして算出（生成）する。
【００５０】
図６は、本実施形態のコアレート生成装置１が生成するコアレートと従来のベストレートから算出されるコアレートとを比較する時系列グラフである。
図６を参照して、実線（太線）は、英ポンド／米ドル（ＧＢＰ／米ドル）の通貨ペアにおける複数のカウンタパーティのカウンタパーティ提示レートの真の中間値（Ｔｒｕｅ＿ｍｉｄ）の時系列推移を示す。
図６の一点鎖線は、従来のベストレートから算出されるコアレート（ｂｅｓｔ  ｒａｔｅｓ  ｍｉｄ）の時系列推移を示す。従来のベストレート方式で算出されるコアレートでは、カウンタパーティ提示レートの真の中間値（Ｔｒｕｅ＿ｍｉｄ）の＋／−１ｐｉｐｓの範囲から逸脱している時点が多いことが観察できる。
【００５１】
これに対して、図６の実線（細線）は、本実施形態のコアレート生成装置１が生成するコアレート（ｗｅｉｇｈｔｅｄ  ｍｅｄｉａｎ  ｍｉｄ）を示す。本実施形態に係るコアレートでは、図６の観察期間に亘り、カウンタパーティ提示レートの真の中間値（Ｔｒｕｅ＿ｍｉｄ）の＋／−１ｐｉｐｓの範囲内で、カウンタパーティ提示レートの真の中間値（Ｔｒｕｅ＿ｍｉｄ）に十分に追従していることが分かる。
【００５２】
図６の右上に示されるＴＡＴＥ（Ｔｏｔａｌ  Ａｂｓｏｌｕｔｅ  Ｔｈｒｅｓｈｏｌｄｅｄ  Ｅｒｒｏｒ）は、下記式６で表され、コアレートの評価関数として使用することができる。
【数５】
0006841982.tif 000006
（式６）
ここで、
【数６】
0006841982.tif 000007
は時点ｔ−Δtまでのデータを使用して算出された本実施形態に係るコアレート生成装置１が生成したコアレートの値であり、
【数７】
0006841982.tif 000008
は、時点ｔにおける真のカウンタパーティ提示レートの中間値の中央値である。
【００５３】
ＴＡＴＥの値が小さいほど真の値に近く高精度であり、ＴＡＴＥの値が大きいほど真の値から乖離して低精度になる。機械学習等により、重み付け算出のパラメータηおよび精度（正確性）算出のパラメータλを、所定期間（例えば、１０日間）のデータを入力としてＴＡＴＥの値がより低くなるよう繰り返し学習させて調整することで、これらのパラメータηおよびλを最適化することができる。
【００５４】
＜コアレート生成装置１のハードウエア構成＞
図７は、コアレート生成装置１のハードウエア構成の一例を示す図である。
本実施形態に係るコアレート生成装置１は、単一または複数の、あらゆるコンピュータ、モバイルデバイス、または他のいかなる処理プラットフォーム上に実装することができる。
図７に示すように、コアレート装置１は、ＣＰＵ２１と、ＲＯＭ２２と、ＲＡＭ２３と、外部メモリ２４と、入力部２５と、表示部２６と、通信Ｉ／Ｆ２７と、システムバス２８とを備える。
【００５５】
ＣＰＵ２１は、コアレート生成装置１における動作を統括的に制御するものであり、システムバス２８を介して、各構成部（２２〜２７）を制御する。ＲＯＭ２２は、ＣＰＵ２１が処理を実行するために必要な制御プログラム等を記憶する不揮発性メモリである。なお、当該プログラムは、外部メモリ２４や着脱可能な記憶媒体（不図示）に記憶されていてもよい。ＲＡＭ２３は、ＣＰＵ２１の主メモリ、ワークエリア等として機能する。すなわち、ＣＰＵ２１は、処理の実行に際してＲＯＭ２２から必要なプログラム等をＲＡＭ２３にロードし、当該プログラム等を実行することで各種の機能動作を実現する。
【００５６】
外部メモリ２４は、例えば、ＣＰＵ２１がプログラムを用いた処理を行う際に必要な各種データや各種情報等を記憶している。また、外部メモリ２４には、例えば、ＣＰＵ２１がプログラム等を用いた処理を行うことにより得られた各種データや各種情報等が記憶される。入力部２５は、キーボードやマウス等のポインティングデバイスにより構成される。表示部２６は、液晶ディスプレイ（ＬＣＤ）等のモニターにより構成される。通信Ｉ／Ｆ２７は、コアレート生成装置１とカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎや顧客のコンピュータとの通信を制御するインタフェースである。
【００５７】
図７に示すコアレート生成装置１の各要素のうち少なくとも一部の機能は、ＣＰＵ２１がプログラムを実行することで実現することができる。ただし、図７に示すコアレート生成装置１の各要素のうち少なくとも一部が専用のハードウエアとして動作るようにしてもよい。この場合、専用のハードウエアは、ＣＰＵ２１の制御に基づいて動作する。
なお、図１に示すカウンタパーティ装置２−１、２−２、２−３、・・・２−Ｎも、同様のハードウエア構成で実現することができる。
【００５８】
以上説明したように、本実施形態によれば、コアレート生成装置は、複数のカウンタパーティのそれぞれのレートについて算出された中間値と、複数のカウンタパーティの全体の中間値の中央値との差分（エラー）を、前記複数のカウンタパーティのそれぞれについて算出し、算出された差分に基づいて、複数のカウンタパーティのそれぞれについて重みを導出する。コアレート生成装置はさらに、複数のカウンタパーティのそれぞれについて、算出された中間値に、重みを付与して、コアレートを生成する。
したがって、本実施形態によれば、複数のカウンタパーティから提示されるレートに発生する変則的変動（ブレ）に対して堅牢であり、かつより高精度にコアレートを生成することができる。
【００５９】
なお、上記において特定の実施形態が説明されているが、当該実施形態は単なる例示であり、本発明の範囲を限定する意図はない。本明細書に記載された装置及び方法は上記した以外の形態において具現化することができる。また、本発明の範囲から離れることなく、上記した実施形態に対して適宜、省略、置換及び変更をなすこともできる。かかる省略、置換及び変更をなした形態は、請求の範囲に記載されたもの及びこれらの均等物の範疇に含まれ、本発明の技術的範囲に属する。
【符号の説明】
【００６０】
１…コアレート生成装置、２…カウンタパーティ装置、３…ネットワーク、１１…記憶部、１２…レート取得部、１３…差分算出部、１４…重み算出部、１５…レート算出部、１６…通信部、１７…表示部、２１…ＣＰＵ、２２…ＲＯＭ、２３…ＲＡＭ、２４…外部メモリ、２５…入力部、２６…表示部、２７…通信Ｉ／Ｆ、２８…システムバス
【要約】
コアレート生成装置（１）は、複数のカウンタパーティでそれぞれ生成される複数のレートを取得するレート取得部（１２）と、複数のカウンタパーティの複数のレートの全体の中央値を算出する中央値算出部（１３）と、複数のレートのそれぞれと、中央値との差分を、複数のカウンタパーティのそれぞれについて算出する差分算出部（１３）と、差分に基づいて、複数のカウンタパーティのそれぞれについて重みを導出する重み導出部（１４）と、複数のカウンタパーティのそれぞれについて、レートに重みを付与して、コアレートを生成するコアレート生成部（１５）と、を備える。【図１】
0006841982.tif 000009
【図２】
0006841982.tif 000010
【図３】
0006841982.tif 000011
【図４】
0006841982.tif 000012
【図５】
0006841982.tif 000013
【図６】
0006841982.tif 000014
【図７】
0006841982.tif 000015