JP7122214B2 - Information processing system, information processing method, program and storage medium - Google Patents
Information processing system, information processing method, program and storage medium Download PDFInfo
- Publication number
- JP7122214B2 JP7122214B2 JP2018192781A JP2018192781A JP7122214B2 JP 7122214 B2 JP7122214 B2 JP 7122214B2 JP 2018192781 A JP2018192781 A JP 2018192781A JP 2018192781 A JP2018192781 A JP 2018192781A JP 7122214 B2 JP7122214 B2 JP 7122214B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- board information
- board
- order
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Description
本発明は、情報処理システム、情報処理方法、プログラム及び記憶媒体に関する。 The present invention relates to an information processing system, an information processing method, a program, and a storage medium.
マーケットインパクト減衰係数を用いて、マーケットシミュレーションを提供する技術が提案されている(特許文献1)。 A technique for providing market simulation using market impact damping coefficients has been proposed (Patent Document 1).
しかしながら、特許文献1の技術では、現実に近い市場の動きを再現することはできなかった。また、特許文献1の技術では、マーケットインパクト減衰係数を算出するために、CPU等のリソースを多く使い、算出する時間もかかっていた。 However, the technique disclosed in Patent Document 1 cannot reproduce market movements close to reality. Further, in the technique disclosed in Patent Document 1, in order to calculate the market impact attenuation coefficient, many resources such as a CPU are used, and the calculation takes a long time.
本発明の情報処理システムは、ニューラルネットワークを用いて、第1の注文情報が入力された際に更新された板情報及び前記第1の注文情報が入力されたときより過去の板情報の何れか又は双方に基づいて、前記第1の注文情報が入力された際に板情報が更新されたときより未来の板情報を予測する予測手段と、前記予測された未来の板情報と前記第1の注文情報に基づき更新された板情報とに基づき第2の注文情報を生成する生成手段と、を有する。 The information processing system of the present invention uses a neural network to select either board information updated when first order information is input or board information older than when the first order information is input. or based on both, predicting means for predicting future board information when the board information is updated when the first order information is input, and the predicted future board information and the first and generating means for generating second order information based on the board information updated based on the order information.
本発明によれば、より少ないリソース、及びより短い時間で、より現実に近い市場の動きを再現することができる。 According to the present invention, more realistic market movements can be reproduced with less resources and less time.
以下、本発明の実施形態について図面に基づいて説明する。 BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described below with reference to the drawings.
図1は、本実施形態のシステムのシステム構成の一例を示す図である。
本実施形態のシステムは、ユーザ端末110とマーケットシミュレーションシステム120とを含む。マーケットシミュレーションシステム120は、情報処理システムの一例である。
ユーザ端末110は、マーケットシミュレーションシステム120を利用するユーザの端末であって、ネットワークを介してマーケットシミュレーションシステム120と通信可能に接続されている。ユーザ端末110は、単体の装置であってもよし、複数の装置から構成されたシステムであってもよい。
マーケットシミュレーションシステム120は、株の売り買いを行う市場のバックテスト環境を提供するシステムである。また、マーケットシミュレーションシステム120は、実データに基づいてマーケットインパクトを学習したニューラルネットワークを利用したマーケットシミュレーターである。
マーケットシミュレーションシステム120は、ユーザ端末110から注文情報が入力されると、注文情報が入力された際の板情報を、入力された注文情報に基づき更新し、更新した板情報と、注文情報が入力されたときより過去の板情報とに基づいて、注文情報が入力されたときより未来の板情報を予測する。そして、マーケットシミュレーションシステム120は、予測した未来の板情報と更新した板情報とに基づき、ユーザ端末110から入力された注文情報に応じた、注文情報を生成する。
このような処理を行うことにより、自然な市場の動きを表現でき、バックテストの有効性も向上する。また、マーケットインパクト減衰係数を算出する方法に比べて、より少ないリソース、及びより短い時間で現実の市場の動きを再現可能とすることができる。
FIG. 1 is a diagram showing an example of the system configuration of the system of this embodiment.
The system of this embodiment includes a
The
The
When order information is input from the
By performing such processing, it is possible to express natural market movements and improve the effectiveness of backtesting. In addition, compared to the method of calculating the market impact attenuation coefficient, it is possible to reproduce the actual market movement with fewer resources and in a shorter time.
図2は、マーケットシミュレーションシステム120のハードウェア構成の一例を示す図である。
マーケットシミュレーションシステム120は、ハードウェア構成として、CPU201、メモリ202、表示部203、入力部204、通信部205を少なくとも有する。
CPU201は、マーケットシミュレーションシステム120の全体を制御する。CPU201がメモリ202に記憶されたプログラムに基づき処理を実行することにより、後述する図3のマーケットシミュレーションシステム120の機能及び、後述する図4、図5のフローチャートの処理が実現される。メモリ202は、プログラム、CPU201がプログラムに基づき処理を実行する際に用いるデータ、例えば後述する過去板情報304、過去注文情報305等、を記憶する。表示部203は、各種情報を表示する。入力部204は、キーボード、マウス、表示部203に表示された画面等を介したユーザの操作等を受け付け、入力する。表示部203及び入力部204は、タッチパネルディスプレイ等、一体として構成されてもよい。通信部205は、マーケットシミュレーションシステム120をネットワークに接続し、ネットワークを介した外部装置との通信処理を行う。メモリ202は、記憶媒体の一例である。
他の例としては、マーケットシミュレーションシステム120の機能や処理の少なくとも一部は、複数のCPU、メモリを協働させることにより実現してもよい。また、他の例としては、マーケットシミュレーションシステム120の機能や処理の少なくとも一部は、ハードウェア回路を用いて実現してもよい。また、他の例としては、マーケットシミュレーションシステム120の機能及び処理は、複数の装置が協働して実現してもよい。
ユーザ端末110もマーケットシミュレーションシステム120と同様のハードウェア構成を有し、ユーザ端末110のCPUがユーザ端末110のメモリに記憶されているプログラムに基づき処理を実行することによって、ユーザ端末110の機能を実現させる。
FIG. 2 is a diagram showing an example of the hardware configuration of the
The
The
As another example, at least part of the functions and processes of the
The
図3は、マーケットシミュレーションシステム120の機能構成等の一例を示す図である。
マーケットシミュレーションシステム120は、機能構成として、取引所シミュレータ301、注文シミュレータ302、板生成ニューラルネットワーク(以下、板生成NNという)303を少なくとも有する。過去板情報304は、実際の市場における過去の板情報を記憶する記憶部(DB、メモリ等)である。過去注文情報305は、実際の市場における過去の注文情報を記憶する記憶部(DB、メモリ等)である。板生成NN303は、マーケットインパクト(こういう注文が入ったら市場はこう動く)を学習した(過去データに基づきパラメータ調整した)、学習済みモデルである。後述するように、板生成NN303は、RNN(Recurrent Neural Network)により学習した学習済みモデルであってもよいし、CNN(Convolution Neural Network)により学習した学習済みモデルであってもよい。また、後述するように、板生成NN303は、RNN、又はCNNにより学習した学習済みモデルに基づいて転移学習された学習済みモデルであってもよい。板生成NN303の学習及び転移学習については、後述する図7-図9を用いて説明する。
取引所シミュレータ301は、板情報をユーザ端末110に送信することで、板情報を提示する。板情報の例は、後述する図6A及び図6Bに示す。ユーザ端末110は、送信された板情報を受信し、ユーザ端末110の表示部に表示する。過去注文情報305は、過去板情報304より生成される。過去板情報304には、過日の現実の板情報が時系列で記憶されている。注文シミュレータ302は、それらの板情報から過去の注文情報を生成することができる。即ち、注文シミュレータ302は、ある時刻における過去板情報と、その次の時刻における過去板情報との差分から、そのときに発生した注文情報を生成する。この処理は、シミュレーションの開始前に行って、すべての過去注文情報を事前に生成し、過去注文情報305に記憶させておいてもよいし、マーケットシミュレーションシステム120でカウントされるシミュレーション上の時刻(シミュレーション時刻)に従って生成されてもよい。
注文シミュレータ302は、シミュレーション時刻に応じて過去注文情報305から過去の注文情報を取得し、取引所シミュレータ301に過去の注文情報を入力する。即ち、注文シミュレータ302は、シミュレーションを行うユーザ等によるユーザ端末110からの注文が入力される前は、過日に取引所で実際に発生した注文を同じタイミングで再生することになる。取引所シミュレータ301は、過去の注文情報が入力されると、入力された注文情報に応じた約定シミュレーションを実行し、約定情報をユーザ端末110に送信することで、約定情報を提示する。
この様に過去の市場の動きを再現しているときに、ユーザ端末110から注文情報が入力されると、取引所シミュレータ301は、入力された注文情報に基づき、注文情報が入力された際の板情報を更新する。ユーザ端末110から入力される注文情報は、第1の注文情報の一例である。取引所シミュレータ301は、更新した板情報をユーザ端末110に提示する。また、取引所シミュレータ301は、更新した板情報を現在板情報として注文シミュレータ302に入力する。
FIG. 3 is a diagram showing an example of the functional configuration and the like of the
The
The
The
When order information is input from the
注文シミュレータ302は、現在板情報が入力されると、現在板情報とユーザ端末110から取引所シミュレータ301に注文情報が入力されたときより過去の所定の期間の板情報とを現在までの板情報として板生成NN303に入力する。
このとき注文シミュレータ302に入力される過去の所定の期間の板情報は、過去板情報又は図示しないシミュレーション板履歴情報記憶部から読み出されキャッシュ的な情報として記憶したものを利用してもよい。なお、シミュレーション履歴板情報記憶部は、取引所シミュレータ301におけるシミュレーションによって生成される板の履歴情報を例えばキャッシュ的に記憶する。
例えば、ユーザ端末110から取引所シミュレータ301に注文情報が入力されたときが8月6日10時00分だった場合、現在板情報は8月6日10時00分の板情報となる。また、ユーザ端末110から取引所シミュレータ301に注文情報が入力されたときより過去の所定の期間の板情報として、注文シミュレータ302は、過去板情報304又は図示しないシミュレーション履歴板情報記憶部より、8月6日9時55分の板情報を取得する。この例の場合、注文シミュレータ302は、8月6日10時00分の板情報と8月6日9時55分の板情報とを板生成NN303に入力する。
なお、ここでは、ユーザ端末110から取引所シミュレータ301に注文情報が入力されたときより過去の所定の期間の板情報として、5分前の板情報を1つだけ取得したが、これに限定されるものではない。5分前の板情報、10分前の板情報の2つを取得するようにしてもよいし、2つ以上を取得するようにしてもよい。同様に、5分前ではなく、1分前の板情報を取得するようにしてもよい。間隔及び数は後述する板生成NN303の学習に依存する。なお、過去板情報としては、実際の連続した時系列データ(実際に板が発生した時間間隔変動)でもよいし、データ間を平均化したものでもよい。即ち、板は均等に5分間隔等で発生するわけではないが、例えば、3分、7分、3分、7分の時間間隔で板が発生していた場合、それらを5分間隔に平均し、3分と7分のタイミングの価格で5分のタイミングの価格を補完し、5分間隔の板情報として用意しておいてもよい。
なお、履歴情報を用いて制約条件を課したほうが、予測精度を向上させることができるが、要求される精度に応じて現在板情報のみから次板情報を予測するような構成としてもよい。
When the current board information is input, the
At this time, the board information of a past predetermined period input to the
For example, if order information is input from the
Here, only one piece of board information five minutes before is acquired as the board information of a predetermined period past the time when the order information was input from the
It should be noted that the prediction accuracy can be improved by imposing the constraint condition using the history information, but it is also possible to predict the next board information only from the current board information according to the required accuracy.
注文シミュレータ302は、板生成NN303より、取引所シミュレータ301に注文情報が入力されたときより未来の板情報として次板情報を受け取る。即ち、板生成NN303は、現在板情報及び過去の所定期間の板情報から次板情報を生成する。板生成NN303は、後述するようにして、現在板情報及び過去の所定期間の板情報から次板情報を生成するように学習(パラメータが調整)されたニューラルネットワークである。
上述した例では、ユーザ端末110から取引所シミュレータ301に注文情報が入力されたときが8月6日10時00分だった場合、次板情報は、8月6日10時05分の板情報となる。注文シミュレータ302は、現在板情報と次板情報とに基づき、ユーザ端末110から入力された入力情報に応じた注文情報を生成する。
ときに、一般的な取引シミュレータでは、次板情報は、注文シミュレータ302により生成された注文情報と、現在板情報とに基づいて、生成されるものである。しかし、本実施形態のマーケットシミュレーションシステム120では、板生成NN303により現在板情報及び過去の所定期間の板情報から次板情報を予測し、注文シミュレータ302は、そこから逆算する形で注文情報を生成する。
一般的な取引シミュレータでは、注文シミュレータにおいて数式等の係数を用いてマーケットインパクトを考慮した注文を生成するが、どうしても人工的な動きとなってしまい、不自然な注文となることが多い。これに対して、上述のように、実際のマーケットにおける板の動きを学習させたニューラルネットワークを用いることで、マーケットインパクトを考慮した注文が違和感のない形で再現される。
生成された注文情報は、第2の注文情報の一例である。そして、注文シミュレータ302は、生成した注文情報を取引所シミュレータ301に入力する。
取引所シミュレータ301は、注文シミュレータ302から入力された注文情報に基づき、注文情報が入力された際の板情報を更新する。
なお、更新された板情報は、基本的には板生成NN303で生成された次板情報と同じになる場合もあるため、そのような場合には、取引所シミュレータ301は、板生成NN303で生成された次板情報で板情報を更新してもよい。但し、特別気配の場合や板寄せが行われる場合等のデータについては例えば除外する等の例外的な処理が必要になるため、基本的には、注文シミュレータ302において現在板情報及び/又は過去板情報と次板情報とから注文情報を生成し、取引所シミュレータ301において改めて板情報を更新する必要がある。
取引所シミュレータ301は、更新した板情報をユーザ端末110に提示する。また、取引所シミュレータ301は、ユーザ端末110から入力された注文情報と注文シミュレータ302とから入力された注文情報とに基づき約定シミュレーションを実行し、約定情報をユーザ端末110に送信することで、約定情報を提示する。
The
In the above example, when the order information is input from the
Sometimes, in a typical trading simulator, the next board information is generated based on the order information generated by the
In general trading simulators, orders are generated in consideration of market impact by using coefficients such as formulas in order simulators, but orders tend to be artificial and unnatural orders. On the other hand, as described above, by using a neural network that has learned the movement of the board in the actual market, orders that take into account the market impact can be reproduced in a natural way.
The generated order information is an example of second order information. The
Based on the order information input from the
Note that the updated board information may basically be the same as the next board information generated by the
The
図4は、マーケットシミュレーションシステム120における、注文情報が入力された際の情報処理の一例を示すフローチャートである。
S401において、取引所シミュレータ301は、ユーザ端末110から注文情報が入力されたか否かを判定する。取引所シミュレータ301は、ユーザ端末110から注文情報が入力されたと判定した場合、S402に処理を進め、ユーザ端末110から注文情報が入力されていないと判定した場合、S401の処理を繰り返す。
S402において、取引所シミュレータ301は、入力された注文情報に基づき、注文情報が入力された際の板情報を更新する。この処理は、第1の更新処理の一例である。
取引所シミュレータ301は、更新した板情報をユーザ端末110に提示する。また、取引所シミュレータ301は、更新した板情報を現在板情報として注文シミュレータ302に入力する。
取引所シミュレータ301より現在板情報が入力されると、S403において、注文シミュレータ302は、注文情報生成処理を実行する。注文情報生成処理の詳細は、後述する図5を用いて説明する。注文情報を生成すると、注文シミュレータ302は、注文情報を、取引所シミュレータ301に入力する。
なお、注文シミュレータ302は、上述のとおり過去板情報304の板情報に基づく過去注文情報305の再現も行う。したがって、注文シミュレータ302は、過去板情報304及び過去注文情報305に基づく再現注文と、ユーザ端末110から注文が入力された場合における板生成NN303により生成される板情報に基づくマーケットインパクト注文とをシームレスな切り替え理論により行う。即ち、注文シミュレータ302は、通常は再現注文を生成しつつ、ユーザ端末110からの注文入力が発生した場合にはマーケットインパクト注文の生成にスイッチするような制御を行う。
S403で生成された注文情報が入力されると、S404において、取引所シミュレータ301は、注文情報が入力された際の板情報を更新する。この処理は、第2の更新処理の一例である。取引所シミュレータ301は、更新した板情報をユーザ端末110に提示する。この処理は、提示処理の一例である。
S405において、取引所シミュレータ301は、ユーザ端末110から入力された注文情報と注文シミュレータ302とから入力された注文情報(又はそれにより更新された板情報)とに基づき約定シミュレーションを実行する。
FIG. 4 is a flow chart showing an example of information processing in the
In S<b>401 , the
In S402, the
The
When the current board information is input from the
The
When the order information generated in S403 is input, in S404 the
In S405, the
図5は、S403の処理の詳細の一例を示すフローチャートである。
S501において、注文シミュレータ302は、ユーザ端末110から取引所シミュレータ301に注文情報が入力されたときより過去の所定の期間の板情報(以下、単に過去板情報という)を過去板情報304又は図示しないシミュレーション履歴板情報記憶部から取得する。
S502において、注文シミュレータ302は、取引所シミュレータ301より入力された現在板情報とS501で取得した過去板情報とを板生成NN303に入力する。板生成NN303は、現在板情報及び過去板情報から、取引所シミュレータ301に注文情報が入力されたときより未来の板情報として(現在板情報の次のタイミングの板情報として)次板情報を生成する。予測される情報としては、例えば売気配や買気配の価格とそれらの数量の板情報のほか、その更新時刻等の情報も含まれる。売気配や買気配は最良気配とその他気配ごとに価格や数量の板情報とその更新時刻等が予測されるものであってもよいし、所定の数の売気配、買気配のそれぞれについて価格と数量と更新時刻等が予測されるものであってもよく、特に限定はされない。
S503において、注文シミュレータ302は、板生成NN303より、取引所シミュレータ301に注文情報が入力されたときより未来の板情報として次板情報を受け取る。
S502及びS503の処理は、予測処理の一例である。
S504において、注文シミュレータ302は、現在板情報と次板情報とに基づき、ユーザ端末110から入力された入力情報に応じた注文情報を生成する。即ち、注文シミュレータ302は、現在板情報と、板生成NN303により現在板情報及び過去板情報から予測されたマーケットインパクトが加味された次板情報とから、逆算する形で注文情報を生成する。
S504の処理は、生成処理の一例である。
FIG. 5 is a flowchart showing an example of details of the processing of S403.
In S501, the
In S502, the
In S503, the
The processing of S502 and S503 is an example of prediction processing.
In S504, the
The processing of S504 is an example of generation processing.
ここで、図6A及び図6Bは、板情報の例を示す図である。
図6Aは、ある日の9時30分の板情報を示している。図6Bは、同じ日の9時35分の板情報を示している。
図6Cは、価格と時刻との時系列データ(板情報の価格を時系列の推移のグラフとして表したもの)の一例を示す図である。図6Cは、株の売り、買いの「価格」と「時刻」との時系列データのみを示しているが、同様に、株の売り、買いの「数量」と「時刻」との時系列データも過去板情報304としてマーケットシミュレーションシステム120は有している。また、図6Cでは、気配X1,2…、気配Y1,2…のすべての時系列データが均等な幅(所定間隔で略平行)になっているが、あくまで説明のため簡略化した形で表しているものにすぎず、実際には気配X1,2…、気配Y1,2…の各時系列データはバラバラな動きをする。更には、時間間隔も一定になっているが、あくまで説明のため簡略化したものであって、リアルなデータをそのまま用いる場合には等間隔とは限らないし、そのような等間隔ではないリアルなデータを補間して図6Cに示すように等間隔にしたものであってもよい。
なお、売気配や買気配は最良気配とその他気配ごとに価格・数量と時刻等が予測されるものであれば、売気配・買気配ごとの最良気配・その他気配の価格・数量と時刻の時系列データとして表される。
Here, FIGS. 6A and 6B are diagrams showing examples of board information.
FIG. 6A shows board information at 9:30 on a certain day. FIG. 6B shows the board information at 9:35 on the same day.
FIG. 6C is a diagram showing an example of time-series data of price and time (price of board information represented as a graph of time-series transition). FIG. 6C shows only time-series data of "price" and "time" for selling and buying stocks, but similarly, time-series data of "quantity" and "time" for selling and buying stocks. The
In addition, if the price, quantity, time, etc. of each best quote and other quotes are predicted for sell and buy quotes, the price, quantity, and time of each best quote and other quotes Represented as series data.
以下、学習について説明する。学習を行う主体は、マーケットシミュレーションシステム120のCPU201として説明を行うが、他の情報処理装置(又はコンピュータ)が学習を担当するようにしてもよい。この場合、他の情報処理装置(又はコンピュータ)のCPUが処理の主体となる。
図7は、LSTM(Long Short Term Memory)を用いた場合の、板生成NN303の学習の一例を示す図である。
図7に示されるように、CPU201は、t1(例えば、10時00分)とt2(例えば、10時05分)との板情報を学習データとし、t3(例えば、10時10分)の板情報を教師データとして、板生成NN303を学習させる。同様に、CPU201は、t2(例えば、10時05分)とt3(例えば、10時10分)との板情報を学習データとし、t4(例えば、10時15分)の板情報を教師データとして、板生成NN303を学習させる。このように学習させることで、板生成NN303は、直前の連続する過去の2つの板情報を入力すると、次の板情報を出力(予測)することができるように、LSTMニューラルネットワーク(学習モデル)のパラメータが調整される。
なお、ここでは説明を簡単にするため、あくまで一例として、現在板を含む直前の連続する過去の2つの板情報から次の板情報を予測するための学習モデルを例に説明したが、過去の3つ以上の板情報から次の板を予測する学習モデルであってもよいし、連続しない過去の複数の板情報から次の板情報を予測するような学習モデルであってもよいし、又は直前の1つの板情報(現在板情報)から次の板情報(気配値や数量)を予測するような学習モデルであってもよいし、更には、複数の過去板情報からその間の時刻における価格を線形補間等した値と対応する時刻を用いて次の板情報(気配値や数量)を予測するような学習モデルとして構成してもよく、特に限定はされない。 ここで、LSTMは、RNNの拡張として登場した時系列データに対するモデルの一つである。LSTMは、一例であって、他のRNNを用いてもよい。
Learning will be described below. The learning subject is described as the
FIG. 7 is a diagram showing an example of learning of the
As shown in FIG. 7, the
In order to simplify the explanation, the learning model for predicting the next board information from two consecutive past board information immediately before the current board was explained as an example. It may be a learning model that predicts the next board from three or more board information, or a learning model that predicts the next board information from a plurality of discontinuous pieces of past board information, or It may be a learning model that predicts the next board information (indicative price and quantity) from the previous one board information (current board information), and furthermore, it may be a learning model that predicts the next board information (quote price and quantity) from the previous board information (current board information). may be configured as a learning model that predicts the next board information (indicative price or quantity) using a linearly interpolated value and the corresponding time, and is not particularly limited. Here, LSTM is one of models for time-series data that appeared as an extension of RNN. LSTM is an example, and other RNNs may be used.
図8A及び図8Bは、CNNを用いた場合の、板生成NN303の学習の一例を示す図である。
図8Aは、図6Aで示される板情報を画像で表現したものである。また、図8Bは、図Bで示される板情報を画像で表現したものである。
CPU201は、t1(例えば、10時00分)とt2(例えば、10時05分)との板情報の画像を学習データとし、t3(例えば、10時10分)の価格や数量の板情報(又は、何秒後に、変化なし/変化あり(即ち「上昇する」や「下降する」)といった情報)を教師データとして、板生成NN303を学習させるようにしてもよい。これにより、板生成NN303をCNN学習モデルとして構成することができるようになる。なお、CNNの一例として3D-CNNを用いてもよい。
ときに、CNN、RNN、LSTMについて簡単に補足すれば以下のとおりである。近年、人工知能技術としてディープラーニング(深層学習)の利用が盛んになっている。ディープラーニングは、機械学習技術の一つであるニューラルネットワークの階層を深めたアルゴリズムである。ニューラルネットワークは、生物の脳神経(ニューロン)をモデルとしたアルゴリズムである。ニューラルネットワークは、入力層、隠れ層、出力層の各層をもつ。各層にはノードがあり、ノード間がエッジで結合される構造となっている。隠れ層には複数の層をもつことができる。この隠れ層が深いニューラルネットワークを用いた機械学習がディープラーニングと呼ばれる。換言すれば、ディープラーニングとは、機械学習のうち、ニューラルネットワークを用いて入力データの特徴をコンピュータが自動的に抽出するものである。ディープラーニングは教師あり学習にも教師なし学習にも適用可能であるが、実用化されているものとしては教師あり学習のほうが多い。
ニューラルネットワークの各層は活性化関数と呼ばれる関数をもち、エッジは重みをもつことができる。各ノードの値は、1つ前の層のノードの値から計算される。即ち、各ノードの値は、前の層のノード値、エッジの重みの値、そして活性化関数から計算される。この計算方法には種々のものがあるが、詳細については説明を省略する。
CNNは、画像認識の分野で実績がある。CNNでは、隠れ層は、畳み込み層とプーリング層とから構成される。畳み込み層では前の層の近くのノードに対してフィルタ処理を行う。行列で表されるフィルタを元の入力画像に対してスライドさせていくイメージである。これにより、特徴マップを得ることができる。
プーリング層は、畳み込み層から出力された特徴マップを縮小して新たな特徴マップを生成する。この特徴マップの生成処理により、画像のずれが吸収できるようになる。そして、プーリング層は、局所的な特徴をまとめあげる処理をする。
畢竟、畳み込み層及びプーリング層は、入力画像の特徴を維持しながら画像を縮小処理することを意味する。単なる画像圧縮との違いは、画像の特徴を維持しながら画像を縮小するものであり、換言すれば抽象化する処理であるといえる。
CNNでは、各層は次の層へと意味のあるデータを順に渡していく。層が進むにつれてネットワークはより高レベルな特徴を学習することができる。例えば、最初の層では例えばエッジなどの局所的な特徴を検出し、次の層でそれらを組み合わせてテクスチャを検出するなどし、更にその次の層ではより抽象的な耳などの部位の特徴を検出する。CNNでは、このような特徴を抽出するためのパラメータを自動で学習していく。このようにして、CNNでは、ネットワークに記憶された抽象化された画像イメージを用いて、入力される画像を認識ないしは分類をすることができるようになる。
CNNで扱われるのが主に画像データ(二次元の矩形データ)であったのに対し、RNNが扱うのは、音声データ等の可変長の時系列データである。RNNでは、可変長データをニューラルネットワークで扱うために、隠れ層の値を再び隠れ層に入力するネットワークの構造にしたものである。しかしながら、RNNは、長時間前のデータを利用すると誤差が消滅したり、演算量が膨大になったりするなどの問題がある。そのため、短時間のデータしか処理できなかった。そこで登場したのがLSTMである。LSTMは、RNNの欠点を解消し、長期の時系列データを学習することができる学習モデルである。
8A and 8B are diagrams showing an example of learning of the
FIG. 8A is an image representation of the board information shown in FIG. 6A. FIG. 8B is an image representation of the board information shown in FIG.
The
A brief supplement to CNN, RNN, and LSTM is sometimes as follows. In recent years, deep learning has been widely used as an artificial intelligence technology. Deep learning is an algorithm that deepens the hierarchy of neural networks, which is one of the machine learning techniques. A neural network is an algorithm modeled on the cranial nerves (neurons) of living organisms. A neural network has an input layer, a hidden layer, and an output layer. Each layer has nodes, and the nodes are connected by edges. A hidden layer can have multiple layers. Machine learning using neural networks with deep hidden layers is called deep learning. In other words, deep learning is machine learning in which a computer automatically extracts features of input data using a neural network. Deep learning can be applied to both supervised and unsupervised learning, but supervised learning is more practical.
Each layer of a neural network has a function called an activation function, and edges can have weights. The value of each node is calculated from the value of the node in the previous layer. That is, the value of each node is calculated from the previous layer's node value, the edge weight value, and the activation function. Although there are various methods for this calculation, the detailed explanation is omitted.
CNN has a proven track record in the field of image recognition. In CNN, the hidden layer consists of convolutional layers and pooling layers. A convolutional layer filters on nearby nodes in the previous layer. It is an image of sliding the filter represented by the matrix with respect to the original input image. Thereby, a feature map can be obtained.
The pooling layer reduces the feature map output from the convolutional layer to generate a new feature map. This feature map generation process can absorb image deviations. The pooling layer then takes care of putting together the local features.
After all, the convolution layer and the pooling layer mean that the image is reduced while preserving the features of the input image. The difference from simple image compression is that the image is reduced while maintaining the characteristics of the image, in other words, it can be said to be a process of abstraction.
In CNN, each layer in turn passes meaningful data to the next layer. As layers progress, the network can learn higher-level features. For example, the first layer may detect local features such as edges, the next layer may combine them to detect textures, etc., and the next layer may detect more abstract regional features such as ears. To detect. The CNN automatically learns parameters for extracting such features. In this way, the CNN makes it possible to recognize or classify input images using the abstracted images stored in the network.
While CNN mainly handles image data (two-dimensional rectangular data), RNN handles variable-length time-series data such as voice data. In RNN, in order to handle variable-length data with a neural network, the value of the hidden layer is input to the hidden layer again. However, the RNN has problems such as the disappearance of errors when using data from a long time ago and the enormous amount of computation. Therefore, only short-term data could be processed. That's where LSTM comes in. LSTM is a learning model that overcomes the shortcomings of RNN and can learn long-term time-series data.
図9は、CNNにより学習した学習済みモデルに基づいて転移学習する一例を示す図である。上述のとおり、CNNでは、様々な特徴を捉える特徴抽出器(又は識別器)ができあがっている状態といえる。転移学習では、CNNにおいてすでにできあがっている特徴抽出器の部分(ニューラルネットワークのうち入力側に近い層)を再利用し、分類器の部分(ニューラルネットワークのうち出力側に近い層)についてのみ再度学習するものである。これにより、普通に学習させるよりも少ないデータで追加学習させることができる。例えば画像認識においては、犬猫を認識するニューラルネットワークが学習済みの場合、入力側に近いプリミティブな要素や特徴を識別する層を再利用し、出力側に近いより抽象的な要素や特徴を識別する層や対象を分類する層のみを再学習させることで、猿やチンパンジーなどの他の動物をも認識することができるように学習させることができる。これを株取引における板情報の予測へ適用する場合には、出力側に近い層の部分を特定の日時のデータで再学習させるような転移学習を行うことでデータ量を補うことになる。
図9に示されるように、CPU201は、例えば、2018年より前の過去板情報に基づき、学習済みの板生成NNを生成しておく。そして、CPU201は、ベースとなる学習モデルに対して、更に2018年1月のデータを学習させ、2018年1月用の学習済み板生成NNを生成するようにしてもよい。また、CPU201は、ベースとなる学習モデルに対して、更に2018年3月1周目のデータを学習させ、2018年2月1周目用の学習済み板生成NNを生成するようにしてもよい。また、CPU201は、ベースとなる学習モデルに対して、更に2018年3月〇日のデータを学習させ、2018年3月〇日用の学習済み板生成NNを生成するようにしてもよい。
図9では、CNNにより学習した学習済みモデルを例に説明を行ったが、LSTMにより学習した学習済みモデルに対して転移学習するようにしてもよい。また、LSTMの学習において、CNNで獲得した特徴量を利用して再学習させることができる。即ち、LSTMとCNNとを組み合わせて転移学習を行うことができる。
FIG. 9 is a diagram showing an example of transfer learning based on a trained model learned by CNN. As described above, in CNN, it can be said that a feature extractor (or discriminator) that captures various features has been completed. In transfer learning, the feature extractor part (layer close to the input side of the neural network) that has already been completed in CNN is reused, and only the classifier part (layer close to the output side of the neural network) is retrained. It is something to do. As a result, additional learning can be performed with less data than normal learning. For example, in image recognition, if a neural network that recognizes dogs and cats has already been trained, it reuses the layer that identifies primitive elements and features close to the input side, and identifies more abstract elements and features close to the output side. By retraining only the layer that classifies objects and the layer that classifies objects, it is possible to learn to recognize other animals such as monkeys and chimpanzees. When applying this to the prediction of board information in stock trading, the amount of data is supplemented by performing transfer learning in which the part of the layer close to the output side is re-learned with data from a specific date and time.
As shown in FIG. 9, the
In FIG. 9, a trained model learned by CNN is used as an example, but transfer learning may be performed on a trained model learned by LSTM. Also, in the learning of the LSTM, it is possible to re-learn using the feature quantity acquired by the CNN. That is, transfer learning can be performed by combining LSTM and CNN.
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
<Other embodiments>
The present invention is also realized by executing the following processing. That is, the software (program) that implements the functions of the above-described embodiments is supplied to the system or device via a network or various storage media. Then, the computer (or CPU, MPU, etc.) of the system or apparatus reads and executes the program.
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。 Although an example of the embodiment of the present invention has been described in detail above, the present invention is not limited to such a specific embodiment.
以上、上述した各実施形態の処理によれば、より少ないリソース、及びより短い時間で、より現実に近い市場の動きを再現することができる。 As described above, according to the processing of each embodiment described above, more realistic market movements can be reproduced with fewer resources and in a shorter time.
120 マーケットシミュレーションシステム
201 CPU
303 板生成NN
120
303 plate generation NN
Claims (10)
前記予測された未来の板情報と前記第1の注文情報に基づき更新された板情報とに基づき第2の注文情報を生成する生成手段と、
を有する情報処理システム。 Using a neural network, based on either or both of the board information updated when the first order information was input and the board information past when the first order information was input, Prediction means for predicting future board information from when the board information is updated when the order information of 1 is input;
generating means for generating second order information based on the predicted future board information and board information updated based on the first order information;
An information processing system having
前記予測手段は、前記ニューラルネットワークを用いて、前記第1の更新手段により更新された前記板情報及び前記第1の注文情報が入力されたときより過去の板情報の何れか又は双方に基づいて、前記第1の注文情報が入力された際に板情報が更新されたときより未来の板情報を予測する請求項1記載の情報処理システム。 further comprising first updating means for updating, when the first order information is input, the board information at the time when the first order information was input;
The predicting means, using the neural network, based on either or both of the board information updated by the first updating means and the board information past when the first order information was input. 2. The information processing system according to claim 1, wherein future board information is predicted after board information is updated when said first order information is input.
ニューラルネットワークを用いて、第1の注文情報が入力された際に更新された板情報及び前記第1の注文情報が入力されたときより過去の板情報の何れか又は双方に基づいて、前記第1の注文情報が入力された際に板情報が更新されたときより未来の板情報を予測する予測工程と、
前記予測された未来の板情報と前記第1の注文情報に基づき更新された板情報とに基づき第2の注文情報を生成する生成工程と、
を含む情報処理方法。 An information processing method executed by an information processing system,
Using a neural network, based on either or both of the board information updated when the first order information was input and the board information past when the first order information was input, a prediction step of predicting future board information from when the board information is updated when the order information of 1 is input;
a generating step of generating second order information based on the predicted future board information and board information updated based on the first order information;
Information processing method including.
ニューラルネットワークを用いて、第1の注文情報が入力された際に更新された板情報及び前記第1の注文情報が入力されたときより過去の板情報の何れか又は双方に基づいて、前記第1の注文情報が入力された際に板情報が更新されたときより未来の板情報を予測する予測工程と、
前記予測された未来の板情報と前記第1の注文情報に基づき更新された板情報とに基づき第2の注文情報を生成する生成工程と、
を実行させるためのプログラム。 to the computer,
Using a neural network, based on either or both of the board information updated when the first order information was input and the board information past when the first order information was input, a prediction step of predicting future board information from when the board information is updated when the order information of 1 is input;
a generating step of generating second order information based on the predicted future board information and board information updated based on the first order information;
program to run the
ニューラルネットワークを用いて、第1の注文情報が入力された際に更新された板情報及び前記第1の注文情報が入力されたときより過去の板情報の何れか又は双方に基づいて、前記第1の注文情報が入力された際に板情報が更新されたときより未来の板情報を予測する予測工程と、
前記予測された未来の板情報と前記第1の注文情報に基づき更新された板情報とに基づき第2の注文情報を生成する生成工程と、
を実行させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。 to the computer,
Using a neural network, based on either or both of the board information updated when the first order information was input and the board information past when the first order information was input, a prediction step of predicting future board information from when the board information is updated when the order information of 1 is input;
a generating step of generating second order information based on the predicted future board information and board information updated based on the first order information;
A computer-readable storage medium storing a program for executing
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2018192781A JP7122214B2 (en) | 2018-10-11 | 2018-10-11 | Information processing system, information processing method, program and storage medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2018192781A JP7122214B2 (en) | 2018-10-11 | 2018-10-11 | Information processing system, information processing method, program and storage medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2020061027A JP2020061027A (en) | 2020-04-16 |
| JP7122214B2 true JP7122214B2 (en) | 2022-08-19 |
Family
ID=70219999
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018192781A Active JP7122214B2 (en) | 2018-10-11 | 2018-10-11 | Information processing system, information processing method, program and storage medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7122214B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP4131348A4 (en) | 2020-03-30 | 2024-05-01 | Mitsui Chemicals Tohcello, Inc. | METHOD FOR PRODUCING ELECTRONIC DEVICE |
| KR102924399B1 (en) * | 2022-04-07 | 2026-02-06 | 리벨리온 주식회사 | Method and system for high frequency trading |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014052941A (en) | 2012-09-10 | 2014-03-20 | Daiwa Institute Of Research Business Innovation Ltd | Order placement system |
| JP2015075942A (en) | 2013-10-09 | 2015-04-20 | 新日鉄住金ソリューションズ株式会社 | Information processing system, information processing deice, simulation deice, information processing method, simulation method, and program |
| JP2015090565A (en) | 2013-11-06 | 2015-05-11 | 株式会社ゲイターズ | Trading order control program and device, and control method of trading order |
-
2018
- 2018-10-11 JP JP2018192781A patent/JP7122214B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014052941A (en) | 2012-09-10 | 2014-03-20 | Daiwa Institute Of Research Business Innovation Ltd | Order placement system |
| JP2015075942A (en) | 2013-10-09 | 2015-04-20 | 新日鉄住金ソリューションズ株式会社 | Information processing system, information processing deice, simulation deice, information processing method, simulation method, and program |
| JP2015090565A (en) | 2013-11-06 | 2015-05-11 | 株式会社ゲイターズ | Trading order control program and device, and control method of trading order |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2020061027A (en) | 2020-04-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Morecroft et al. | Explaining puzzling dynamics: A comparison of system dynamics and discrete‐event simulation | |
| US11381651B2 (en) | Interpretable user modeling from unstructured user data | |
| US11694165B2 (en) | Key-value memory network for predicting time-series metrics of target entities | |
| GB2614849A (en) | Computer-based systems, computing components and computing objects configured to implement dynamic outlier bias reduction in machine learning models | |
| CN111724083A (en) | Training method and device for financial risk recognition model, computer equipment and medium | |
| CN111176758B (en) | Configuration parameter recommendation method and device, terminal and storage medium | |
| CN107077637A (en) | Differential coding in neutral net | |
| CN114511387A (en) | Product recommendation method and device, electronic equipment and storage medium | |
| CN111523940A (en) | Deep reinforcement learning-based recommendation method and system with negative feedback | |
| Lepenioti et al. | Human-augmented prescriptive analytics with interactive multi-objective reinforcement learning | |
| US10537801B2 (en) | System and method for decision making in strategic environments | |
| CN113313381B (en) | A User Interaction Sensitive Dynamic Graph Sequence Recommendation System | |
| CN112269943B (en) | Information recommendation system and method | |
| TW202232284A (en) | Simulated control for 3- dimensional human poses in virtual reality environments | |
| JP7122214B2 (en) | Information processing system, information processing method, program and storage medium | |
| CN118152656A (en) | An online course recommendation method and system based on large language model | |
| CN110110372B (en) | Automatic segmentation prediction method for user time sequence behavior | |
| CN113705071A (en) | Equipment identification method, device, equipment and storage medium | |
| Eisenhauer | The approximate solution of finite‐horizon discrete‐choice dynamic programming models | |
| KR20230018569A (en) | Device for predecting the state of entity, method for predecting the state of object and computer program stored in a recording medium to execute the method | |
| CN118333163A (en) | Tracking prediction method and system based on interaction between knowledge points and learning forgetting | |
| Lin et al. | An agent-based market simulator for back-testing deep reinforcement learning based trade execution strategies | |
| JP7262335B2 (en) | Prediction device, learning device, prediction method, and program | |
| CN114723054A (en) | Deep learning knowledge tracking method and system based on attention mechanism | |
| Mousavi et al. | Researching advanced deep learning methodologies in combination with reinforcement learning techniques |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210810 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220610 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220802 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220808 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7122214 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |