【文献】
あなたの明日を変える革命商品 買える!役立つ! 人工知能&IoT Top Tech Trends 2017,日経トレンディ No.417,日経BP社,2017年 5月 4日,第417号,p.55-58
【文献】
高橋 利英,多数決手法によるError Prone予測手法の評価,電子情報通信学会技術研究報告 Vol.112 No.164 IEICE Technical Report,日本,一般社団法人電子情報通信学会,2012年 7月20日,第112巻,p.25-30
【文献】
井上 浩孝,複合ニューラルネットワークを用いた円−ドル為替レート予測に関する研究,電子情報通信学会技術研究報告 Vol.105 No.418 IEICE Technical Report,日本,社団法人電子情報通信学会,2005年11月11日,第105巻,p.13-18
(58)【調査した分野】(Int.Cl.,DB名)
前記予測することは、前記所定の期間の始点から所定の抑制期間内の時期を前記外国通貨の価値が特定の順位の安値となる時期として予測することを抑制することを含む、請求項1〜6のいずれか一項に記載のコンピュータシステム。
前記発行することは、前記予測された前記外国通貨の価値が特定の順位の安値となる時期に前記外国通貨を購入することに対するユーザの入力操作なしに、自動的に行われる、請求項1〜8のいずれか一項に記載のコンピュータシステム。
プロセッサ部と、メモリ部とを備えるコンピュータシステムにおいて実行されるプログラムであって、前記プログラムは、メモリ部に格納されており、前記プログラムは、コンピュータシステムにおいて実行されると、
所定の期間内で外国通貨の価値が特定の順位の安値となる時期を予測することであって、前記予測することは、
前記所定の期間を複数の期間に分割することと、
前記外国通貨の過去の価値変動に基づいて、前記分割後の複数の期間のうち、前記外国通貨の価値が特定の順位の安値となる時期が属する期間を判定することと、
(1)前記外国通貨の価値が特定の順位の安値となる時期が属すると判定された期間をさらに複数の期間に分割することと、
(2)前記外国通貨の過去の価値変動に基づいて、前記分割後の複数の期間のうち、前記外国通貨の価値が特定の順位の安値となる時期が属する期間を判定することと
を、前記外国通貨の価値が特定の順位の安値となる時期が属すると判定された期間が、前記外国通貨の価値が特定の順位の安値となる時期と同じ長さとなるまで繰り返すことと
を含む、ことと、
前記予測された時期に前記外国通貨を購入する購入リクエストを発行することと
を行うことを含む処理を前記プロセッサ部に行わせる、プログラム。
プロセッサ部と、メモリ部とを備えるコンピュータシステムにおいて実行されるプログラムであって、前記プログラムは、メモリ部に格納されており、前記プログラムは、実行されると、
時間の経過につれて価値が変動する外国通貨の過去の価値変動に基づいて、所定の期間内で前記外国通貨の価値が特定の順位の値となる時期を予測することであって、前記予測することは、
前記所定の期間を複数の期間に分割することと、
前記外国通貨の過去の価値変動に基づいて、前記分割後の複数の期間のうち、前記外国通貨の価値が特定の順位の値となる時期が属する期間を判定することと、
(1)前記外国通貨の価値が特定の順位の値となる時期が属すると判定された期間をさらに複数の期間に分割することと、
(2)前記外国通貨の過去の価値変動に基づいて、前記分割後の複数の期間のうち、前記外国通貨の価値が特定の順位の値となる時期が属する期間を判定することと
を、前記外国通貨の価値が特定の順位の値となる時期が属すると判定された期間が、前記外国通貨の価値が特定の順位の値となる時期と同じ長さとなるまで繰り返すことと
を含む、こと
を含む処理を前記プロセッサ部に行わせる、プログラム。
【発明を実施するための形態】
【0028】
以下、図面を参照しながら、本発明の実施の形態を説明する。
【0029】
1.AI外貨積立預金
本発明の発明者は、「AI外貨積立預金」という新しい金融商品を開発した。AI外貨積立預金とは、人工知能(AI)を用いて所定の期間内で対象の外貨が最安値となる日を予測し、対象の外貨が最安値となると予測された日に対象の外貨を購入することにより、その所定の期間ごとに対象の外貨を積み立てる積立預金である。AI外貨積立預金によれば、従来の外貨積立預金よりも有利な為替レートで外貨を購入することが可能である。その結果、為替レートの変動によるリスクをさらに低く抑えることが可能である。ここで、AIとは、“Artificial Intelligence”の略語であり、人間の知能(もしくは、人間の知能を凌駕する知能)を人工的にコンピュータシステム上に実装するための技術、または、そのような技術が実装されたコンピュータシステムをいう。
【0030】
図1は、AI外貨積立預金におけるユーザと銀行と外国為替市場との間のデータフローの一例を示す。
図1に示される例では、4月から毎月対象の外貨が積み立てられるものとする。以下、
図1に示される各ステップを説明する。
【0031】
ステップS101:ユーザ10は、AI外貨積立預金の申し込みを銀行20に対して行う。これにより、AI外貨積立預金のデータフローが開始する。AI外貨積立預金の申し込みは、例えば、ユーザ10がユーザ装置(例えば、スマートフォン)を用いて銀行20の銀行システムにアクセスし、所定の申し込み手順に従ってユーザがユーザ装置を操作することによって行われる。あるいは、このような申し込みは、ユーザ10がAI外貨積立預金の申込書を銀行20の窓口に提出することによって行われてもよい。ユーザ10は、申し込みにおいて、例えば、積立通貨、積立金額、目標金額等を設定する。例えば、ユーザ10は、申し込みにおいて、豪ドルを、1万円分、100万円分貯まるまで積み立てることを設定し得る。このとき、ユーザ10は、積立のタイミング(例えば、毎月どの日に豪ドルを購入するか)を設定することができない。
【0032】
銀行20は、AI外貨積立預金の申し込みを受け、その申し込みに対する手続きを行う。銀行20による手続きが完了すると、銀行20の銀行システムがAI外貨積立預金のための処理を実行する。
【0033】
銀行20の銀行システムは、例えば、4月の初日に、4月中で対象の外貨が最安値となる日を予測する。このような予測は、AI(人工知能)を用いて行われる。例えば、4月14日が対象の外貨が最安値となる日であると予測されたとする。
【0034】
ステップS102:銀行20は、4月14日に、ユーザ10が設定した金額の日本円を用いて対象の外貨を購入する旨の購入リクエストを外国為替市場30に送信する。
【0035】
ステップS103:外国為替市場30は、銀行20からの購入リクエストに応答して、4月14日の為替レートで対象の外貨を銀行20に販売する。銀行20は、外国為替市場30から4月分として購入した対象の外貨をユーザ10の口座に積み立てる。
【0036】
ステップS104:銀行20は、4月分として購入した対象の外貨をユーザ10の口座に積み立てた旨をユーザ10に報告する。
【0037】
銀行20の銀行システムは、例えば、5月の初日に、5月中で対象の外貨が最安値となる日を予測する。このような予測は、AI(人工知能)を用いて行われる。例えば、5月2日が対象の外貨が最安値となる日であると予測されたとする。
【0038】
ステップS105:銀行20は、5月2日に、ユーザ10が設定した金額の日本円を用いて対象の外貨を購入する旨の購入リクエストを外国為替市場30に送信する。
【0039】
ステップS106:外国為替市場30は、銀行20からの購入リクエストに応答して、5月2日の為替レートで対象の外貨を銀行20に販売する。銀行20は、外国為替市場30から5月分として購入した対象の外貨をユーザ10の口座に積み立てる。
【0040】
ステップS107:銀行20は、5月分として購入した対象の外貨をユーザ10の口座に積み立てた旨をユーザ10に報告する。
【0041】
銀行20の銀行システムは、例えば、6月の初日に、6月中で対象の外貨が最安値となる日を予測する。このような予測は、AI(人工知能)を用いて行われる。例えば、6月28日が対象の外貨が最安値となる日であると予測されたとする。
【0042】
ステップS108:銀行20は、6月28日に、ユーザ10が設定した金額の日本円を用いて対象の外貨を購入する旨の購入リクエストを外国為替市場30に送信する。
【0043】
ステップS109:外国為替市場30は、銀行20からの購入リクエストに応答して、6月28日の為替レートで対象の外貨を銀行20に販売する。銀行20は、外国為替市場30から6月分として購入した対象の外貨をユーザ10の口座に積み立てる。
【0044】
ステップS110:銀行20は、6月分として購入した対象の外貨をユーザ10の口座に積み立てた旨をユーザ10に報告する。
【0045】
このようにして、AI外貨積立預金では、AI(人工知能)を用いて所定の期間内で対象の外貨が最安値となる日が予測され、対象の外貨が最安値となると予測された日に対象の外貨が購入される。このようにして、所定の期間ごとに外貨が積み立てられていく。これにより、AI外貨積立預金によれば、毎月一定の期日に外貨を購入する従来の外貨積立預金よりも有利な為替レートで外貨を購入して積み立てることが可能である。その結果、為替レートの変動によるリスクをさらに低く抑えることが可能である。これにより、任意の外貨購入周期末の時点における、マーク・トゥ・マーケットによる外貨資産の評価額を大きくすることができる。
【0046】
なお、AIによる対象の外貨が最安値となる日の予測は、あくまでも予測であり、その日に最安値となることを保証するものではない。しかしながら、AIによる予測精度を向上させることにより、より確実に、より有利な為替レートで積み立てを実行することが可能である。
【0047】
図1を参照して上述した実施形態では、AIによる対象の外貨が最安値となる日の予測が取引月の初日に行われる例を説明したが、その予測が行われるタイミングはこれに限定されない。例えば、取引期間に至る前(例えば、取引月の前日)に、その予測が行われるようにしてもよい。
【0048】
図1を参照して上述した実施形態では、AIを用いて、所定の期間内で対象の外貨が最安値となる日を予測したが、本発明はこれに限定されない。AIを用いて、所定の期間内で対象の外貨が最安値となる日以外の日、例えば、所定の期間内で対象の外貨が2番目に安い値となる日、5番目に安い値となる日、10番目に安い値となる日、14番目に安い値となる日等を予測するようにしてもよい。これは、価値変動のランダム性が高く、予測が難しい外貨を積み立てる場合に、より有効な手法である。価値変動のランダム性が高く、予測が難しい外貨では、最安値を敢えて狙わないことで、最安値を取らないにしても最高値を回避することができるため、最終的な期待値が向上する。
【0049】
図1を参照して上述した実施形態では、銀行20が対象の外貨を積み立てるごとにユーザ10に報告したが、ユーザ10への報告の要否およびタイミングは任意である。例えば、銀行20からユーザ10に対して能動的に報告しなくてもよいし、一定の回数の積立が終了した後にユーザに報告してもよい。
【0050】
図1を参照して上述した実施形態では、新しい金融商品の一例としてAI外貨積立預金を説明したが、新しい金融商品はこれに限定されない。例えば、取引は、購入または積立に限定されない。取引は、売却であってもよい。このとき、AI(人工知能)を用いて所定の期間内で対象の外貨が最高値となる日が予測され、対象の外貨が最高値となると予測された日に対象の外貨が売却される。例えば、取引の対象は、外貨に限定されない。取引の対象は、時間の経過につれて価値が変動する任意のアセット(以下、「価値変動アセット」ともいう)であり得る。価値変動アセットの一例は、外貨、投資信託、金、コモディティ(原油、とうもろこし等)などであるが、これらには限定されない。すなわち、新しい金融商品は、人工知能(AI)を用いて所定の期間内で対象の価値変動アセットが特定値(最高値、最安値、14番目に安い値、または、5番目に高い値等の特定の順位の値)となる時期(例えば、秒、分、時、日、または週等)を予測し、対象の価値変動アセットが最安値または特定の順位の安値となると予測された時期内に対象の価値変動アセットを購入するか、または、対象の価値変動アセットが最高値または特定の順位の高値となると予測された時期内に対象の価値変動アセットを売却することにより、価値変動アセットのポートフォリオの形成を行うことを可能にする商品である。この新しい金融商品によれば、従来の積立型金融商品よりも有利な価格で価値変動アセットを購入または売却することが可能である。その結果、価値変動によるリスクをさらに低く抑えるとともに、その評価額を大きくすることが可能である。
【0051】
2.新しい金融商品を実現するためのコンピュータシステムの構成
図2は、上述した新しい金融商品を実現するためのコンピュータシステム200の構成の一例を示す。
【0052】
コンピュータシステム200は、例えば、銀行20において用いられるコンピュータシステムである。
【0053】
コンピュータシステム200は、ネットワーク400を介して、アセット取引コンピュータシステム300と接続される。ここで、ネットワーク400の種類は問わない。ネットワーク400は、例えば、インターネットであってもよいし、LANであってもよい。
【0054】
アセット取引コンピュータシステム300は、価値変動アセットの取引のための処理を実行することができるサーバ装置等を含むコンピュータシステムである。アセット取引コンピュータシステム300は、例えば、外国為替市場30において用いられるコンピュータシステムである。アセット取引コンピュータシステム300は、例えば、外国為替市場30に参加している短資会社等の売買仲介事業者または売買当事者の所管するコンピュータシステムであってもよい。アセット取引コンピュータシステム300は、価値変動アセットの購入のリクエストに応答して、価値変動アセットを販売する処理を行うように構成されている。また、アセット取引コンピュータシステム300は、価値変動アセットの売却のリクエストに応答して、価値変動アセットを購入する処理を行うように構成されている。コンピュータシステム200は、アセット取引コンピュータシステム300と接続されていることにより、価値変動アセットの取引を行うことが可能である。
【0055】
コンピュータシステム200は、サーバ装置210と、サーバ装置210に接続されるデータベース部220とを備える。サーバ装置210は、インターフェース部211と、プロセッサ部212と、メモリ部213とを備える。
【0056】
インターフェース部211は、ネットワーク400を介した通信を制御するように構成されている。インターフェース部211は、サーバ装置210の外部に情報を送信することが可能であり、ユーザ装置210の外部から情報を受信することが可能である。例えば、インターフェース部211は、ネットワーク400を介して、価値変動アセットの購入のリクエストをアセット取引コンピュータシステム300に送信する。例えば、インターフェース部211は、ネットワーク400を介して、価値変動アセットの売却のリクエストをアセット取引コンピュータシステム300に送信する。例えば、インターフェース部211は、サーバ装置210に接続されているデータベース部220に情報を送信し、データベース部220から情報を受信する。
【0057】
プロセッサ部212は、サーバ装置210全体の動作を制御する。プロセッサ部212は、メモリ部213に格納されているプログラムを読み出し、そのプログラムを実行する。これにより、サーバ装置210を所望のステップを実行する装置として機能させることが可能である。例えば、プロセッサ部212は、価値変動アセットを積み立てる処理の一部または全部を行うことができる。プロセッサ部212は、単一のプロセッサによって実装されてもよいし、複数のプロセッサによって実装されてもよい。
【0058】
メモリ部213には、サーバ装置210における処理を実行するためのプログラムやそのプログラムの実行に必要とされるデータ等が格納されている。メモリ部213には、例えば、価値変動アセットの取引を行うためのプログラム、または、価値変動アセットを積み立てるためのプログラム(例えば、後述する
図5および
図6A〜
図6Cに示される処理を実現するプログラム)の一部または全部が格納されている。ここで、プログラムをどのようにしてメモリ部213に格納するかは問わない。例えば、プログラムは、メモリ部213にプリインストールされていてもよい。あるいは、プログラムは、ネットワーク400を経由してダウンロードされることによってメモリ部213にインストールされるようにしてもよい。メモリ部213は、任意の記憶手段によって実装され得る。
【0059】
データベース部220には、ユーザ毎に価値変動アセットの積立に関する情報が格納される。価値変動アセットの積立に関する情報は、価値変動アセットの積立先の情報を含む。価値変動アセットの積立先の情報は、例えば、価値変動アセットの積立先に積み立てられた価値変動アセットに関する情報(例えば、価値変動アセットの購入時間、価値変動アセットの購入価格、価値変動アセットの購入量、価値変動アセットの積立量等)を含んでもよい。価値変動アセットの積立先の情報は、価値変動アセットの積立先から売却された価値変動アセットに関する情報(例えば、価値変動アセットの売却時間、価値変動アセットの売却価格、価値変動アセットの売却量等)も含み得る。価値変動アセットが外貨の場合、価値変動アセットの積立先の情報は、外貨積立用口座の情報であり、外貨積立用口座に積み立てられた外貨に関する情報(例えば、外貨の購入日時、外貨の購入価格、外貨の購入量、外貨の積立総額等)および外貨積立用口座から売却された外貨に関する情報(例えば、外貨の売却日時、外貨の売却価格、外貨の売却量等)を含み得る。
【0060】
データベース部220には、例えば、過去の価値変動データも格納され得る。過去の価値変動データは、将来の価値変動を予測するために、後述する特定値予測AIの学習のために用いられ得る。学習に用いられる過去の価値変動データは、購入用通貨(例えば、日本円)に対する対象のアセットの価値変動データ(例えば、日本円で米ドルを購入して積み立てる場合は、日本円に対する米ドルの価値変動データ)を含み得る。学習に用いられる過去の価値変動データは、購入用通貨に対する対象のアセットの価値変動データに加えて、他の通貨(例えば、米ドル、豪ドル、ユーロ、NZドル等)に対する対象のアセットの価値変動データ、または、S&P500指数、日経平均株価、ドイツ株価指数、あるいは、WTI原油価格等のデータを含んでもよい。データベース部220には、例えば、学習した価値変動傾向も格納され得る。後述する特定値予測AIが多層パーセプトロンを利用する場合、データベース部220には、学習によって確立された各ノードの重みベクトルが格納されるようにしてもよい。
【0061】
図3は、データベース部220に格納される価値変動アセットの積立に関する情報のデータ構成の一例を示す。
【0062】
図3に示される例では、価値変動アセットが外貨の場合に、データベース部220に格納される情報のデータ構成の一例が示されている。
【0063】
データベース部220は、ユーザ毎に、外貨積立用口座の情報を格納している。データベース部220は、第1のユーザの外貨積立用口座の情報を格納するためのデータベース221と、第2のユーザの外貨積立用口座の情報を格納するためのデータベース222とを含む。第1のユーザの外貨積立用口座の情報を格納するためのデータベース221は、例えば、2017年4月からドル建て積立預金を開始した第1のユーザの外貨積立用口座番号、外貨の購入日時、外貨の購入価格、外貨の積立総額を含む。例えば、データベース221は、第1のユーザが2017年4月14日に113ドルを購入し、積立総額が113ドルとなったという情報を格納し、第1のユーザが2017年5月2日に119ドルを購入し、積立総額が232ドルとなったという情報を格納し、第1のユーザが2017年6月28日に125ドルを購入し、積立総額が357ドルとなったという情報を格納し、第1のユーザが2017年7月10日に110ドルを購入し、積立総額が467ドルとなったという情報を格納し得る。第2のユーザの外貨積立用口座の情報を格納するためのデータベース222は、例えば、2016年7月からユーロ建て積立預金を開始した第2のユーザの外貨積立用口座番号、外貨の購入日時、外貨の購入価格、外貨の積立総額を含む。例えば、データベース221は、第2のユーザが2016年7月12日に520ユーロを購入し、積立総額が520ユーロとなったという情報を格納し得る。
【0064】
所定の期間内で価値変動アセットの価値が特定値(例えば、最安値、最高値、14番目に安い値、または、5番目に高い値等の特定の順位の値)となる時期(例えば、秒、分、時、日、または週等)を予測することが可能なAI(以下、「特定値予測AI」ともいう)は、上述した構成を有するコンピュータシステム200によって実現される。特定値予測AIは、予測モデルとして多層パーセプトロン450を利用する。
【0065】
図4は、特定値予測AIが利用する多層パーセプトロン450の一例を示す。
【0066】
多層パーセプトロン450は、入力層と、隠れ層と、出力層とを有する。
図4に示される例では、多層パーセプトロン450が2層の隠れ層を有するように示されているが、隠れ層の数はこれに限定されない。多層パーセプトロン450は、1以上の隠れ層を備えることができる。また、多層パーセプトロン450の入力層、隠れ層、および出力層の各層は、任意の数のノードを含むことができる。例えば、入力層から出力層に向かうにつれてノードが減少していくように、各層がノードを含むようにしてもよいし、各隠れ層が同数のノードを含むようにしてもよい。
【0067】
特定値予測AIは、多層パーセプトロン450を利用して過去の価値変動データを学習することにより、価値変動アセットの価値の将来の変動を予測することができる。学習される過去の価値変動データは、例えば、購入用通貨(例えば、日本円)に対する予測対象のアセットの価値変動データを含む。これに加えて、学習される過去の価値変動データは、購入用通貨以外の通貨(例えば、米ドル、豪ドル、ユーロ、NZドル等)に対する予測対象のアセットの価値変動データを含んでもよく、または、S&P500指数、日経平均株価、ドイツ株価指数、あるいは、WTI原油価格等の予測対象のアセット以外のアセット価格データを含んでもよい。特定値予測AIは、過去の価値変動データを教師データとして学習することにより、多層パーセプトロン450の各ノードの重みベクトルを確立することができる。例えば、特定値予測AIは、少なくとも1種類の価値変動データの一定期間のデータを教師用入力データとし、その一定期間後の予測対象のアセットの価値変動データを教師用出力データとして、学習を行うことができる。
【0068】
教師用出力データは、例えば、一定期間後の予測対象のアセットの所定期間の平均値であってもよい。このような教師用出力データによる学習によって確立された各ノードの重みベクトルを有する多層パーセプトロン450は、直前の期間の価値変動データを入力されると、将来の所定期間の平均値の予測を出力することができるようになる。
【0069】
教師用出力データは、例えば、予測対象のアセットが、一定期間後の或る期間(例えば、1月、10営業日、6営業日、2営業日等)の前半に最安値となるか後半に最安値となるかを示す2値(0または1)であってもよい。このような教師用出力データによる学習によって確立された各ノードの重みベクトルを有する多層パーセプトロン450は、直前の期間の価値変動データを入力されると、将来の或る期間(例えば、1月、10営業日、6営業日、2営業日等)の前半に最安値となるか後半に最安値となるかの予測を出力することができるようになる。
【0070】
教師用出力データは、例えば、予測対象のアセットが、一定期間後の或る期間(例えば、1月、10営業日、6営業日、2営業日等)を複数の期間に分割した期間のうちのどの期間に最安値となるかを示す値であってもよい。このような教師用出力データによる学習によって確立された各ノードの重みベクトルを有する多層パーセプトロン450は、直前の期間の価値変動データを入力されると、将来の或る期間(例えば、1月、10営業日、8営業日、4営業日等)を複数の期間に分割した期間のうちのどの期間に最安値となるかの予測を出力することができるようになる。
【0071】
特定値予測AIは、多層パーセプトロン450を利用して、過去の価値変動データから、例えば、「大きな上げトレンドの月は、月の前半が最安値になりやすく、月の後半が最高値になりやすい」、「大きな下げトレンドの月は、月の後半が最安値になりやすく、月の前半が最高値になりやすい」、「下げトレンドのときは週末よりも週明けのほうが最安値になりやすい」、「上げトレンドのときは週明けよりも週末のほうが最安値になりやすい」等のトレンドに基づいた価値変動傾向を学習することができる。特定値予測AIは、過去の価値変動データから、例えば、「ある閾値以上上昇した日の後は必ず下降する」、「ある閾値以上下降した日の後は必ず上昇する」等の変動量に基づいた価値変動傾向を学習することができる。学習結果は、過去の変動データとともにデータベース部220に格納される。
【0072】
特定値予測AIは、多層パーセプトロン450を利用して、学習結果に基づいて、所定の期間内で価値変動アセットの価値が特定値(例えば、最安値、最高値、14番目に安い値、または、5番目に高い値等の特定の順位の値)となる時期(例えば、秒、分、時、日、または週等)を予測する。予測の処理のための多層パーセプトロン450への入力は、予測対象の所定の期間の直前の期間の価値変動データであり得る。予測の処理のための多層パーセプトロン450への入力は購入用通貨(例えば、日本円)に対する予測対象のアセットの価値変動データであり得るが、購入用通貨以外の通貨(例えば、米ドル、豪ドル、ユーロ、NZドル等)に対する対象のアセットの価値変動データであってもよく、あるいは、S&P500指数、日経平均株価、ドイツ株価指数、または、WTI原油価格等の予測対象のアセット以外のアセット価格データを予測の処理における入力としてもよい。多層パーセプトロン450への入力は、例えば、予測対象の所定の期間の直前16日間の価値変動データ、直前32日間の価値変動データ、または、直前64日間の価値変動データであり得る。多層パーセプトロン450へ入力されるデータが多いほど、予測精度はより向上するが、データの増加に伴い計算量が増加する点に留意すべきである。また、学習した過去の価値変動データが多いほど、予測精度はより向上するが、これもまた、データの増加に伴い学習のための計算量が増加する点に留意すべきである。さらに、学習した過去の価値変動データの種類が多いほど、予測精度はより向上するが、予測のために関連のないデータを学習させてしまうと、特定値予測AIが混乱し、予測精度が下がってしまうおそれがある点に留意すべきである。
【0073】
多層パーセプトロン450は、予測モデルの一例であり、特定値予測AIは、他の任意の予測モデルを利用して価値変動アセットの価値が特定値となる時期を予測することができる。例えば、特定値予測AIは、CNN(畳み込みニューラルネットワーク)、リカレントニューラルネットワーク(RNN)等を予測モデルとして利用して価値変動アセットの価値が特定値となる時期を予測することができる。概して、多層パーセプトロン450よりも、CNNのほうが予測精度が良い。
【0074】
特定値予測AIは、複数の予測モデルを利用して、価値変動アセットの価値が特定の順位の値となる時期を予測することができる。複数の予測モデルは、例えば、学習に用いられる過去の価値変動データの種類または量が異なる複数の予測モデルであり得る。複数の予測モデルは、例えば、予測のために入力される直前の期間の価値変動データの種類または量が異なる複数の予測モデルであり得る。複数の予測モデルは、例えば、多層パーセプトロン450を利用する予測モデル、CNNを利用する予測モデル、RNNを利用する予測モデル等の利用するニューラルネットワークの種類がそれぞれ異なる複数の予測モデルであり得る。特定値予測AIは、複数の予測モデルのそれぞれを用い、それぞれの予測結果の多数決をとって、価値変動アセットの価値が特定の順位の値となる時期を予測することにより、予測精度を向上させることが可能である。
【0075】
図2に示される例では、サーバ装置210の各構成要素がサーバ装置210内に設けられているが、本発明はこれに限定されない。サーバ装置210の各構成要素のいずれかがサーバ装置210の外部に設けられることも可能である。例えば、プロセッサ部212、メモリ部213のそれぞれが別々のハードウェア部品で構成されている場合には、各ハードウェア部品が任意のネットワークを介して接続されてもよい。このとき、ネットワークの種類は問わない。各ハードウェア部品は、例えば、LANを介して接続されてもよいし、無線接続されてもよいし、有線接続されてもよい。
【0076】
図2に示される例では、データベース部220は、サーバ装置210の外部に設けられているが、本発明はこれに限定されない。データベース部220をサーバ装置210の内部に設けることも可能である。このとき、データベース部220は、メモリ部213を実装する記憶手段と同一の記憶手段によって実装されてもよいし、メモリ部213を実装する記憶手段とは別の記憶手段によって実装されてもよい。いずれにせよ、データベース部220は、サーバ装置210のための記憶部として構成される。データベース部220の構成は、特定のハードウェア構成に限定されない。例えば、データベース部220は、単一のハードウェア部品で構成されてもよいし、複数のハードウェア部品で構成されてもよい。例えば、データベース部220は、サーバ装置210の外付けハードディスク装置として構成されてもよいし、ネットワーク400を介して接続されるクラウド上のストレージとして構成されてもよい。
【0077】
3.新しい金融商品を実現するためのコンピュータシステムにおける処理
図5は、新しい金融商品を実現するためのコンピュータシステム200における処理500の一例を示す。ここでは、時間の経過につれて価値が変動するアセットを積み立てるための処理500を例に説明する。
【0078】
ステップS501において、コンピュータシステム200によって実現される特定値予測AIが、所定の期間内で価値変動アセットの価値が最安値となる時期を予測する。特定値予測AIは、例えば、
図5を参照して後述する処理によって、所定の期間内で価値変動アセットの価値が最安値となる時期を予測する。ここで、所定の期間は、価値変動アセットを積み立てる間隔であり得る。例えば、毎月価値変動アセットを積み立てる場合、所定の期間は1月(または23営業日)であり得る。例えば、毎週価値変動アセットを積み立てる場合、所定の期間は1週間(または5営業日)であり得る。例えば、毎日価値変動アセットを積み立てる場合、所定の期間は1日(または9時間)であり得る。所定の期間内で価値変動アセットの価値が最安値となる時期は、例えば、秒、分、時、日、または週等の任意の時間単位であり得る。
【0079】
ステップS501で予測された価値変動アセットの価値が最安値となる時期に至ると、ステップS502において、サーバ装置210のプロセッサ部212が、価値変動アセットを購入する処理を実行する。具体的には、プロセッサ部212は、インターフェース部211を介して、アセット取引コンピュータシステム300に価値変動アセットの購入リクエストを送信し、アセット取引コンピュータシステムから所望の価値変動アセットを購入する処理を実行する。プロセッサ部212は、購入した価値変動アセットの情報をデータベース部220に格納し得る。
【0080】
ステップS501およびステップS502を繰り返すことにより、所定の期間ごとに価値変動アセットが積み立てられる。積み立てられた価値変動アセットの情報はデータベース部220に格納される。
【0081】
なお、ステップS501の後、ステップS502の前に、ステップS501で予測された価値変動アセットの価値が最安値となる時期に価値変動アセットを購入することについてユーザに確認をとるために、ユーザに入力操作を行わせるようにしてもよい。しかし、ステップS502は、ユーザによる入力操作なしに、自動的に行われるのが好ましい。価値変動アセットを購入する度にユーザが確認する必要があることは、ユーザにとって煩わしく、利便性を損なうからである。ステップS502を自動的に行うことについては、例えば、ユーザによる価値変動アセット積立の申し込み時に、ユーザの同意を得ておいてもよい。
【0082】
上述した例では、ステップS501で、所定の期間内で価値変動アセットの価値が最安値となる時期を予測したが、ステップS501の代わりのステップS501’で、所定の期間内で価値変動アセットの価値が特定の順位の安値(例えば、2番目に安い値、5番目に安い値、10番目に安い値、14番目に安い値、すなわち、n番目に安い値(nは2以上の整数))となる時期を予測するようにしてもよい。これは、価値変動アセットの価値変動のランダム性が高く、予測が難しい場合に、より有効な手法である。最安値を敢えて狙わないことで、最安値を取らないにしても最高値を回避することができるため、最終的な期待値が向上する。これにより安定したアセット購入を達成することができる。
【0083】
なお、コンピュータシステム200における処理は、時間の経過につれて価値が変動するアセットを売却するための処理であってもよい。この場合、ステップS501において、特定値予測AIが、所定の期間内で価値変動アセットの価値が最高値となる時期を予測し、予測された価値変動アセットの価値が最高値となる時期に至ると、ステップS502において、サーバ装置210のプロセッサ部212が、価値変動アセットを売却する処理を実行するようにしてもよい。この場合でも、上述したステップS501’の場合と同様に、所定の期間内で価値変動アセットの価値が特定の順位の高値(例えば、2番目に高い値、5番目に高い値、10番目に高い値、14番目に高い値、すなわち、n番目に高い値(nは2以上の整数)となる時期を予測するようにしてもよい。これは、価値変動アセットの価値変動のランダム性が高く、予測が難しい場合に、より有効な手法である。最高値を敢えて狙わないことで、最高値を取らないにしても最安値を回避することができるため、最終的な期待値が向上する。これにより安定したアセット売却を達成することができる。
【0084】
すなわち、コンピュータシステム200における処理は、ステップS501において、特定値予測AIが、所定の期間内で価値変動アセットの価値が特定値(最高値、最安値、n番目に安い値、または、n番目に高い値(nは2以上の整数)等の特定の順位の値)となる時期を予測し、予測された価値変動アセットの価値が特定値となる時期に至ると、ステップS502において、サーバ装置210のプロセッサ部212が、価値変動アセットを取引する(購入または売却する)処理を実行する処理であり得る。
【0085】
最安値/最高値となる時期を予測する代わりに、特定の順位の値となる時期を予測するようにすることは、例えば、所定の期間毎に切り替えてもよい。例えば、或る月に、トレンドが強く出る(価値変動が直線的である)ことが予測されるときは、最安値/最高値となる時期を予測するようにしてもよいし、別の月に、トレンドが出ない(価値変動が曲線的に上下する)ことが予測されるときは、最安値/最高値となる時期を予測する代わりに、特定の順位の値となる時期を予測するようにしてもよい。この予測は、例えば、任意のトレンド予測手法および/またはボラティリティ予測手法を用いて行われてもよい。
【0086】
最安値/最高値となる時期を予測する代わりに、特定の順位の値となる時期を予測するようにすることは、対象の価値変動アセット毎に切り替えてもよい。例えば、或る価値変動アセットにおいて、過去の価値変動データを分析し、1年間で12分の9以上の月でトレンドが出ないと判断されたときは、その価値変動アセットを対象とする際は、最安値/最高値となる時期を予測する代わりに、特定の順位の値となる時期を予測するようにしてもよい。
【0087】
特定の順位の値となる時期を予測するとき、特定の順位は、価値変動アセットの価格変動を考慮して、特定値予測AIによって設定させられてもよいし、手動で設定されてもよい。また、特定の順位は、対象の価値変動アセット毎に個別に設定されてもよい。特定の順位を何位にするかは、例えば、バックテストを用いて最適な順位を検証するようにしてもよい。
【0088】
図6Aは、ステップS501で特定値予測AIが所定の期間内で価値変動アセットの価値が最安値となる時期を予測する処理の一例を示す。特定値予測AIは、下記に説明されるように、二分探索により、所定の期間内で価値変動アセットの価値が最安値となる時期を予測する。二分探索では、探索の幅に応じて適切な予測モデルを利用することができるため、精度よく予測を行うことができる。例えば、探索の幅が長期にわたる場合は長期の変動を予測するための予測モデルを利用し、探索の幅が短期になるにつれて、短期の変動を予測するための予測モデルを利用することができる。概して、長期の変動を予測する予測モデルよりも短期の変動を予測するモデルの方が予測精度は良い。
【0089】
ステップS601において、特定値予測AIは、所定の期間を2つの期間に分割する。例えば、所定の期間が2月(46営業日)である場合、特定値予測AIは、46営業日を、第1営業日〜第23営業日を含む第1の期間と、第24営業日〜第46営業日を含む第2の期間とに分割し得る。例えば、所定の期間が1月(23営業日)である場合、特定値予測AIは、23営業日を、第1営業日〜第12営業日を含む第1の期間と、第13営業日〜第23営業日を含む第2の期間とに分割し得る。例えば、所定の期間が1週間(5営業日)である場合、第1営業日〜第3営業日を含む第1の期間と、第4営業日〜第5営業日を含む第2の期間とに分割し得る。このように分割後の2つの期間は、同一の長さであってもよく、異なる長さであってもよい。分割後の2つの期間は、それぞれ、任意の長さの期間を含み得る。
【0090】
ステップS602において、特定値予測AIは、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。価値変動アセットの価値が最安値となる時期が属する期間は、例えば、予測対象期間の変動を予測する予測モデルを利用して判定され得る。価値変動アセットの価値が最安値となる時期が属する期間を判定するために、特定値予測AIは、例えば、分割後の2つの期間のうち、価値変動アセットの価値の平均値が低い期間を判定する。これは、統計的には、価値変動アセットの価値が最安値となる時期が、価値変動アセットの価値の平均値が低い期間の方に属する可能性が高いという事実に基づいている。このとき特定値予測AIは、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している。
【0091】
ステップS602で、特定値予測AIは、複数の予測モデルを利用して、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定するようにしてもよい。このとき、例えば、
図6Bに示される処理を行ってもよい。
【0092】
図6Bは、ステップS602の処理を複数の予測モデルを利用して行う場合の処理の一例を示す。
【0093】
ステップS602−1で、特定値予測AIは、複数の予測モデルのそれぞれを用いて、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。例えば、特定値予測AIが5つの予測モデルを利用する場合、第1の予測モデルを用いて、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定し、第2の予測モデルを用いて、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定し、・・・第5の予測モデルを用いて、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。価値変動アセットの価値が最安値となる時期が属する期間の判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後の2つの期間のうち、価値変動アセットの価値の平均値が低い期間を判定することによって行われてもよい。価値変動アセットの価値が最安値となる時期が属する期間の判定は、例えば、将来の或る期間の前半に最安値となるか後半に最安値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。
【0094】
次に、ステップS602−2で、特定値予測AIは、ステップS601での分割後の2つの期間のうち、より多くの予測モデルによって価値変動アセットの価値が最安値となる時期が属する期間であると判定された期間を、価値変動アセットの価値が最安値となる時期が属する期間であると決定する。複数の予測モデルを利用して価値変動アセットの価値が最安値となる時期が属する期間を判定することで、予測精度を向上させることができる。例えば、第1の予測モデルによって、ステップS601での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第2の予測モデルによって、ステップS601での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第3の予測モデルによって、ステップS601での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第4の予測モデルによって、ステップS601での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第5の予測モデルによって、ステップS601での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定された場合、ステップS601での分割後の2つの期間のうちの前半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数の方が、ステップS601での分割後の2つの期間のうちの後半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数よりも多いため、特定値予測AIは、多数決で、ステップS601での分割後の2つの期間のうちの前半の期間を、価値変動アセットの価値が最安値となる時期が属する期間であると決定する。
【0095】
例えば、価値変動アセットの価値が最安値となる時期が属する期間が前半の期間であると判定した予測モデルの数と、価値変動アセットの価値が最安値となる時期が属する期間が後半の期間であると判定した予測モデルの数とが同一である場合、予め定めた方の期間を、価値変動アセットの価値が最安値となる時期が属する期間であると決定するようにしてもよいが、後半の期間を価値変動アセットの価値が最安値となる時期が属する期間であると決定するようにすることが好ましい。後述するように、前半の期間の方が潜在的なリスクが大きいからである。
【0096】
再び
図6Aに戻って、ステップS603において、特定値予測AIは、ステップS602で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さであるか否かを判定する。ステップS602で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さでないと判定された場合(Noの場合)、ステップS604に進む。ステップS602で価値変動アセットの価値が最安値となる日が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さであると判定された場合(Yesの場合)、S606に進み、処理が終了する。ステップS602で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期であると決定することができるからである。
【0097】
ステップS604において、特定値予測AIは、価値変動アセットの価値が最安値となる時期が属すると判定された期間をさらに2つの期間に分割する。例えば、価値変動アセットの価値が最安値となる時期が属すると判定された期間が11営業日である場合、特定値予測AIは、11営業日を、第1営業日〜第6営業日を含む第1の期間と、第7営業日〜第11営業日を含む第2の期間とに分割し得る。例えば、価値変動アセットの価値が最安値となる時期が属すると判定された期間が6営業日である場合、特定値予測AIは、6営業日を、第1営業日〜第3営業日を含む第1の期間と、第4営業日〜第6営業日を含む第2の期間とに分割し得る。このように分割後の2つの期間は、同一の長さであってもよく、異なる長さであってもよい。分割後の2つの期間は、それぞれ、任意の長さの期間を含み得る。
【0098】
ステップS605において、特定値予測AIは、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。価値変動アセットの価値が最安値となる時期が属する期間は、例えば、予測対象期間の変動を予測する予測モデルを利用して判定され得る。価値変動アセットの価値が最安値となる時期が属する期間を判定するために、特定値予測AIは、例えば、分割後の2つの期間のうち、価値変動アセットの価値の平均値が低い期間を判定する。これは、統計的には、価値変動アセットの価値が最安値となる時期が、価値変動アセットの価値の平均値が低い期間の方に属する可能性が高いという事実に基づいている。このとき特定値予測AIは、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している。
【0099】
ステップS605で、特定値予測AIは、複数の予測モデルを利用して、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定するようにしてもよい。このとき、例えば、
図6Bに示される処理と同様の処理を行うようにしてもよい。
【0100】
ステップS605−1で、特定値予測AIは、複数の予測モデルのそれぞれを用いて、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。例えば、特定値予測AIが5つの予測モデルを利用する場合、第1の予測モデルを用いて、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定し、第2の予測モデルを用いて、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定し、・・・第5の予測モデルを用いて、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。価値変動アセットの価値が最安値となる時期が属する期間の判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後の2つの期間のうち、価値変動アセットの価値の平均値が低い期間を判定することによって行われてもよい。価値変動アセットの価値が最安値となる時期が属する期間の判定は、例えば、将来の或る期間の前半に最安値となるか後半に最安値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。
【0101】
次に、ステップS605−2で、特定値予測AIは、ステップS604での分割後の2つの期間のうち、より多くの予測モデルによって価値変動アセットの価値が最安値となる時期が属する期間であると判定された期間を、価値変動アセットの価値が最安値となる時期が属する期間であると決定する。例えば、第1の予測モデルによって、ステップS604での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第2の予測モデルによって、ステップS604での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第3の予測モデルによって、ステップS604での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第4の予測モデルによって、ステップS604での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第5の予測モデルによって、ステップS604での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定された場合、ステップS604での分割後の2つの期間のうちの後半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数の方が、ステップS604での分割後の2つの期間のうちの前半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数よりも多いため、特定値予測AIは、多数決で、ステップS604での分割後の2つの期間のうちの後半の期間を、価値変動アセットの価値が最安値となる時期が属する期間であると決定する。
【0102】
例えば、価値変動アセットの価値が最安値となる時期が属する期間が前半の期間であると判定した予測モデルの数と、価値変動アセットの価値が最安値となる時期が属する期間が後半の期間であると判定した予測モデルの数とが同一である場合、予め定めた方の期間を、価値変動アセットの価値が最安値となる時期が属する期間であると決定するようにしてもよいが、後半の期間を価値変動アセットの価値が最安値となる時期が属する期間であると決定するようにすることが好ましい。後述するように、前半の期間の方が潜在的なリスクが大きいからである。
【0103】
ステップS605の後、再びステップS603に進む。ステップS603において、特定値予測AIは、ステップS605で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さであるか否かを判定する。ステップS605で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さでないと判定された場合(Noの場合)、ステップS604に再び進む。そして、ステップS605で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さであると判定されるまで、ステップS603〜ステップS605を繰り返す。ステップS605で価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期と同じ長さであると判定された場合(Yesの場合)、S606に進み、処理が終了する。価値変動アセットの価値が最安値となる時期が属すると判定された期間が、価値変動アセットの価値が最安値となる時期であると決定することができるからである。
【0104】
ステップS501(ステップS601〜ステップS605)で特定値予測AIが予測した時期が、所定の期間の前半、特に、所定の期間の始めの方の時期(例えば月初)であり、ステップS502でその予測された時期に価値変動アセットを購入する処理を実行する場合は、所定の期間の残りの期間に価値が変動してしまうリスクを負うことになる。すなわち、所定の期間の前半、特に、所定の期間の始めの方の時期(例えば月初)に価値変動アセットを購入すると、所定の期間の残りの期間の価値変動の不確実性が大きく、リスクとリターンとが見合わない可能性がある。これは、価値変動のランダム性が強いアセットで特に顕著である。例えば、月初に最安値となると予測され、月初に価値変動アセットを購入した場合、月の途中で価値変動アセットのトレンドが変化してしまうと、最安値と予測して購入した価値変動アセットの価値が、結果的に最高値となってしまいかねない。これでは、特定値予測AIによる予測成果が不安定なものとなってしまい、ひいては、価値変動アセットの積立成果も不安定なものとなってしまう。
【0105】
このようなリスクとリターンとが見合わない場合を回避するために、ステップS501で特定値予測AIが、所定の期間の前半、特に、所定の期間の始めの方の時期を、所定の期間内で価値変動アセットの価値が最安値となる時期として予測するときは、予測モデルによる自信度が高い場合に制限することが好ましい。予測モデルによる自信度が高い場合であれば、月の途中で価値変動アセットのトレンドが変化してしまい結果的に最高値を掴んでしまうリスクが極めて低いといえるからである。これにより、価値変動のランダム性が強いアセットであっても、リスクとリターンとが見合わない場合を回避し、安定した予測成果を得ることができる。
【0106】
予測モデルによる自信度が高い場合は、例えば、複数の予測モデルのうちの所定数以上が同じ予測をする場合である。より多くの予測モデルが同じ予測をする場合にはその確度が高いといえるからである。例えば、ステップS602で、所定の期間の前半を所定の期間内で価値変動アセットの価値が最安値となる時期として予測するときを予測モデルによる自信度が高い場合に制限する場合には、
図6Cに示される処理を行ってもよい。
【0107】
図6Cは、ステップS602の処理を複数の予測モデルを利用して行い、かつ、所定の期間の前半を所定の期間内で価値変動アセットの価値が最安値となる時期として予測するときを制限する場合の処理の一例を示す。
【0108】
ステップS602−1は、
図6Bに示されるステップS602−1と同じ処理である。特定値予測AIが、複数の予測モデルのそれぞれを用いて、ステップS601での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。
【0109】
ステップS602−2’において、特定値予測AIは、ステップS601での分割後の2つの期間のうちの前半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数を決定する。例えば、5つの予測モデルのそれぞれを用いるとき、第1の予測モデルによって、ステップS601での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第2の予測モデルによって、ステップS601での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第3の予測モデルによって、ステップS601での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第4の予測モデルによって、ステップS601での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第5の予測モデルによって、ステップS601での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定された場合、ステップS601での分割後の2つの期間のうちの前半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数は、3であると決定される。
【0110】
次に、ステップS602−3において、特定値予測AIは、ステップS602−2’で決定された予測モデルの数が、所定数以上であるか否かを判定する。予測モデルの数が所定数以上である場合、ステップS602−4に進む。予測モデルの数が所定数未満である場合、ステップS602−5に進む。ここで、所定数は、用いられる予測モデルの総数の半分より大きい任意の数であり得る。所定数は、例えば、用いられる予測モデルの総数であってもよいし、総数の80%等であってもよい。
【0111】
ステップS602−4では、特定値予測AIは、ステップ601での分割後の2つの期間のうちの前半の期間を価値変動アセットの価値が最安値となる時期が属する期間であると決定する。複数の予測モデルによる自信度が高く、前半の期間を選択することのリスクが低いといえるからである。
【0112】
ステップS602−5では、特定値予測AIは、ステップ601での分割後の2つの期間のうちの後半の期間を価値変動アセットの価値が最安値となる時期が属する期間であると決定する。複数の予測モデルによる自信度が低く、前半の期間を選択することのリスクが高いといえるからである。
【0113】
ステップS605で、所定の期間の前半を所定の期間内で価値変動アセットの価値が最安値となる時期として予測するときを予測モデルによる自信度が高い場合に制限する場合にも、
図6Cに示される処理と同様の処理を行うようにしてもよい。
【0114】
ステップS605−1は、上述したステップS605−1と同じ処理である。特定値予測AIが、複数の予測モデルのそれぞれを用いて、ステップS604での分割後の2つの期間のうち、価値変動アセットの価値が最安値となる時期が属する期間を判定する。
【0115】
ステップS605−2’において、特定値予測AIは、ステップS604での分割後の2つの期間のうちの前半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数を決定する。例えば、5つの予測モデルのそれぞれを用いるとき、第1の予測モデルによって、ステップS604での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第2の予測モデルによって、ステップS604での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第3の予測モデルによって、ステップS604での分割後の2つの期間のうちの後半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第4の予測モデルによって、ステップS604での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定され、第5の予測モデルによって、ステップS604での分割後の2つの期間のうちの前半の期間が、価値変動アセットの価値が最安値となる時期が属する期間であると判定された場合、ステップS604での分割後の2つの期間のうちの前半の期間が価値変動アセットの価値が最安値となる時期が属する期間であると判定した予測モデルの数は、4であると決定される。
【0116】
次に、ステップS605−3において、特定値予測AIは、ステップS605−2’で決定された予測モデルの数が、所定数以上であるか否かを判定する。予測モデルの数が所定数以上である場合、ステップS605−4に進む。予測モデルの数が所定数未満である場合、ステップS605−5に進む。ここで、所定数は、用いられる予測モデルの総数の半分より大きい任意の数であり得る。所定数は、例えば、用いられる予測モデルの総数であってもよいし、総数の80%等であってもよい。
【0117】
所定数は、例えば、所定の期間全体に対する分割後の期間の位置に応じて、変化させられるようにしてもよい。例えば、ステップS604での分割後の2つの期間が、所定の期間の前半のいずれかの期間(例えば、所定の期間が23営業日であり、ステップS604での分割後の2つの期間が、第1営業日〜第6営業日を含む第1の期間と、第7営業日〜第11営業日を含む第2の期間)である場合、所定数は、高くあり得る。特に、分割後の期間が所定の期間の始点に近ければ近いほど、所定数を高くすることが好ましい。分割後の期間が所定の期間の始点に近ければ近いほど、負うべきリスクが大きくなるからである。例えば、所定の期間が23営業日であり、ステップS604での分割後の2つの期間が、第1営業日を含む第1の期間と、第2営業日を含む第2の期間である場合、所定数は最大であることが好ましい。例えば、分割後の期間が所定の期間の始点から幾分か離れている場合(例えば、所定の期間が23営業日であり、ステップS604での分割後の2つの期間が、第3営業日〜第4営業日を含む第1の期間と、第5営業日〜第6営業日を含む第2の期間)であっても、リスクを考慮して、所定数を最大としてもよい。例えば、ステップS604での分割後の2つの期間が、所定の期間の後半のいずれかの期間(例えば、所定の期間が23営業日であり、ステップS604での分割後の2つの期間が、第13営業日〜15営業日を含む第1の期間と、第16営業日〜第18営業日を含む第2の期間)である場合、所定数は、低くあり得る。所定数が最小値である場合、処理は、ステップS602−2と同等の処理となる。
【0118】
所定数は、価値変動アセットの価格変動を考慮して、特定値予測AIによって設定させられてもよいし、手動で設定されてもよい。また、所定数は、対象の価値変動アセット毎に個別に設定されてもよい。
【0119】
ステップS605−4では、特定値予測AIは、ステップ604での分割後の2つの期間のうちの前半の期間を価値変動アセットの価値が最安値となる時期が属する期間であると決定する。複数の予測モデルによる自信度が高く、前半の期間を選択することのリスクが低いといえるからである。
【0120】
ステップS605−5では、特定値予測AIは、ステップ604での分割後の2つの期間のうちの後半の期間を価値変動アセットの価値が最安値となる時期が属する期間であると決定する。複数の予測モデルによる自信度が低く、前半の期間を選択することのリスクが高いといえるからである。
【0121】
リスクとリターンとが見合わない場合を回避するために、ステップS501で、追加的または代替的に、特定値予測AIが、所定の期間の前半、特に、所定の期間の始めの方の時期を、所定の期間内で価値変動アセットの価値が最安値となる時期として予測することを抑制するようにしてもよい。これは、例えば、所定の抑制期間を設け、所定の抑制期間内の時期を所定の期間内で価値変動アセットの価値が最安値となる時期として予測することを抑制することによって達成される。
【0122】
所定の抑制期間は、所定の期間の始点から開始する期間であり、期間の長さは、任意の長さであり得る。所定の抑制期間の長さは、例えば、対象のアセットに応じて変更するようにしてもよい。例えば、トレンドが読みやすいアセットの場合(例えば、日本円でユーロを購入する場合)、所定の抑制期間の長さを短くすることができる。例えば、トレンドが読みにくいアセットの場合(例えば、日本円でNZドルを購入する場合)、所定の抑制期間の長さを長くすることができる。
【0123】
以下の表は、所定の期間が1月である場合の、所定の抑制期間の長さの一例である。
【表1】
【0124】
所定の抑制期間の長さは、価値変動アセットの価格変動を考慮して、特定値予測AIによって設定させられてもよいし、手動で設定されてもよい。
【0125】
ここで、一例として、
図7A〜
図7Dを参照しながら、毎月米ドルを積み立てる場合のコンピュータシステム200におけるステップS501の処理を説明する。所定の期間は1月(23営業日)であるとする。価値変動アセットの価値が最安値となる時期は、日単位とする。
図7A〜
図7Dは、米ドル価格(円)の時間変動の一例を示すグラフである。実線は、実際の変動値を示し、破線は、予測対象期間の変動を予測する予測モデルを利用して予測される変動値を示す。
【0126】
ステップ601において、特定値予測AIは、月の初日に、所定の期間(23営業日)を2つの期間に分割する。
図7Aに示されるように、特定値予測AIは、所定の期間(23営業日)を、第1営業日〜第12営業日から成る第1の期間701と、第13営業日〜第23営業日から成る第2の期間702とに分割する。
【0127】
ステップS602において、特定値予測AIは、第1の期間701および第2の期間702のうち、米ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、23日間の変動を予測する予測モデルを利用して、第1の期間701および第2の期間702のうち、米ドル価格の平均値が低い期間を判定し、米ドル価格の平均値が低い期間を米ドル価格が最安値となる日が属する期間であると判定する。本例では、特定値予測AIは、23日間の変動を予測する予測モデルを利用して予測される第1の期間701の平均値710と、23日間の変動を予測する予測モデルを利用して予測される第2の期間702の平均値720とを比較し、第2の期間702が米ドル価格が最安値となる日が属する期間であると判定する。
【0128】
一例として、入力層と、3層の隠れ層と、出力層とを備える多層パーセプトロンであって、各ノード数が31、16、8、4、1と入力層から出力層に向かうにつれて減少していく、多層パーセプトロンを23日間の変動を予測する予測モデルとして利用する特定値予測AIによって、第1の期間701および第2の期間702のうち、米ドル価格の平均値が低い期間を判定し、米ドル価格の平均値が低い期間を米ドル価格が最安値となる日が属する期間であると判定する処理を行った場合、以下のような最大予測精度が得られた。なお、特定値予測AIの学習に用いた価値変動データは、日本円に対する米ドルの価値変動データのみである。
【0129】
【表2】
ここで、ランダムとは、ランダムに最安値となる日を予測するモデルであり、比較対象として用いた。この結果からも、多層パーセプトロンへ入力されるデータが多いほど、予測精度はより向上することがわかる。
【0130】
さらに一例として、CNNを予測モデルとして利用する特定値予測AIによって、第1の期間701および第2の期間702のうち、米ドル価格の平均値が低い期間を判定し、米ドル価格の平均値が低い期間を米ドル価格が最安値となる日が属する期間であると判定する処理を行った場合に、学習に用いる価値変動データを変動させると、以下のような最大予測精度が得られた。
【0131】
【表3】
このように、使用する予測モデル、学習する価値変動データが予測精度に密接に関連している。適切な予測モデル、学習する価値変動データを選択することにより、70%を超える予測精度を達成することができる。
【0132】
ステップS603において、特定値予測AIは、第2の期間702が、1日間であるか否かを判定する。第2の期間702は、第13営業日〜第23営業日から成る11日間の期間であるため、処理はステップS604に進む。
【0133】
ステップS604において、特定値予測AIは、第2の期間702の初日に、第2の期間702を2つの期間に分割する。
図7Bに示されるように、特定値予測AIは、第2の期間702を、第13営業日〜第17営業日から成る第3の期間703と、第18営業日〜第23営業日から成る第4の期間704とに分割する。
【0134】
なお、
図7Bに示される例では、第2の期間702の初日にステップS604が実行されることを示しているが、ステップS501の処理の各ステップが行われるタイミングは任意である。例えば、月の初日に、ステップS501の処理(所定の期間内で価値変動アセットの価値が最安値となる日を予測する処理)を全て完了するようにしてもよいし、価値変動アセットの価値が最安値となる日が属すると判定された期間になるごとにステップS501の処理(所定の期間内で価値変動アセットの価値が最安値となる日を予測する処理)の一部を行うようにしてもよい。
【0135】
ステップS605において、特定値予測AIは、第3の期間703および第4の期間704のうち、米ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、13日間の変動を予測する予測モデルを利用して、第3の期間703および第4の期間704のうち、米ドル価格の平均値が低い期間を判定し、米ドル価格の平均値が低い期間を米ドル価格が最安値となる日が属する期間であると判定する。本例では、特定値予測AIは、13日間の変動を予測する予測モデルを利用して予測される第3の期間703の平均値730と、13日間の変動を予測する予測モデルを利用して予測される第4の期間704の平均値740とを比較し、第3の期間703が米ドル価格が最安値となる日が属する期間であると判定する。
【0136】
ステップS603に戻り、特定値予測AIは、第3の期間703が、1日間であるか否かを判定する。第3の期間703は、第13営業日〜第17営業日から成る5日間の期間であるため、処理は再びステップS604に進む。
【0137】
ステップS604において、特定値予測AIは、第3の期間703を2つの期間に分割する。
図7Cに示されるように、特定値予測AIは、第3の期間703を、第13営業日〜第14営業日から成る第5の期間705と、第15営業日〜第17営業日から成る第6の期間706とに分割する。
【0138】
ステップS605において、特定値予測AIは、第5の期間705および第6の期間706のうち、米ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、5日間の変動を予測する予測モデルを利用して、第5の期間705および第6の期間706のうち、米ドル価格の平均値が低い期間を判定し、米ドル価格の平均値が低い期間を米ドル価格が最安値となる日が属する期間であると判定する。本例では、特定値予測AIは、5日間の変動を予測する予測モデルを利用して予測される第5の期間705の平均値750と、5日間の変動を予測する予測モデルを利用して予測される第6の期間706の平均値760とを比較し、第5の期間705が米ドル価格が最安値となる日が属する期間であると判定する。
【0139】
ステップS603に戻り、特定値予測AIは、第5の期間705が、1日間であるか否かを判定する。第5の期間705は、第13営業日〜第14営業日から成る2日間の期間であるため、処理は再びステップS604に進む。
【0140】
ステップS604において、特定値予測AIは、第5の期間705を2つの期間に分割する。
図7Dに示されるように、特定値予測AIは、第5の期間705を、第13営業日から成る第7の期間707と、第14営業日から成る第8の期間708とに分割する。
【0141】
ステップS605において、特定値予測AIは、第7の期間707および第8の期間708のうち、米ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、2日間の変動を予測する予測モデルを利用して、第7の期間707および第8の期間708のうち、米ドル価格の平均値が低い期間を判定し、米ドル価格の平均値が低い期間を米ドル価格が最安値となる日が属する期間であると判定する。本例では、特定値予測AIは、2日間の変動を予測する予測モデルを利用して予測される第7の期間707の平均値770と、2日間の変動を予測する予測モデルを利用して予測される第8の期間708の平均値780とを比較し、第8の期間708が米ドル価格が最安値となる日が属する期間であると判定する。
【0142】
ステップS603に戻り、特定値予測AIは、第8の期間708が、1日間であるか否かを判定する。第8の期間708は、第14営業日から成る1日間の期間であるため、処理はステップS606に進み、終了する。
【0143】
以上の処理により、この月に米ドルが最安値となる日が、第14営業日であることが予測される。第14営業日に至ると、ステップS502において、プロセッサ部212が、米ドルを購入し、これを積み立てる。
【0144】
ここで、さらなる例として、
図8A〜
図8Dを参照しながら、毎月豪ドルを積み立てる場合のコンピュータシステム200におけるステップS501の処理を説明する。
【0145】
図8A〜
図8Dは、豪ドル価格(円)の時間変動の一例を示すグラフである。実線は、実際の変動値を示し、破線は、予測対象期間の変動を予測する予測モデルを利用して予測される変動値を示す。所定の期間は1月(23営業日)であるとする。価値変動アセットの価値が最安値となる時期は、日単位とする。所定の抑制期間の長さを4日とする。特定値予測AIは、5つの予測モデルを利用して予測を行うものとする。所定数を以下のとおり変動させるものとする。
【表4】
【0146】
ステップ601において、特定値予測AIは、月の初日に、所定の期間(23営業日)を2つの期間に分割する。
図8Aに示されるように、特定値予測AIは、所定の期間(23営業日)を、第1営業日〜第12営業日から成る第1の期間801と、第13営業日〜第23営業日から成る第2の期間802とに分割する。
【0147】
ステップS602−1において、特定値予測AIは、5つの予測モデルのそれぞれを用いて、第1の期間801および第2の期間802のうち、豪ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、23日間の変動を予測する5つの予測モデルのそれぞれを利用して、第1の期間801および第2の期間802のうち、豪ドル価格が最安値となる日が属する期間を判定する。予測モデルは、例えば、学習に用いられる過去の価値変動データの種類または量が異なる複数の予測モデルであってもよく、例えば、予測のために入力される過去の価値変動データの種類または量が異なる複数の予測モデルであってもよく、例えば、多層パーセプトロン450を利用する予測モデル、CNNを利用する予測モデル、RNNを利用する予測モデル等の利用するニューラルネットワークの種類がそれぞれ異なる複数の予測モデルであってもよい。本例では、以下のとおり、各予測モデルが予測したとする。
【表5】
【0148】
ステップS602−2’において、特定値予測AIは、第1の期間801および第2の期間802のうちの前半の期間である第1の期間801が豪ドル価格が最安値となる日が属する期間であると判定した予測モデルの数を決定する。表5の結果から、予測モデルの数が、3であると決定される。
【0149】
ステップS602−3において、特定値予測AIは、ステップS602−2’で決定された予測モデルの数が、所定数以上であるか否かを判定する。第1営業日〜第12営業日の所定数は3であり、ステップS602−2’で決定された予測モデルの数は3以上であるため、ステップS602−4に進む。
【0150】
ステップS602−4において、特定値予測AIは、第1の期間801を豪ドル価格が最安値となる日が属する期間であると決定する。
【0151】
ステップS603において、特定値予測AIは、第1の期間801が、1日間であるか否かを判定する。第1の期間801は、第1営業日〜第12営業日から成る12日間の期間であるため、処理はステップS604に進む。
【0152】
ステップS604において、特定値予測AIは、第1の期間801を2つの期間に分割する。
図8Bに示されるように、特定値予測AIは、第1の期間801を、第1営業日〜第6営業日から成る第3の期間803と、第7営業日〜第12営業日から成る第4の期間804とに分割する。
【0153】
なお、
図8Bに示される例では、第3の期間803の初日にステップS604が実行されることを示しているが、ステップS501の処理の各ステップが行われるタイミングは任意である。例えば、月の初日に、ステップS501の処理(所定の期間内で価値変動アセットの価値が最安値となる日を予測する処理)を全て完了するようにしてもよいし、価値変動アセットの価値が最安値となる日が属すると判定された期間になるごとにステップS501の処理(所定の期間内で価値変動アセットの価値が最安値となる日を予測する処理)の一部を行うようにしてもよい。
【0154】
ステップS605において、特定値予測AIは、第3の期間803および第4の期間804のうち、豪ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、13日間の変動を予測する5つの予測モデルを利用して、第3の期間803および第4の期間804のうち、豪ドル価格が最安値となる日が属する期間を判定する。本例では、以下のとおり、各予測モデルが予測したとする。
【表6】
【0155】
ステップS605−2’において、特定値予測AIは、第3の期間803および第4の期間804のうちの前半の期間である第3の期間803が豪ドル価格が最安値となる日が属する期間であると判定した予測モデルの数を決定する。表6の結果から、予測モデルの数が、4であると決定される。
【0156】
ステップS605−3において、特定値予測AIは、ステップS605−2’で決定された予測モデルの数が、所定数以上であるか否かを判定する。第1営業日〜第6営業日の所定数は5であり、ステップS605−2’で決定された予測モデルの数は5以上ではないため、ステップS605−5に進む。
【0157】
ステップS605−5において、特定値予測AIは、後半の期間である第4の期間804を豪ドル価格が最安値となる日が属する期間であると決定する。
【0158】
ステップS603に戻り、特定値予測AIは、第4の期間804が、1日間であるか否かを判定する。第4の期間804は、第7営業日〜第12営業日から成る6日間の期間であるため、処理は再びステップS604に進む。
【0159】
ステップS604において、特定値予測AIは、第4の期間804を2つの期間に分割する。
図8Cに示されるように、特定値予測AIは、第4の期間804を、第7営業日〜第9営業日から成る第5の期間805と、第10営業日〜第12営業日から成る第6の期間806とに分割する。
【0160】
ステップS605において、特定値予測AIは、第5の期間805および第6の期間806のうち、豪ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、5日間の変動を予測する5つの予測モデルを利用して、第5の期間805および第6の期間806のうち、豪ドル価格が最安値となる日が属する期間を判定する。本例では、以下のとおり、各予測モデルが予測したとする。
【表7】
【0161】
ステップS605−2’において、特定値予測AIは、第5の期間805および第6の期間806のうちの前半の期間である第5の期間805が豪ドル価格が最安値となる日が属する期間であると判定した予測モデルの数を決定する。表7の結果から、予測モデルの数が、5であると決定される。
【0162】
ステップS605−3において、特定値予測AIは、ステップS605−2’で決定された予測モデルの数が、所定数以上であるか否かを判定する。第7営業日〜第9営業日の所定数は4であり、ステップS605−2’で決定された予測モデルの数は4以上であるため、ステップS605−4に進む。
【0163】
ステップS605−4において、特定値予測AIは、第5の期間805を豪ドル価格が最安値となる日が属する期間であると決定する。
【0164】
ステップS603に戻り、特定値予測AIは、第5の期間805が、1日間であるか否かを判定する。第5の期間805は、第7営業日〜第9営業日から成る3日間の期間であるため、処理は再びステップS604に進む。
【0165】
ステップS604において、特定値予測AIは、第5の期間805を2つの期間に分割する。
図8Dに示されるように、特定値予測AIは、第5の期間805を、第7営業日から成る第7の期間807と、第8営業日〜第9営業日から成る第8の期間808とに分割する。
【0166】
ステップS605において、特定値予測AIは、第7の期間807および第8の期間808のうち、豪ドル価格が最安値となる日が属する期間を判定する。特定値予測AIは、2日間の変動を予測する5つの予測モデルを利用して、第7の期間807および第8の期間808のうち、豪ドル価格が最安値となる日が属する期間を判定する。本例では、以下のとおり、各予測モデルが予測したとする。
【表8】
【0167】
ステップS605−2’において、特定値予測AIは、第7の期間807および第8の期間808のうちの前半の期間である第7の期間807が豪ドル価格が最安値となる日が属する期間であると判定した予測モデルの数を決定する。表8の結果から、予測モデルの数が、4であると決定される。
【0168】
ステップS605−3において、特定値予測AIは、ステップS605−2’で決定された予測モデルの数が、所定数以上であるか否かを判定する。第7営業日の所定数は4であり、ステップS605−2’で決定された予測モデルの数は4以上であるため、ステップS605−4に進む。
【0169】
ステップS605−4において、特定値予測AIは、第7の期間807を豪ドル価格が最安値となる日が属する期間であると決定する。
【0170】
ステップS603に戻り、特定値予測AIは、第7の期間807が、1日間であるか否かを判定する。第7の期間807は、第7営業日から成る1日間の期間であるため、処理はステップS606に進み、終了する。
【0171】
以上の処理により、この月に豪ドルが最安値となる日が、第7営業日であることが予測される。第7営業日に至ると、ステップS502において、プロセッサ部212が、豪ドルを購入し、これを積み立てる。
【0172】
最安値となる時期を予測する代わりに、特定の順位の値となる時期を予測する場合、ステップS602、ステップS605では、アセットの価値が特定の順位となる時期が属する期間を判定するようにしてもよい。例えば、23営業日のうちで、アセットの価値が14番目に安い値となる時期が属する期間を判定する場合を説明する。
【0173】
ステップS601で、23営業日が2つの期間に分割された後、ステップS602で、分割後の2つの期間のうち最安値が存在しない方の期間を選択する。14>23/2だからである。
【0174】
次に、ステップS603の後、ステップS604で11または12営業日が2つの期間に分割された後、ステップS605で、分割後の2つの期間のうち安値(極小値)が存在する方の期間を選択する。(14−23/2)<23/4だからである。
【0175】
次に、ステップS603の後、ステップS604で5または6営業日が2つの期間に分割された後、ステップS605で、分割後の2つの期間のうち安値(極小値)が存在する方の期間を選択する。(14−23/2)<23/8だからである。
【0176】
次に、ステップS603の後、ステップS604で2または3営業日が2つの期間に分割された後、ステップS605で、分割後の2つの期間のうち安値(極小値)が存在しない方の期間を選択する。(14−23/2)>23/16だからである。
【0177】
これをステップS603でYesと判定されるまで繰り返す。
【0178】
このようにして上述した二分探索と同じ要領で、アセットの価値が特定の順位となる時期が属する期間を判定することができる。
【0179】
上述した例では、対象の期間を2つの期間に分割する二分探索により、所定の期間内で価値変動アセットの価値が特定の順位の値となる時期を予測することを説明したが、本発明は二分探索に限定されない。対象の期間を2よりも多い数の期間に分割して、所定の期間内で価値変動アセットの価値が特定の順位の値となる時期を予測することも本発明の範囲内である。
【0180】
例えば、ステップS601で、特定値予測AIは、所定の期間を2つの期間に分割する代わりに、m個の期間に分割し(mは2よりも大きい整数)、ステップS602で、特定値予測AIは、分割後のm個の期間のうち、価値変動アセットの価値が特定の順位の値(例えば、最安値、最高値、n番目に安い値、n番目に高い値)となる時期が属する期間を判定するようにしてもよい。価値変動アセットの価値が最安値となる時期が属する期間を判定する場合、この判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後のm個の期間のうち、価値変動アセットの価値の平均値が最も低い期間を判定することによって行われてもよい。価値変動アセットの価値が最安値となる時期が属する期間の判定は、例えば、将来の或る期間を複数の期間に分割した期間のうちのどの期間に最安値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。価値変動アセットの価値が最高値となる時期が属する期間を判定する場合、この判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後のm個の期間のうち、価値変動アセットの価値の平均値が最も高い期間を判定することによって行われてもよい。価値変動アセットの価値が最高値となる時期が属する期間の判定は、例えば、将来の或る期間を複数の期間に分割した期間のうちのどの期間に最高値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。価値変動アセットの価値が特定の順位の値となる時期が属する期間を判定する場合、この判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後のm個の期間のうち、価値変動アセットの価値の平均値が特定の順位となる期間を判定することによって行われてもよい。価値変動アセットの価値が特定の順位の値となる時期が属する期間の判定は、例えば、将来の或る期間を複数の期間に分割した期間のうちのどの期間に特定の順位の値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。
【0181】
例えば、ステップS604で、特定値予測AIは、価値変動アセットの価値が特定の順位の値となる時期が属すると判定された期間をさらにm個の期間に分割し、ステップS605で、特定値予測AIは、分割後のm個の期間のうち、価値変動アセットの価値が特定の順位の値(例えば、最安値、最高値、n番目に安い値、n番目に高い値)となる時期が属する期間を判定するようにしてもよい。価値変動アセットの価値が最安値となる時期が属する期間を判定する場合、この判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後のm個の期間のうち、価値変動アセットの価値の平均値が最も低い期間を判定することによって行われてもよい。価値変動アセットの価値が最安値となる時期が属する期間の判定は、例えば、将来の或る期間を複数の期間に分割した期間のうちのどの期間に最安値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。価値変動アセットの価値が最高値となる時期が属する期間を判定する場合、この判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後のm個の期間のうち、価値変動アセットの価値の平均値が最も高い期間を判定することによって行われてもよい。価値変動アセットの価値が最高値となる時期が属する期間の判定は、例えば、将来の或る期間を複数の期間に分割した期間のうちのどの期間に最高値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。価値変動アセットの価値が特定の順位の値となる時期が属する期間を判定する場合、この判定は、例えば、将来の所定期間の平均値の予測を出力することができるように、過去の価値変動データを教師データとして学習している特定値予測AIによって、分割後のm個の期間のうち、価値変動アセットの価値の平均値が特定の順位となる期間を判定することによって行われてもよい。価値変動アセットの価値が特定の順位の値となる時期が属する期間の判定は、例えば、将来の或る期間を複数の期間に分割した期間のうちのどの期間に特定の順位の値となるかの予測を出力することができるように過去の価値変動データを教師データとして学習している特定値予測AIによって、行われてもよい。
【0182】
このとき、例えば、ステップS602−2またはステップS605−2では、特定値予測AIは、分割後のm個の期間のうち、より多くの予測モデルによって価値変動アセットの価値が特定の順位の値となる時期が属する期間であると判定された期間を、アセットの価値が特定の順位の値となる時期が属する期間であると決定する。
【0183】
例えば、ステップS602−2’またはステップS605−2’では、特定値予測AIは、分割後のm個の期間のうちの前半の期間のそれぞれについて、その期間が価値変動アセットの価値が特定の順位の値となる時期が属する期間であると判定した予測モデルの数を決定し、次に、ステップS602−3またはステップS605−3では、特定値予測AIは、前半の期間のそれぞれについて、決定された予測モデルの数が所定数以上であるか否かを判定する。所定数以上である場合は、その期間を価値変動アセットの価値が特定の順位の値となる時期が属する期間であると決定する。
【0184】
例えば、m=6の場合、ステップS602−2’またはステップS605−2’では、特定値予測AIは、6分割された期間のうちの前半3つの期間のそれぞれについて、その期間が価値変動アセットの価値が特定の順位の値となる時期が属する期間であると判定した予測モデルの数を決定する。次に、ステップS602−3またはステップS605−3では、特定値予測AIは、前半3つの期間のそれぞれについて、決定された予測モデルの数が所定数であるか否かを決定し、所定数以上である場合は、その期間を価値変動アセットの価値が特定の順位の値となる時期が属する期間であると決定する。例えば、前半3つの期間のうちの第1の期間について決定された予測モデルの数および前半3つの期間のうちの第3の期間について決定された予測モデルの数のそれぞれが所定数未満であるが、前半3つの期間のうちの第2の期間について決定された予測モデルの数が所定数以上である場合には、前半3つの期間のうちの第2の期間を価値変動アセットの価値が特定の順位の値となる時期が属する期間であると決定する。
【0185】
このとき、予測モデルの数が所定数以上である期間が存在しない場合、例えば、複数の期間のうちの後半の期間全体を価値変動アセットの価値が特定の順位の値となる時期が属する期間であると決定して、ステップS603に進むようにしてもよいし、複数の期間のうちの最先の期間を除く期間全体を価値変動アセットの価値が特定の順位の値となる時期が属する期間であると決定して、ステップS603に進むようにしてもよい。これにより、予測モデルによる自信度が低い場合に所定の期間の始めの方の時期を選択することを回避することができ、結果として、リスクとリターンとが見合わない場合を回避することができる。
【0186】
4.新しい金融商品を実現するためのコンピュータシステムの代替構成
図9は、上述した新しい金融商品を実現するためのコンピュータシステム200の代替構成であるコンピュータシステム200’の一例を示す。
図9では、
図2に示される要素と同一の要素に同じ参照番号を付し、ここでは説明を省略する。コンピュータシステム200’は、所定の期間内で価値変動アセットの価値が特定値となる時期を予測することをユーザ装置100が行い、予測された価値変動アセットの価値が特定値となる時期に価値変動アセットを取引することをサーバ装置210が行う構成である。
【0187】
コンピュータシステム200’は、サーバ装置210と、サーバ装置210に接続されるデータベース部220と、ユーザ装置100とを備える。サーバ装置210と、ユーザ装置100と、アセット取引コンピュータシステム300とは、ネットワーク400を介して、相互に接続される。ここで、ネットワーク400の種類は問わない。ネットワーク400は、例えば、インターネットであってもよいし、LANであってもよい。
【0188】
ユーザ装置100は、価値変動アセットを積み立てるサービスを利用するユーザ10が使用する端末であり、スマートフォン、タブレット、パーソナルコンピュータ等の任意の端末装置であり得る。ユーザ装置100は、インターフェース部111と、プロセッサ部112と、記憶部113とを備える。
【0189】
インターフェース部111は、ネットワーク400を介した通信を制御するように構成されている。インターフェース部111は、ユーザ装置100の外部に情報を送信することが可能であり、ユーザ装置100の外部から情報を受信することが可能である。例えば、インターフェース部111は、ネットワーク400を介して、所定の期間内で価値変動アセットの価値が最安値となる日の予測をサーバ装置210に送信する。
【0190】
プロセッサ部112は、ユーザ装置100全体の動作を制御する。プロセッサ部112は、記憶部113に格納されているプログラムを読み出し、そのプログラムを実行する。これにより、ユーザ装置100を所望のステップを実行する装置として機能させることが可能である。例えば、プロセッサ部112は、価値変動アセットを積み立てる処理の一部を行うことができる。プロセッサ部112は、単一のプロセッサによって実装されてもよいし、複数のプロセッサによって実装されてもよい。
【0191】
記憶部113には、ユーザ装置100における処理を実行するためのプログラムやそのプログラムの実行に必要とされるデータ等が格納されている。記憶部113には、例えば、価値変動アセットの取引を行うためのプログラム、または、価値変動アセットを積み立てるためのプログラム(例えば、前述した
図5および
図6A〜
図6Cに示される処理を実現するプログラム)の一部が格納されている。ここで、プログラムをどのようにして記憶部113に格納するかは問わない。例えば、プログラムは、記憶部113にプリインストールされていてもよい。あるいは、プログラムは、ネットワーク400を経由してダウンロードされることによって記憶部113にインストールされるようにしてもよい。記憶部113は、任意の記憶手段によって実装され得る。
【0192】
記憶部113には、例えば、過去の価値変動データも格納され得る。過去の価値変動データは、将来の価値変動を予測するために使用され得る。学習に用いられる過去の価値変動データは、購入用通貨(例えば、日本円)に対する対象のアセットの価値変動データに加えて、他の通貨(例えば、米ドル、豪ドル、ユーロ、NZドル等)に対する対象のアセットの価値変動データ、または、S&P500指数、日経平均株価、ドイツ株価指数、あるいは、WTI原油価格等のデータを含んでもよい。データベース部220には、例えば、学習した価値変動傾向も格納され得る。データベース部220には、学習によって確立された多層パーセプトロン450の各ノードの重みベクトルが格納されるようにしてもよい。
【0193】
特定値予測AIは、上述した構成を有するユーザ装置100によって実現され得る。特定値予測AIは、上述したように、任意の予測モデルを利用して価値変動アセットの価値が最安値となる時期を予測することができる。
【0194】
図9に示される例では、ユーザ装置100の各構成要素が1つのユーザ装置100内に設けられているが、本発明はこれに限定されない。ユーザ装置100の各構成要素のいずれかがユーザ装置100の外部に設けられることも可能である。例えば、プロセッサ部112、記憶部113のそれぞれが別々のハードウェア部品で構成されている場合には、各ハードウェア部品が任意のネットワークを介して接続されてもよい。このとき、ネットワークの種類は問わない。各ハードウェア部品は、例えば、LANを介して接続されてもよいし、無線接続されてもよいし、有線接続されてもよい。
【0195】
コンピュータシステム200’における処理は、コンピュータシステム200における処理500と同様である。ただし、ステップS501の処理を、ユーザ装置100によって実現される特定値予測AIが行い、ステップS502の処理を、サーバ装置210のプロセッサ部212が行う点で、コンピュータシステム200における処理500と異なっている。
【0196】
上述した例では、価値変動アセットの価値が最安値となる日を予測することを説明したが、本発明は、「日」よりも短い時間単位(例えば、時、分、秒等)を予測すること、または「日」よりも長い時間単位(例えば、週、月等)を予測することも本発明の範囲内である。例えば、毎日価値変動アセットを積み立てる場合に、コンピュータシステム200または200’は、
図5および
図6A〜
図6Cを参照して上述した処理と同様の処理によって、1日のうちで価値変動アセットの価値が最安値となる時を予測し、予測された価値変動アセットの価値が最安値となる時に価値変動アセットを購入することを行うことができる。ここで、価値変動アセットの価値が最安値となる時は、任意の時間の単位であり得る。価値変動アセットの価値が最安値となる時は、例えば、秒単位であってもよいし、分単位であってもよいし、時間単位であってもよい。
【0197】
本発明は、上述した実施形態に限定されるものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。
【課題】時間の経過につれて価値が不規則に変動するアセットの価値の、所定の期間における最高値または最安値(つまり、極大値または極小値)等の特定値を予測することを可能にするコンピュータシステム、方法、およびプログラムを提供すること。
【解決手段】時間の経過につれて価値が変動する外国通貨を積み立てるためのコンピュータシステム200は、所定の期間内で前記外国通貨の価値が最安値となる時期を予測すること(ステップS501)と、前記予測された前記外国通貨の価値が最安値となる時期に前記外国通貨を購入すること(ステップS502)とを行うように構成されている。