JP7048614B2 - ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法 - Google Patents

ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法 Download PDF

Info

Publication number
JP7048614B2
JP7048614B2 JP2019531996A JP2019531996A JP7048614B2 JP 7048614 B2 JP7048614 B2 JP 7048614B2 JP 2019531996 A JP2019531996 A JP 2019531996A JP 2019531996 A JP2019531996 A JP 2019531996A JP 7048614 B2 JP7048614 B2 JP 7048614B2
Authority
JP
Japan
Prior art keywords
data
client
streaming data
query
snapshot
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
Application number
JP2019531996A
Other languages
English (en)
Other versions
JP2020504867A (ja
Inventor
スレイビン,イリア
レッグ,マシュー・アリステア
アルパート,リード
トム,ジョナサン・ブイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JPMorgan Chase Bank NA
Original Assignee
JPMorgan Chase Bank NA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US15/378,501 external-priority patent/US10657137B2/en
Application filed by JPMorgan Chase Bank NA filed Critical JPMorgan Chase Bank NA
Publication of JP2020504867A publication Critical patent/JP2020504867A/ja
Application granted granted Critical
Publication of JP7048614B2 publication Critical patent/JP7048614B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Image Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

[0001]本開示は、概して、ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法に関する。
[0002]パブリッククラウドおよびプライベートクラウドは共に、益々一般的なコンピューティング環境になってきている。しかしながら、これらの環境は、ホストシステムとリモートオペレーティングシステムとの間の可変するレイテンシによって、ストリーミングデータをサポートしない。さらに、テラバイトものストリーミング市場データを種々のクラウド内にプッシュする(転送する)コストは、プロバイダからの非常に高い「トランジット(transit)」料を招くので、データ駆動型アプリケーションのためにクラウドを使用する提供価値(value proposition)を減少させる。
[0003]ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法が開示される。一実施形態において、ストリーミングデータを提示するための方法は、(1)少なくとも1つのコンピュータプロセッサを含むサーバのためのウェブサービス層において、複数のパラメータを含むクエリをクライアントから受信することを含み、(2)サーバのためのデータキャッシング層は少なくとも1つの予め規定されたストリーミングデータソースからストリーミングデータを受信し、(3)データキャッシング層は複数のパラメータのそれぞれについてストリーミングデータを融合し、(4)データキャッシング層は融合されたデータを集約し、(5)データキャッシング層は、融合されたデータに対してクエリを同時に実行することによって、融合されたデータのスナップショットを生成し、(6)スナップショットをクライアントに出力することを含むことができる。
[0004]一実施形態において、パラメータは、証券および投資の少なくとも一方のための特定の記述子を含むことができる。
[0005]一実施形態において、クエリは、ストリーミングデータソースの識別情報を更に含むことができる。
[0006]一実施形態において、ストリーミングデータは市場データを含むことができる。
[0007]一実施形態において、ウェブサービス層は、所定の時間量だけ遅延されるスナップショットを出力することができ、期間は、ストリーミングデータに関連する1つまたは複数のルールに基づく。
[0008]一実施形態において、方法は、サーバのためのエンタイトルメントサービス層が、クエリに応答してクライアントが情報にアクセスすることが承認されることを検証するステップを更に含むことができる。
[0009]一実施形態において、方法は、クライアントから受信される少なくとも1つのクライアントクレデンシャルに基づいてクライアントを認証するステップを更に含むことができる。
[0010]一実施形態において、スナップショットは、或る時間の間、証券および投資の少なくとも一方について正確であり得る。
[0011]一実施形態において、スナップショットは、或る時間の間、証券および投資の少なくとも一方について適切な状態を含むことができる。
[0012]別の実施形態によれば、ストリーミングデータを提示するためのシステムは、複数のストリーミングデータソースと、各ストリーミングデータソースのためのデータローダであって、ストリーミングデータソースからストリーミングデータを受信する、データローダと、データローダからストリーミングデータを受信するデータキャッシング層と、データキャッシング層と通信状態にある少なくとも1つのコンピュータプロセッサを含むウェブサービス層とを含むことができる。ウェブサービス層は複数のパラメータを含むクエリをクライアントから受信することができ、データキャッシング層は複数のパラメータのそれぞれについてストリーミングデータを融合(conflate)することができ、データキャッシング層は融合されたデータを集約することができ、データキャッシング層は、融合されたデータに対してクエリを同時に実行することによって、融合されたデータのスナップショットを生成することができ、スナップショットをクライアントに出力することができる。
[0013]一実施形態において、パラメータは、証券および投資の少なくとも一方のための特定の記述子を含むことができる。
[0014]一実施形態において、クエリは、ストリーミングデータソースの識別情報を含むことができる。
[0015]一実施形態において、ストリーミングデータは市場データを含むことができる。
[0016]一実施形態において、ウェブサービス層は、所定の時間量だけ遅延されるスナップショットを出力することができる。
[0017]一実施形態において、期間は、ストリーミングデータに関連する1つまたは複数のルールに基づくことができる。
[0018]一実施形態において、クエリを、クラウドアプリケーションおよびローカルアプリケーションの少なくとも一方から受信することができる。
[0019]一実施形態において、システムは、クエリに応答してクライアントが情報にアクセスすることが承認されることを検証するサーバのためのエンタイトルメントサービス層を更に含むことができる。エンタイトルメントサービス層は、クライアントから受信される少なくとも1つのクライアントクレデンシャルに基づいてクライアントを更に認証することができる。
[0020]一実施形態において、スナップショットは、或る時間の間、証券および投資の少なくとも一方について正確であり得る。
[0021]一実施形態において、スナップショットは、或る時間の間、証券および投資の少なくとも一方について適切な状態を示すことができる。
[0022]本発明、本発明の目的および利点のより完全な理解のために、添付図面と併せて、以下の説明に対してここで参照が行われる。
[0023]一実施形態によるストリーミングデータを、集約し、フィルタリングし、提示するためのシステムを示す図である。 [0024]一実施形態によるストリーミングデータを、集約し、フィルタリングし、提示するための方法を示す図である。 [0025]一実施形態に従って提供される戦略的フローを示す図である。 [0026]一実施形態による例示的なプロセスフローである。
[0027]本発明の幾つかの実施形態及びそれらの利点は、図1~4を参照することによって理解することができる。
[0028]実施形態は、ストリーミングデータを、集約し、フィルタリングし、提示するためのシステムおよび方法を対象とする。
[0029]一実施形態において、内部および外部ソースからのデータを、高速データ集約エンジン内にプッシュすることができる。クライアントは、簡単なウェブサービス要求を行い、クライアントのクレデンシャル、情報のソース、および要求される情報のリストを指定することができる。例えば、金融機関において、クライアントは証券およびフィールドのリストを提出することができる。クライアントは、その後、クライアントが必要とする情報を有する単一応答を受信する。これにより、全てのアプリケーションがサポートする必要のある高速ストリーム管理、ならびに要求されるインフラストラクチャーおよび開発が低減されまたはなくなる。
[0030]一実施形態において、任意の適した集約エンジンを、必要に応じておよび/または所望に応じて使用することができる。一実施形態において、集約エンジンは、データペイロード内の個々のフィールドに対する構造化クエリ言語(「SQL:Structured Query Language」)スタイルコンテンツフィルタリングを可能にし、広範囲な製品に対しほぼリアルタイムの分析を可能にすることができる。
[0031]実施形態は、以下のものの一部または全てを提供することができる。以下のものとは、(1)より低いデータトランジットコストによるクラウドベースアプリケーションの価格優位性の増加;(2)データ駆動型アプリケーションのためのインフラストラクチャー要件の減少および短い開発サイクルによる、技術コストの大幅低減;(3)スプレッドシートを用いたAPIおよび統合の簡略化による、より代替可能な開発者労働力;(4)異種ソースにわたる高度コンテンツフィルタリングは、過去において法外なコストがかかったリアルタイムアプリケーションフィーチャーの開発を可能にする;(5)外部および内部データのマージングによる分散分析の促進;および(6)データのコストを下げるために、リアルタイムにそのデータを必要としない個人についてリアルタイムデータの送出を経時変化させるまたは遅延させる能力である。他の利益も同様に提供することができる。
[0032]金融業界において、市場データおよびメッセージングは大量のデータを伴うため、クライアントは、ティッカープラント(ticker plant)から出てくるペイロードを扱うことに関連付けられるかなりの作業を行うことが予想される。クライアントは、しばしば、大量の情報に関連するハードウェアおよびソフトウェアの課題を扱い、ユーザが利益を引出すために情報を融合し、ポートフォリオ管理をサポートするために多くのスレッドおよびシステムにわたって集約すること等を行う必要がある。実施形態では、エンドユーザおよび開発者にフィルタリングとのインターフェースを与えながら、これらの課題や他の課題に対処する。
[0033]図1を参照すると、ストリーミングデータを集約し、フィルタリングし、提示するためのシステムが一実施形態に従って開示される。システム100は、複数のクライアントアクセスポイント110、ウェブサービス層120、データキャッシング層130、データローダ140、140・・・、140、およびデータソース150、150・・・、150を含むことができる。データソース150は、インターネット等の1つまたは複数のストリーミングデータソースからのデータ、および、外部市場データ、業界ニュース等を受信することができる。
[0034]3つのデータローダ140およびデータソース150が図1に示されるが、より多くのまたはより少ない数のデータローダ140およびデータソース150を、必要に応じておよび/または所望に応じて設けることができることが認識されるべきである。
[0035]データローダ140はデータソース150からデータを受信することができる。一実施形態において、各データローダ140は、1つまたは複数のデータソース150からデータキャッシング層130内にストリーミングデータを「配信する(feed)」ことができる。各データローダ140は、ウェブサービス層120と更に通信状態にあることができる。例えば、各データローダ140は、コントロールプレーンサービス126と通信することができ、コントロールプレーンサービス126は、新しいサブスクリプションを作成すること、失敗にリトライすること、等を1つまたは複数のデータローダ140に指令することができる。
[0036]データキャッシング層130は、ウェブサービス層120からの要求にサービスすることができる。一実施形態において、データキャッシング層130は、データベースとメッセージバスの両方として機能することができる。
[0037]一実施形態において、データキャッシング層130は、また、データをフィルタリングすることができ、要求されたデータの「スナップショット(snapshot)」を提供することができる。
[0038]適したデータキャッシング層130の例は、60East Technologiesからの高度メッセージ処理システム(AMPS:Advanced Message Processing System)である。
[0039]ウェブサービス層120は1つまたは複数のクライアントアクセスポイント110を使用してクライアントとインターフェースすることができる。一実施形態において、ウェブサービス層は、構成管理サービス122、モニタリングサービス124、コントロールプレーン層126、およびエンタイトルメントサービス128等のサービスを提供することができる。他のサービスを、必要に応じておよび/または所望に応じて設けることができる。
[0040]一実施形態において、構成管理サービス122は、どんなデータソース150に接続するか、データソース150にどのように接続するか等、1つまたは複数のデータローダ140についての構成データを提供することができる。一実施形態において、構成管理サービス122は、ランタイム構成情報、例えば、データローダ140、ウェブサービス層120、エンタイトルエントサービス128についての接続情報(例えば、ホスト:ポート)、どんなデータフィードをロードするか、どんなウェブ接続をサポートするか(httpまたはhttps)、SSL証明書ロケーション、接続およびスレッドポールサイジング、ロギング間隔、環境(dev/test/prod)等を提供することができる。
[0041]一実施形態において、モニタリングサービス124は、1つまたは複数のデータソース150のステータスをモニタすることができ、データソースが利用可能でなくなる場合、要求を再ルーティングすることができる。
[0042]コントロールプレーンサービス150は、1つまたは複数のデータローダ140とインターフェースすることができる。一実施形態において、コントロールプレーンサービス150は、サービスの間でディレクティブを渡し、自動化命令(例えば、モニタリングデバイス124は、データローダの失敗に気付き、データ集約層130内でサーバを切換えるようにウェブサービス層120に指令する)とマニュアルディレクティブ(例えば、オペレーションチームは、サービスをオフラインにしたいと思う)の両方を可能にすることができる。
[0043]一実施形態において、エンタイトルメントサービス128は、クライアントが、要求されるデータにアクセスすることを許可されることを検証することができる。
[0044]一実施形態において、クライアントアクセスポイント110は、例えば、クラウドアプリケーション、ローカルアプリケーション、ユーザインターフェース、API等を含むことができる。一実施形態において、クライアントアクセスポイント110は、例えば、クライアントへの出力としてスプレッドシートを提供することができる。
[0045]一実施形態において、システム100は、クライアントが更新を受信するための「サブスクリプション(subscription)」を提供する能力を含むことができる。一実施形態において、複雑なクエリに対する更新は、クエリを再提出し、1秒に数回、全結果セットを受信するよりもサイズが小さい場合がある。
[0046]図2を参照すると、ストリーミングデータを集約し、フィルタリングし、提示するための方法が一実施形態に従って開示される。
[0047]ステップ210にて、クライアントは、クラウドアプリケーション、ローカルアプリケーション、アップロード等、インターフェースを介して関心のある情報(information of interest)を要求することができる。また、一実施形態において、クライアントは、クレデンシャルを提供し、情報のソースおよび要求される情報のリストを特定することができる。別の実施形態において、機械学習を、過去のクエリに基づいてソースを特定するために使用することができる。
[0048]一実施形態において、クライアントは、情報を要求するためにウェブサービスプロトコルを使用することができる。ウェブサービスプロトコルは、例えば、情報をフィルタリングするためにSQL様のシンタックスを使用することができる。提出することができる例示的なクエリは、「(/BID//ASK>= (0.05/TRDPRC_1))」であり、「ASKの値で割ったBIDの値がTRDPRC_1の値の5%以上である」ことを意味する。
[0049]金融システムにおいて、クエリは、株式、業界、関心領域(field/area of interest)等の識別情報を含むことができる。クエリをフィルター内で使用することができる。
[0050]一実施形態において、要求は(例えば、株式、業界等に対する)サブスクリプションである場合がある。一実施形態において、要求は、各スナップショットが提供される期間または条件を指定することができる。
[0051]ステップ220にて、クライアントが要求されたデータにアクセスすることが承認され得る。一実施形態において、これは、要求された情報に対するアクセスをクライアントが許可されるかどうかを判定するエンタイトルメントチェックを伴うことができる。
[0052]一実施形態において、クライアントを、要求の一部として提供することができるクレデンシャルに基づいて更に認証することができる。
[0053]ステップ230にて、要求を、データキャッシング層に提供することができ、データキャッシング層は、ステップ240にて、ストリーミングデータソースから受信したデータをフィルタリングすることができる。また、データキャッシング層は、データを「スナップショットする(snapshot)」、すなわち、特定の時間的瞬間にデータ状態を提供することができる。
[0054]一実施形態において、ビジネスロジックは、クライアントに提示されるデータフィールドの数を低減することができる。
[0055]ステップ250にて、フィルタリングされたデータを融合することができる。例えば、フィルタリングされた2つ以上のソースからのデータを集約することができる。例えば、すぐに、株式は、70.00から70.05に、戻って69.90に、そして、70.01まで価格が変化する場合がある。融合されたソースによって、クライアントは、70.01を受信するだけになる。その理由は、その値が、その時点の終わりに価格の適切な状態であったからである。しかしながら、この値は、特に、Bid及びAsk等の複数のフィールドに関するデータセットについて常に適切なデータポイントであるわけではないため、最終の値ではないであろう。
[0056]ステップ260にて、データのデータスナップショットを生成することができる。一実施形態において、スナップショットは証券の買い集めのためのものであり、その時点におけるその買い集めにわたって正確である場合がある。例えば、クエリを、順次にではなく、集約されたデータ(例えば、関心のある証券)にわたって同時に実行することができる。
[0057]ステップ270にて、スナップショットを、ウェブアプリケーション、ローカルアプリケーション、API、スプレッドシート等を介してクライアントに出力することができる。
[0058]一実施形態において、スナップショットの送出を、データを「経時変化させる」ために所定の時間量だけ遅延させることができる。例えば、データ送出のためのタイミングは、データを無料で送出することができるかどうか、または、データについて料金が存在するかどうかを判定することができる。全てのクライアントがリアルタイムデータを要求するわけではない;例えば、投資マネージャは見込みクライアントに会うときリアルタイムデータを必要としない場合がある。
[0059]そのため、一実施形態において、システムは、データおよび/またはデータソースに関連付けられるルールに基づくことができるスナップショットの出力をどれだけ長く遅延させるかを決定することができ、スナップショットを少なくともこの時間量だけ遅延させることができる。一実施形態において、スナップショット内のデータの経時変化の監査証跡(auditable trail)を維持することができる。
[0060]本明細書で開示される実施形態は、複数のラインオブビジネス(line of Business)が実施する種々のプロセスの仕組みを、問題を解決することに関連するコンテンツから分離することができる。クライアントのポートフォリオにおける種々のロット、取引、送金、買い増し、払い戻し等に起因する変化等のそのコンテンツを、汎用の内部公表データとして扱い、匿名化し、ストリーミングデータを集約し、フィルタリングし、提示するための1つまたは複数のシステム/方法に提供することができる。こうしたシステム/方法の例は、米国特許出願第15/378,501号に開示され、その開示は参照によりその全体が本明細書に組込まれる。
[0061]複数の実施形態において、種々の施設からの市場データを、ストリーミングデータを集約し、フィルタリングし、提示するための1つまたは複数のシステム/方法の内部で融合することができ、ポートフォリオ情報とマージすることができる。データが幾つかのマージングステージを通るときに、各ロットは、リアルタイム市場データに対して値付けされ、その後、リアルタイム・ポートフォリオ・ビューに集約される。
[0062]複数の実施形態において、顧客は、ビジネスに関連する「警報(alert)」を申込むためにカスタムルールエンジンを使用することができる。例えば、システムは、特定の株式が価格閾値に達したとき、特定の所有財産の集中リスクが、予め規定されたレベルを突破するとき、ロットまたはポートフォリオの評価が或るパーセンテージだけ上がる/落ちるとき等に、クライアントに通知を送信することができる。
[0063]図3を参照すると、戦略的フローが一実施形態に従って提供される。戦略的フローは、顧客、金融機関インターフェース、ゲートウェイサービス、1つまたは複数のグラフィカルユーザインターフェース、境界ゲートウェイ、複雑イベントプロセッサ(CEP:Complex Event Processor)エンジン、内部データプラットフォーム(例えば、パブリッシュと消費者との間のセキュアで確実なメッセージングを提供することができる内部データプラットフォーム。OpenMAMA APIを使用してアクセスを提供することができる。)、1つまたは複数の市場データフィード(例えば、NASDAQおよびNYSE市場データを保持するNASDAQBasic。商用フィードハンドラ;OPRA、Pink Sheets、TradeWeb等を使用することができる。)、アノニマイザ、データインジェクタ、証券マスタ、ポートフォリオ管理システム、日中アクティビティモニタ(例えば、日中アクティビティ、オーダー管理システム、及びキャッシュフローシステム)、警報エンジン、および通知プラットフォームを含むことができる。
[0064]一実施形態において、CEPエンジンは、市場データおよび以下のものの1つまたは複数を要求するアプリケーションについてデータを処理することができる。以下のものとは、(1)高レートストリーミングデータをサポートできない構成にあること;(2)1日に数回価格を要求するだけであるが、それらの価格が非常に小さいヒステリシスを有することを必要とすること;(3)(それぞれが単一シンボルを採用するサブスクリプションをストリーミングすることと対照的に)単一時刻に多数のシンボルを提出する必要があること:(4)幾つかのソース(例えば、Reuters RMDS、ダイレクトフィード(Direct Feed)、内部データ(Internal Data)、LOB市場アナリティクス)からの市場および分析データの集約;または(5)1つまたは複数のフィールドの価値を考慮する動的クエリに対してデータをフィルタリングする能力を必要とする、または、そのコストを下げるために所定の時間だけ遅延された市場データを使用できること、である。
[0065]一実施形態において、アノニマイザコンポーネントは、CEPエンジンに注入する前にポートフォリオコンテンツからクライアントのアイデンティティを取除くことができる。逆のプロセスは、プロセスが、興味を持っている特定のクライアントのポートフォリオに関連付けられるIDを調べることを可能にする。
[0066]データインジェクタは、1つまたは複数の技術資産に単一インターフェースを提供することができる。データインジェクタは、システム間で参照データ(例えば、シンボロジー)をマッピングし、内部データプラットフォーム(例えば、ポートフォリオ情報を送信する)とCEPエンジン(例えば、関心のある商品がウォッチリストにあることを保証する)の両方と通信することができる。
[0067]一実施形態において、ポートフォリオ管理システムは、クライアントの所有財産についてのポートフォリオコンテンツデータのソースであってもよい。ポートフォリオ管理システムは、関心のあるポートフォリオのリフレッシュを毎日発行し、オンデマンドでポートフォリオを発行すると共に、全てのロット/ポートフォリオについて「公式(official)」の1日の始まりの価格を維持することができる。
[0068]一実施形態において、日中アクティビティモニタは、オーダー管理システム、キャッシュフローエンジン等に由来するアクティビティ等のアクティビティをモニタすることができる。日中アクティビティモニタは、評価の変化をリアルタイムに反映するために、1日の始まり以来のポートフォリオ変化としてCEPエンジン内に更新を発行することができる。
[0069]警報エンジンは、金融機関ウェブサイトからのクライアント指示をCEPエンジンおよび他のバックエンドシステムに対するサブスクリプションに変換することができる。複数日にわたり警報を持続すること、条件が満足されたという信号をCEPエンジンから聞くこと、所望のアクションを実施すること、アクションがとられた警報をディセーブルすること等である。
[0070]図4は、一実施形態による例示的なプロセスフローを示す。一実施形態において、データソース層は市場データ(例えば、市場データストリーム)を受信することができ、データをデータローダ層に提供することができ、データは、1つまたは複数のデータローダを使用してデータキャッシング層にロードすることができる。CEPエンジンは、データキャッシング層からデータにアクセスすることができ、構成管理、データフィルター処理、モニタリングサービス、コントロールプレーンサービス、エンタイトルメントサービス等を提供することができる。一実施形態において、CEPエンジンは、顧客アクセス層を介してサービスを顧客に提供することができる。
[0071]例
[0072]非制限的な例が以下に提供される。
[0073]データセット1:ダイレクトフィードからの持分金融商品:
[0074] <snapSymbol>JPM.N</snapSymbol>
[0075] <snapStatus>ok</snapStatus>
[0076] <wBidPrice>87.790000</wBidPrice>
[0077] <wBidSize>18</wBidSize>
[0078] <wAskPrice>87.800000</wAskPrice>
[0079] <wAskSize>4</wAskSize>
[0080] <wInstrumentType>Stock</wInstrumentType>
[0081] <wOpenPrice>90.360000</wOpenPrice>
[0082] <wAdjPrevClose>90.070000</wAdjPrevClose>
[0083] <wPrevClosePrice>90.070000</wPrevClosePrice>
[0084] <wBidOpen>90.340000</wBidOpen>
[0085] <wAskOpen>90.400000</wAskOpen>
[0086]商品価格はwBitPriceおよびwAskPriceの平均である。
[0087]データセット2:ダイレクトフィードからの商品先物取引:
[0088] <snapSymbol>CLJ7.NYM</snapSymbol>
[0089] <snapStatus>ok</snapStatus>
[0090] <wIssueSymbol>CLJ7.NYM</wIssueSymbol>
[0091] <wBidHigh>48.620000</wBidHigh>
[0092] <wAskLow>47.400000</wAskLow>
[0093] <wAskPrice>47.410000</wAskPrice>
[0094] <wAskSize>5</wAskSize>
[0095] <wBidPrice>47.390000</wBidPrice>
[0096] <wBidSize>52</wBidSize>
[0097] <wBidLow>47.340000</wBidLow>
[0098] <wAskHigh>48.750000</wAskHigh>
[0099] <wOpenPrice>47.930000</wOpenPrice>
[00100] <wOpenTime>2017-03-21;17:45:27.229603</wOpenTime>
[00101] <wCfiCode>FCMXSX</wCfiCode>
[00102] <wCurrency>USD</wCurrency>
[00103] <wEntryStatus>0</wEntryStatus>
[00104]価格についての同じルールが当てはまる
[00105]データセット3:ベンダーフィードからの公債:
[00106] <snapSymbol>ISIN_USN82008AK46_MODEL.FUSE</snapSymbol>
[00107] <snapStatus>ok</snapStatus>
[00108] <CLIENT_OFFER>0.000000</CLIENT_OFFER>
[00109] <CLIENT_BID>0.000000</CLIENT_BID>
[00110] <POSITION>0.000000</POSITION>
[00111] <COUPON_RATE>2.000000</COUPON_RATE>
[00112] <STRING2>HG-Industrials/Defense/Chemicals</STRING2>
[00113] <MKT_PRICE_2>1000000.000000</MKT_PRICE_2>
[00114] <MKT_PRICE_1>1000000.000000</MKT.PRICE_1>
[00115] <MATURDATE> 15 Sep 2023</MATURDATE>
[00116] <ISIN_BENCHMARK>US912828W556</ISIN_BENCHMARK>
[00117] <CURVE_TYPE>EMEA<CURVE_TYPE>
[00118] <UPDATE_TM>12:31:15.000</UPDATE_TM>
[00119] <lTEM_ID/>
[00120]価格はフィールドMKT_PRICE_1にある
[00121]データセットは同じCEPインスタンス内に存在する必要はない。例えば、データセット1および3は、ポートフォリオビューが作成される同じCEPインスタンス上に存在することができる。データセット2は、インジェスチョン(ingestion)の需要によって別のインスタンス上に存在することができる。
[00122]例示的なプロファイル設計が提供される。ポートフォリオを、Portfolioと呼ばれる自分自身のテーブルに記憶することができる。
[00123] :
[00124] {
[00125] “portfolio”:“12345”
[00126] “version”:3.2.6,
[00127] “holdings”:[
[00128] {“source”:“Data Set 1”,“security”:“JPM.N”,“weight”:150},
[00129] {“source”:“Data Set 2”,“security”:“CLJ7.NYM”,“weight”:200},
[00130] {“sourse”:“Data Set 3”, “security”:“ISIN_USN82008AK46_MODEL.FUSE”,“weight”:2}
[00131] ]
[00132] }
[00133]例えば、ポートフォリオ値付けは、以下の疑似コードを使用することができる:
[00134]特定のポートフォリオIDについて、
[00135] 各資産識別子について
[00136] 総価格=総価格+(資産重み資産_価格[資産識別子])
[00137] 総価格を返す
[00138]換言すれば、データが変化するにつれて変化することになるポートフォリオのリアルタイム価格を表す単一の値を返すことができる。
[00139]一実施形態において、両方のインスタンスについて規定されたテーブルの4つの層が存在する場合がある。
[00140]第1の層は、市場データ発行者からデータを受信することができる。例えば、ポートフォリオ値付けと商品先物取引の両方について、1データフィード/ソースについて1つのテーブルが存在する場合がある。ポートフォリオ値付けに関して、これらを、「Equity」および「Bond」と名付けることができ、商品先物取引に関して、それを「Comm」と名付けることができる。これらのテーブルは、トランザクションログされず、トランザクションリプリケートもされず、これらのテーブル内のデータの「形状(shape)」は、そのデータソースが規定するいずれかのものである。
[00141]次の層に、「AllPrices」と呼ぶことができるリプリケートされたテーブルが存在し、全てのソースからの価格データの正規化されたユニオンとして働くことができる。データを、正規化し、Comm、Equity、およびBondテーブルからAllPricesに発行することができる。複数の実施形態において、この情報を、最大データレートを低減するために融合することができる。
[00142]アクションチェーンにおける第1のステップは、基礎にあるデータを解析し、関心のある値を抽出し、可変量にする。値の抽出を、射影表現として指定することができる。例えば、Equityからのメッセージを処理するとき、ライン<Value>prise=(/prise/wBidPrice+/prise/wAskPrice)/2</Value>は、/wBidPriceおよび/wAskPriceの平均を計算し、その結果を可変量{{price}}に置く。
[00143]アクションの次のステップは、値付けデータのソースを示す「source」フィールドと共に、{{symbol}}および正規化された{{price}}を含む新しいメッセージを発行することである。このメッセージを、AllPricesテーブルに発行することができ、JSONとしてフォーマットすることができる。
[00144]この時点で、到来する市場データは、正規化され、単一のAllPricesテーブルに変換されている。コンフレーション(conflation)およびリプリケーション(replication)が使用されて、ポートフォリオを値付けするために必要とされる証券価格の全てについての完全なビューをポートフォリオ値付けに与えながら、ポートフォリオ値付けインスタンスが扱わなければならないメッセージの全体量を最小にすることができる。
[00145]次に、ポートフォリオを、1証券について1ポートフォリオについて1列を有するテーブル「Portfolio」としてモデル化することができる。ポートフォリオ内の各メッセージは、ポートフォリオID、証券、およびそのポートフォリオ内のその証券の重みを有することができる。このテーブルは、本質的に関心のあるポートフォリオについての入力データであり、システムは、ポートフォリオのコンテンツが調整される、追加される、かつ/または、除去されるときに、ポートフォリオ価格を動的に再計算することができる。
[00146]この計算は、次の層、集約において行われる。この層を、2つのビューとしてモデル化することができる。第1のビューは、「PricedPortfolio」と呼ばれるPortfolioとAllPricesとの結合体(join)である。Portfolio内の全てのメッセージについてここで1つのメッセージが存在する場合があるが、Joinによって、各証券についての現在価格を含むことができる。
[00147]トップのPricedPortfolioは、ポートフォリオ価格を計算する第2のビュー「PricedPortfolioAgg」であることができる。これは、本質的に、ポートフォリオID、ポートフォリオ内の証券のカウント、およびポートフォリオ内の証券の/price/weightのSUMを有する、1ポートフォリオについて1メッセージを含むビュー(を超える)に勝る疑似コードの変換である。
[00148]そのため、複数の実施形態において、システムは、ポートフォリオデータを(例えば、プッシュによって)受信し、その後、PricedPortfolioおよびPricedPortfolioAggに対するクエリ/サブスクリプションを受信して、基礎になる市場データが変化するときに動的に更新されたポートフォリオ価格を確認することができる。
[00149]複数の実施形態において、各ポートフォリオの公式の1日の始まりの評価を、毎日のロードの一部としてPortfolioRefテーブル内に提出することができる。これは、PricedPortfolioAggビューが、現在の評価とPortfolioRefテーブル内に提出される参照データを比較することによって、実現されていない1日の始まりの利得/損失の計算を含むことを可能にする。一実施形態において、1日の始まりのポートフォリオ評価からのパーセンテージ変化を計算することができる。
[00150]複数の実施形態において、警報エンジンは、人間識別可能な概念を基礎になるデータ構造にマッピングするCEPエンジン内にサブスクリプションをセットアップすることができる。SQL言語における算術表現および公式が使用されて、警報エンジンがイベントの通知をいつ受信すべきかを規定することができる。特定のサブスクリプションに関するデータが受信されると、警報エンジンは、そのデータを所望のアクション(例えば、電子メールまたはSNS等のメッセージを送信すること、アドバイザのユーザインターフェース上でウィンドウをポップアップすること等)に戻すようにマッピングすることになり、そのアクションを実行することができる。警報エンジンを、アクティブな警報として留まるように、または、サブスクリプションを削除することによってそれ自身をディセーブルするように更に構成することができる。
[00151]警報の非制限的な例は、金額または金額パーセンテージを超える/を下回るポートフォリオ利得/損失、特定の閾値を超える特定の所有財産の値等を含む。
[00152]複数のクライアントを代表するアドバイザは、そのクライアントの所有財産の全体論的ビューについて関心のある複数のポートフォリオをカバーする警報を維持することができる。
[00153]組織レベルで、全ての所有財産は、CEPエンジンにおいて全体論的に分析されて、ヘッジング、クロスアカウント貸株、リスク管理等を容易にすることができる。
[00154]一実施形態において、キャッシュを、米国ドル等の基礎になる通貨のユニット数としてポートフォリオにおいて表すことができる。通貨についての市場データは、(ドル建て口座用の米国ドルについて等で)スタティックである、または、現在の為替相場を表すことができる。
[00155]別の実施形態において、同様の機構を、ポートフォリオ変化の仮説的モデリングのために使用することができる。別個のCEPエンジンまたはサイドテーブルが使用されて、ポートフォリオの仮説的コンテンツの最終表現を記憶することができ、一方、同じ集約機構が、ポートフォリオを値付けするために使用され得る。
[00156]一実施形態において、CEPエンジン内の別個のテーブルは、顧客がリスクを管理するのを助ける動的リスクモデルを構築するために使用することができる株式・セクター関係を記憶することができる。複数のリスクモデルを、異なるリスクアペタイト(risk appetite)を容易にするために規定することができる。
[00157]一実施形態において、別個のサブスクリプションを、集約されたビューを含むテーブル上でセットアップすることができ、その後、抽出し、データベースに保存することができる。この履歴記録を、監査証跡として、または、顧客およびアドバイザに対する自動化投資助言を生成する機械学習システムを訓練するために使用することができる。
[00158]一実施形態において、CEPエンジンを、リアルタイムマージン管理のために使用することができる。その理由は、CEPエンジンが、ポートフォリオロットならびに金融商品の可用性の現在の評価ステータスを知っているからである。
[00159]幾つかの実施形態が開示されたが、これらの実施形態が互いに排他的でないことが認識されるべきである。
[00160]以降で、本発明のシステムおよび方法の実装態様の一般的な態様が述べられる。
[00161]本発明のシステムまたは本発明のシステムの所定の部分は、例えば、汎用コンピュータ等の「処理機械(processing machine)」の形態であってもよい。本明細書で使用するとき、用語「処理機械」は、少なくとも1つのメモリを使用する少なくとも1つのプロセッサを含むと理解される。少なくとも1つのメモリは命令のセットを記憶する。命令を、処理機械の1つまたは複数のメモリに永久的にまたは一時的に記憶することができる。プロセッサは、データを処理するために1つまたは複数のメモリに記憶される命令を実行する。命令のセットは、上述したタスク等の特定の1つまたは複数のタスクを実施する種々の命令を含むことができる。特定のタスクを実施するためのこうした命令のセットを、プログラム、ソフトウェアプログラム、または単にソフトウェアと特徴付けることができる。
[00162]一実施形態において、処理機械は専用化プロセッサであってもよい。
[00163]上記で述べたように、処理機械は、データを処理するために1つまたは複数のメモリに記憶される命令を実行する。データのこの処理は、例えば、処理機械の1人または複数人のユーザによるコマンドに応答する、前の処理に応答する、別の処理機械による要求および/または任意の他の入力に応答することができる。
[00164]上記で述べたように、本発明を実装するために使用される処理機械は汎用コンピュータであってもよい。しかしながら、上述した処理機械は、いろいろな他の技術のうちの任意の技術を同様に利用することができる。いろいろな他の技術は、専用コンピュータ、例えばマイクロコンピュータ、ミニコンピュータ、またはメインフレームを含むコンピュータシステム、プログラム式マイクロプロセッサ、マイクロコントローラー、周辺集積回路要素、CSIC(Customer Specific Integrated Circuit、特定顧客向け集積回路)またはASIC(Application Specific Integrated Circuit、特定用途向け集積回路)または他の集積回路、ロジック回路、デジタル信号プロセッサ、FPGA、PLD、PLA、またはPAL等のプログラマブルロジックデバイス、あるいは、本発明のプロセスのステップを実装することが可能である任意の他のデバイスまたはデバイスの配置構成を含む。
[00165]本発明を実装するために使用される処理機械は、適したオペレーティングシステムを利用することができる。そのため、本発明の実施形態は、iOSオペレーティングシステム、OS Xオペレーティングシステム、Androidオペレーティングシステム、Microsoft Windows(商標)オペレーティングシステム、Unixオペレーティングシステム、Linux(登録商標)オペレーティングシステム、Xenixオペレーティングシステム、IBM AIX(商標)オペレーティングシステム、Hewlett-Packard UX(商標)オペレーティングシステム、Novell Netware(商標)オペレーティングシステム、Sun Microsystems Solaris(商標)オペレーティングシステム、OS/2(商標)オペレーティングシステム、BeOSオペレーティングシステム、Macintoshオペレーティングシステム、Apacheオペレーティングシステム、OpenStep(商標)オペレーティングシステム、あるいは別のオペレーティングシステムまたはプラットフォームを実行する処理機械を含むことができる。
[00166]上述した本発明の方法を実施するために、処理機械のプロセッサおよび/またはメモリが同じ地理的場所に物理的に位置することは必要でないことが認識される。すなわち、処理機械によって使用されるプロセッサおよびメモリのそれぞれを、地理的に別個のロケーションに位置付け、任意の適した方法で通信するために接続することができる。さらに、プロセッサおよび/またはメモリのそれぞれを、機器の異なる物理的ピースで構成することができることが認識される。したがって、プロセッサが1つのロケーションにおいて機器の1つの単一ピースであること、および、メモリが別のロケーションにおいて機器の別の単一ピースであることは必要でない。すなわち、プロセッサが2つの異なる物理的ロケーションにおいて機器の2つのピースであることができることが企図される。機器の2つの別個のピースを任意の適した方法で接続することができる。さらに、メモリは、2つ以上の物理的ロケーションにおいてメモリの2つ以上の部分を含むことができる。
[00167]更に説明すると、処理は、上述したように、種々のコンポーネントおよび種々のメモリによって実施される。しかしながら、上述したように2つの別個のコンポーネントによって実施される処理を、本発明の更なる実施形態によれば、単一コンポーネントによって実施することができることが認識される。さらに、上述したように1つの別個のコンポーネントによって実施される処理を、2つの別個のコンポーネントによって実施することができる。同様に、上述したように2つの別個のメモリ部分によって実施されるメモリ記憶を、本発明の更なる実施形態によれば、単一メモリ部分によって実施することができる。さらに、上述したように1つの別個のメモリ部分によって実施されるメモリ記憶を2つのメモリ部分によって実施することができる。
[00168]さらに、種々の技術を、例えば、種々のプロセッサおよび/またはメモリの間の通信を提供するために、ならびに、本発明のプロセッサおよび/またはメモリが任意の他のエンティティと通信することを可能にするために、すなわち、更なる命令を得るためにまたはリモートメモリストアにアクセスしそれを使用するために使用することができる。こうした通信を提供するために使用されるこうした技術は、例えば、ネットワーク、インターネット、イントラネット、エクストラネット、LAN、イーサネット(登録商標)、セルタワーまたは衛星を介した無線通信、または通信を提供する任意のクライアントサーバシステムを含む場合がある。こうした通信技術は、例えば、TCP/IP、UDP、またはOSI等の任意の適したプロトコルを使用することができる。
[00169]上述したように、命令のセットを、本発明の処理において使用することができる。命令のセットは、プログラムまたはソフトウェアの形態であってもよい。ソフトウェアは、例えば、システムソフトウェアまたはアプリケーションソフトウェアの形態であってもよい。ソフトウェアは、同様に、例えば、別個のプログラムの集合体、より大きいプログラム内のプログラムモジュール、またはプログラムモジュールの一部分の形態である場合がある。使用されるソフトウェアは、オブジェクト指向プログラミングの形態のモジュール式プログラミングを同様に含む場合がある。ソフトウェアは、処理されるデータをどうしたらよいかを処理機械に伝える。
[00170]さらに、本発明の実装および運用において使用される命令または命令のセットが、処理機械が命令を読取ることができるように適した形態であることが認識される。例えば、プログラムを形成する命令は、機械語またはオブジェクトコードに変換されて、1つまたは複数のプロセッサが命令を読取ることを可能にする、適したプログラミング言語の形態であることができる。すなわち、特定のプログラミング言語におけるプログラミングコードまたはソースコードの書かれたラインは、コンパイラー、アセンブラー、またはインタープリターを使用して機械語に変換される。機械語は、例えば、特定のタイプの処理機械、すなわち、特定のタイプのコンピュータに特有である2値符号化機械命令である。コンピュータは機械語を理解する。
[00171]任意の適したプログラミング言語を、本発明の種々の実施形態に従って使用することができる。例証的に、使用されるプログラミング言語は、例えば、アセンブリ言語、Ada、APL、Basic、C、C++、COBOL、dBase、Forth、Fortran、Java(登録商標)、Modula-2、Pascal、Prolog、REXX、Visual Basic、および/またはJavaScript(登録商標)を含むことができる。さらに、単一タイプの命令または単一プログラミング言語が本発明のシステムおよび方法の運用に関連して利用されることは必要でない。むしろ、任意の数の異なるプログラミング言語を、必要に応じておよび/または所望に応じて利用することができる。
[00172]同様に、本発明の実施において使用される命令および/またはデータは、所望されるように、任意の圧縮または暗号化技法またはアルゴリズムを利用することができる。暗号化モジュールは、データを暗号化するために使用される場合がある。さらに、ファイルまたは他のデータを、例えば、適した復号モジュールを使用して復号することができる。
[00173]上述したように、本発明を、例えば、少なくとも1つのメモリを含むコンピュータまたはコンピュータシステムを含む処理機械の形態で例証的に具現化することができる。例えば、コンピュータオペレーティングシステムが上述した運用を実施することを可能にする命令のセット、すなわちソフトウェアを、所望に応じて、いろいろな1つまたは複数の媒体のうちの任意の媒体上に含むことができることが認識される。さらに、命令のセットによって処理されるデータは、いろいろな1つまたは複数の媒体のうちの任意の媒体上に同様に含まれる場合がある。すなわち、本発明で使用される命令のセットおよび/またはデータを保持するために利用される処理機械内の特定の媒体、すなわちメモリは、例えば、種々の物理的形態または伝送媒体のうちの任意のものをとることができる。例証的に、媒体は、紙、透明紙、コンパクトディスク、DVD、集積回路、ハードディスク、フロッピーディスク、光ディスク、磁気テープ、RAM、ROM、PROM、EPROM、ワイヤ、ケーブル、ファイバ、通信チャネル、衛星伝送媒体、メモリカード、SIMカード、または他の遠隔伝送媒体、ならびに、本発明のプロセッサが読取ることができる任意の他のデータの媒体またはソースの形態であることができる。
[00174]さらに、本発明を実装する処理機械で使用される1つまたは複数のメモリは、メモリが所望に応じて命令、データ、または他の情報を保持することを可能にするいろいろな形態のうちの任意の形態であることができる。そのため、メモリは、データを保持するデータベースの形態であってもよい。データベースは、例えば、フラットファイル配置構成またはリレーショナルデータベース配置構成等の任意の所望のファイルの配置構成を使用する場合がある。
[00175]本発明のシステムおよび方法において、種々の「ユーザインターフェース(user interface)」を、本発明を実装するために使用される1つまたは複数の処理機械にユーザがインターフェースすることを可能にするために利用することができる。本明細書で使用するとき、ユーザインターフェースは、ユーザが処理機械と相互作用することを可能にする、処理機械によって使用される、任意のハードウェア、ソフトウェア、またはハードウェアとソフトウェアの組合せを含む。ユーザインターフェースは、例えば、ダイアログスクリーンの形態であってもよい。ユーザインターフェースは、マウス、タッチスクリーン、キーボード、キーパッド、音声リーダ、音声認識器、ダイアログスクリーン、メニューボックス、リスト、チェックボックス、トグルスイッチ、プッシュボタン、または、任意の他のデバイスであって、任意の他のデバイスが命令のセットを処理するおよび/または処理機械に情報を提供するときに、処理機械の運用に関する情報をユーザが受信することを可能にする、任意の他のデバイスのうちの任意のものを同様に含むことができる。したがって、ユーザインターフェースは、ユーザと処理機械との間の通信を提供する任意のデバイスである。ユーザインターフェースを通してユーザによって処理機械に提供される情報は、例えば、コマンド、データの選択、または何らかの他の入力の形態であってもよい。
[00176]上記で論じたように、ユーザインターフェースは、命令のセットを実施する処理機械によって利用され、それにより、処理機械はユーザのためにデータを処理する。ユーザインターフェースは、通常、ユーザと相互作用して、情報を伝達するまたはユーザから情報を受信するために処理機械によって使用される。しかしながら、本発明のシステムおよび方法の幾つかの実施形態によれば、人間ユーザが本発明の処理機械によって使用されるユーザインターフェースと実際に相互作用することが必要ないことが認識されるべきである。むしろ、本発明のユーザインターフェースが、人間ユーザではなく、別の処理機械と、相互作用する、すなわち情報を伝達し情報を受信する場合があることが同様に企図される。したがって、他の処理機械は、ユーザと特徴付けられる場合がある。さらに、本発明のシステムおよび方法で利用されるユーザインターフェースが、人間ユーザと部分的に同様に相互作用しながら、別の1つまたは複数の処理機械と部分的に相互作用することができることが企図される。
[00177]本発明が幅広い実用性および用途を受入れることが当業者によって容易に理解されるであろう。本明細書で述べた以外の本発明の多くの実施形態および適応形態ならびに多くの変形形態、修正形態、および等価形態は、本発明の実質または範囲から逸脱することなく、本発明および本発明の上記説明から明らかになるであろう、または、それによって合理的に示唆されるであろう。
[00178]したがって、本発明はその例示的な実施形態に関連してここで詳細に述べられたが、本開示が、本発明の例証かつ例示に過ぎず、本発明の実施可能な程度の開示を提供するために行われることが理解される。したがって、上記開示は、本発明を制限する、またはそうでなければ、任意の他のこうした実施形態、適応形態、変形形態、修正形態、または等価形態を排除すると解釈されることを意図されない。

Claims (20)

  1. ストリーミングデータを提示するためのシステムの少なくとも1つのコンピュータプロセッサによって実行される方法であって、前記システムは、ストリーミングデータソースから前記ストリーミングデータを受信するデータローダと、前記データローダから前記ストリーミングデータを受信するデータキャッシング層と、前記データキャッシング層と通信する前記少なくとも1つのコンピュータプロセッサを含むウェブサービス層とを備え、
    前記ウェブサービス層において、複数のパラメータを含むクエリをクライアントから受信するステップであって、前記ウェブサービス層はさらに
    エンタイトルメントサービスと、
    モニタリングサービスと、
    構成管理サービスと、を備え、
    前記構成管理サービスは、前記データローダについての構成データを提供し、前記構成データは接続すべき前記ストリーミングデータソースと、前記ストリーミングデータソースへの接続方法に関する1以上の情報を含み、
    前記モニタリングサービスは、前記ストリーミングデータソースのステータスをモニタリングし、前記ストリーミングデータソースが利用できなくなった場合に前記クライアントからの要求を再ルーティングし、
    前記エンタイトルメントサービスは、前記クエリに対応する前記ストリーミングデータへのアクセスを許可されていることを確認する、受信するステップと、
    前記データキャッシング層が、前記ストリーミングデータを融合するステップと、
    前記データキャッシング層が、前記融合されたデータを集約するステップと、
    前記データキャッシング層が、前記融合されたデータに対して前記クエリを同時に実行することによって、前記融合されたデータのスナップショットを生成するステップと、
    前記スナップショットを前記クライアントに出力するステップと
    を含む、方法。
  2. 前記パラメータは、証券および投資の少なくとも一方のための特定の記述子を含む、請求項1に記載の方法。
  3. 前記クエリは、株式、業界、関心領域うち少なくとも1つの識別情報を更に含む、請求項1に記載の方法。
  4. 前記ストリーミングデータは市場データを含む、請求項1に記載の方法。
  5. 前記ウェブサービス層は、所定の時間量だけ遅延される前記スナップショットを出力し、前記所定の時間量は、前記ストリーミングデータに関連する1つまたは複数のルールに基づく、請求項1に記載の方法。
  6. 記エンタイトルメントサービスが、前記クエリに応答して前記クライアントが情報にアクセスすることが承認されることを検証する、請求項1に記載の方法。
  7. 前記クライアントから受信される少なくとも1つのクライアントクレデンシャルに基づいて前記クライアントを認証するステップを更に含む、請求項1に記載の方法。
  8. 前記スナップショットは、或る時間の間、前記証券および前記投資の少なくとも一方について正確である、請求項2に記載の方法。
  9. 前記スナップショットは、或る時間の間、前記証券および前記投資の少なくとも一方について適切な状態を含む、請求項2に記載の方法。
  10. ストリーミングデータを提示するためのシステムであって、
    複数のストリーミングデータソースと、
    各ストリーミングデータソースのためのデータローダであって、前記ストリーミングデータソースから前記ストリーミングデータを受信する、データローダと、
    前記データローダから前記ストリーミングデータを受信するデータキャッシング層と、
    前記データキャッシング層と通信する少なくとも1つのコンピュータプロセッサを含むウェブサービス層とを含み、前記ウェブサービス層はさらに
    エンタイトルメントサービスと、
    モニタリングサービスと、
    構成管理サービス、を備え、
    前記ウェブサービス層は複数のパラメータを含むクエリをクライアントから受信
    前記データキャッシング層は前記ストリーミングデータを融合し、
    前記データキャッシング層は前記融合されたデータを集約し、
    前記データキャッシング層は、前記融合されたデータに対して前記クエリを同時に実行することによって、前記融合されたデータのスナップショットを生成し、
    前記スナップショットは前記クライアントに出力され
    前記構成管理サービスは、前記データローダについての構成データを提供し、前記構成データは接続すべき前記ストリーミングデータソースと、前記ストリーミングデータソースへの接続方法に関する1以上の情報を含み、
    前記モニタリングサービスは、前記ストリーミングデータソースのステータスをモニタリングし、前記ストリーミングデータソースが利用可能でなくなる場合に前記クライアントからの要求を再ルーティングし、
    前記エンタイトルメントサービスは、前記クライアントが前記クエリに対応する前記ストリーミングデータへのアクセス可能であることを確認する、システム。
  11. 前記パラメータは、証券および投資の少なくとも一方のための特定の記述子を含む、請求項10に記載のシステム。
  12. 前記クエリは、株式、業界、関心領域うち少なくとも1つの識別情報を更に含む、請求項10に記載のシステム。
  13. 前記ストリーミングデータは市場データを含む、請求項10に記載のシステム。
  14. 前記ウェブサービス層は、所定の時間量だけ遅延される前記スナップショットを出力する、請求項10に記載のシステム。
  15. 前記所定の時間量は、前記ストリーミングデータに関連する1つまたは複数のルールに基づく、請求項14に記載のシステム。
  16. 前記クエリは、クラウドアプリケーションおよびローカルアプリケーションの少なくとも一方から受信される、請求項10に記載のシステム。
  17. 前記システムのための前記エンタイトルメントサービスは、前記クエリに応答して前記クライアントが情報にアクセスすることが承認されることを検証する、請求項10に記載のシステム。
  18. 前記エンタイトルメントサービスは、前記クライアントから受信される少なくとも1つのクライアントクレデンシャルに基づいて前記クライアントを更に認証する、請求項17に記載のシステム。
  19. 前記スナップショットは、或る時間の間、前記証券および前記投資の少なくとも一方について正確である、請求項11に記載のシステム。
  20. 前記スナップショットは、或る時間の間、前記証券および前記投資の少なくとも一方について適切な状態を含む、請求項11に記載のシステム。
JP2019531996A 2016-12-14 2017-12-13 ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法 Active JP7048614B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US15/378,501 2016-12-14
US15/378,501 US10657137B2 (en) 2016-12-14 2016-12-14 Systems and methods for aggregating, filtering, and presenting streaming data
US201762534749P 2017-07-20 2017-07-20
US62/534,749 2017-07-20
PCT/US2017/066068 WO2018112023A1 (en) 2016-12-14 2017-12-13 Systems and methods for aggregating, filtering, and presenting streaming data

Publications (2)

Publication Number Publication Date
JP2020504867A JP2020504867A (ja) 2020-02-13
JP7048614B2 true JP7048614B2 (ja) 2022-04-05

Family

ID=62559201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019531996A Active JP7048614B2 (ja) 2016-12-14 2017-12-13 ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法

Country Status (5)

Country Link
EP (1) EP3555741A4 (ja)
JP (1) JP7048614B2 (ja)
CN (1) CN110249322B (ja)
AU (1) AU2017378245B2 (ja)
WO (1) WO2018112023A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11922437B2 (en) 2018-04-12 2024-03-05 Jpmorgan Chase Bank, N.A. System and method for implementing a market data hub
CN110187780B (zh) * 2019-06-10 2023-07-21 北京百度网讯科技有限公司 长文本预测方法、装置、设备和存储介质
WO2022125761A1 (en) * 2020-12-10 2022-06-16 Jpmorgan Chase Bank, N.A. System and method for cloud-first streaming and market data utility
US20220358499A1 (en) * 2021-05-07 2022-11-10 Jpmorgan Chase Bank, N.A. Method and system for autonomous portfolio platform management

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140351233A1 (en) 2013-05-24 2014-11-27 Software AG USA Inc. System and method for continuous analytics run against a combination of static and real-time data
JP2015008000A (ja) 2000-10-25 2015-01-15 トムソン・フィナンシャル・インコーポレイテッド 商業的な取引のために用いられるのに適合した方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697806B1 (en) * 2000-04-24 2004-02-24 Sprint Communications Company, L.P. Access network authorization
US20090292677A1 (en) * 2008-02-15 2009-11-26 Wordstream, Inc. Integrated web analytics and actionable workbench tools for search engine optimization and marketing
US9015812B2 (en) * 2012-05-22 2015-04-21 Hasso-Plattner-Institut Fur Softwaresystemtechnik Gmbh Transparent control of access invoking real-time analysis of the query history
US9870415B2 (en) * 2013-09-18 2018-01-16 Quintiles Ims Incorporated System and method for fast query response

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015008000A (ja) 2000-10-25 2015-01-15 トムソン・フィナンシャル・インコーポレイテッド 商業的な取引のために用いられるのに適合した方法
US20140351233A1 (en) 2013-05-24 2014-11-27 Software AG USA Inc. System and method for continuous analytics run against a combination of static and real-time data

Also Published As

Publication number Publication date
WO2018112023A1 (en) 2018-06-21
JP2020504867A (ja) 2020-02-13
CN110249322A (zh) 2019-09-17
AU2017378245A1 (en) 2019-07-11
EP3555741A4 (en) 2020-05-06
CN110249322B (zh) 2023-06-20
AU2017378245B2 (en) 2022-10-13
EP3555741A1 (en) 2019-10-23

Similar Documents

Publication Publication Date Title
US10482534B2 (en) Method and system for aggregating and managing data from disparate sources in consolidated storage
JP7048614B2 (ja) ストリーミングデータを集約し、フィルタリングし、提示するためのシステムおよび方法
US20180189887A1 (en) Cryptographic currency for financial data management, digital and digitalized cross-asset identification and unique digital asset identifier generation, asset valuation and financial risk management
US8301547B2 (en) Trading system
US20210272205A1 (en) System and method for manufacturing and trading securities and commodities
US20080262957A1 (en) Systems and methods for facilitating electronic securities transactions
US20210352142A1 (en) Reconciliation of data stored on permissioned database storage across independent computing nodes
US10891551B2 (en) Projecting data trends using customized modeling
US20190066214A1 (en) System for conducting and balancing a secure financial investment of a client and associated method
US20180211312A1 (en) Systems and Methods for Intraday Facility Monitoring
US11995160B2 (en) Graphical user interface and console management, modeling, and analysis system
US20190066215A1 (en) System for controlling data and issuing client reports on exchange traded products and associated method
US20220237673A1 (en) Systems and methods for securing and generating real-time product data streams to enable low-latency transactions
US8027907B2 (en) Fixed-income system for managing pre-trade activity
US10007950B2 (en) Integrating multiple trading platforms with a central trade processing system
TW202147227A (zh) 自動化進行抗操控指數化的系統與方法
US20190355064A1 (en) Systems and methods for dynamic construction and reporting of a shielded etf creation basket
Kumari et al. Reducing stock market settlement days using blockchain
US11922437B2 (en) System and method for implementing a market data hub
US20230153904A1 (en) Systems and processes for peer-to-peer financial instrument transactions
US20120323817A1 (en) Systems and Methods for Implementing a Separately Managed Account Platform
US10049409B1 (en) Linking data from multiple market participants to generate a consolidated audit trail
US20150317738A1 (en) Computerized method and system for secure communication, and method and system for matching customers with options for investment
KR20170001267A (ko) 상품 중개 방법, 중개 장치 및 중개 시스템

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220218

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: 20220302

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220324

R150 Certificate of patent or registration of utility model

Ref document number: 7048614

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150