IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ リベリオンズ インコーポレイテッドの特許一覧

特許7598579高頻度取引のための装置及びその動作方法
<>
  • 特許-高頻度取引のための装置及びその動作方法 図1
  • 特許-高頻度取引のための装置及びその動作方法 図2
  • 特許-高頻度取引のための装置及びその動作方法 図3
  • 特許-高頻度取引のための装置及びその動作方法 図4
  • 特許-高頻度取引のための装置及びその動作方法 図5
  • 特許-高頻度取引のための装置及びその動作方法 図6
  • 特許-高頻度取引のための装置及びその動作方法 図7
  • 特許-高頻度取引のための装置及びその動作方法 図8
  • 特許-高頻度取引のための装置及びその動作方法 図9
  • 特許-高頻度取引のための装置及びその動作方法 図10
  • 特許-高頻度取引のための装置及びその動作方法 図11
  • 特許-高頻度取引のための装置及びその動作方法 図12
  • 特許-高頻度取引のための装置及びその動作方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-04
(45)【発行日】2024-12-12
(54)【発明の名称】高頻度取引のための装置及びその動作方法
(51)【国際特許分類】
   G06Q 40/04 20120101AFI20241205BHJP
【FI】
G06Q40/04
【請求項の数】 18
(21)【出願番号】P 2022176878
(22)【出願日】2022-11-04
(65)【公開番号】P2023073985
(43)【公開日】2023-05-26
【審査請求日】2022-11-04
(31)【優先権主張番号】10-2021-0158053
(32)【優先日】2021-11-16
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】522431896
【氏名又は名称】リベリオンズ インコーポレイテッド
【氏名又は名称原語表記】REBELLIONS INC.
(74)【代理人】
【識別番号】100121728
【弁理士】
【氏名又は名称】井関 勝守
(74)【代理人】
【識別番号】100165803
【弁理士】
【氏名又は名称】金子 修平
(74)【代理人】
【識別番号】100170900
【弁理士】
【氏名又は名称】大西 渉
(72)【発明者】
【氏名】キム ヒョンソン
(72)【発明者】
【氏名】ユ ソンヨップ
(72)【発明者】
【氏名】パク ソンヒョン
(72)【発明者】
【氏名】オ ジンウク
【審査官】松野 広一
(56)【参考文献】
【文献】国際公開第2020/232294(WO,A1)
【文献】特開2019-016151(JP,A)
【文献】米国特許出願公開第2019/0370630(US,A1)
【文献】中国実用新案第212846785(CN,U)
【文献】特開2017-142781(JP,A)
【文献】特開2003-006374(JP,A)
【文献】米国特許出願公開第2019/0244288(US,A1)
【文献】NATNAEL KAHSSAY et al.,6.111 final: HFT Accelerator,[online],2019年12月,pp.1-28,[令和5年11月14日検索],インターネット<URL:http://web.mit.edu/6.111/volume2/www/f2019/projects/endrias_Project_Final_Report3.pdf>
【文献】BOMING HUIANG et al.,Automated trading systems statistical and machine learning methods and hardware implementation: a survey,Enterprise Information Systems [online],2018年07月12日,pp.132-144,[令和5年11月14日],インターネット<URL:https://www.tandfonline.com/doi/full/10.1080/17517575.2018.1493145>
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
高頻度取引のための装置において、
一つ以上のインストラクションを保存する一つ以上のメモリと、
前記一つ以上のメモリの一つ以上のインストラクションを実行することで、一つ以上の市場関連情報サーバから市場関連情報を受信し、前記市場関連情報に基づいて市場予測参照データを生成するように構成された少なくとも一つの再構成可能なプロセッサと、
前記市場予測参照データを受信し、前記市場予測参照データを用いて未来市場予測データを生成するための機械学習モデルのための演算を遂行し、前記未来市場予測データを前記少なくとも一つの再構成可能なプロセッサに提供するように構成された前記機械学習モデルのための専用加速器とを含み、
前記少なくとも一つの再構成可能なプロセッサは、前記未来市場予測データに基づいて注文信号を生成し、前記注文信号をターゲット取引所サーバに転送するようにさらに構成され、
前記少なくとも一つの再構成可能なプロセッサは、
前記市場予測参照データに基づいて予測複雑度を決定し、前記決定された予測複雑度に応じて、前記注文信号を生成するための方式を決定するようにさらに構成され、
前記決定された方式が既定の規則である場合、前記少なくとも一つの再構成可能なプロセッサは、前記市場予測参照データに基づいて前記既定の規則によって前記注文信号を生成するようにさらに構成され、
前記決定された方式が機械学習モデルである場合、前記専用加速器は、前記未来市場予測データを生成するための前記機械学習モデルのための演算を遂行し、前記少なくとも一つの再構成可能なプロセッサが前記未来市場予測データに基づいて前記注文信号を生成するように、前記未来市場予測データを前記少なくとも一つの再構成可能なプロセッサに提供するようにさらに構成される、高頻度取引のための装置。
【請求項2】
前記少なくとも一つの再構成可能なプロセッサは、フィールドプログラム可能なゲートアレイ(FPGA)で具現化され、前記専用加速器は、ニューラルプロセッシングユニットのための集積回路(NPU ASIC)で具現化される、請求項1に記載の高頻度取引のための装置。
【請求項3】
前記一つ以上の市場関連情報サーバは、一つ以上の参照取引所サーバ、一つ以上のニュース提供サーバ、一つ以上のソーシャルネットワークサービス(SNS)サーバ又は一つ以上のオンラインショッピングサービスサーバの少なくとも一つを含む、請求項1に記載の高頻度取引のための装置。
【請求項4】
トレーディングエンジンを駆動するように構成されるホスト装置をさらに含み、
前記予測複雑度は、複雑度に応じた3つの複雑度クラスを含み、
前記注文信号を生成するために、前記市場予測参照データは、前記3つの複雑度クラスに応じて、前記少なくとも一つの再構成可能なプロセッサ、前記ホスト装置又は前記機械学習モデルのための専用加速器の少なくとも一つに提供される、請求項に記載の高頻度取引のための装置。
【請求項5】
前記少なくとも一つの再構成可能なプロセッサは、前記市場関連情報をパッシング及びデコードし、前記パッシング及びデコードした市場関連情報に基づいて前記市場予測参照データを生成するようにさらに構成される、請求項1に記載の高頻度取引のための装置。
【請求項6】
前記市場予測参照データは、一つ以上の時点での一つ以上の参照種目に対する一つ以上の参照特徴を含む、請求項1に記載の高頻度取引のための装置。
【請求項7】
前記一つ以上の参照種目は、先行指標を示す参照種目及び注文対象となるターゲット種目を含む、請求項に記載の高頻度取引のための装置。
【請求項8】
前記少なくとも一つの再構成可能なプロセッサは、生成された注文信号をターゲット取引所サーバで要求するプロトコルによって処理するようにさらに構成される、請求項1に記載の高頻度取引のための装置。
【請求項9】
前記市場関連情報は、参照取引所サーバと関連付けられた参照取引所の一つ以上の参照種目に対するオーダーブックに関する情報と、前記ターゲット取引所サーバと関連付けられたターゲット取引所の以前注文に対する応答とを含む、請求項1に記載の高頻度取引のための装置。
【請求項10】
少なくとも一つの再構成可能なプロセッサを含む高頻度取引装置を動作する方法において、
前記少なくとも一つの再構成可能なプロセッサにより、一つ以上の市場関連情報サーバから市場関連情報を受信するステップと、
前記少なくとも一つの再構成可能なプロセッサにより、前記市場関連情報に基づいて市場予測参照データを生成するステップと、
前記少なくとも一つの再構成可能なプロセッサにより、前記市場予測参照データを、前記市場予測参照データに基づいて未来市場予測データを生成するための機械学習モデルの演算を遂行するように構成された前記機械学習モデルのための専用加速器に転送するステップと、
前記少なくとも一つの再構成可能なプロセッサにより、前記未来市場予測データを前記専用加速器から受信するステップと、
前記少なくとも一つの再構成可能なプロセッサにより、前記未来市場予測データに基づいて注文信号を生成するステップと、
前記注文信号をターゲット取引所サーバに転送するステップとを含み、
前記少なくとも一つの再構成可能なプロセッサにより、前記市場予測参照データに基づいて予測複雑度を決定するステップと、
前記少なくとも一つの再構成可能なプロセッサにより、前記決定された予測複雑度に応じて、前記注文信号を生成するための方式を決定するステップと、
前記決定された方式が既定の規則である場合、前記少なくとも一つの再構成可能なプロセッサにより、前記市場予測参照データに基づいて前記既定の規則によって前記注文信号を生成するステップと、
前記決定された方式が機械学習モデルである場合、前記少なくとも一つの再構成可能なプロセッサにより、前記市場予測参照データを、前記市場予測参照データに基づいて未来市場予測データを生成するための機械学習モデルの演算を遂行するように構成された前記機械学習モデルのための専用加速器に転送するステップとをさらに含む、高頻度取引装置を動作する方法。
【請求項11】
前記一つ以上の市場関連情報サーバは、一つ以上の参照取引所サーバ、一つ以上のニュース提供サーバ、一つ以上のソーシャルネットワークサービス(SNS)サーバ又は一つ以上のオンラインショッピングサービスサーバの少なくとも一つを含む、請求項10に記載の高頻度取引装置を動作する方法。
【請求項12】
前記予測複雑度は、複雑度に応じた3つの複雑度クラスを含み、
前記ターゲット取引所サーバに対する注文信号を生成するために、前記市場予測参照データは、前記3つの複雑度クラスに応じて、前記少なくとも一つの再構成可能なプロセッサ、ホスト装置又は前記専用加速器の少なくとも一つに提供される、請求項10に記載の高頻度取引装置を動作する方法。
【請求項13】
前記少なくとも一つの再構成可能なプロセッサにより、前記市場関連情報をパッシング及びデコードするステップと、
前記パッシング及びデコードした市場関連情報に基づいて前記市場予測参照データを生成するステップとをさらに含む、請求項10に記載の高頻度取引装置を動作する方法。
【請求項14】
前記市場予測参照データは、一つ以上の時点での一つ以上の参照種目に対する一つ以上の参照特徴を含む、請求項10に記載の高頻度取引装置を動作する方法。
【請求項15】
前記一つ以上の参照種目は、先行指標を示す参照種目及び注文対象となるターゲット種目を含む、請求項14に記載の高頻度取引装置を動作する方法。
【請求項16】
前記少なくとも一つの再構成可能なプロセッサにより、前記生成された注文信号を前記ターゲット取引所サーバで要求するプロトコルによって処理するステップをさらに含む、請求項10に記載の高頻度取引装置を動作する方法。
【請求項17】
前記市場関連情報は、参照取引所サーバと関連付けられた参照取引所の一つ以上の参照種目に対するオーダーブックに関する情報と、前記ターゲット取引所サーバと関連付けられたターゲット取引所の以前注文に対する応答とを含む、請求項10に記載の高頻度取引装置を動作する方法。
【請求項18】
請求項10乃至請求項17のいずれか一項に記載の方法をコンピュータで実行するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、高頻度取引のための装置及びその動作方法に関し、具体的には、機械学習モデルのための加速器及びリプログラミング又は再設計が可能な少なくとも一つのプロセッサを用いて、高頻度取引のための注文を生成する装置及びその動作方法に関する。
【背景技術】
【0002】
高頻度取引(high frequency trading)は、株式、債券、派生商品などのような有価証券の微細な価格変動を利用して、短時間内に高頻度(例えば、1秒に数百回から数千回)で取引する取引方式である。高頻度取引では迅速な処理が非常に重要である。一般に、入力された情報に基づいてトレーディングアルゴリズムを処理して出力するまでの時間を短縮するほど、取引で優位を占めることができる。
【0003】
一方、機械学習モデルを用いた高頻度取引は、市場の複雑な情報から既存の古典的なアルゴリズムが見つけられない特徴を導出できるというメリットがある。ただし、機械学習モデルの演算を保存して処理するには、多くの保存空間及び演算資源を保有したプロセッサを必要とするが、一般に高頻度取引に使用されるプロセッサは、このような資源を保有していないという問題点がある。
【0004】
また、機械学習モデルの駆動に適しているプロセッサは、柔軟性が大きいほど効率性が低下し、市場状況によって頻繁に変更される前処理過程又は後処理過程を遂行するのに適していないという問題点がある。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2006-099787号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示は、前記のような問題点を解決するために、高頻度取引のための装置及びその動作方法、コンピュータプログラムを提供する。
【課題を解決するための手段】
【0007】
本開示は、方法、装置(システム)又はコンピュータプログラムを含む多様な方式により具現化できる。
【0008】
本開示の一実施例に係る高頻度取引のための装置は、一つ以上のインストラクション(instructions)を保存する一つ以上のメモリと、一つ以上のメモリの一つ以上のインストラクションを実行することで、一つ以上の市場関連情報サーバから市場関連情報を受信し、市場関連情報に基づいて市場予測参照データを生成するように構成された少なくとも一つの再構成可能な(reconfigurable)プロセッサと、市場予測参照データを受信し、市場予測参照データを用いて未来市場予測データを生成するための機械学習モデルのための演算を遂行し、未来市場予測データを少なくとも一つの再構成可能なプロセッサに提供するように構成された機械学習モデルのための専用加速器とを含み、少なくとも一つの再構成可能なプロセッサは、未来市場予測データに基づいて注文信号を生成し、注文信号をターゲット取引所サーバに転送するようにさらに構成される。
【0009】
本開示の一実施例に係る少なくとも一つの再構成可能なプロセッサを含む高頻度取引装置を動作する方法は、少なくとも一つの再構成可能なプロセッサにより、一つ以上の市場関連情報サーバから市場関連情報を受信するステップと、少なくとも一つの再構成可能なプロセッサにより、市場関連情報に基づいて市場予測参照データを生成するステップと、少なくとも一つの再構成可能なプロセッサにより、市場予測参照データを、市場予測参照データに基づいて未来市場予測データを生成するための機械学習モデルの演算を遂行するように構成された機械学習モデルのための専用加速器に転送するステップと、少なくとも一つの再構成可能なプロセッサにより、未来市場予測データを専用加速器から受信するステップと、少なくとも一つの再構成可能なプロセッサにより、未来市場予測データに基づいて注文信号を生成するステップと、注文信号をターゲット取引所サーバに転送するステップとを含む。
【0010】
本開示の一実施例に係る方法をコンピュータで実行するためのコンピュータプログラムが提供される。
【発明の効果】
【0011】
本開示の一部の実施例によれば、機械学習モデルを用いることで、複雑な市場状況から古典的なアルゴリズムが見つけられない特徴を導出して未来時点の市場状況を予測でき、これを利用して注文を生成することで、取引で優位を占めることができる。
【0012】
本開示の一部の実施例によれば、機械学習モデルを駆動するプロセッサは、専用加速器(例えば、NPU ASIC)からなることで、迅速かつ效率的に機械学習モデルの演算を処理でき、前/後処理過程は、リプログラミング又は再設計が可能なプロセッサ(例えば、FPGA)を利用して処理することで、変化する市場状況に応じて柔軟に前/後処理過程を変更できる。このように、互いに異なる2つ以上のプロセッサを使用することで、柔軟な前/後処理過程の具現化と、迅速かつ効率的な機械学習モデルの演算処理とを同時に実現できる。
【0013】
本開示の一部の実施例によれば、入力データに基づいて予測複雑度を決定し、予測複雑度が高い場合、機械学習モデルを用いて注文関連データを生成することで、古典的なアルゴリズムが見つけられない特徴を導出して未来時点の市場状況を予測でき、予測複雑度が低い場合、比較的簡単なトレーディングロジックを用いて直ぐに注文データを生成することで、迅速に注文を転送して取引で優位を占めることができる。
【0014】
本開示の一部の実施例によれば、装置(例えば、FPGA)内において、マーケットデータに対する処理を遂行し、これを利用して注文データを生成し、注文を転送するような一連の過程を遂行することで、遅延時間(latency)を最小化できる。
【0015】
本開示の効果は、これに制限されず、言及されない他の効果等は、請求範囲の記載から本開示が属する技術分野における通常の知識を有した者(以下、“通常の技術者”という)に明確に理解されるべきである。
【図面の簡単な説明】
【0016】
本開示の実施例等は、以下の添付図面に基づいて説明される。ここで、類似の参照符号は類似の要素を示すが、これに限定されるものではない。
図1】本開示の一実施例に係る高頻度取引装置の作動例を示す概要図である。
図2】本開示の一実施例に係る高頻度取引装置の内部構成を示すブロック図である。
図3】本開示の一実施例に係るプロセッサの内部構成を示す図である。
図4】本開示の一実施例に係る予測複雑度を決定する複雑度判定部が含まれたプロセッサの内部構成を示す図である。
図5】本開示の一実施例に係る予測複雑度を決定し、決定された予測複雑度に応じて機械学習モデルを利用するか否かを判定する方法の例を示す図である。
図6】本開示の一実施例に係る高頻度注文を生成する方法の例を示す図である。
図7】本開示の一実施例に係る機械学習モデルが市場予測参照データに基づいて未来市場予測データを出力する例を示す図である。
図8】本開示の一実施例に係る機械学習モデルのための市場予測参照データの構成の例を示す図である。
図9】本開示の一実施例に係るFPGA及びNPUを含む高頻度取引装置を動作する方法の例を示すフローチャートである。
図10】本開示の一実施例に係る高頻度注文を生成する方法の例を示すフローチャートである。
図11】本開示の一実施例に係る人工神経網モデルの例を示す図である。
図12】本開示の一実施例に係る高頻度取引又は高頻度注文生成と関連付けられた任意のコンピューティング装置の構成図である。
図13】本開示の一実施例に係る信号交換の例を示すフローチャートである。
【発明を実施するための形態】
【0017】
以下、本開示の実施のための具体的な内容を添付図面に基づいて詳細に説明する。ただし、以下の説明では、本開示の要旨を不要に不明瞭にする恐れがある場合、公知の機能や構成に関する具体的な説明は省略する。
【0018】
添付図面において、同一又は対応する構成要素には同一の参照符号が付与される。また、以下の実施例の説明において、同一又は対応する構成要素の重複記述は省略され得る。しかしながら、構成要素に関する記述が省略されても、そのような構成要素が、ある実施例に含まれないものと意図してはならない。
【0019】
開示の実施例の利点及び特徴、そしてそれらを達成する方法は、添付図面に基づいて後述する実施例を参照すれば明確になる。しかしながら、本開示は、以下で開示される実施例に限定されず、互いに異なる多様な形態で具現化され得る。但し、本実施例は、本開示が完全になるようにし、本開示が通常の技術者に発明のカテゴリを正確に認識させるために提供されるだけである。
【0020】
本明細書で使用される用語について簡略に説明し、開示の実施例について具体的に説明する。本明細書で使用される用語は、本開示での機能を考慮しつつ、可能な限り現在広く使用される一般的な用語を選択したが、これは関連分野に従事する技術者の意図又は判例、新技術の出現などにより変化し得る。また、特定の場合は出願人が任意で選定した用語もあり得るが、これらの意味は当該発明の説明の部分において詳細に記載する。よって、本開示で使用される用語は、単純な用語の名称ではなく、その用語が有する意味と本開示の全般にわたった内容に基づいて定義されるべきである。
【0021】
本明細書では、文脈上において明確に特定しない限り、単数の表現は複数の表現を含み、複数の表現は単数の表現を含むことができる。明細書の全般に渡り、ある部分がある構成要素を「含む」とする際、これは特に反対の記載がない限り、他の構成要素を除くものではなく、他の構成要素をさらに含むこともできることを意味する。
【0022】
また、明細書で使用される「モジュール」又は「部」という用語は、ソフトウェアやハードウェア構成要素を意味し、「モジュール」又は「部」はある役割を遂行する。しかしながら、「モジュール」又は「部」はソフトウェアやハードウェアに限定される意味ではない。「モジュール」又は「部」は、アドレッシング可能な保存媒体にあるように構成してもよく、一つ又はそれ以上のプロセッサを再生させるように構成してもよい。したがって、一例として、「モジュール」又は「部」は、ソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素、タスク構成要素のような構成要素、並びに、プロセス、関数、属性、プロシーザー、サブルーチン、プログラムコードのセグメント、ドライバー、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ又は変数のうちで少なくとも一つを含むことができる。構成要素と「モジュール」又は「部」は、内部で提供される機能はさらに小さい数の構成要素及び「モジュール」又は「部」で結合されたり、追加的な構成要素と「モジュール」又は「部」にさらに分離されたりできる。
【0023】
本開示の一実施例によれば、「モジュール」又は「部」はプロセッサ及びメモリで具現化され得る。「プロセッサ」は汎用プロセッサ、中央処理装置(CPU)、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、制御器、マイクロ制御器、状態マシンなどを含むように広く解釈されるべきである。いくつかの環境では、「プロセッサ」は特定用途向け半導体(ASIC)、プログラム可能なロジックデバイス(PLD)、フィールドプログラム可能なゲートアレイ(FPGA)等を称することもできる。「プロセッサ」は、例えば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサの組合せ、DSPコアと結合した一つ以上のマイクロプロセッサの組合せ、若しくは、任意の他のそのような構成等の組合せのような処理デバイスの組合せを称することもできる。また、「メモリ」は電子情報を保存可能な任意の電子コンポーネントを含むように広く解釈されるべきである。「メモリ」は、RAM(Random Access Memory)、ROM(Read Only Memory)、NVRAM(Non-Volatile Random Access Memory)、PROM(Programmable Read-Only Memory)、EPROM(Erasable Programmable Read-Only Memory)、EEPROM(Electrically Erasable Programmable Reda-Only Memory)、フラッシュメモリ、磁気又は光学データ保存装置、レジスタなどのようなプロセッサ-読み取り可能な媒体の多様な類型を称することもできる。プロセッサがメモリから情報を読み取り/読み取ったりメモリに情報を記録できる場合、メモリはプロセッサと電子通信状態にあると言われる。プロセッサに集積されたメモリはプロセッサと電子通信状態にある。
【0024】
本開示において、「システム」は、サーバ装置及びクラウド装置の少なくとも一つを含むことのできるが、これに限定されるものではない。例えば、システムは一つ以上のサーバ装置からなることができる。他の例として、システムは一つ以上のクラウド装置からなることができる。また他の例として、システムはサーバ装置及びクラウド装置の全部からなって動作されることもできる。
【0025】
本開示において、「機械学習モデル」は、与えられた入力に対する解答(answer)を推論するのに使用する任意のモデルを含むことができる。一実施例によれば、機械学習モデルは、入力層(layer)、複数個の隠れ層及び出力層を含む人工神経網モデル(例えば、Artificial Neural Network;ANN、Deep Neural Network;DNN、Convolutional Neural Network;CNN、Recurrent Neural Network;RNN、Generative Adversarial Network;GAN又はこのうちで少なくとも一部の組合せ)を含んだり、称したり、具現化したりできる。ここで、各層は複数のノードを含むことができる。
【0026】
本開示において、「ディスプレイ」は、コンピューティング装置と関連付けられた任意のディスプレイ装置を称することのできるが、例えば、コンピューティング装置により制御されるか、又は、コンピューティング装置から提供された任意の情報/データを表示できる任意のディスプレイ装置を称することができる。
【0027】
本開示において、「複数のA各々」又は「複数のAの各々」は、複数のAに含まれた全ての構成要素の各々を称したり、複数のAに含まれた一部の構成要素の各々を称したりできる。
【0028】
本開示において、「種目」、「取引種目」又は「証券」は、証券市場で売買取引の対象となる株式、債券、派生商品(オプションや先物など)、指数関連種目、産業セクター関連種目、特定商品(例えば、原油、農産物、金など)に対する種目、為替関連種目、仮想通貨などのような取引可能な金融資産の任意の形態を称することのできるが、これに限定されるものではない。
【0029】
本開示において、「取引所サーバ」は、少なくとも一つの国で流通する有価証券のような取引可能な種目をブローカーやトレーダーが取引できるシステムを称することのできるが、これに限定されるものではない。
【0030】
本開示において、「オーダーブック(Order Book、OB)」は、証券市場に存在する買い希望者及び売り希望者の買い注文又は売り注文(呼値、数量、買い希望者又は売り希望者の情報など)に関する情報を記録したリストを含むことのできるが、これに限定されるものではない。
【0031】
本開示において、「オーダーブックの上段(Top of the Book、ToB)」は、最高の買い値及び最低の売り値に関する情報を含むことのできるが、これに限定されるものではない。
【0032】
図1は、本開示の一実施例に係る高頻度取引装置の作動例を示す概要図である。
【0033】
図1に示すように、本発明の一実施例に係る高頻度取引のために、高頻度取引装置110、一つ以上の市場関連情報サーバ120及びターゲット取引所サーバ130が関連付けられる。
【0034】
高頻度取引装置110は、一つ以上の市場関連情報サーバ120から市場関連情報を収集できる。高頻度取引装置110は、収集された市場関連情報に基づいて、特定の条件により取引可能な種目を注文する注文信号を生成でき、注文信号をターゲット取引所サーバ130に転送できる。
【0035】
一つ以上の市場関連情報サーバ120は、一つ以上の参照取引所サーバ、一つ以上のニュース提供サーバ、一つ以上のソーシャルネットワークサービス(Social Network Service、SNS)サーバ又は一つ以上のオンラインショッピングサービスサーバの少なくとも一つを含むことができる。一つ以上の参照取引所サーバは、各々一つ以上の参照取引所と関連付けられる。各参照取引所サーバは、ターゲット種目の価格に影響を及ぼすべき一つ以上の取引可能な種目が取引される参照取引所と関連付けれた参照取引所サーバを称することができる。各参照取引所サーバは、関連付けられた参照取引所の市場データを提供できる。一つ以上の参照取引所サーバは、ターゲット取引所サーバ130を含むことができる。一つ以上のニュース提供サーバの各々は、ターゲット種目の価格に影響を及ぼすべきニュースを提供できる。一つ以上のSNSサーバの各々は、ターゲット種目の価格に影響を及ぼすべきSNS情報を提供できる。例えば、SNS情報は、ターゲット種目の価格に影響を及ぼすべき記事の内容、記事の照会数、記事の作成者をフォローするフォロー数などを含むことができる。一つ以上のオンラインショッピングサービスサーバの各々は、ターゲット種目の価格に影響を及ぼすべきショッピング情報を提供できる。例えば、ショッピング情報は、ターゲット種目の価格に影響を及ぼすべき種目の価格変動、需要、供給などを含むことができる。
【0036】
ターゲット取引所サーバ130は、ターゲット種目が取引されるターゲット取引所と関連付けられた取引所サーバを称することができる。
【0037】
一実施例によれば、高頻度取引装置110は、一つ以上の取引所、ニュース情報、SNS情報、ショッピング情報などの市場データのような市場関連情報に基づいて、未来時点(近い未来時点、例えば、既定の時間後)のターゲット取引所の市場を予測できる。また、高頻度取引装置110は、市場予測に基づいてターゲット種目に対する注文信号を生成して、ターゲット取引所サーバ130に転送できる。高頻度取引では、市場予測に基づいて迅速に注文を生成して転送することが非常に重要である。これにより、高頻度取引では、マイクロ秒単位の遅延時間(latency)まで考慮しなければならず、遅延時間を減少させるために、高頻度取引装置は、ターゲット取引所サーバの近傍に位置(colocation)することができる。
【0038】
一実施例によれば、高頻度取引装置110は、一つ以上の参照取引所サーバから参照取引所のマーケットデータを受信できる。ここで、マーケットデータは、一つ以上の参照取引所サーバと関連付けられた参照取引所で取引される種目等に対するデータを含むことができる。例えば、マーケットデータは、一つ以上の参照取引所サーバで取引される種目等(少なくとも一部)のオーダーブックを含むことができる。一実施例において、マーケットデータは、ターゲット種目に対するデータを含むことができる。例えば、マーケットデータは、ターゲット種目のオーダーブックの上段、ターゲット種目に対する(有効な)注文リスト、ターゲット種目に関する以前注文に対するターゲット取引所サーバ130の応答などを含むことができる。他の実施例において、高頻度取引装置110が市場関連情報サーバ120から遠く位置する場合、市場関連情報サーバ120のデータを受信するのにかかる遅延時間が比較的長いことを考慮して、市場関連情報サーバ120のデータをマーケットデータに含めないことがある。
【0039】
一実施例によれば、高頻度取引装置110は、市場関連情報を分析して注文を生成できる。例えば、高頻度取引装置110は、市場関連情報(又は市場関連情報に基づいて生成された市場予測参照データ)を分析して、未来時点(例えば、1秒後)における市場(例えば、ターゲット種目の価格)を予測し、これに基づいて注文を生成できる。
【0040】
一実施例によれば、市場関連情報(及び/又はこれに基づいて生成された市場予測参照データ)を分析する過程は、機械学習モデルにより遂行できる。機械学習モデルを利用することで、複雑な市場状況から古典的なアルゴリズムが見つけられない特徴を導出して未来時点の市場を予測でき、これを利用して注文を生成することで、取引で優位を占めることができる。一方、高頻度取引において市場関連情報を迅速に分析して注文を生成することが非常に重要であるが、一般のプロセッサの場合、複雑な機械学習モデルの演算を処理するための保存空間及び演算資源を保有していないため、一般のプロセッサを利用して機械学習モデルを駆動する場合、速度及び効率が非常に低下するという問題点がある。これにより、本開示の一実施例に係る高頻度取引装置110は、機械学習モデルのための専用加速器(例えば、ニューラルプロセッシングユニット(Neural Processing Unit、NPU))を含むことができ、専用加速器は、ニューラルプロセッシングユニットのための集積回路(例えば、Application-Specific Integrated Circuit、ASIC)で具現化できる。
【0041】
一方、機械学習モデルを利用するために、適切な前/後処理過程を必要とすることがある。例えば、市場関連情報から機械学習モデルのための市場予測参照データを生成したり、機械学習モデルから受信された未来市場予測データに基づいて注文を生成したりする過程を必要とすることがある。このような前/後処理過程は、市場状況、規律、マーケットメーカーに対する補償規定などの変化によって持続的に変更され得る。このような前/後処理過程を処理するプロセッサを、特定用途向け半導体(例えば、ASIC)で具現化する場合、再設計が不可能であるため、前/後処理過程が変更されると、変更された前/後処理過程を遂行するためのプロセッサを再製作しなければならないという問題点がある。よって、機械学習モデルの駆動を除いた過程は、リプログラミング及び/又は再変更が可能なプロセッサ(例えば、フィールドプログラム可能なゲートアレイ(Field Programmable Gate Array、FPGA)で具現化されたプロセッサ)により遂行できる。
【0042】
前述したように、機械学習モデルを駆動するプロセッサは、専用加速器(例えば、NPU ASIC)からなることで、迅速かつ效率的に機械学習モデルの演算を処理でき、前/後処理過程は、リプログラミング又は再設計が可能なプロセッサ(例えば、FPGA)を利用して処理することで、変化する市場状況に応じて柔軟に前/後処理過程を変更できる。このように、互いに異なる二つ以上のプロセッサを使用することで、柔軟な前/後処理過程の具現化と、迅速かつ効率的な機械学習モデルの演算処理とを同時に実現できる。高頻度取引装置の内部構成は、図2乃至図4を参照して詳細に後述する。
【0043】
図2は、本開示の一実施例に係る高頻度取引装置110の内部構成を示すブロック図である。高頻度取引装置110は、メモリ210、プロセッサ220、通信モジュール230及び入出力インタフェース240を含むことができる。図2に示すように、高頻度取引装置110は、通信モジュール230を用いて、ネットワークを介して情報及び/又はデータを通信できるように構成できる。
【0044】
メモリ210は、非一時的な任意のコンピュータ読み取り可能な記録媒体を含むことができる。一実施例によれば、メモリ210は、RAM(random access memory)、ROM(read only memory)、ディスクドライブ、SSD(solid state drive)及びフラッシュメモリ(flash memory)などのような永久的な大容量保存装置(permanent mass storage device)を含むことができる。他の例として、ROM、SSD、フラッシュメモリ及びディスクドライブなどのような永久的な大容量保存装置は、メモリとは区分される別途の永久保存装置として高頻度取引装置110に含まれることができる。また、メモリ210には、運営体制と少なくとも一つのプログラムコード(例えば、高頻度取引装置110に設置されて駆動される機械学習モデルの演算処理、前/後処理、注文転送などのためのコード)が保存され得る。図2において、メモリ210は単一のメモリとして示したが、これは説明の便宜のためのもので、メモリ210は複数のメモリを含むこともできる。
【0045】
このようなソフトウェア構成要素は、メモリ210とは別途のコンピュータ読み取り可能な記録媒体からローディングできる。このような別途のコンピュータ読み取り可能な記録媒体は、このような高頻度取引装置110に直接連結可能な記録媒体を含むことのできるが、例えば、フロッピードライブ、ディスク、テープ、DVD/CD-ROMドライブ及びメモリカードなどのようなコンピュータ読み取り可能な記録媒体を含むことができる。他の例として、ソフトウェア構成要素等は、コンピュータ読み取り可能な記録媒体ではなく、通信モジュール230を介してメモリ210にローディングされることもできる。例えば、少なくとも一つのプログラムは、開発者又はアプリケーションの設置ファイルを配信するファイル配信システムが、通信モジュール230を介して提供するファイルにより設置されるコンピュータプログラム(例えば、市場関連情報分析、未来市場予測、注文生成及び転送などのためのプログラム等)に基づいてメモリ210にローディングされることができる。
【0046】
プロセッサ220は、基本的な算術、ロジック及び入出力演算を遂行することで、コンピュータプログラムの命令を処理するように構成できる。命令は、メモリ210又は通信モジュール230によりユーザ端末(図示せず)又は他の外部システムに提供され得る。例えば、プロセッサ220は、機械学習モデルを用いて、市場予測参照データに基づいて未来市場予測データを生成でき、出力データに基づいて注文を生成できる。このように生成された注文は、ターゲット取引所サーバに転送され得る。
【0047】
通信モジュール230は、ネットワークを介して、ユーザ端末(図示せず)と高頻度取引装置110とが互いに通信するための構成や機能を提供でき、高頻度取引装置110が外部システム(例えば、別途のクラウドシステムなど)と通信するための構成や機能を提供できる。一例として、高頻度取引装置110のプロセッサ220の制御によって提供される制御信号、命令、データなどが、通信モジュール230及びネットワークを経て、ユーザ端末及び/又は外部システムの通信モジュールを介してユーザ端末及び/又は外部システムに転送され得る。例えば、外部システム(例えば、ターゲット取引所サーバ)は、高頻度取引装置110から注文などを受信できる。
【0048】
また、高頻度取引装置110の入出力インタフェース240は、高頻度取引装置110と連結されるか、或いは、高頻度取引装置110が含むことができる入力又は出力のための装置(図示せず)とのインタフェースのための手段であり得る。例えば、入出力インタフェース240は、PCI expressインタフェースやイーサネット(ethernet)インタフェースの少なくとも一つを含むことができる。図2では、入出力インタフェース240がプロセッサ220と別途に構成された要素として示したが、これに限定されず、入出力インタフェース240がプロセッサ220に含まれるように構成されることもできる。高頻度取引装置110は、図2の構成要素よりも多くの構成要素を含むことができる。しかしながら、大部分の従来技術的構成要素を明確に示す必要性はない。
【0049】
高頻度取引装置110のプロセッサ220は、複数のユーザ端末及び/又は複数の外部システム(例えば、一つ以上の市場関連情報サーバやターゲット取引所サーバ)から受信された情報及び/又はデータを管理、処理及び/又は保存するように構成できる。一実施例によれば、プロセッサ220は、一つ以上の市場関連情報サーバ及びターゲット取引所サーバから市場関連情報を受信できる。プロセッサは、受信された市場関連情報に基づいて未来市場を予測し、未来市場予測に基づいて注文を生成できる。図2において、プロセッサ220は、単一のプロセッサとして示したが、これは説明の便宜のためのもので、プロセッサ220は複数のプロセッサを含むことができる。例えば、プロセッサ220は、前処理及び後処理のためのFPGAで具現化された少なくとも一つのプロセッサ、機械学習モデルのためのASICで具現化された専用加速器を含むことができ、FPGAで具現化された少なくとも一つのプロセッサは、第1のメモリに保存された一つ以上のインストラクションを実行でき、ASICで具現化された専用加速器は、第2のメモリに保存された一つ以上のインストラクションを実行できる。
【0050】
図3は、本開示の一実施例に係るプロセッサの内部構成を示す図である。一実施例によれば、プロセッサ(例えば、高頻度取引装置又は高頻度注文生成装置のプロセッサ)300は、前/後処理のための少なくとも一つのプロセッサ(例えば、FPGAで具現化された少なくとも一つのプロセッサ)302及び機械学習モデルのための専用加速器(例えば、ASICで具現化された専用加速器)340を含むことができる。前/後処理のための少なくとも一つのプロセッサ302は、入力ハンドラ310、入力生成部330、注文生成部350及び出力ハンドラ360を含むことができる。図3では、プロセッサの内部構成を機能別に区分して説明したが、これは必ずしも物理的に区分されるものを意味しない。また、図3に示すプロセッサの内部構成は例示であるだけで、必須構成だけを示すものではない。したがって、一部の実施例において、プロセッサは、図示の内部構成の以外の構成をさらに含んだり、図示の内部構成の一部を省略したりする等、異なるように具現化できる。
【0051】
一実施例によれば、プロセッサは、一つ以上の市場関連情報サーバから市場関連情報を受信できる。受信される市場関連情報は、一つ以上の取引所サーバと関連付けられた取引所で取引される種目等に対するデータを含むことができる。例えば、市場関連情報は取引所サーバで取引される種目等(少なくとも一部)のオーダーブックを含むことができ、付加的に、市場関連情報はターゲット種目に対するデータを含むことができる。例えば、市場関連情報は、ターゲット種目のオーダーブックの上段、ターゲット種目に対する(有効な)注文リスト、ターゲット種目に関する以前注文に対するターゲット取引所サーバの応答などを含むことができる。プロセッサは、市場関連情報の更新を必要とする毎に一つ以上の市場関連情報サーバから市場関連情報を受信したり、一つ以上の市場関連情報サーバから市場関連情報を周期的に(例えば、0.1秒毎に)受信したりできる。高頻度取引では迅速にデータを処理することが重要であるため、一実施例において、市場関連情報は、データ転送速度が速いユーザデータグラムプロトコル(User Datagram Protocol、UDP)を介して受信できる。ただし、一部の実施例において、必要に応じて(例えば、データの信頼度を確保するために)、市場関連情報の受信に他の通信プロトコル(例えば、TCP/IP)を使用することもできる。
【0052】
入力ハンドラ310は、受信される市場関連情報をパーシング(parsing)し/パーシングしたり、デコード(decoding)することができる。一実施例によれば、市場関連情報は、複数のデータパケットとして受信でき、複数のラインを介して受信できる。市場関連情報が複数のラインを介して受信される場合、各入力ハンドラ310は、複数のラインを介して受信された市場関連情報のデータの形式や規格によって異なる方式にてパーシングし/パーシングしたり、デコードすることができる。入力ハンドラ310を経てパーシング/デコードした市場関連情報は、機械学習モデルの入力データとして市場予測参照データを生成するために入力生成部330に提供できる。
【0053】
入力生成部330は、市場関連情報の少なくとも一部に基づいて市場予測参照データを生成できる。一実施例によれば、入力生成部330は、市場関連情報の一つ以上の種目に対する一つ以上の参照特徴を選別して市場予測参照データを構成できる。例えば、入力生成部330は、市場予測参照データに含まれる参照特徴を抽出又は選別するための特徴抽出部を含むことができる。
【0054】
一実施例において、市場予測参照データに含まれる一つ以上の種目は、ターゲット種目の市場状況変動の先行指標になり得る種目を含むことができる。例えば、注文の対象となるターゲット種目がA社株式(現物)種目である場合、A社株式と関連付けられた先物種目、A社株式と関連付けられたオプション種目、他の取引所に含まれたA社関連種目、A社と関連付けられた商品(例:原油など)に関する先物種目などに対するデータが市場予測参照データに含まれることができる。また、一実施例において、市場予測参照データに含まれる一つ以上の参照特徴は、ターゲット種目の市場状況予測に有意味な情報を含むことができる。例えば、参照特徴は、市場価格(取引価格)、買い手のオーダーブック上段の価格や数量、売り手のオーダーブック上段の価格や数量、買い希望者の数、売り希望者の数、オーダーブック上段の次のステップの買い呼値、オーダーブック上段の次のステップの売り呼値、オーダーブックに含まれた呼値の分散など、一つ以上の種目のオーダーブックから抽出できる様々な情報、これを加工した情報及び/又は情報の信頼度などを含むことができる。市場予測参照データの構成は、図8を参照して詳細に後述する。
【0055】
入力生成部330により生成された市場予測参照データは、機械学習モデルのための入力データとして専用加速器340に伝達されて、機械学習モデルに入力されることができる。一実施例によれば、専用加速器340は、機械学習モデルの演算処理に特化したニユーラルプロセッシングユニット(NPU)であり得、機械学習モデルの駆動のために特化した特定用途向け半導体(ASIC)で具現化できる。専用加速器340は、機械学習モデルを用いて、市場予測参照データに基づいてターゲット種目に対する注文と関連付けられた未来市場予測データを導出できる。例えば、専用加速器340は、機械学習モデルの入力データとして市場予測参照データを受信し、未来特定時点のターゲット種目の価格(例えば、市場価格又は中間価格)を予測した未来市場予測データを導出できる。一実施例によれば、未来特定時点は、現在時点にターゲット取引所サーバへのターゲット種目注文にかかる遅延時間(latency)を加算した時点であり得る。すなわち、遅延時間を考慮して、ターゲット取引所サーバに注文が到達すると予想される時点の近傍でのターゲット種目の価格を予測できる。ターゲット種目に対する注文と関連付けられた未来市場予測データを導出する機械学習モデルについては、図7及び図11を参照して詳細に後述する。
【0056】
一実施例によれば、入力生成部330により生成された市場予測参照データを直ぐに機械学習モデルのための専用加速器340に提供する代わりに、プロセッサ(例えば、前/後処理のための少なくとも一つのプロセッサ)は、機械学習モデルを利用するか否かを決定した後、機械学習モデルを利用すると決定した場合のみに、市場予測参照データを機械学習モデルのための専用加速器340に伝達できる。例えば、プロセッサは、入力生成部330により生成された市場予測参照データに基づいて予測複雑度を決定し、決定された予測複雑度に応じて機械学習モデルを用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するか、或いは、既定の規則によって注文を生成するかを判定できる。ここで、予測複雑度は、複雑度に応じて2つ以上の複雑度クラス(例えば、Low、Moderate、Highなど)を含むことができる。複雑度判定部が含まれたプロセッサの内部構成と、複雑度判定部が予測複雑度を決定することにより、市場予測参照データを処理する過程とは、図4及び図5を参照して詳細に後述する。
【0057】
注文生成部350は、機械学習モデルから未来市場予測データを受信でき、未来市場予測データに基づいてターゲット取引所サーバに対する注文を生成できる。例えば、注文生成部350は、機械学習モデルから推論された未来時点でのターゲット種目の予測価格に基づいて、既定の規則によってターゲット種目に対する注文を生成できる。具体例として、ターゲット種目の価格が上昇すると予測される場合、注文生成部350は、直ぐに新規の買い注文を生成したり、既存の売り注文の呼値を訂正したりできる。一実施例によれば、各注文は、ターゲット種目に対する注文の種類(新規注文、取消注文、訂正注文)、買い又は売りの可否、価格(呼値)、数量などに関する情報を含むことができる。
【0058】
付加的に、注文生成部350により生成された注文は、出力ハンドラ360に伝達されることができる。一実施例によれば、出力ハンドラ360は、生成された注文に基づいてリスクをチェックしたり、マーケットメーキングに対する規制を満足するか否かを判断したりできる。付加的又は代替的に、出力ハンドラ360は、ターゲット取引所サーバで要求する注文形式、規格、プロトコルに応じて、予め生成された注文に適切な処理を遂行できる。
【0059】
注文生成部350により生成された(又は出力ハンドラ360により後処理された)注文は、ターゲット取引所サーバに転送されることができる。一実施例によれば、プロセッサ(例えば、前/後処理のための少なくとも一つのプロセッサ)は、転送された注文に対するターゲット取引所サーバの応答を受信できる。このとき、プロセッサは受信された応答に基づいてターゲット取引所の注文履歴を更新でき、ターゲット取引所の注文履歴は、次の注文を生成するのに市場関連情報として利用されたり、注文生成部350が注文を生成するための基礎データとして利用されたりできる。
【0060】
図4は、本開示の一実施例に係る予測複雑度を決定する複雑度判定部400が含まれたプロセッサの内部構成を示す図である。プロセッサは、図3に示す構成の以外に、複雑度判定部400と、トレーディングエンジン430を駆動するためのホスト装置440とをさらに含むことができる。図4では、図3に示すプロセッサの内部構成に新しく追加された構成を中心として説明する。
【0061】
一実施例によれば、入力生成部330により生成された市場予測参照データを直ぐに機械学習モデルのための入力データとして専用加速器420に提供する代わりに、プロセッサ(例えば、FPGAで具現化された少なくとも一つのプロセッサ)302は、機械学習モデルを利用するか否かを決定した後、機械学習モデルを利用すると決定した場合のみに、市場予測参照データを機械学習モデルのための専用加速器420に提供できる。例えば、プロセッサに含まれた複雑度判定部400は、市場予測参照データに基づいて予測複雑度を決定し、決定された予測複雑度に応じて、トレーディングロジック410を用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するか、機械学習モデルを用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するか、ホスト装置440に含まれたトレーディングエンジン430を用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するかを判定できる。例えば、複雑度判定部400は、市場予測参照データに含まれた一つ以上の種目の現在市場価格、注文価格別注文数量、一つ以上の種目の取引相手の数などに基づいて予測複雑度を決定できる。他の例として、複雑度判定部400は、市場予測参照データに含まれた一つ以上の参照特徴のデータパターンを決定し、データパターンが既定の条件を満足させるか否かを判定した後、判定結果によって予測複雑度を決定できる。
【0062】
一実施例において、複雑度判定部400が、トレーディングロジック410を用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するように判定した場合、注文生成部350は、トレーディングロジック410(例えば、既定の規則)によって注文を生成できる。
【0063】
他の実施例において、複雑度判定部400が、機械学習モデルを注文と関連付けられた未来市場予測データを生成するように判定した場合、市場予測参照データは機械学習のための入力データとして専用加速器420に提供され、専用加速器420は、機械学習モデルの少なくとも一部の演算を処理することで、市場予測参照データから注文と関連付けられた未来市場予測データを生成できる。このように生成された未来市場予測データは、プロセッサの注文生成部350に提供され、未来市場予測データに基づいて注文を生成できる。
【0064】
また他の実施例において、複雑度判定部400が、ホスト装置440に含まれたトレーディングエンジン430を用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するように判定した場合、市場予測参照データはホスト装置440に提供され、ホスト装置に含まれたトレーディングエンジン430は、既定の規則によるロジックを用いて注文を生成したり、比較的軽い機械学習モデルを用いて市場予測参照データに基づいて注文と関連付けられた未来市場予測データを導出したりできる。トレーディングエンジン430により導出された未来市場予測データ(注文と関連付けられた未来市場予測データ)は、プロセッサの注文生成部350に提供され得る。一実施例において、トレーディングエンジン430が、既定の規則によるロジックを用いて注文を生成した場合、当該注文はプロセッサの注文生成部350を経なくて直ぐにプロセッサの出力ハンドラ360に提供され得る。
【0065】
市場予測参照データに基づいて予測複雑度を決定することにより、市場予測参照データを処理する方式は、図5を参照して詳細に後述する。
【0066】
図5は、本開示の一実施例に係る予測複雑度を決定(520)し、決定された予測複雑度に応じて機械学習モデル552を利用するか否かを判定する方法の例を示す図である。高頻度取引装置又は高頻度注文生成装置の少なくとも一つのプロセッサ(例えば、FPGAで具現化された少なくとも一つのプロセッサ)は、市場関連情報に基づいて市場予測参照データ(例えば、参照特徴マップ)510を生成でき、市場予測参照データ510に基づいて予測複雑度を決定(520)することができる。一実施例によれば、予測複雑度は、市場予測参照データの複雑度又は市場予測参照データに基づいて注文と関連付けられたデータを推論するための演算複雑度の少なくとも一つを反映できる。また、一実施例において、予測複雑度は2つ以上の複雑度クラスに分類できる。例えば、予測複雑度は、図に示すように、Low、Moderate、Highの3つの複雑度クラスに分類できる。
【0067】
一実施例によれば、プロセッサは、市場予測参照データ510に含まれた一つ以上の種目の現在市場価格、注文価格別注文数量、一つ以上の種目の取引相手の数などに基づいて予測複雑度を決定(520)することができる。他の実施例によれば、プロセッサは、市場予測参照データ510に含まれた一つ以上の参照特徴のデータパターンを決定し、データパターンが既定の条件を満足させるか否かを判定した後、判定結果によって予測複雑度を決定(520)することができる。
【0068】
【0069】
他の例として、市場予測参照データ510に含まれた全ての参照種目に対し、特定の時間区間の中間価格の分散が第3の既定の閾値以下である場合、価格変動の可能性が低くてスプレッドによる収益を追求できると判断して、予測複雑度をLowクラスとして決定できる。
【0070】
一実施例によれば、プロセッサは、市場予測参照データ510に基づいて予測複雑度を決定(520)した後、決定された予測複雑度に応じて、機械学習モデルを用いて注文(又は注文と関連付けられた未来市場予測データ)を生成するか否かを判定できる。一実施例において、予測複雑度がLowクラスとして決定された場合、プロセッサ(例えば、FPGAで具現化されたプロセッサ)530は、規則基盤ロジック532によって市場予測参照データに基づいた注文を生成できる。例えば、ターゲット種目と統計的に相関性が非常に大きい参照種目に対し、中間価格の移動平均の変化量が第1の既定の閾値以上である場合、ターゲット種目の価格が上昇すると判断して、ターゲット種目に対する買い注文を生成でき、中間価格の移動平均の変化量が第2の既定の閾値以下である場合、ターゲット種目の価格が低下すると判断して、ターゲット種目に対する売り注文を生成できる。プロセッサ530が規則基盤ロジック532によって注文を生成する他の例として、市場予測参照データ510に含まれた全ての参照種目に対し、特定の時間区間内の中間価格の分散が第3の既定の閾値以下である場合、両方のToBに買い注文及び売り注文を生成してスプレッドによる収益を追求できる。このとき、時間の流れにより、前記基準を逸脱する場合(分散が大きくなる場合)、価格変動によるリスクを最小化するために既存の注文を取消す注文を生成できる。
【0071】
他の実施例において、予測複雑度がHighクラスとして決定された場合、プロセッサ530は、機械学習モデル552のための専用加速器(例えば、ASICで具現化された専用加速器)550に市場予測参照データ510を提供でき、専用加速器550は、機械学習モデル(例えば、DNN)552を用いて、市場予測参照データ510に基づいてターゲット種目に対する注文と関連付けられた未来市場予測データを生成できる。例えば、専用加速器550は、機械学習モデル552の少なくとも一部の演算を処理することで、市場予測参照データ510に基づいて未来特定時点でのターゲット種目の価格(市場価格又は中間価格)を予測した未来市場予測データを生成できる。
【0072】
また他の実施例において、予測複雑度がModerateクラスとして決定された場合、プロセッサ530は、ホスト装置540に市場予測参照データ510を提供でき、ホスト装置540は、規則基盤ロジック又は軽い機械学習モデル542を用いて、注文又は注文と関連付けられた未来市場予測データを生成できる。
【0073】
前述したように、市場予測参照データに基づいて予測複雑度を決定し、予測複雑度が高い場合、機械学習モデルを用いて注文関連データを生成することで、古典的なアルゴリズムが見つけられない特徴を導出して未来時点の市場状況を予測でき、予測複雑度が低い場合、比較的簡単なトレーディングロジックを用いて直ぐに注文を生成することで、迅速に注文を転送して取引で優位を占めることができる。
【0074】
図6は、本開示の一実施例に係る高頻度注文を生成する方法の例示を示す図である。一実施例によれば、プロセッサ(例えば、高頻度注文生成のための装置に含まれた少なくとも一つのプロセッサ)は、市場関連情報610に基づいて市場予測参照データ620を生成でき、機械学習モデル630を用いて、市場予測参照データ620に基づいて注文と関連付けられた未来市場予測データを生成できる。このように生成された未来市場予測データは、注文生成部640に提供され、注文生成部640は、ターゲット取引所サーバへのターゲット種目に対する注文を生成できる。
【0075】
一実施例によれば、注文生成部640が生成する各注文信号は、注文の種類(例えば、新規注文、取消注文、訂正注文など)、買い又は売りの可否、価格、注文数量などに関する情報を含むことができる。ここで、注文信号は一つ以上の注文を含むことができる。例えば、注文生成部640は、図に示すように、機械学習モデル630から受信された未来市場予測データに基づいて、3つの注文「新規/売り/$102.0/20qty」、「取消/売り/$100.5/10qty」、「取消/買い/$98.0/30qty」(順に、注文種類/買い又は売りの可否/注文価格/注文数量を意味)を含む注文信号650を生成できる。
【0076】
生成された注文信号650は、ターゲット取引所サーバに転送され、プロセッサは、転送された注文に対するターゲット取引所サーバの応答を受信できる。このような応答に応じて、プロセッサはターゲット種目に対する注文履歴を更新できる。ここで、注文履歴とは、高頻度証券注文生成のための装置が転送した注文のうち、現在有効な注文(取消又は未締結の注文)のリストを称することができる。例えば、図6に示す注文信号650がターゲット取引所サーバに転送された後、ターゲット取引所サーバから注文信号650に含まれた3つの注文が全部定常的に受け付けられたという応答を受信した場合、注文信号650を反映してターゲット種目に対する注文履歴を更新できる。具体的に、注文信号650を転送する前の注文履歴660が「売り/$101.0/10qty」、「売り/$100.5/10qty」、「買い/$99.5/20qty」、「買い/$98.0/30qty」である場合、更新された注文履歴670は、「売り/$102.0/20qty」、「売り/$101.0/10qty」、「買い/$99.5/20qty」に変更できる。更新された注文履歴670は、以後、高頻度注文を生成するための装置が注文を生成するのに基礎となるデータ(例えば、市場関連情報又は注文生成部で考慮されるデータなど)に含まれることができる。注文履歴は、オープンオーダー(open order)やオーダーマップ(order map)として称することもできる。
【0077】
図7は、本開示の一実施例に係る機械学習モデル700が、市場予測参照データ710に基づいて未来市場予測データ720を出力する例を示す図である。一実施例によれば、機械学習モデル700は、市場予測参照データ710に基づいて、ターゲット種目の注文と関連付けられた未来市場予測データ720を出力できる。例えば、機械学習モデル700は、市場予測参照データ710に基づいて、未来特定時点でのターゲット種目の予測価格(例えば、市場価格又は中間価格など)を出力できる。一実施例によれば、機械学習モデル700に入力される市場予測参照データ710は、一つ以上の時点での一つ以上の種目に対する一つ以上の参照特徴を含む参照特徴マップ(reference feature map)を含むことができる。機械学習モデル700の入力データに該当する市場予測参照データ710については、図8を参照して詳細に後述する。
【0078】
一実施例によれば、機械学習モデル700は、一つ以上の市場関連情報サーバからの市場関連情報に基づいて生成された市場予測参照データを用いて、ターゲット取引所サーバに対する注文と関連付けられた未来市場予測データを推論するように学習できる。例えば、機械学習モデル700は、一つ以上の取引所サーバと関連付けられた一つの取引所の参照マーケットデータ及びターゲット取引所サーバと関連付けられたターゲット取引所の参照マーケットデータに基づいて生成された時点tから時点t+M-1までの市場予測参照データ、時点t+1でのターゲット種目の中間価格データを用いて、総M個の連続した時点を含む時間区間での市場予測参照データに基づいて、次の時点でのターゲット種目の中間価格を推論するように学習できる。
【0079】
機械学習モデル700により出力された未来市場予測データ720は、ターゲット取引所サーバでの注文と関連付けられた情報を含むことができ、プロセッサ(例えば、高頻度取引装置又は高頻度注文生成のための装置の少なくとも一つのプロセッサ)は、未来市場予測データ720に基づいて既定の規則によってターゲット種目に対する注文を生成できる。
【0080】
一実施例によれば、本開示の機械学習モデル700は、人工神経網モデルであり得る。人工神経網モデルについては、図11を参照して詳細に後述する。
【0081】
図8は、本開示の一実施例に係る機械学習モデルのための市場予測参照データ810の構成の例を示す図である。高頻度取引装置(例えば、高頻度取引装置に含まれた少なくとも一つのプロセッサ)は、一つ以上の市場関連情報サーバから受信された市場関連情報に基づいて、市場予測参照データ810を生成できる。一実施例によれば、市場予測参照データ810は、一つ以上の時点での一つ以上の種目に対する一つ以上の参照特徴を含む参照特徴マップ(reference feature map)を含むことができる。
【0082】
例えば、参照特徴マップは、図8に示すように、M個の時点でのK個の種目に対するN個の参照特徴を含むことができる。図示の例において、市場予測参照データに含まれた参照特徴マップのうち、特定時点(図8において時点m)でのデータ820は、特定時点での一つ以上の種目(図8において第1の参照種目、第2の参照種目、第3の参照種目)に対する一つ以上の参照特徴(図8において買い手のオーダーブック上段の価格や数量、売り手のオーダーブック上段の価格や数量)を含むことができる。また、市場予測参照データに含まれた参照特徴マップのうち、特定参照特徴(図8においてn番目の参照特徴)に対するデータ830は、一つ以上の時点(図8において時点t-M+1から時点tまで)での一つ以上の種目に対する特定参照特徴を含むことができる。一実施例において、参照特徴マップは、互いに異なる種目に対する一つ以上の参照特徴が互いに交差するように生成できる。
【0083】
一実施例によれば、市場予測参照データ810に含まれる一つ以上の参照種目は、注文対象となるターゲット種目の市場状況の先行指標となる種目であり得る。例えば、注文の対象となるターゲット種目がA社株式(現物)種目である場合、A社株式と関連付けられた先物種目、A社株式と関連付けられたオプション種目、他の取引所に含まれたA社関連種目、A社関連商品に対する先物種目などが一つ以上の参照種目に含まれることができる。一実施例において、一つ以上の参照種目はターゲット種目を含むことができる。すなわち、高頻度取引装置は、ターゲット種目に対するデータを含む市場予測参照データに基づいて、ターゲット種目の未来市場状況を予測できる。また、一実施例において、各参照種目に関する情報は、各参照種目と関連付けられたコード(symbol)として含まれることができる。
【0084】
一実施例によれば、市場予測参照データ810に含まれる一つ以上の参照特徴は、ターゲット種目の市場状況予測に有意味な情報を含むことができる。例えば、参照特徴は、市場価格(取引価格)、買い手のオーダーブック上段の価格や数量、売り手のオーダーブック上段の価格や数量、買い希望者の数、売り希望者の数、オーダーブック上段の次のステップの買い呼値、オーダーブック上段の次のステップの売り呼値、オーダーブックに含まれた呼値の分散など、一つ以上の種目のオーダーブックから抽出できる様々な情報、これを加工した情報及び/又は情報の信頼度などを含むことができる。一実施例において、このような一つ以上の参照特徴は、一つ以上の参照種目の各々から抽出できる。
【0085】
前述したように構成された市場予測参照データ810は、プロセッサ(例えば、高頻度取引装置の少なくとも一つのプロセッサ)により機械学習モデルのための専用加速器に伝達され、機械学習モデルに入力されることができる。付加的又は代替的に、プロセッサは、市場予測参照データ810に基づいて予測複雑度を判定して、機械学習モデルを利用するか、ホスト装置を利用するか、当該プロセッサ内で規則によって注文を生成するかを決定できる。このような決定により、市場予測参照データ180は、機械学習モデルのための専用加速器又はホストエンジンに伝達されるか、もしくは、当該プロセッサ内で規則によってターゲット種目に対する注文と関連付けられた未来市場予測データを導出するのに使用できる。
【0086】
図9は、本開示の一実施例に係るFPGA及びNPUを含む高頻度取引装置を動作する方法900の例を示すフローチャートである。一実施例によれば、方法900は、FPGAが、参照取引所サーバと関連付けられた参照取引所の第1のマーケットデータと、ターゲット取引所サーバと関連付けられたターゲット取引所の第2のマーケットデータとを受信することで、開始することができる(S910)。各マーケットデータは、各取引所で取引される種目等に関する取引情報などを含むことができる。例えば、第1のマーケットデータは、参照取引所サーバと関連付けられた参照取引所で取引される種目のオーダーブックに関する情報を含むことができ、第2のマーケットデータは、ターゲット取引所サーバと関連付けられたターゲット取引所の応答及び一つ以上の種目のオーダーブックに関する情報の少なくとも一部(例えば、ターゲット種目のToBに関する情報)を含むことができる。
【0087】
次に、FPGAは、第1のマーケットデータ又は第2のマーケットデータの少なくとも一つに基づいて、機械学習モデルの入力データとして市場予測参照データを生成できる(S920)。一実施例によれば、市場予測参照データは、一つ以上の時点での一つ以上の種目に対する一つ以上の参照特徴を含むことができ、ここで、一つ以上の種目に関する情報は各種目に対するコード(symbol)として含まれることができる。また、市場予測参照データに含まれる一つ以上の種目は、ターゲット種目の市場状況変動の先行指標を示す種目及びターゲット取引所サーバでの注文対象となるターゲット種目を含むことができる。
【0088】
一実施例によれば、マーケットデータから市場予測参照データを生成する前に、パッシング及びデコードする過程を遂行できる。例えば、FPGAは、第1のマーケットデータ又は第2のマーケットデータの少なくとも一つをパッシング及びデコードした後、これに基づいて機械学習モデルの入力データとして市場予測参照データを生成できる。
【0089】
その後、NPUは、機械学習モデルのための少なくとも一部の演算を処理できる(S930)。例えば、NPUは、FPGAから生成された市場予測参照データを受信し、市場予測参照データを機械学習モデルに入力して、市場予測参照データに対して一連の演算を遂行して未来市場予測データを導出できる。一実施例によれば、機械学習モデルは、一つ以上の取引所の参照マーケットデータに基づいて生成された市場予測参照データを用いて、ターゲット取引所サーバでの注文と関連付けられた未来市場予測データを推論するように構成された任意のモデルであり得る。
【0090】
一実施例によれば、FPGAは、生成された市場予測参照データを直ぐにNPUに提供する代わりに、市場予測参照データに基づいて予測複雑度を決定し、決定された予測複雑度に応じて、既定の規則によって注文を生成するか、もしくは、機械学習モデルを使用するかを判定できる。一実施例において、既定の規則によって注文を生成するように判定された場合、FPGAは、市場予測参照データに基づいて既定の規則によって注文を生成できる。他の実施例において、機械学習モデルを用いて注文を生成するように判定された場合、NPUは、機械学習モデルのための少なくとも一部の演算を処理し、機械学習モデルから出力されたデータをFPGAに提供できる。
【0091】
付加的に、高頻度取引装置は、トレーディングエンジンを駆動するように構成されたホスト装置をさらに含むことができ、予測複雑度は、複雑度に応じた3つの複雑度クラスを含むことができる。例えば、予測複雑度は、複雑度に応じてHigh、Moderate、Lowの3つの複雑度クラスを含むことができる。このとき、ターゲット取引所サーバでの注文を生成するために、市場予測参照データは、3つの複雑度クラスに応じてFPGA、ホスト装置、NPUの少なくとも一つに提供できる。
【0092】
次に、NPUは、機械学習モデルから出力された未来市場予測データをFPGAに提供でき(S940)、FPGAは、機械学習モデルから出力された未来市場予測データに基づいてターゲット取引所サーバに対する注文を生成できる(S950)。付加的に、FPGAは、生成された注文をターゲット取引所サーバで要求するプロトコルによって処理できる。このように生成された(ターゲット取引所サーバで要求するプロトコルによって処理された)注文は、ターゲット取引所サーバに転送されることができる。
【0093】
図10は、本開示の一実施例に係る高頻度注文を生成する方法1000の例を示すフローチャートである。一実施例によれば、方法1000は、プロセッサ(例えば、高頻度証券注文生成のための装置の少なくとも一つのプロセッサ)が、一つ以上の市場関連情報サーバから収集された市場関連情報に基づいて市場予測参照データを生成することで、開始することができる(S1010)。一実施例において、市場予測参照データは、一つ以上の時点での一つ以上の参照種目に対する一つ以上の参照特徴を含む参照特徴マップを含むことができ、一つ以上の参照特徴は、一つ以上の参照種目の各々から抽出できる。一実施例によれば、市場予測参照データに含まれる一つ以上の参照種目は、ターゲット種目を含むことができる。
【0094】
次に、プロセッサは、前記生成された市場予測参照データに基づいて、機械学習モデルからターゲット取引所サーバへの注文と関連付けられた未来市場予測データを生成できる(S1020)。ここで、機械学習モデルは、一つ以上の証券取引所の市場関連情報に基づいて生成された市場予測参照データを用いて、ターゲット取引所での注文と関連付けられた未来市場予測データを推論するように構成された任意の機械学習モデルであり得る。一実施例によれば、機械学習モデルから出力される未来市場予測データは、特定時点でのターゲット種目の価格予測と関連付けられたデータを含むことができ、ここで、特定時点は、現在時点にターゲット取引所サーバへの注文にかかる遅延時間(latency)を加算した時点であり得る。
【0095】
代替的に、プロセッサは、参照特徴マップに基づいて予測複雑度を決定し、これに基づいて市場予測参照データを機械学習モデルに適用するか否かを決定した後、市場予測参照データを機械学習モデルに適用すると判定された場合のみに、市場予測参照データを機械学習モデルに提供できる。ここで、予測複雑度は多様な方式により決定できる。例えば、プロセッサは、参照特徴マップに含まれた情報の一つ以上の種目の現在価格、注文価格別証券の数及び一つ以上の種目の取引相手の数に基づいて予測複雑度を決定できる。他の例として、プロセッサは、参照特徴マップに含まれた情報の一つ以上の参照特徴のデータパターンを決定し、決定されたデータパターンが既定の条件を満足させるか否かを判定した後、判定結果によって予測複雑度を決定できる。
【0096】
その後、プロセッサは、未来市場予測データに基づいて、ターゲット取引所サーバのターゲット種目に対する注文を生成できる(S1030)。一実施例によれば、各注文は、ターゲット種目に対する注文の種類(例えば、新規注文、取消注文、訂正注文)、買い又は売りの可否、価格、数量に関する情報を含むことができる。
【0097】
一実施例によれば、生成された注文をターゲット取引所サーバに転送でき、ターゲット取引所サーバから注文転送に従う応答を受信できる。このとき、注文転送に従う応答に基づいて、ターゲット取引所の注文履歴を更新でき、更新されたターゲット取引所の注文履歴は、市場関連情報に含まれ、また他の注文を生成するのに使用できる。
【0098】
図11は、本開示の一実施例に係る人工神経網モデル1100の例を示す図である。人工神経網モデル1100は、機械学習モデルの一例として、機械学習(Machine Learning)技術及び認知科学において、生物学的神経網の構造に基づいて具現化された統計学的学習アルゴリズム又はそのアルゴリズムを実行する構造である。
【0099】
一実施例によれば、人工神経網モデル1100は、生物学的神経網のように、シナプスの結合によりネットワークを形成した人工ニューロンであるノード(Node)等がシナプスの加重値を繰り返し調整して、特定の入力に対応した正しい出力及び推論された出力間の誤差が減少するように学習することで、問題解決能力を持つ機械学習モデルを示すことができる。例えば、人工神経網モデル1100は、機械学習やディープラーニングなどの人工知能学習法に使用される任意の確率モデル、ニューラルネットワークモデルなどを含むことができる。
【0100】
一実施例によれば、人工神経網モデル1100は、一つ以上の市場関連情報サーバからの市場関連情報に基づいて生成された市場予測参照データを用いて、ターゲット取引所サーバでの注文と関連付けられたデータを推論するように構成された人工神経網モデルを含むことができる。
【0101】
人工神経網モデル1100は、多層のノード等及びこれら間の連結により構成された多層パーセプトロン(multilayer perceptron、MLP)で具現化される。本実施例に係る人工神経網モデル1100は、MLPを含む多様な人工神経網モデル構造の一つを用いて具現化できる。図11に示すように、人工神経網モデル1100は、外部から入力信号又はデータ1110を受信する入力層1120と、入力データに対応する出力信号又はデータ1150を出力する出力層1140と、入力層1120及び出力層1140間に位置し、入力層1120から信号を受信して特性を抽出して、出力層1140に伝達するn個(ここで、nは正の整数)の隠れ層1130_1乃至1130_nとからなる。ここで、出力層1140は、隠れ層1130_1乃至1130_nから信号を受信して外部に出力する。
【0102】
人工神経網モデル110の学習方法には、教師信号(正解)の入力によって問題の解決に最適化するように学習する教師あり学習(Supervised Learning)方法と、教師信号を必要としない教師なし学習(Unsupervised Learning)方法とがある。一実施例において、人工神経網モデル1100は、ターゲット取引所サーバでの注文と関連付けられたデータを推論するように、教師あり学習及び/又は教師なし学習を行うことができる。例えば、人工神経網モデル1100は、市場予測参照データから特定時点でのターゲット種目の価格を推論するように、教師あり学習を行うことができる。
【0103】
このように学習された人工神経網モデル1100は、高頻度取引装置のメモリ又は高頻度注文生成のための装置のメモリ(図示せず)に保存でき、通信モジュール及び/又はメモリから受信されたデータの入力に応じて、ターゲット取引所サーバへの注文と関連付けられたデータを推論できる。
【0104】
一実施例によれば、ターゲット取引所に対する注文と関連付けられたデータを推論するための人工神経網モデルの市場予測参照データは、一つ以上の時点での一つ以上の種目に対する一つ以上の参照特徴を含むことができる。例えば、人工神経網モデル1100の入力層1120に入力される市場予測参照データは、一つ以上の時点での一つ以上の種目に対する一つ以上の参照特徴に関する情報を含むデータを一つのベクトルデータ要素からなる、ベクトル1110になり得る。データの入力に応じて、人工神経網モデル1100の出力層1140から出力される未来市場予測データは、ターゲット取引所サーバに対する注文と関連付けられたデータを示したり特徴化したりするベクトル1150になり得る。すなわち、人工神経網モデル1100の出力層1140は、ターゲット取引所サーバに対する注文と関連付けられたデータを示したり特徴化したりするベクトルを出力するように構成できる。本開示において、人工神経網モデル1100の未来市場予測データは、以上で説明された類型に限定されず、ターゲット取引所サーバに対する注文と関連付けられたデータを示す任意の情報/データを含むことができる。
【0105】
このように、人工神経網モデル1100の入力層1120及び出力層1140に複数の入力データと対応する複数の出力データが各々マッチングされ、入力層1120、隠れ層1130_1乃至1130_n及び出力層1140に含まれたノード等間のシナプス値が調整されることで、特定の入力に対応した正しい出力を抽出できるように学習できる。このような学習過程により、人工神経網モデル1100の入力データの隠れ特性を把握でき、入力データに基づいて計算された出力データ及び目標出力間の誤差が低減するように、人工神経網モデル1100のノード等間のシナプス値(又は加重値)を調整できる。このように学習された人工神経網モデル1100は、入力されたデータに応じて、ターゲット取引所サーバに対する注文と関連付けられたデータを出力できる。
【0106】
図12は、本開示の一実施例に係る高頻度取引又は高頻度注文生成と関連付けられた任意のコンピューティング装置1200の構成図である。例えば、コンピューティング装置1200は、情報処理システム及び/又はユーザ端末を含むことができる。図に示すように、コンピューティング装置1200は、一つ以上のプロセッサ1210、バス1230、通信インタフェース1240、プロセッサ1210により遂行されるコンピュータプログラム1260をロード(load)するメモリ1220及びコンピュータプログラム1260を保存する保存モジュール1250を含むことができる。ただし、図12には本開示の実施例と関連付けられた構成要素のみを示している。したがって、本開示が属する技術分野における通常の技術者であれば、図12に示す構成要素等の以外の汎用的な構成要素等をさらに含むこともできることが分かる。
【0107】
プロセッサ1210は、コンピューティング装置1200の各構成の全般の動作を制御する。プロセッサ1210は、CPU(Central Processing Unit)、MPU(Micro Processor Unit)、MCU(Micro Controller Unit)、GPU(Graphic Processing Unit)、NPU(Neural Processing Unit)又は本開示の技術分野における公知の任意の形態のプロセッサを含んで構成できる。また、プロセッサ1210は、本開示の実施例等による方法を実行するための少なくとも一つのアプリケーション又はプログラムに対する演算を遂行できる。コンピューティング装置1200は一つ以上のプロセッサを具備できる。例えば、コンピューティング装置1200は、FPGAで具現化されたプロセッサ、ASICで具現化された機械学習モデルのための専用加速器(NPU ASIC)を含むことができる。
【0108】
メモリ1220は、各種データ、命令及び/又は情報を保存できる。メモリ1220は、本開示の多様な実施例による方法/動作を実行するために、保存モジュール1250から一つ以上のコンピュータプログラム1260をロードできる。メモリ1220は、RAMのような揮発性メモリで具現化できるが、本開示の技術的範囲はこれに限定されるものではない。
【0109】
バス1230は、コンピューティング装置1200の構成要素間の通信機能を提供できる。バス1230は、住所バス(Address Bus)、データバス(Data Bus)及び制御バス(Control Bus)等、多様な形態のバスで具現化できる。
【0110】
通信インタフェース1240は、コンピューティング装置1200の有無線インターネット通信を支援できる。また、通信インタフェース1240は、インターネット通信外の多様な通信方式を支援することもできる。このために、通信インタフェース1240は、本開示の技術分野における公知の通信モジュールを含んで構成できる。
【0111】
保存モジュール1250は、一つ以上のコンピュータプログラム1260を非一時的に保存できる。保存モジュール1250は、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、フラッシュメモリなどのような不揮発性メモリ、ハードディスク、脱着型ディスク又は本開示が属する技術分野における公知の任意の形態のコンピュータで読取り可能な記録媒体を含んで構成できる。
【0112】
コンピュータプログラム1260は、メモリ1220にロードするとき、プロセッサ1210が本開示の多様な実施例による動作/方法を遂行するようにする一つ以上のインストラクション(instructions)を含むことができる。すなわち、プロセッサ1210は、一つ以上のインストラクションを実行することで、本開示の多様な実施例による動作/方法を遂行できる。
【0113】
例えば、コンピュータプログラム1260は、一つ以上の市場関連情報サーバから収集された市場関連情報に基づいて市場予測参照データを生成し、生成された市場予測参照データに基づいて機械学習モデルからターゲット取引所サーバに対する注文と関連付けられた未来市場予測データを生成し、未来市場予測データに基づいてターゲット取引所のターゲット種目に対する注文を生成するためのインストラクションを含むことができる。他の例として、コンピュータプログラム1260は、FPGAにより、第1の取引所の第1の市場関連情報及び第2の取引所の第2の市場関連情報を受信し、FPGAにより、第1のマーケットデータ又は第2のマーケットデータの少なくとも一つに基づいて機械学習モデルの入力データとして市場予測参照データを生成し、NPUにより、機械学習モデルのための少なくとも一部の演算を処理し、NPUにより、機械学習モデルから出力されたデータをFPGAに提供し、FPGAにより、機械学習モデルから出力されたデータに基づいてターゲット取引所サーバへの注文を生成するためのインストラクションを含むことができる。
【0114】
図13は、本開示の一実施例に係る信号交換の例を示すフローチャートである。FPGA(302)は、一つ以上の市場関連情報サーバ120から市場関連情報を収集でき(S1301)、収集された市場関連情報に基づいて市場予測参照データを生成できる(S1303)。
【0115】
次に、FPGA(302)は、市場予測参照データに基づいて未来市場を予測するための適切な方式を決定できる(S1305)。一部の実施例において、FPGA(302)は、市場予測参照データに基づいて予測複雑度を決定し、その後、予測複雑度に応じて適切な方式を決定できる。一部の実施例において、FPGA(302)は、低い複雑度又は高い複雑度の2つの複雑度に応じて予測複雑度を決定できる。他の実施例において、FPGA(302)は、低い複雑度、中間複雑度及び高い複雑度の3つの複雑度に応じて予測複雑度を決定できる。一部の実施例において、FPGA(302)は、規則基盤ロジック532及び機械学習モデルのうちで適切な方式を決定したり、規則基盤ロジック532、比較的軽い機械学習モデル及び比較的重い機械学習モデルのうちで適切な方式を決定したりできる。一部の実施例において、FPGA(302)は、予測複雑度が、低い複雑度、中間複雑度及び高い複雑渡であるとき、各々規則基盤ロジック532、比較的軽い機械学習モデル及び比較的重い機械学習モデルを適切な方式により決定できる。
【0116】
FPGA(302)が適切な方式を相対的に重い機械学習モデルであると決定する場合、FPGA(302)は、市場予測参照データをNPU(340)に転送できる(S1307)。一部の実施例によれば、適切な方式を相対的に重い機械学習モデルであると決定するか否かと無関係に、NPU(340)が未来市場予測データを生成できるように、FPGA(302)は市場予測参照データをNPU(340)に転送できる。次に、NPU(340)は、未来市場予測データを生成するために、市場予測参照データとして相対的に重い機械学習モデルのための演算を遂行でき(S1309)、未来市場予測データをFPGA(302)に転送できる(S1311)。
【0117】
FPGA(302)が適切な方式を規則基盤ロジック532であると決定する場合、FPGA(302)は、未来市場予測データを生成するために、市場予測参照データとして規則基盤ロジック532を遂行できる(S1313)。一部の実施例によれば、FPGA(302)は、適切な方式を規則基盤ロジック532であると決定する場合、未来市場予測データを生成しなくて直ぐに注文信号を生成できる。
【0118】
FPGA(302)が適切な方式を相対的に軽い機械学習モデルであると決定する場合、FPGA(302)は、市場予測参照データをホスト装置440に転送できる(S1315)。一部の実施例によれば、適切な方式を相対的に軽い機械学習モデルであると決定するか否かと無関係に、ホスト装置440が未来市場予測データを生成できるように、FPGA(302)は市場予測参照データをホスト装置440に転送できる。次に、ホスト装置440は、市場予測参照データを用いて未来市場予測データを生成できる(S1317)。一部の実施例によれば、ホスト装置440は、FPGA(302)により使用される規則基盤ロジック532よりも重い規則基盤ロジックを使用できる。一部の実施例によれば、ホスト装置440は、NPU(340)で使用する機械学習モデルよりも軽い機械学習モデルを使用できる。次に、ホスト装置440は、未来市場予測データをFPGA(302)に転送できる(S1319)。
【0119】
FPGA(302)は、FPGA(302)、NPU(340)又はホスト装置440の少なくとも一つから受信された未来市場予測データに基づいて注文信号を生成できる(S1321)。次に、FPGA(302)は、ターゲット取引所サーバ130に注文信号を転送できる(S1323)。
【0120】
前述した方法は、コンピュータで実行するために、コンピュータ読み取り可能な記録媒体に保存されたコンピュータプログラムとして提供され得る。媒体は、コンピュータで実行可能なプログラムを継続的に保存したり、実行又はダウンロードのために一時保存したりするものであり得る。また、媒体は、単一又は多数のハードウェアが結合された形態の多様な記録手段又は保存手段であり得るが、あるコンピュータシステムに直接接続される媒体に限定されず、ネットワーク上に分散して存在するものであり得る。媒体の例としては、ハードディスク、フロッピーディスク及び磁気テープのような磁気媒体、CD-ROMやDVDのような光記録媒体、フロプティカルディスク(floptical disk)のような磁気-光媒体(magneto-optical medium)、及び、ROM、RAM、フラッシュメモリなどを含み、プログラム命令語が保存されるように構成されたものが挙げられる。また、他の媒体の例としては、アプリケーションを流通するアプリストアやその他の多様なソフトウェアを供給乃至流通するサイト、サーバなどで管理する記録媒体乃至保存媒体も挙げられる。
【0121】
本開示の方法、動作又は技法は多様な手段により具現化できる。例えば、このような技法は、ハードウェア、ファームウェア、ソフトウェア、若しくはこれらの組合せで具現化できる。本願の開示により説明された多様な例示的な論理的ブロック、モジュール、回路及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、若しくは両方の組合せで具現化できることを、通常の技術者であれば理解できるはずである。ハードウェア及びソフトウェアのこのような相互の代替を明確に説明するために、多様な例示的な構成要素、ブロック、モジュール、回路及びステップが、それらの機能的観点から一般的に前述された。そのような機能が、ハードウェアとして具現化されるか、若しくは、ソフトウェアとして具現化されるかは、特定アプリケーション及び全体システムに付加される設計要求事項によって変化する。通常の技術者は、各々の特定アプリケーションのために多様な方式により説明された機能を具現化することもできるが、そのような具現化は本開示の範囲から逸脱するものと解釈してはならない。
【0122】
ハードウェアの具現化において、技法の遂行に利用されるプロセッシングユニットは、一つ以上のASIC、DSP、デジタル信号処理デバイス(digital signal processing devices、DSPD)、プログラム可能な論理デバイス(programmable logic devices、PLD)、フィールドプログラム可能なゲートアレイ(field programmable gate arrays、FPGA)、プロセッサ、制御器、マイクロ制御器、マイクロプロセッサ、電子デバイス、本開示に説明された機能を遂行するように設計された他の電子ユニット、コンピュータ、若しくはこれらの組合せ内で具現化されることもできる。
【0123】
したがって、本開示により説明された多様な例示的な論理ブロック、モジュール及び回路は、汎用プロセッサ、DSP、ASIC、FPGAや他のプログラム可能な論理デバイス、離散ゲートやトランジスタロジック、離散ハードウェアコンポーネント、若しくは、本願に説明された機能を遂行するように設計されたもの等の任意の組合せで具現化又は遂行されることもできる。汎用プロセッサはマイクロプロセッサであり得るが、代替的に、プロセッサは、任意の従来のプロセッサ、制御器、マイクロ制御器、若しくは状態マシンであり得る。プロセッサは、また、コンピューティングデバイスの組合せ、例えば、DSPとマイクロプロセッサ、複数のマイクロプロセッサ、DSPコアと関連付けられる一つ以上のマイクロプロセッサ、若しくは任意の他の構成の組合せで具現化されることもできる。
【0124】
ファームウェア及び/又はソフトウェアの具現化において、技法は、RAM(random access memory)、ROM(read-only memory)、NVRAM(non-volatile random access memory)、PROM(programmable read-only memory)、EPROM(erasable programmable read-only memory)、EEPROM(electrically erasable PROM)、フラッシュメモリ、CD(compact disc)、磁気又は光学データストレージデバイスなどのようなコンピュータ読み取り可能な媒体上に保存された命令として具現化できる。命令は、一つ以上のプロセッサによって実行可能であり得、プロセッサが本開示に説明された機能の特定様態を遂行するようにできる。
【0125】
ソフトウェアとして具現化される場合、前記技法は、一つ以上の命令又はコードとしてコンピュータ読み取り可能な媒体上に保存されたり、コンピュータ読み取り可能な媒体を介して転送されたりできる。コンピュータ読み取り可能な媒体は、ある場所から他の場所にコンピュータプログラムの転送を容易にする任意の媒体を含み、コンピュータ保存媒体及び通信媒体の両方を含む。保存媒体は、コンピュータによってアクセスできる任意の利用可能な媒体であり得る。非制限的な例として、このようなコンピュータ読み取り可能な媒体は、RAM、ROM、EEPROM、CD-ROMや他の光学ディスクストレージ、磁気ディスクストレージや他の磁気ストレージデバイス、若しくは、所望のプログラムコードを命令又はデータ構造の形態に移送又は保存するために使用されることができ、コンピュータによってアクセスできる任意の他の媒体を含むことができる。また、任意の接続がコンピュータ読み取り可能な媒体として適切に称することができる。
【0126】
例えば、ソフトウェアが同軸ケーブル、光ファイバーケーブル、鉛線、デジタル加入者回線(DSL)、又は、赤外線、無線及びマイクロ波のような無線技術を用いて、ウェブサイト、サーバ又は他の遠隔ソースから転送される場合、同軸ケーブル、光ファイバーケーブル、鉛線、デジタル加入者回線、又は、赤外線、無線及びマイクロ波などのような無線技術は、媒体の定義内に含まれる。本願で使用されたディスク(disk)及びディスク(disc)は、CD、レーザーディスク(登録商標)、光ディスク、DVD(digital versatile disc)、フロッピーディスク及びブルーレイディスクを含み、ここで、通常、ディスク(disk)は磁気的にデータを再生するのに対し、ディスク(disc)はレーザーを用いて光学的にデータを再生する。前記組合せ等も、コンピュータ読み取り可能な媒体等の範囲内に含まれなければならない。
【0127】
ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、移動式ディスク、CD-ROM、又は、公知された任意の他の形態の保存媒体内に常駐することもできる。例示的な保存媒体は、プロセッサが保存媒体から情報を読み取る、或いは、保存媒体に情報を書き込むように、プロセッサに連結することができる。代替的に、保存媒体はプロセッサに統合されることもできる。プロセッサ及び保存媒体はASIC内に存在することもできる。ASICはユーザ端末内に存在することもできる。代替的に、プロセッサ及び保存媒体はユーザ端末で個別構成要素として存在することもできる。
【0128】
以上で説明された実施例が一つ以上の独立型コンピュータシステムで現在開示された主題の態様を活用するものとして記述しているが、本開示はこれに限定されず、ネットワークや分散コンピューティング環境のような任意のコンピューティング環境によって具現化できる。さらには、本開示における主題の様態は複数のプロセッシングチップや装置で具現化されることもでき、ストレージは複数の装置に亘って同様に影響を受ける場合もある。このような装置は、PC、ネットワークサーバ及び携帯用装置を含むこともできる。
【0129】
本明細書では、本開示が一部の実施例によって説明されたが、本開示の発明が属する技術分野における通常の技術者が理解し得る本開示から逸脱しない範囲内で多様な変形や変更が可能である。また、そのような変形や変更は、本明細書に添付された特許請求の範囲内に属するものと理解されるべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13