(57)【要約】  本技術は、種々の親注文とそれに関連する子注文との関係を図示することができるグラフィカルユーザインタフェースを生成するためのシステムおよび方法に関する。本技術は、複数の注文データを構文解析し、構文解析結果をデータベースに格納する。ユーザインタフェースを生成する際、システムは、ユーザインタフェースに複数の個々の注文を表示することができると共に、各注文について、関連する「親」注文を示すことができる。ユーザインタフェースは、少なくともひとつ以上の親注文を選択することによって変更可能であり、そこでは、関連する子注文が強調されるであろう。【選択図】図６Ａ
2020522073.tif 000002
【特許請求の範囲】
【請求項１】
注文データを運ぶユーザインタフェースを生成するよう構成されたシステムであって、バックエンドサーバとクライアントデバイスとを備え、
前記バックエンドサーバは少なくともひとつのメモリと前記メモリに動作可能に結合された少なくともひとつのプロセッサとを有し、前記バックエンドサーバは、
ひとつ以上のレコードを含む注文データを受信することであって、各レコードが取引可能金融商品の注文に関連付けられている、受信することと、
前記注文データを構文解析することであって、前記構文解析することが：
前記ひとつ以上のレコードのうちの親フラグ要素を含む所与のレコードに基づいて、前記所与のレコードに対応する前記注文を親注文として特定することであって、前記親注文が注文識別子を有する、特定することと、
前記ひとつ以上のレコードのうちの前記親注文の前記注文識別子を示す親注文識別子要素を含む所与のレコードに基づいて、前記所与のレコードに対応する前記注文を、前記親注文の複数の子注文のうちのひとつの子注文として特定することと、を含む、構文解析することと、
前記複数の子注文および前記親注文を記述する情報を、前記メモリに保持される構造化データストアに格納することであって、前記構造化データストアが前記親注文の前記注文識別子に基づいて前記複数の子注文と前記親注文とをリンクさせる、格納することと、を含む動作を実行するよう構成され、
前記クライアントデバイスは少なくともひとつのメモリと少なくともひとつのプロセッサとを有し、前記クライアントデバイスは通信回路を使用して前記バックエンドサーバと通信するよう構成され、前記クライアントデバイスはさらに、
グラフを含むユーザインタフェースを生成することと、
複数の子注文オブジェクトを表示するための前記グラフ上の位置を決定することであって、前記複数の子注文オブジェクトのそれぞれが前記複数の子注文のうちの対応するひとつにおける活動に対応する、決定することと、
前記複数の子注文オブジェクトを表示するための前記決定された位置に基づいて、親注文オブジェクトを表示するための前記グラフ上の位置を決定することであって、前記親注文オブジェクトが前記親注文における活動に対応する、決定することと、
前記複数の子注文オブジェクトを表示するために決定された前記位置に前記複数の子注文オブジェクトがあり、前記親注文オブジェクトを表示するための前記決定された位置に前記親注文オブジェクトがある前記グラフを表示することと、を含む動作を実行するよう構成されるシステム。
【請求項２】
前記バックエンドサーバはさらに、
対応する親注文識別子に基づいて親注文に関連付けられている子注文を特定することによって、前記複数の子注文をフィルタリングすることと、
前記対応する親注文識別子を用いて子注文のリストを作ることと、前記集められたリストを用いて前記複数の子注文をフィルタリングすることと、を含む動作を実行するよう構成される請求項１に記載のシステム。
【請求項３】
前記複数の子注文の前記レコードのそれぞれは親注文識別子と注文識別子とを含み、前記特定された親注文の前記レコードは親注文識別子を含まない請求項１に記載のシステム。
【請求項４】
前記注文データ内の複数のレコードは同じ注文識別子を有する請求項１に記載のシステム。
【請求項５】
前記クライアントデバイスはさらに、
前記生成されたユーザインタフェースの一部として表示される第１親注文オブジェクトの選択を処理することと、
前記第１親注文オブジェクトの選択に応じて、前記選択された第１親注文オブジェクトに基づいて前記配された子注文オブジェクトをフィルタリングすることと、を含む動作を実行するよう構成される請求項１に記載のシステム。
【請求項６】
前記選択された親注文オブジェクトにリンクされていない子注文オブジェクトを前記ユーザインタフェースから取り除くことによって、前記子注文オブジェクトがフィルタリングされる請求項５に記載のシステム。
【請求項７】
前記クライアントデバイスはさらに、
前記親注文オブジェクトが選択されたとき、前記親注文および前記複数の子注文の詳細を含む重ねウインドウを前記ユーザインタフェースに表示することを含む動作を実行するよう構成される請求項１に記載のシステム。
【請求項８】
注文データを運ぶユーザインタフェースを生成するための方法であって、前記方法は、少なくともひとつのプロセッサとメモリとを有する情報処理システムにおいて、
サーバと通信することによって、ひとつ以上の取引可能金融商品に関連付けられているユーザインタフェースを生成するためのデータを受信することであって、前記受信されるデータが子注文データと親注文データとを含み、前記子注文データが複数の子注文についてのものであり、前記複数の子注文のそれぞれが前記親注文データ内で参照されている対応する親注文を参照する、受信することと、
前記情報処理システムに接続されているディスプレイデバイスでの表示のために、グラフを有する前記ユーザインタフェースを生成することであって、前記グラフの第１軸に沿って時刻が表され、前記グラフの第２軸に沿って値が表される、生成することと、
前記ひとつ以上の取引可能金融商品に関連付けられている前記複数の子注文の個々の子注文における活動をそれぞれが反映するひとつ以上の子注文オブジェクトの、前記グラフ上での位置を決定することと、
前記ひとつ以上の子注文オブジェクトの前記決定された位置に基づいてひとつ以上の親注文オブジェクトの、前記グラフ上での位置を決定することであって、前記ひとつ以上の親注文オブジェクトが前記親注文データ内に含まれる前記対応する親注文のうちのひとつに関連付けられている、決定することと、
前記子注文オブジェクトと前記親注文オブジェクトとがそれらに対応する決定された位置にあるようにして前記グラフを埋めることと、
前記ひとつ以上の子注文オブジェクトが第１フォーマットで表示され、前記ひとつ以上の親注文オブジェクトが前記第１フォーマットとは異なる第２フォーマットで表示される状態で、前記グラフを表示することと、を含む方法。
【請求項９】
親注文オブジェクトの選択を受信することと、
前記子注文オブジェクトをフィルタリングすることと、
前記フィルタリングに基づいて前記グラフの前記表示を更新することと、をさらに含む請求項８に記載の方法。
【請求項１０】
前記フィルタリングすることが、前記選択された親注文オブジェクトに関連付けられている子注文オブジェクト以外の子注文オブジェクトを表示から取り除くことを含む請求項９に記載の方法。
【請求項１１】
表示されている第１親注文オブジェクトを選択することと、
前記選択された第１親注文オブジェクトに関連付けられている前記親注文および前記子注文の詳細を含む重ねウインドウを表示することと、をさらに含む請求項８に記載の方法。
【請求項１２】
前記ひとつ以上の親注文オブジェクトの前記決定された位置が、前記第１軸に沿って前記ひとつ以上の子注文オブジェクトの上にある位置に設けられたタイムラインに沿っている請求項８に記載の方法。
【請求項１３】
前記第２フォーマットで表示される前記ひとつ以上の親注文オブジェクトが、前記ひとつ以上の親注文オブジェクトと前記ひとつ以上の子注文オブジェクトとを区別するための英数字を含む請求項８に記載の方法。
【請求項１４】
プロセッサと、
コンピュータ可読命令を保持するメモリと、を備えるサーバであって、
前記コンピュータ可読命令は、前記プロセッサによって実行された場合、前記サーバに、
取引可能金融商品のひとつ以上の注文を示す注文データを取得することと、
前記注文データを構文解析することによって、前記ひとつ以上の注文に関連付けられているひとつ以上の要素を抽出することと、
前記ひとつ以上の抽出された要素に含まれている情報に基づいて、前記注文データから、親注文である注文を特定することと、
前記ひとつ以上の抽出された要素に含まれている情報に基づいて、前記注文データから、注文を子注文として特定することと、
対応する子注文が、対応する親注文の識別子にマッチする親注文識別子を有することに基づいて、子注文と親注文とをリンクさせることと、
前記リンクされた子注文と親注文とを前記メモリに格納することと、を行わせるサーバ。
【請求項１５】
前記命令は、前記プロセッサによって実行された場合、前記サーバにさらに、
前記メモリ内の前記リンクされた子注文と親注文とにアクセスすることと、
前記リンクされた子注文と親注文とから可視化データを生成することと、ひとつ以上のクライアントデバイスに前記可視化データを送信することと、を行わせる請求項１４に記載のサーバ。
【請求項１６】
前記命令は、前記プロセッサによって実行された場合、前記サーバにさらに、
抽出された要素が親フラグを含むことを決定し、前記親フラグの包含に基づいて、前記抽出された要素に関連付けられている前記注文が親注文として特定されることを決定することと、
抽出された要素が親注文識別子を含むことを決定し、前記親注文識別子の包含に基づいて、前記抽出された要素に関連付けられている前記注文が子注文として特定されることを決定することと、を行わせ、
前記子注文が、前記親注文識別子に基づいて対応する親注文にリンクされる請求項１４に記載のサーバ。
【請求項１７】
前記可視化データ内のひとつ以上の子注文オブジェクトが、前記親注文識別子に基づいて前記可視化データからフィルタリングされるよう構成される請求項１５に記載のサーバ。
【請求項１８】
前記親注文識別子に基づいて親注文に関連付けられている子注文を特定し、前記親注文識別子を用いて子注文のリストを作り、前記集められたリストを用いて前記子注文オブジェクトをフィルタリングすることによって、前記子注文オブジェクトがフィルタリングされる請求項１７に記載のサーバ。
【請求項１９】
子注文に関連付けられている要素は親注文識別子および注文識別子の両方を含み、親注文に関連付けられている要素は注文識別子を含むが親注文識別子を含まない請求項１４に記載のサーバ。
【請求項２０】
前記注文データ内の複数のレコードは同じ注文識別子を有する請求項１４に記載のサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本願は、２０１７年６月２日に出願された米国特許仮出願第６２／５１４，４０９号および２０１８年５月３１日に出願された米国特許出願第１５／９９４，７３１号の優先権の利益を享受する。それら両方の出願の全内容は、参照により本明細書に組み入れられる。
技術分野
【０００２】
本明細書で説明する技術は、グラフィカルユーザインタフェースに関する。特に、本明細書で説明される技術は、親注文およびそれらの関連する子注文を示すオブジェクトを表示することができるユーザインタフェースを生成することに関する。
【背景技術】
【０００３】
グラフィカルユーザインタフェースを使用して、（金融市場などの）市場のデータを表示するための技術が利用可能である。例えば、そのような活動をグラフ上にプロットすることによって、（例えば、金融商品の）注文および／または取引を示す、ある種の視覚化が利用可能である。グラフ上の注文／取引の位置は、注文／取引の価値および注文／取引が入力／実行された時刻を示すことができる。
【０００４】
この分野における多くの進歩が長年にわたって達成されてきたが、この分野における新規で改良された技術、システム、およびプロセスが絶えず求められていることが理解されるのであろう。
【０００５】
著作権表示
【０００６】
本特許書類の開示の一部は著作権保護の対象となるものを含む。著作権者は、任意の者による本特許書類または本特許開示の特許商標庁にて現れる態様での複製について反対することはないが、そうでない場合は何であれ全ての著作権を留保する。
【発明の概要】
【０００７】
本明細書に記載の技術は、関連する子注文データと共に親注文データを視覚的に表示するグラフィカルユーザインタフェースを生成することができるシステムを提供することによって、従来技術における問題に部分的に対処する。例えば、本技術は、親注文を表すオブジェクトと子注文を表す追加のオブジェクトとを示すグラフを表示するグラフィカルユーザインタフェースに関する。
【０００８】
本技術は、複数の注文データを構文解析し、構文解析された注文データをデータベースに格納する。構文解析された注文データは、異なる親注文を１つまたは複数の関連する子注文にリンクさせるために使用することができる。このデータを使用して、本技術は、親注文データと子注文データとの間の関係を示すグラフィカルユーザインタフェースを生成することができる。
【０００９】
特に、グラフィカルユーザインタフェースを生成する際、システムは、ユーザインタフェースに複数の個々の「子」注文を（子注文オブジェクトとして）表示することができると共に、各注文について、関連する「親」注文を（親注文オブジェクトとして）示すことができる。親注文オブジェクトが選択されると、グラフィカルユーザインタフェースは、関連する子注文オブジェクトを強調表示するように更新する。この技術は例えば、電子取引システムにおいて、親注文と子注文との間の関連を視覚的に伝える方法で、注文データの効率的な表示を可能にする。
【００１０】
本概要は、発明の詳細な説明で以下にさらに説明される単純化された概念の選択を紹介するために提供される。本概要は、クレームに係る主題の主要な特徴または不可欠な特徴を識別することと、或いは、クレームに係る主題の範囲を限定するために用いられることとのいずれをも意図するものではなく、むしろ本概要は本書面で説明される主題の概観を提供することを意図するものである。したがって、上述した特徴は例示にすぎず、本明細書で説明される主題の他の特徴、態様、および利点は、後述する詳細な説明、図面、および請求項から明らかになるであろうということは理解されたい。
【図面の簡単な説明】
【００１１】
【図１Ａ】図１Ａおよび図１Ｂは、システムの非限定的な例示的なブロック図を示す。
【図１Ｂ】図１Ａおよび図１Ｂは、システムの非限定的な例示的なブロック図を示す。
【００１２】
【図２】システムを構成する異なるソフトウエアコンポーネントの非限定的な例示的ブロック図を示す。
【００１３】
【図３】異なるデバイス間の通信プロセスの非限定的な例を示す。
【００１４】
【図４】システム内のデバイス間で通信されるデータファイルの非限定的な例を示す。
【００１５】
【図５Ａ】図５Ａおよび５Ｂは、システムにおいて実行される処理の、非限定的な例示的なフローチャートを示す。
【図５Ｂ】図５Ａおよび５Ｂは、システムにおいて実行される処理の、非限定的な例示的なフローチャートを示す。
【００１６】
【図６Ａ】図６Ａおよび６Ｂは、表示のために生成されたユーザインタフェースの非限定的な例を示す。
【図６Ｂ】図６Ａおよび６Ｂは、表示のために生成されたユーザインタフェースの非限定的な例を示す。
【００１７】
【図７】少なくとも図２に示すシステムを構成するハードウエア構成要素の非限定的な例示的ブロック図を示す。
【発明を実施するための形態】
【００１８】
以下の記載では、説明を目的とし、限定を目的とせず、記載の技術の理解を提供するために、特定のノード、機能エンティティ、技術、プロトコル等の具体的な詳細が説明される。他の実施の形態を、以下の詳細説明から離れて実施できることは当業者には明らかであろう。他の例では、周知の方法、デバイス、技術等の詳細説明は、不必要な詳細説明で説明を曖昧にしないために省略されている。
【００１９】
各セクションの一般的な主題について読者を方向付けるためにのみ、この詳細な説明でセクションが使用される。以下で明らかになるように、多くの特徴の説明は複数のセクションにまたがっており、表題は任意のセクションに含まれる説明の意味に影響をあたえるものとして読まれるべきではない。
概要
【００２０】
本明細書で説明される技術は特に、注文処理システム（例えば、電子取引所）によって提出され、処理された注文に関連する情報を伝達するユーザインタフェースを生成するためのシステムに関する。一例では、電子取引システムは、異なるエンティティ（例えば、ブローカ、トレーダ）が証券を含む様々な金融商品で取引を行うことを可能にする。ブローカ、トレーダ、または他のエンティティによって取引が開始されると、買い手と売り手のマッチングおよび取引の完了を含むプロセス全体を電子的に実行することができる。これらの電子取引システムは取引日中に多数（例えば、数十万から数百万）の取引を実行することを可能にする。これらの取引の多くは、買い注文または売り注文が取引システムに入力されると、および／または入力されたビッド価格またはオファー価格が市場価格に一致すると、ほぼ瞬間的に（例えば、１秒の何分の１か）完了する。
【００２１】
非限定的な一例では、いくつかのエンティティがそれらの取引を実行するためにサードパーティを使用することができる。例えば、ヘッジファンドは、取引システムで非常に大きな注文をしたい場合がある。ヘッジファンドは注文全体を直接取引システムに提出するのではなく、注文を処理し、かつ／または注文をより小さい注文に分割するために使用する１つまたは複数のブローカを有することができる。
【００２２】
ブローカは注文を受け取ると、ヘッジファンドからの注文（すなわち、「親」注文）に由来する複数の個々の「子」注文を作成することができる。次いで、個々の「子」注文は取引所に提出され、そこで、それらは他の注文とマッチするか、または将来の処理のためにオーダブックに記憶される。
【００２３】
本明細書で説明される技術は、注文に関連する１つまたは複数の視覚化を提供するグラフィカルユーザインタフェース（単に「ユーザインタフェース」とも呼ばれる）を生成することができる。用語「注文オブジェクト」は、本明細書では注文のための何らかの活動（例えば、入力、修正、キャンセル、または実行／取引）を示す、グラフィカルユーザインタフェース内の視覚的アーチファクトまたは他のユーザインタフェース要素を指すために使用される。用語「親注文オブジェクト」は、本明細書では親注文のための何らかの活動に対応する注文オブジェクトを指すために使用され、用語「子注文オブジェクト」は、本明細書では子注文のための何らかの活動に対応する注文オブジェクトを指すために使用される。グラフィカルユーザインタフェースは、多くの親／子注文オブジェクトグループ（例えば、複数の親注文オブジェクトの各々が関連する複数の子注文オブジェクトを有する）を同時に（例えば、合わせて）表示することができる。グラフィカルユーザインタフェースは、関連する親／子注文の単一の集合の注文オブジェクト（例えば、１つの親注文オブジェクトおよびそれに関連する複数の子注文オブジェクト）を示すように構成されたフィルタリング機能を含むことができる。非限定的な一例では、ユーザは親注文オブジェクトを選択することができ、グラフィカルユーザインタフェースは例えば、グラフィカルユーザインタフェース内に他の子注文オブジェクトおよび／または親注文オブジェクトを一時的に表示しないことによって、その親のための対応する子注文オブジェクトを強調表示することができる。
【００２４】
図１Ａおよび図１Ｂは注文が（例えば、電子取引システムによって）処理され、注文／取引データが通信される例示的なシステムを示す。図２は親注文と子注文との間の関係を示すユーザインタフェースを生成するための例示的なシステムを示し、システムのソフトウエアアーキテクチャ態様が強調されている。図３は注文に関連するデータを取得し、次いで、親注文と子注文との間の関係を示すユーザインタフェースを作成するための、クライアントシステム、サーバシステム、および外部システム間の通信プロセスを示す。図４は図６Ａおよび図６Ｂに示されるユーザインタフェースに表されるデータを生成するために、図１Ｂおよび図２に示されるように、クライアントシステムによって送信され、次いでサーバシステムによって処理され得る、非限定的な例示的なデータファイルを示す。図５Ａおよび図５Ｂは注文データを含む（例えば、図４の）データファイルを処理し、ユーザインタフェースを生成するための非限定的な例示的なフローチャートを示す。図６Ａおよび図６Ｂは、親注文と子注文との間の関係を示すユーザインタフェースの非限定的な例を示す。図７は本明細書で説明される特徴が実装され得る例示的なシステムを示し、システムのハードウエア態様が強調されている。
【００２５】
本書の多くの箇所で、ソフトウエアモジュールとソフトウエアモジュールによって実行される動作について説明している。これは、説明を容易にするために行われ、ソフトウエアモジュールが任意の動作を実行することが本明細書で説明されるときはいつでも、その動作は実際にはソフトウエアモジュールを構成するインストラクションおよびデータに従って、基礎となるハードウエアコンポーネント（プロセッサおよびメモリ）によって実行されることを理解されたい。
図１Ａおよび図１Ｂの説明
【００２６】
図１Ａおよび図１Ｂは、注文データを処理するための非限定的な例示的なシステムを示す。図１Ａは、注文を親システム１００からクライアントシステム１１０に送信することができ、次いで、クライアントシステム１１０からの注文を取引システム２００に送信する、非限定的な例示的なシステムを示す。１つの非限定的な例では、取引システム２００は、異なるクライアントデバイスから注文データメッセージを受け入れ、次いで、取引システム２００内のマッチングエンジン２１１を使用して、注文データメッセージに含まれる注文をマッチングさせようと試みることができる。マッチングが見つかった場合、注文は処理され（例えば、取引され）、注文に関連する当事者は、注文が実行された確認メッセージを受信する。マッチングが見つからない場合、注文は（例えば、将来の注文との後のマッチングのために）取引システム２００内のオーダブック２１２メモリに記憶される。
【００２７】
図１Ａに示す例では、注文データが取引システム２００によって受信される前に、いくつかのシステム間で異なる注文を通信することができる。例えば、クライアントシステム（例えば、親システム１００および子システム１１０）はメッセージが取引システム２００に送信される前に、互いの間で注文メッセージを通信することができる。１つの非限定的な例では、親システム１００は、例えば、エンティティまたは個人が各種取引可能な金融商品を取引することを可能にする、ヘッジファンドなどのエンティティによって運営される１つまたは複数のコンピュータを含むことができる。各親システム１００は、自動的に（またはユーザ入力を介して手動で）親注文１０５を作成する注文生成器１０１を含むことができる。非限定的な一例では、親注文１０５は、親システム１００に関連付けられたエンティティの注文要求を実行するための情報を含む１つまたは複数の注文データメッセージを含むことができる。
【００２８】
子システム１１０は、追加の処理のために親注文１０５を受信することができる。１つの非限定的な例では、子システム１１０は親注文１０５をさらなる個々の注文に分割することができ、それらの個々の注文は、全体として、親注文１０５全体を構成する。同様に、子システム１１０は親注文１０５の一部のみを受信することができ、親システム１００は、複数の親注文１０５メッセージを様々な異なる子システム１１０に送信することができる。
【００２９】
子システム１１０は、取引システム２００に送信可能な注文データメッセージを生成するために使用される、それ自体の注文生成器１１１をさらに備えることができる。図１Ａに示す例では、子システム１１０は注文生成器１１１を使用して、親注文１０５を１つまたは複数の子注文１１５−１〜１１５−ｎに分割することができる。これらの子注文１１５−１〜１１５−ｎは、処理（および可能なマッチング）のために取引システム２００に個別に送信されるさらなる注文データメッセージを含む。システム１００、１１０、および２００は入力／出力デバイス、データトランシーバ（デジタル信号および／またはアナログ信号を送信するための）、１つまたは複数のプロセッサ（たとえば、ＣＰＵ）、１つまたは複数の記憶デバイス（たとえば、メモリ）、および／または１つまたは複数のオーディオ／ビジュアルコンポーネント（たとえば、サウンドインタフェース、ディスプレイ）を含む処理回路と同様に、様々な通信回路を使用することを理解されたい。このようなコンポーネントは、図７に関して強調され、議論される。
【００３０】
図１Ｂは、取引データが取引システムから子システムに通信され、取引ファイルが子システムと親システムとの間で通信され、次いで、データファイルが親システムとサーバシステム２２０（本明細書では「サーバ２２０」とも呼ばれる）との間で通信される、非限定的な例示的システムを示す。図１Ａに示される例を使用して、１つまたは複数の子注文１１５−１〜１１５−ｎが取引システム２００において（例えば、マッチングエンジン２１１を介して）マッチするとき、取引システム２００は、取引を子システム１１０に報告するデータを生成することができる。例えば、取引システム２００は、子注文が取引として実行された（すなわち、マッチした）ことを示す１つまたは複数の子取引１１６−１〜１１６−ｎを生成することができる。子取引１１６−１〜１１６−ｎは、１つまたは複数の子注文の取引に関連する異なる詳細を含む、取引システム２００と子システム１１０との間のデータメッセージとすることができる。例えば、データメッセージは、取引される金融商品のタイプ、取引される具体的な金融商品、金融商品の取引価格、金融商品の取引量、子注文および／または親注文に関連する識別子、および／または注文が親注文（または子注文）であるかどうかを示すフラグデータ、を示すデータ要素を含むことができる。これらのデータ要素は非限定的であり、本明細書で説明される技術は、データメッセージに含めることができる任意の組合せおよび／または数の異なるデータ要素を想定する。
【００３１】
子システム１１０は、子取引１１６−１〜１１６−ｎのなかのデータメッセージを受信して蓄積し、それを子システム１１０のメモリに保存することができる。非限定的な一例では、子システム１１０は子システム１１０のメモリに取引ファイル１１２としてデータメッセージを格納する。取引ファイル１１２は、子取引１１６−１〜１１６−ｎのデータメッセージで送信される特定の要素を含む１つまたは複数のデータファイルを含むことができる。非限定的な一例では、子システム１１０は、特定の要素を抽出するためにデータメッセージを構文解析することができ、そのような情報は取引ファイル１１２に格納することができる。
【００３２】
取引ファイル１１２に収集され記憶されたデータは、親システム１００に送信されてもよい。１つの非限定的な例では、取引ファイル１１２は所与の日（または任意の他の期間）の間、子システム１１０と共に親システム１００によってなされた注文に関連するすべての取引情報を含む「一晩の注文リスト」であってもよい。取引ファイル１１２は、親システム１００に送信される（または指定された期間に親システム１００によって「ピックアップ」される）フラットファイルであってもよい。１つの非限定的な例では、取引ファイル１１２は、例えば、図４に見られ、以下でさらに詳細に論じられるように、取引データに関連付けられた個々の要素を含む記録を有するカンマ区切りフラットファイルであってもよい。
【００３３】
親システム１００は取引ファイル１１２を受信し、それらをデータファイル１０２として親システム１００のメモリに保存することができる。１つの非限定的な例では、親システム１００は、取引ファイル１１２に提供されたのと同じ情報を使用することができ、またはデータファイル１０２として格納するときに取引ファイル１１２で受信された情報を修正することができる。例えば、親システム１００は、取引ファイル１１２に提示されたデータ要素を、親システム１００または別のシステム（例えば、サーバシステム２２０）によって格納され、後に処理可能なように、再フォーマットすることができる。データファイル１０２は親システム１００からサーバシステム２２０に送信されてもよく、サーバシステム２２０はデータを構文解析し、それをサーバシステム２２０のデータベース２２４に保存してもよい。データファイル１０２の内容、ならびにファイル１０２を構文解析し、構文解析されたデータをメモリに格納し、ユーザインタフェースを生成するためのプロセスは、以下の図２〜７に関してさらに詳細に説明される。サーバシステム２２０は、取引システム２００とは別個のシステムであってもよく、あるいは取引システム２００と同じであってもよいことを理解されたい。
図２の説明
【００３４】
図２は注文データを処理し、ユーザインタフェースを生成するためのフレームワークを実装することができる、システムの非限定的な例示的な図を示す。以下で説明するように、注文データを処理し、ユーザインタフェースを生成するためのフレームワークを実装する１つまたは複数のアプリケーションをシステム内に配備することができ、図２に示すシステム内の様々なコンポーネント（クライアントシステム１００、サーバシステム２２０、および／または外部システム１２０など）は、配備されたアプリケーションに関連する様々な機能を実行することができる。１つの非限定的な例では、外部システム１２０は例えば、詐欺行為または不正行為を発見するために、市場データを監視するための監視システムを構成することができる。
【００３５】
以下で説明するように、図２は外部システム１２０、サーバシステム２２０、およびクライアントシステム１００で実行されるソフトウエアモジュール（ソフトウエアモジュール１２４など）を示す。図２に示されるソフトウエアモジュールは、ハードウエアコンポーネント（プロセッサおよびメモリなど）に格納され、そのようなハードウエアコンポーネントによって実行されることを理解されたい；これらのソフトウエアモジュールを実行するために使用され得る例示的なハードウエアコンポーネントに関する詳細は図７を参照して以下で、ならびに本明細書の他の場所で提供される。
【００３６】
１つまたは複数のクライアントシステム１００は、システム１００によって生成された注文に関連するデータを含むデータファイル１０２を生成するように構成されてもよい。データファイル１０２は、サーバシステム２２０による処理のためにフォーマットされた電子データメッセージおよび／またはデータファイルとすることができる。例えば、データファイル１０２は、システム２２０によって処理されるデータエントリに関連付けられた異なるタグを有するＸＭＬファイルの形態とすることができる。別の例示的な実施の形態では、データファイル１０２は、異なるフィールドを示すデリミタによって分離された異なるエントリを有するフラットファイルとすることができる。一例では、区切り文字がカンマ（例えば、カンマ区切りファイル）とすることができる。この例は非限定的であり、本明細書で説明する技術は、データファイル１０２内のデータ要素を分離するための任意のタイプのデリミタを想定している。データファイル１０２を構成する要素は例えば、図４に示され、以下に詳細に説明される。
【００３７】
クライアントシステム１００は、サーバシステム２２０と直接的または間接的に対話する任意のクライアントシステムとすることができることを理解されたい。図１Ａの例を使用すると、クライアントシステム１００は、親システム１００、子システム１１０、またはサーバシステム２２０と直接的または間接的に通信する任意の他のクライアントシステムとすることができる。一例では、クライアントシステム１００は、ヘッジファンドに関連付けられたクライアントシステムとすることができ、クライアントシステム１００によって生成されたデータファイル１０２はその日（または任意の期間）のヘッジファンドのすべての取引詳細を提供する「エンド・オブ・デイ（ｅｎｄ−ｏｆ−ｄａｙ）」取引ファイルとすることができる。
【００３８】
サーバシステム２２０は（例えば、ネットワーク１３０を介して）クライアントシステム１００および外部システム１２０と通信するように構成される。ネットワーク１３０がインターネットなどの相互に接続された計算デバイスのネットワークを含みうることは理解されるべきである。ネットワーク１３０はローカルエリアネットワーク（ＬＡＮ）を含んでもよく、またはシステム内の異なるデバイス間のピアツーピア接続を含んでもよい。サーバシステム２２０は、データベースサーバ、ファイルサーバ、ウェブサーバ、アプリケーションサーバ、サーバクラスタ（例えば、クラウドベースのコンピューティング環境）、スタンドアロンサーバ、および／またはサーバベースの機能を有する任意の他のポータブルまたは固定コンピューティングデバイスを含むが、これらに限定されない任意の様々なサーバデバイスを備えることができる。サーバシステム２２０は別個に配置されたハードウエア（例えば、リモートハードウエア）を使用して実装することができ、または同じハードウエアを使用して（例えば、単一の収容されたサーバデバイス内で）実装することができることを理解されたい。
【００３９】
サーバシステム２２０は、ネットワーク１３０を介してクライアントシステム１００からデータファイル１０２を受信することができる。データファイル１０２を受信すると、サーバシステム２２０の構文解析モジュール２２１は、データファイル１０２内の異なる要素を構文解析するように構成される。一例では、データファイル１０２は、１つまたは複数のカンマが各データエントリ内のデータ要素を分離するカンマ分離データファイルであってもよい。構文解析モジュール２２１はそれぞれの区切り文字（例えば、カンマ）を検索し、次いで、格納のために、ファイルから個々のデータ要素を抽出するように構成される。
【００４０】
ファイルが構文解析されると、サーバシステム２２０は、構文解析されたデータをデータベース２２４に格納することができる。データベース２２４はリレーショナルデータベース管理システム（ＲＤＢＭＳ）、オブジェクト指向データベース管理システム（ＯＯＤＢＭＳ）、オブジェクトリレーショナルデータベース管理システム（ＯＲＤＢＭＳ）、非限定的構造化クエリ言語（ＮｏＳＱＬ）データストア、オブジェクトキャッシュ、分散ファイルシステム、データクラスタ（Ｈａｄｏｏｐなどの技術に基づく）、および／または任意の他の適切なタイプのデータストレージシステムのうちの１つまたは複数とすることができ、またはそれらを含むことができる。
【００４１】
サーバシステム２２０は、例えば、サーバシステム２２０上で実行されるアプリケーションのためのサーバ側（または「バックエンド」）命令を実行することができるアプリケーションサーバ２２３をさらに含んでもよい。非限定的な一例では、アプリケーションサーバ２２３は、外部システム１２０に接続されたディスプレイ上に表示可能なユーザインタフェースに関連するデータを生成することができる。サーバシステム２２０は、特に表示のためのユーザインタフェースを生成するときに、外部システム１２０に送信されるデータをフィルタリングするように構成されたフィルタリングモジュール２２２を含むこともできる。一例では、フィルタリングモジュール２２２は、親注文に関連する注文データのみが外部システム１２０に送信されるように、注文データをフィルタリングするように構成されてもよい。
【００４２】
外部システム１２０は、システム内に展開されたアプリケーションに関連する処理を実行するためのソフトウエアコンポーネントを含むことができる。非限定的な例として、外部システム１２０は、少なくとも、描画モジュール１２２とネットワーキングモジュール１２３とソフトウエアモジュール１２４とからなるクライアントアプリケーション１２１を有してもよい。もちろん、これらのモジュールは非限定的な例であり、アプリケーション１２１は、図２に示されるものよりもいくつか多くのモジュールおよび／または異なるモジュールを備えることができる。外部システム１２０は、パーソナルコンピュータ（例えば、デスクトップコンピュータ、ラップトップコンピュータ）、シンクライアント、ハイブリッドクライアント、リッチクライアント、ゲームコンソール、タブレット、携帯情報端末（ＰＤＡ）、スマートフォン、ウェブインタフェース機能を有するデジタル音楽プレーヤ、および／または任意の他の携帯型または固定型コンピューティングデバイスを含むが、これらに限定されない、任意の様々なクライアントベースのデバイスを備えてもよい。
【００４３】
外部システム１２０内のレンダリングモジュール１２２は、ユーザインタフェースのグラフィカル表示およびレンダリングのための機能を実装することができる。例えば、それは、クライアントアプリケーション１２１によって処理されたグラフィカルイメージを表すイメージクラスに対応するグラフィカルデータを生成することができる。このグラフィカルデータは、潜在的には外部システム１２０のオペレーティングシステムによるさらなる変更／変換の後に、システム１２０のディスプレイに表示されてもよい。代替的にまたは追加的に、外部システム１２０がイメージデータを描画する／表示すると本明細書で記載されたときはいつでも、描画／表示モジュール１２２がイメージデータの描画／表示に関する機能を実行してもよい。
【００４４】
ネットワーキングモジュール１２３は、１つまたは複数のネットワーキング／通信プロトコルを実装することができ、外部システム１２０と、少なくともサーバシステム２２０との間の様々なデータメッセージを処理するために使用することができる。非限定的な一例では、ネットワーキングモジュール１２３はソフトウエア接続クラスを使用してデバイス間のソケット接続を開始することによって、ソケット接続を実行することができる。ソケットが接続されると、ネットワーキングモジュール１２３は、サーバシステム２２０との間でデータを転送することができる。
【００４５】
ソフトウエアモジュール１２４はクライアントアプリケーション１２１にロードされた様々なコードを実行し、ソフトウエアに関連する他の機能を実行するために使用することができる。ソフトウエアモジュール１２４は例えば、Ｊａｖａ（登録商標）ランタイムエンジン、またはＪａｖａ（登録商標）プログラミング言語を使用して開発されたコンピュータ命令を実行することができる任意の他のタイプのソフトウエアモジュールとすることができる。この例もちろん非限定的であり、ソフトウエアモジュール１２４は、Ｃ、Ｃ＋＋、Ｃ＃、Ｐｙｔｈｏｎ、ＪａｖａＳｃｒｉｐｔ、またはＰＨＰを含むがこれらに限定されない任意の様々なプログラミング言語を使用して開発されたコンピュータ命令を実行することができる。代替的にまたは追加的に、外部システム１２０がソフトウエアに関する機能を実行すると本明細書で記載されたときはいつでも、そのような機能がソフトウエアモジュール１２４によって取り扱われてもよい。
【００４６】
図２に示される構成要素は、単一のシステム内に実装することができることを理解されたい。構成要素は複数のシステムおよび／または分散コンピューティング環境（例えば、クラウドコンピューティング環境）に組み込むこともできる。したがって、システムは、単一の構成要素に限定されず、複数の構成要素に組み込むことができる。
図３の説明
【００４７】
図３は、システム内のデバイス間の通信プロセスの非限定的な例を示す。通信プロセスは、少なくとも１つのクライアントシステム１００と、サーバシステム２２０と、外部システム１２０との間の例示的な通信を示す。この通信プロセスは例えば、ネットワーク１３０を使用して実行することができることを理解されたい。非限定的な一例では、図３に示すプロセスは、親システム１００（図１Ａおよび図１Ｂに示す）が子システム１１０から取引ファイル１１２を受信した後に開始する。
【００４８】
図３に示す例では、通信プロセスは、動作３０１で、クライアントシステム１００がメモリストレージにアクセスしてデータファイル１０２を取り出すときに開始する。例えば、クライアント１００は、クライアント１００に関連するメモリストレージに予め記憶されたフラットファイルを有することができる。あるいは、クライアント１００は、送信のためにデータファイル１０２を準備するために、データファイル１０２に必要な要素のすべてをアセンブルするクエリを実行することができる。一例では、データファイル１０２は所与の日にクライアント１００に関連付けられた１つまたは複数のエンティティについて行われたすべての取引活動を表す。データファイル１０２は上記のデータファイル１０２に関して説明したように、エンド・オブ・デイ取引ファイルとすることができる。
【００４９】
データファイル１０２の送信の準備が整うと、クライアント１００は、動作３０２で、データファイル１０２をサーバ２２０に送信することができる。一例では、クライアント１００がサーバ２２０とのネットワーク接続を確立し、データファイル１０２をサーバ２２０に能動的に送信することができる。別の非限定的な例では、クライアント１００は、データファイル１０２を取り出し、次いで、取り出しのためにサーバ２２０によってアクセス可能なファイル記憶位置にデータファイル１０２を配置することができる。すなわち、クライアント１００はデータファイル１０２を、サーバ２２０によってアクセス可能な「フォルダ」に入れることができ、サーバ２２０は、一旦利用可能になると（またはデータファイル１０２が利用可能になった後のいつでも）データファイル１０２を取得する。クライアント１００とサーバ２２０との間で実行されるステップは非限定的であり、本技術は、データファイル１０２をサーバ２２０に送信することができる様々な方法を想定していることを理解されたい。例えば、サーバ２２０は、クライアントシステム１００にデータファイル１０２を能動的に要求することができる。
【００５０】
クライアントシステム１００はまた、サーバ２２０によるピックアップのためにデータファイル１０２を準備し、サーバ２２０のための一時的な「ピックアップ」領域として働くメモリ位置にデータファイル１０２を保存するようにプログラムすることもできる。サーバ２２０は、データファイル１０２が利用可能になった後のある時点で、ファイルの「ピックアップ」領域として働くメモリ位置にアクセスすることによって、クライアント１００からデータファイル１０２を取得することができる。上述の例は単一のデータファイル１０２に言及しているが、クライアント１００およびサーバ２２０は互いに複数のデータファイル１０２を通信することができることを理解されたい。さらに、クライアント１００およびサーバ２２０はデータファイル１０２を転送する代わりに、（例えば、クライアント１００とサーバ２２０との間のリアルタイム通信セッション中に）データファイル１０２内に含まれる個々のデータを通信することができることを理解されたい。
【００５１】
データファイル１０２を受信すると、サーバ２２０は、動作３０３で、クライアント１００にリターンメッセージを送信することによって、データファイル１０２の受信を確認することができる。非限定的な一例では、サーバ２２０は、データファイル１０２がサーバ２２０によって正常に受信されたことを示す受信確認メッセージを送信することができ、またはデータファイル１０２の転送が失敗したことを示すメッセージを発行することができる。さらに別の非限定的な例では、サーバ２２０は、データファイル１０２を分析して、データファイル１０２が任意のデータを含み、かつ／または適切にフォーマットされているかどうかを判定することができる。データファイル１０２がデータを含まず、かつ／または不適切にフォーマットされている場合、サーバ２２０はデータファイル１０２の受信を拒否し、データファイル１０２の受信に伴う問題の表示を提供するメッセージをクライアント１００に送信することができる。あるいはサーバ２２０は、データファイル１０２を記憶するが、データファイル１０２に関する問題を示すメッセージをクライアント１００に発行し続けることができる。
【００５２】
動作３０４で、サーバ２２０は、格納および処理のために個々の要素を抽出するために、データファイル１０２の要素を構文解析することができる。一例では、データファイル１０２は、サーバ２２０がデータファイル１０２から個々の要素を識別し、構文解析することができるカンマ区切りファイルである。例えば、データファイル１０２は、取引されている証券のタイプ、価格、および証券の量を識別することができる。これらの個々の要素のそれぞれ（例えば、証券のタイプ、価格、量）は、データファイル１０２内のカンマ（または他の何らかのタイプのデリミタ）によって分離されてもよく、サーバ２２０は互いから分離されているものとして識別することができ、データファイル１０２の各「レコード」を伴う要素の所定の位置に基づいて、要素を取得し、それらをメモリに保存する。例えば、データファイル１０２内の各レコードエントリの構文解析に成功すると、サーバ２２０は、サーバ２２０のデータベースメモリの１つまたは複数のテーブルの関連する部分に関連する要素を格納することができる。例えば、サーバはその親注文のための注文識別子を（例えば、テーブル内の列として）含む親注文の第１レコードを作成することができる。このレコードは、この注文が親注文であることを示すフラグまたは他のデータを含むことができる。サーバは注文識別子を含む子注文のレコードを（例えば、親注文が格納されるのと同じまたは異なるテーブル内の同じまたは異なる列内に）作成することもできる。テーブルに格納される子注文の各レコードは、親注文の注文識別子を参照する親注文識別子（例えば、テーブル内で注文識別子とは別個の列である）を含むこともできる。したがって、親注文の子注文は、子注文の親注文識別子の値が親注文の注文識別子と同じであることによってリンクされ得る。この構文解析がいくつかの実施の形態においてどのように実行され得るかに関するさらなる詳細は図４および図５Ａに関して以下に提供される（動作５０５に関するものを含むがそれに限定されない）。
【００５３】
動作３０５で、外部システム１２０は、システム１２０に動作可能に結合されたディスプレイデバイス上に表示するためのユーザインタフェースをロードすることができる。例えば、システム１２０は、サーバ２２０を介して取引を行った異なるエンティティに関連する１つまたは複数の注文／取引に関する情報を表示するためのユーザインタフェースを生成することができるアプリケーションをロードすることができる。そうする際に、外部システム１２０は、動作３０６で、ユーザインタフェースを埋めるおよび／または描画するためのデータを要求することができる。例えば、ユーザインタフェースは、１つの軸に沿って取引の時刻を表し、かつ別の軸に沿って取引の値を表すグラフに沿って、サーバ２２０によってマッチングされた取引を表す異なるオブジェクトを示すデータを表示してもよい。
【００５４】
これらの要素でディスプレイを埋めるために必要なデータは、動作３０７でサーバ２２０によって生成されてもよい。１つの非限定的な例では、システム１２０は、１つまたは複数のエンティティ（例えば、ブローカ、個人、ヘッジファンド）について、所与の日（または任意の他の期間）に発生したすべての取引に関するデータを要求することができる。次いで、サーバ２２０はデータベースにアクセスして、システム１２０からクエリで要求された関連情報を取得し、次いで、動作３０８で、そのようなデータをシステム１２０に送信することができる。１つの例示的な実施の形態では、サーバ２２０は、関連する「親」注文を有する取引に関連するデータ要素のみを送信することができる。この例示的な実施の形態では、サーバ２２０は、メモリに記憶された各個々の取引を検索するのではなく、取引が別の、おそらくはより大きなボリュームの「親」注文に関与していることを示す関連する「親」フラグを有する取引のみをクエリすることができる。したがって、サーバ２２０はメモリ内で検索されるデータの量を低減し、システム１２０に送信されるデータの量をさらに低減し、それによって、デバイス間の全体的な通信待ち時間を低減する。
【００５５】
動作３０９で、外部システム１２０は、動作３０８でサーバ２２０から受信したデータを使用して、表示されているユーザインタフェースを生成／更新することができる。非限定的な一例では、システム１２０は、サーバ２２０によって実行される個々の取引を表す個々の要素と、個々の「子」取引のうちの１つまたは複数に関連付けられた（おそらくはより大量の）「親」注文を表す追加の要素とをプロットすることができるグラフを埋めることができる。要素は、表示／プロットされた位置が例えば、注文の時刻および／または注文の値を表すようにプロットおよび表示されてもよい。ユーザインタフェースのこのような例は図６Ａおよび図６Ｂに関して見ることができ、以下でさらに詳細に論じる。
【００５６】
動作３１０で、外部システム１２０は、ユーザインタフェースに関連する追加の表示を更新および／またはさらに生成する際に、データの後続の要求を（自動的にまたはユーザ操作を介して）行うことができる。動作３０１〜３１０は図３では一度発生するものとして示されているが、これらの動作３０１〜３１０は様々な実施の形態では複数回繰り返されてもよい。
図４の説明
【００５７】
図４は、少なくともクライアント１００とサーバ２２０との間で通信される非限定的な例示的なデータファイル１０２を示す。図４に示す例では、データファイル１０２は、レコード内の個々の要素がデリミタ（例えば、カンマ）によって分離されている様々なデータ「レコード」を含む。この例はもちろん非限定的であり、本明細書に記載の技術は、コロン、セミコロン、および／またはタブデリミタを含むがこれらに限定されない、データ要素を分離するために使用することができる任意の様々なデリミタを想定するものであり、かつ／または本明細書に記載の技術は、他の（非デリミテッド）ファイルタイプを使用する。さらに、例示的な「レコード」および「要素」が本明細書で説明される（図４の以下の説明を含むが、これらに限定されない）が、そのような「レコード」および「要素」は様々な実施の形態では任意のタイプの適切なデータ構造（複数可）であってもよいことを理解されたい。
【００５８】
図４に示す例では、データファイル１０２内のレコードは、取引システム２００を介して取引／交換される１つまたは複数の取引可能な金融商品（例えば、証券）に関連してもよい。したがって、各レコードは、特定の注文に関して発生した活動に関連する異なる情報に関連付けられた個々のデータ要素を含むことができる。例えば、レコードは、注文が取引システム２００によって処理／実行された時刻を示す時刻要素４０１を含むことができる。この例では、データファイル１０２に含まれるレコードは、各個々のデータファイル１０２がそれ自体日付に関連付けられ得るので、注文の特定の日付を含まなくてもよい。例えば、データファイル１０２はクライアント１００と関連付けて処理された１つ以上の注文（例えば、所定の日の注文）に関連付けられたエンドオブデイファイルに対応することができる。したがって、時刻要素４０１に関連するすべてのデータ要素は、データファイル１０２の特定の日付に自動的に関連付けられる。もちろん、この例は非限定的であり、本明細書で説明される技術は、各レコードが、特定の日付に関連する情報（または特定の日付を識別する各レコード内の別の要素）をさらに含むことを想定する。
【００５９】
各レコードは、注文活動タイプ４０２およびトランザクション識別子（ＩＤ）４０３を含むことができる。１つの非限定的な例では、注文活動タイプ４０２は、レコードが対応する注文に関して発生した活動のタイプ（例えば、エントリ、修正、または実行／取引）を識別することができる。例えば、図４に示すように、「ＥＮＴＥＲ」の注文活動タイプ４０２は、レコードが注文の最初のエントリに対応することを示してもよく、「ＡＭＥＮＤ」および「ＴＲＡＤＥ」活動タイプはそれぞれ、レコードが、注文が修正された場合または注文が取引として実行された場合に対応することを示す。これらの値はもちろん非限定的であり、本技術は、注文活動タイプ４０２の要素として表すことができる様々な値を想定している。さらに、レコードは、トランザクションＩＤ４０３を識別する特定の数値識別子を有することができる。図４に示される例では、各レコードは、各トランザクションのシーケンスを示す方法でソートされる（すなわち、ｔｒａｎｓｌｄ＝２が最初にリストされ、ｔｒａｎｓｌｄ＝３が２番目にリストされ、ｔｒａｎｓｌｄ＝４が３番目にリストされるなど）。
【００６０】
上述のように、各レコードは、取引システム２００を介して取引可能な異なる金融商品に関連付けられてもよい。図４に示す例では、各レコードは、１つまたは複数の証券の取引に関する情報を含む。例えば、証券識別子４０４は、特定のタイプの証券を識別することができ、価格要素４０５およびボリューム要素４０６は、注文に関連する価格および数量に関する情報を伝達することができる。図４に示す第１レコードでは、証券４０４は「ＴＲＡＡＳＥＬＳ９１Ｈ２−ＴＲＹ」として識別され、注文は価格４０５の値が「１００」であり、ボリューム４０６の値が「２００００」であった。
【００６１】
各レコードはまた、レコード内に表される注文のタイプおよび／またはステータスに関連する異なるフラグを示す識別情報を含むフラグ要素４０７を有することができる。特定の例示的なフラグ要素は、売り注文（ＳＯ）、市場注文（ＭＯ）、および非アクティブ注文（ＩＡ）のフラグをそれぞれ示すフラグ「ｓｅ」、「ＭＯ」、および「ＩＡ」を含むことができる。
【００６２】
データファイル１０２に表された注文について、注文の幾つかは、親注文に関連する子注文である。所与のレコードが親注文のものである場合、そのレコードのフラグ要素４０７は、そのレコード内で表される注文が親注文であることを示す親フラグ４０８を含むことができる。例えば、親フラグ４０８は、文字「ＰＡＲ」がフラグ要素４０７に関連して存在するときに特定されてもよい。図４に示す例では、レコード（１）は親注文用であり（親フラグ４０８を含むので）、レコード（２）〜（６）は親注文用ではない。レコード内に親フラグ４０８が存在しない場合、注文が子注文に関連付けられていることを理解することができる。言い換えれば、システムは、対応するレコード内の親フラグの存在に基づいて、注文を親注文として分類または識別するようにプログラムされてもよい。子注文は、レコードが親フラグを含まないという決定に基づいて識別または分類され得る。いくつかの例では、子注文の識別または分類は、親注文識別子がレコード内に存在する（したがって、対応する注文が親注文を有することを示す）という判定に基づくことができる。
【００６３】
各注文は、注文識別子４１１に基づいて識別することができる。図４に示す第１レコードの例では、注文識別子４１１が注文の識別値を示す値「１２３４５６７８９」を含む。同じ注文が複数のレコードで表される場合、注文の識別子４１１は、それらのレコード内の注文識別子として含まれる。図４の例では、少なくともレコード（２）および（４）は注文識別子４１１「０＝１２１２１２１２１２１」を有する同じ注文に関連する。この例では、レコード（２）は注文がエンターされたときに関連付けられ（注文活動タイプ４０２「ＥＮＴＥＲ」によって識別される）、レコード（４）は注文が実行／取引されていることに関連付けられる（注文活動タイプ４０２「ＴＲＡＤＥ」によって識別される）。
【００６４】
データファイル１０２において、子注文のレコードは、関連する親注文識別子の識別子を示す別個のフィールドを含むことができる。すなわち、レコードが親フラグ４０８を含まない場合、レコードは子注文に対応することができ、子注文に関連する親注文の注文識別子を含む別のフィールドを含むことができる。例えば、レコードは値「Ｐ＝」を有する親注文識別子４１２フィールドを含むことができ、等号に続く要素は、親注文の注文識別子を含むことができる。図４に示される例では、レコード（２）〜（６）は、注文識別子４１１の値が「０＝１２３４５６７８９」（レコード（１）に詳細に示される）である親注文に関連する子注文に対応し、図４に見られるように、レコード（２）〜（６）の各々は、値「Ｐ＝  １２３４５６７８９」を有する親注文識別子（レコード（２）の場合、親注文識別子フィールド４１２に含まれる親注文識別子）を含む。したがって、レコード（２）〜（６）は（親フラグ４０８が省略されることによって）親注文に対応せず、代わりに子注文に対応し、さらに、これらの子注文が関連付けられる親注文が親注文識別子４１２を有することを理解することができる。これらの子注文はそれ自体の注文識別子を使用して（すなわち、等号に続く値が子注文識別子に対応する場合の「Ｏ＝」として）依然として識別可能であることを理解されたい。図４  に示す例では、レコード（２）  と（４）  は１つの子注文（すなわち、「Ｏ＝１２１２１２１２１２１」）  に属しているが、レコード（３）、（５）、（６）  は別の子注文（すなわち、「０＝４５４５４５４５４５４」）  に関連している。これらの例は非限定的であり、本明細書に記載される技術は、異なる親および子注文を識別するための様々な方法を想定する。
【００６５】
データファイル１０２に表される注文は、１つまたは複数の当事者／エンティティに関連付けることができる。例えば、各注文は注文を開始するブローカ、注文を実行することをブローカに要求するエンティティ（例えば、個人、ヘッジファンド、会社）、取引を行う取引所のタイプ、および／または注文のポストマッチングを清算する特定のクリアリングハウスに関連付けられてもよい。図４に示す例では、ハウス識別子４０９は、注文に関連付けられた特定のハウス（例えば、クリアリングハウス）を識別することができる。各レコードは例えば、トレーダ識別子４１０を使用して、注文に関連する特定のトレーダ（または他の当事者）を識別することもできる。この例で説明されるデータ要素は非限定的であり、本明細書で説明される技術は、各データレコードに関連するさらなる情報を提供する任意の様々な追加のデータ要素を想定することを理解されたい。
図５Ａおよび図５Ｂの説明
【００６６】
図５Ａおよび５Ｂは表示用のユーザインタフェースの情報を取得し、ユーザインタフェースを描画するための、システム内のコンポーネントによって実行される非限定的な例示的な方法を示す。図５Ａは具体的には例えば、クライアント１００から受信したデータファイル１０２を処理するためにサーバ２２０によって実行することができるプロセスを示す。
【００６７】
動作５０１で、サーバ２２０は１つまたは複数の注文に関連付けられた情報を含むデータファイル１０２をクライアント１００から取得／受信することができ、いくつかの実施の形態ではデータファイル１０２が図４に示すような情報を含むことができる。データファイル１０２はコンマで区切られたフラットファイルまたは他のタイプのファイルとすることができ、データファイル１０２は様々な方法を使用してサーバ２２０に送信することができる。例えば、コンマで区切られたフラットファイルの代わりに、データファイル１０２は、ＸＭＬファイル内の異なる「タグ」によって識別される個々の取引に関連する異なる要素を有するＸＭＬファイルであってもよい。サーバ２２０は「タグ」識別子に基づいて個々の要素を識別し、次いで、「タグ」識別子に続く各要素に関連する情報を抽出することができる。
【００６８】
動作５０２において、サーバ２２０はデータファイル１０２をロードし、前処理することができる。１つの非限定的な例では、サーバ２２０は、データファイル１０２が処理の準備ができていることを保証するために、データファイル１０２をロードし、分析することができる。例えば、サーバ２２０はデータファイル１０２が図４に関して説明したレコードを有するコンテンツを含むことを確認することができる。サーバ２２０はデータファイル１０２のフォーマットが前処理に適切であるかどうかを判定することもできる。例えば、サーバ２２０はデータファイル１０２がカンマで区切られたデータファイルであり、レコード内の個々の要素がカンマで区切られていることを確認することができる。
【００６９】
動作５０３において、サーバ２２０は次に、動作５０２におけるロードおよび前処理中に障害が発生したかどうかを判定することができる。障害が発生した場合、サーバ２２０は、動作５０４で、ロード／前処理障害を詳述するメッセージを生成することができる。非限定的な一例では、サーバ２２０は、ロード／前処理中に発生した特定のエラーを詳述する電子メールメッセージを生成して、クライアントデバイスに送信することができる。例えば、サーバ２２０は、データファイル１０２のロードが失敗したこと、またはデータファイル１０２が破損している（または不適切なフォーマットである）ことを示すメッセージを自動的に生成することができる。
【００７０】
障害が発生しなかった場合、サーバ２２０は動作５０５で、データファイル１０２を構文解析することができる（すなわち、データファイル１０２内に含まれる注文データを、その注文データ内のレコード／要素も含めて構文解析することができる）。これは、（例えば、動作３０４に関して、図４に関して、および／または上記の他の場所において）上述された方法を使用して、および／または以下のように実行されてもよい。
【００７１】
カンマ区切りデータファイルの例では、データファイル１０２は、左から右にリストされた要素のシーケンスが所定の順序で配置されるように構成されてもよい。したがって、動作５０５において、サーバ２２０は、左から右へのシーケンスにおける位置に基づいて、どの要素がデータレコード内の関連付けられた情報片に対応するかを知ることになる。例えば、レコード内の最初のカンマの前の最初のデータストリングは常に、トランザクション識別子４０３、取引が処理された時刻４０１、および注文活動タイプ４０２に関連付けられ得る。代替として、サーバ２２０は、データレコード内の各要素にわたって、様々な事前定義された識別子を識別することが可能であってもよい。例えば、サーバ２２０はデータ要素内の特定の文字を識別し、次いで、データ要素が特定のフィールドに関連付けられていることを理解することができる。図４の例示的なレコードを使用して、サーバ２２０が用語「ｐｒｉｃｅ」を有するデータ要素を構文解析するとき、サーバ２２０は、「＝」記号に続く値が対応する価格値になることを知る。サーバ２２０は個々のデータ要素を構文解析して識別するための任意の様々な方法を使用することができ、したがって、この例は非限定的である。
【００７２】
いくつかの実施の形態では、動作５０５におけるサーバ２２０による構文解析は、注文データを検索して、その中に含まれる親注文を識別し、その中に含まれる子注文を識別し、識別された親注文と識別された子注文ベースとの間の対応を識別することを含むことができる。いくつかの実施の形態では、注文データは、注文識別子要素（例えば、注文識別子４１１）、親フラグ要素（例えば、親フラグ４０８）、親注文識別子要素（例えば、親注文識別子４１２）、および他の要素を含むことができる、図４に示すレコードなどのレコードを含むことができる。そのような実施の形態では、この構文解析は、（ａ）親注文のレコードが親フラグ要素を含むことに基づいて親注文を識別すること、（ｂ）子注文のレコードが親注文識別子要素を含むことに基づいて子注文を識別すること、などの動作を含むことができる。そのような実施の形態では、この構文解析は、代替的にまたは追加的に、以下のような動作を含むことができる：
（ｘ）（１）注文データ内の所与のレコードを解析し、（２）所与のレコードが親フラグ要素を含むと判定し、（３）前述の判定に基づいてレコードが親注文に対応することを特定し、（４）親注文の注文識別子を格納する、および
（ｙ）（１）注文データ内の所与のレコードを分析し、（２）所与のレコードが親注文識別子要素を含むと判定し、（３）親注文識別子要素内の注文識別子を（ｘ）からの親注文の識別子と比較し、（４）比較が、親注文識別子要素内の注文識別子と（ｘ）からの親注文の識別子とが同じであることを示す場合、所与のレコードが（ｘ）からの親注文に関連する子注文の１つに対応することを特定する。
【００７３】
データファイル１０２内の要素を構文解析すると、動作５０６において、サーバ２２０は、個々の要素を、例えば、サーバ２２０のメモリに格納されたデータベースの１つまたは複数のテーブルを含むことができる構造化データフォーマットで格納することができる。１つの非限定的な例では、サーバ２２０は、データファイル１０２に提供されたレコードから抽出された個々の取引に関連する各情報片を格納する１つまたは複数のテーブルを含むデータベースを有することができる。例えば、テーブル内の各エントリは、一意の識別子で識別することができ、少なくとも、トランザクションＩＤ４０３、注文活動タイプ４０２、時刻４０１、証券４０４、価格４０５、ボリューム４０６、および他の残りの要素を含む要素は、個々の取引アイテムに対応することができる。テーブルはデータファイル１０２から抽出されない追加の情報（例えば、一意の識別子）を含むことができる。
【００７４】
動作５０７において、サーバ２２０は、構文解析されたデータを市場データとマージすることができる。１つの非限定的な例では、サーバ２２０は、構文解析されて格納された個々の注文データを取得することができ、次いで、そのようなデータは１つまたは複数の金融商品の異なる注文に関する市場データとマージされ得る。格納されたデータを市場データとマージすることにより、ユーザインタフェースは、金融商品の注文データに関するさらなる情報を伝えるために、構文解析された注文データと市場データ（例えば、証券の）の両方を表示することができる。
【００７５】
図５Ｂは例えば、サーバ２２０とシステム１２０との対話の間で実行され得るプロセスのための非限定的なフローチャートを示す。図５Ｂに関して実行されるプロセスは、図５Ａに関するプロセスが完了した後に行われてもよいことを理解されたい。図５Ｂの例では、プロセスは、ユーザインタフェースの特定の態様を生成するときに、実質的に外部システム１２０によって実行され得る。
【００７６】
動作５０８において、外部システム１２０は例えば、１つまたは複数の証券にわたる１つまたは複数のエンティティの注文に関連する注文データを取得／受信することができる。システム１２０は特定のエンティティおよび／または証券に関するすべての注文データを取得することができ、またはサーバ２２０に特定の注文データを要求することができ、その場合、サーバ２２０は要求された必要なデータのみを提供する。この受信された注文データは親注文のデータ（すなわち、親注文データ）および子注文のデータ（すなわち、子注文データ）を含むことができ、さらに、親／子注文ではない他の注文のデータを含むことができる。いくつかの実施の形態では、注文データは、子注文が実行／取引されたときの子注文のデータのみを含むことができ（例えば、注文データは子注文がエンターされたとき（子注文がエントリ後に休止した場合）、修正されたとき、キャンセルされたときなどに関連するデータを含まない）、そのような実施の形態では以下で説明するように、外部システム１２０によって処理／表示される子注文オブジェクトは子注文が実行／取引されたときの子注文オブジェクトのみを含むことになる。他の実施の形態では、他方、注文データは子注文に関連するすべての活動についての子注文のデータを含むことができ（例えば、子注文がエンターされたとき（子注文がエントリ後に休止した場合）、修正されたとき、キャンセルされたときなど）、後述する外部システム１２０によって処理／表示される子注文オブジェクトはすべてのそのような活動についての子注文オブジェクトを含むことになる。
【００７７】
動作５０８において、注文データが受信された後、外部システム１２０はグラフィカルユーザインタフェースを表示することができ、グラフィカルユーザインタフェースは、注文データ内に表される親注文に対応する親注文オブジェクト、注文データ内に表される子注文オブジェクトに対応する子注文オブジェクト、および／または注文データ内に表される他の注文（すなわち、親注文でも子注文でもない注文）に対応する注文オブジェクトを含む。一部の実施の形態では、親注文オブジェクトの一部または全部は文字「Ｐ」を含む円として表現されることがある。特定の親注文オブジェクトが選択されていない場合、システム１２０はグラフィカルユーザインタフェースに、全ての利用可能な親注文オブジェクトおよび子注文オブジェクトを表示してもよい。そのようなディスプレイの一例が図６Ａに提供されており、これは、他の注文オブジェクトと共に、複数の親注文オブジェクトおよび複数の個々の子注文オブジェクトを示している。
【００７８】
動作５０９において、システム１２０はユーザからの入力（例えば、マウスクリック、タッチスクリーンを介したタッチ入力などを介して）を受信することができ、ユーザ入力に応答して、ユーザインタフェースを使用して親注文オブジェクトが選択されたことを判定することができる。例えば、図６Ａおよび図６Ｂに関してさらに詳細に説明されるように、および以下の動作５１０、５１１、および５１２において説明されるように、ユーザは対応する親注文の詳細が強調されるべきであることを示すために、親注文オブジェクトを選択し得る。
【００７９】
動作５１０において、システム１２０は、選択された親注文オブジェクトに関連する親注文識別子を決定する。これは、親注文識別子を示す選択された親注文オブジェクト内のデータフィールドにアクセスすること、親注文識別子を取得するために選択された親注文オブジェクト内のメソッドを呼び出すこと、および／またはそうでなければ選択された親注文オブジェクトに関連する親注文識別子を取得するためにシステム１２０に利用可能なデータを検索することによって実行され得る。
【００８０】
動作５１１で、システム１２０は、動作５１０で判定された親注文識別子に基づいて、対応する親注文に関連付けられた注文／取引に対応する子注文オブジェクトをフィルタリングすることができる。
【００８１】
いくつかの実施の形態では、このフィルタリングは、システム１２０が（「他の」注文オブジェクトを含む、利用可能な注文オブジェクトのすべてのうちの）どの注文オブジェクトが子注文オブジェクトであるかを判定し、そのような子注文オブジェクトのリストを生成することを含むことができる。これは、システム１２０が利用可能なデータを検索し、親注文フラグおよび／または特定の親注文を指定する識別子を有するすべての注文を特定し、対応する注文オブジェクトをリストに追加することを含むことができる。次いで、システム１２０は、選択された親注文オブジェクトに関連付けられていない子注文オブジェクトが表示されるべきでないことを反映するために、子注文オブジェクトの生成されたリストを横断し、データを更新することができる（例えば、システムは、そのような注文オブジェクトに関連付けられた「表示」フラグをＦＡＬＳＥに設定することができる）。このアプローチを介して、システム１２０は利用可能な注文オブジェクトのすべてについて表示状態を更新する必要はなく、むしろ、子注文オブジェクトリスト内の注文オブジェクトについてのみ表示状態を更新することになり、これは、より効率的である。
【００８２】
動作５１２で、選択された親注文オブジェクトに関連付けられていない子注文オブジェクトが表示されないように、グラフィカルユーザインタフェースが更新される。これは、例えば、システム１２０がグラフィカルユーザインタフェースのディスプレイをリフレッシュし、どの注文オブジェクトが表示されるように設定されているか、およびどの注文オブジェクトが表示されていないかをチェックし（例えば、各注文オブジェクトに関連する「表示」フラグがＴＲＵＥ（真）またはＦＡＬＳＥ（偽）に設定されているかを評価することによって）、それに応じてグラフィカルユーザインタフェースを描画することによって実行することができる。図６Ｂは動作５１２で表示することができるグラフィカルユーザインタフェースの一例を示し、表示される子取引オブジェクトは、選択された親注文オブジェクトに関連するものだけである。
【００８３】
動作５０１〜５０７および５０８〜５１２は所与の順序付け／シーケンスを有する別個の動作として上述されているが、これは説明を容易にするために行われることを理解されたい。各種の実施の形態では、上述の動作が各種の順序／シーケンスで実行されてもよく、代替的にまたは追加的に、上述の動作５０１〜５０７および５０８〜５１２の一部が動作５０１〜５０７および５０８〜５１２の他の一部と入れ違いにされてもよいし、および／または同時に実行されてもよいことを理解されたい。
図６Ａおよび図６Ｂの説明
【００８４】
図６Ａおよび図６Ｂは、外部システム１２０に動作可能に結合されたディスプレイ上に表示することができるユーザインタフェースの非限定的な例を示す。１つの非限定的な例では、ユーザインタフェースは、１つまたは複数の証券の注文に関連する異なる注文／取引データを示すディスプレイに関係し得る。
【００８５】
図６Ａは親注文オブジェクト、子注文オブジェクト、および他の注文の（すなわち、親注文でも子注文でもない注文の）注文オブジェクトを含む、異なる注文オブジェクトを表示する、非限定的な例示的なユーザインタフェース６００を示す。１つの非限定的な例では、ユーザインタフェース６００は、その上に注文オブジェクトがプロットされる少なくとも２つの軸を有するグラフを有するディスプレイ部分を含む。グラフは、表示活動が行われた時刻を示す第１軸６１０と、表示された活動が行われた価格／値を示す第２軸６２０とを含む。
【００８６】
１つの非限定的な例では、子注文オブジェクト６０５はユーザインタフェースのグラフ表示上にプロットされ、一方、親注文オブジェクト６１０は子注文オブジェクト６０５とは異なる位置で同じグラフ表示上にプロットされる。例えば、親注文オブジェクト６１０は、（第１軸６１０に平行な方向に延びる）タイムラインに沿って、第２軸６２０に沿った１つまたは複数の子注文オブジェクト６０５の上の位置にプロットされてもよい。
【００８７】
グラフ上にプロットされた注文オブジェクト（例えば、親注文オブジェクト６１０または子注文オブジェクト６０５）の位置は、注文オブジェクトに対応する注文に関連する何らかの活動が行われた時刻、例えば、注文がエンターされ、修正され／変更され、および／または取引されたとき、に対応してもよい。非限定的な一例では、１つまたは複数の子注文オブジェクト６０５に関連付けられた親注文オブジェクト６１０は、ｘ軸に沿って、左から右への順で子注文オブジェクト６０５の前の最初に配置される。すなわち、左から右に向かってｘ軸に沿ってディスプレイを見るとき、親注文オブジェクト６１０は、関連する子注文オブジェクト６０５が表示される前の最初に表示される。これは、親注文オブジェクト６１０が子システムが（取引のために）取引所に注文を出すことができる前に配置されるためであり得る。したがって、親注文オブジェクト６１０が、１つまたは複数の子注文オブジェクト６０５の後にｘ軸に沿って（左から右へ）ディスプレイ上に示される場合、そのような情報は異常な取引活動（例えば、不正取引活動、インサイダー取引）を示しうる。そのような情報は、１つまたは複数のシステムが注文に不適切にタイムスタンプを付けることを示すこともできる。例えば、注文情報（例えば、図４に示す）を含むデータファイル１０２は、親注文に関連付けられた注文エントリに不正確にタイムスタンプを付けることがある。一例として、親注文は、親注文に関連付けられた後の注文エントリ（例えば、「ＴＲＡＤＥ」または「ＡＭＥＮＤ」動作）が、後のエントリに、親注文が発注された時刻ではなく現在の時刻で不正確にタイムスタンプを付与し得る最初の時刻に発注され得る。この場合、ディスプレイは不正確なタイムスタンプデータのために、１つまたは複数の子注文オブジェクト６０５よりも遅い時刻に親注文オブジェクト６１０を不正確に示すことがある。
【００８８】
親注文オブジェクト６１０および子注文オブジェクト６０５の位置は非限定的であり、本明細書で説明される技術は、そのような注文オブジェクトの位置を決定するための様々な方法を想定する。例えば、各親注文オブジェクト６１０の位置は、１つまたは複数の子注文オブジェクト６０５の決定された位置との相対関係に基づいて決定することができる。非限定的な一例では、親注文オブジェクト６１０の位置は、関連する子注文オブジェクト６０５の集合位置の中央値にあってもよい。別の非限定的な例では、親注文オブジェクト６１０の位置は、中央（ｍｅｄｉａｎ）の子注文オブジェクト６０５の位置に対応する位置であってもよい。例えば、１つの親注文オブジェクト６１０が５つの子注文オブジェクト６０５に対応する場合、親注文オブジェクト６１０の位置は３番目の子注文オブジェクト６０５（すなわち、シーケンス中の「中央の」注文）の位置と一致し得る。
【００８９】
また、各親注文オブジェクト６１０は、それを子注文オブジェクト６０５と区別するフォーマットで表示することができることを理解されたい。例えば、親注文オブジェクト６１０は注文が「親注文」であることを示すために第１フォーマットで（例えば、オブジェクト６１０上に「Ｐ」を用いて）表示され得、一方、子注文オブジェクト６０５は第２フォーマットで（例えば、オブジェクト６０５上の「Ｐ」の使用を伴わない）表示され得る。この例は非限定的であり、親注文オブジェクト６１０および子注文オブジェクト６０５は、関係するサイズ、形状、および／または色に関して異なるフォーマットで表示することができる。
【００９０】
さらに、親注文オブジェクト６１０は、それが親注文に関連付けられた特定のタイプの動作を有する親注文であることを示す他の識別情報と共に表示することができる。例えば、親注文オブジェクト６１０は、親注文がエンターされたことを示す文字「Ｐｅ」を有するゴールドアイコンとして表示することができる。親注文オブジェクト６１０は、親注文が修正されたことを示す文字「Ｐａ」を有するピンク色のアイコンとして表示することもできる。親注文オブジェクト６１０は、親注文が削除されたことを示す文字「Ｐｄ」を有するグレーアイコンで表示することもできる。もちろん、これらの例は非限定的であり、親注文オブジェクト６１０は、任意の色で、かつ任意のタイプのインジケーションを伴って表示することができる。
【００９１】
ユーザインタフェース６００はまた、異なる注文／取引データに関連するさらなる情報を含んでもよい。例えば、ユーザインタフェース６００は、表示されたグラフに表された１つ以上の証券に関連付けられた取引の数を示す取引数６０１を含むことができる。ユーザインタフェース６００はまた、例えば、表示されたグラフに表される１つ以上の証券について取引される株式の数を示すボリューム６０２を含み得る。ユーザインタフェース６００はまた、例えば、取引され、表示されたグラフに表される１つまたは複数の証券の全ドル金額を示す値６０３を含むことができる。グラフは、特定の注文の取引量に対応するバー領域６３１も含むことができることを理解されたい。例えば、特定の取引のバー領域６３１のサイズは、取引として処理された他の注文と比較して、より高いボリュームの注文を示すことができる。
【００９２】
ユーザが、ユーザインタフェース上に示される親注文オブジェクトのうちの１つを選択すると、異なる子注文が強調表示され得る。図６Ｂは、少なくとも１つの親注文オブジェクト６１０が（例えば、ユーザ入力によって）選択されたときの、非限定的な例示的なユーザインタフェース６００を示す。図６Ｂに示される例は図６Ａに示される注文オブジェクトに関するが、選択された親注文オブジェクト６１０に関連する子注文オブジェクト６０５のみを示すようにフィルタリングされる。非限定的な一例では、ユーザインタフェース６００は、選択された親注文オブジェクト６１０に関連付けられていない子注文オブジェクト６０５をディスプレイから削除することができる。この例は非限定的なものであり、本技術は、ディスプレイ上の子オブジェクト６０５を強調表示するか、さもなければ示すための様々な方法を想定している。例えば、ディスプレイは他の（例えば、リンクされていない）子注文オブジェクト６０５を表示したままにすることができるが、選択された親注文オブジェクト６１０に関連する子注文オブジェクト６０５のサイズ、形状、および／または色を変更することができる。いくつかの例では、リンクされていない子注文は色、透明度、または他の視覚的インジケータ（例えば、グレーアウトされるか、または透明にされることによって）において変更され得る。特定の例では、リンクされた子注文は、選択された親注文とその子注文との間の関係を視覚的に示すために（例えば、注文を強調表示するか、または注文を明るい色に変更することによって）、色、透明度、または他の視覚的インジケータにおいて変更されてもよい。
【００９３】
ユーザインタフェース６００は、「フィルタリングされた」子注文オブジェクト６０５および親注文オブジェクト６１０に関連して生成されるオーバレイウィンドウ６４０を含むようにディスプレイを変更するようにさらに構成され得る。非限定的な一例では、オーバレイウィンドウ６４０は、選択された親注文オブジェクト６１０および関連する子注文オブジェクト６０５に関する詳細を含むことができる。例えば、ユーザは、親注文オブジェクト６１０を「左クリック」して、親注文に関連するオーバレイウィンドウ６４０を開くことができる。
【００９４】
オーバレイウィンドウ６４０は、親注文および／または子注文を識別する注文識別子６４２を含むことができる。注文識別子６４２は、選択された親注文イベントの注文ＩＤとすることができる。ウィンドウ６４０は、親注文に関する１つまたは複数の情報を含むことができる親注文情報６４１をさらに含むことができる。例えば、親注文情報６４１は、親注文が出された日付／時刻、親注文に関連付けられた値（または価格）、および／または親注文に関連付けられたボリュームを含むことができる。
【００９５】
オーバレイウィンドウ６４０は、親注文に関連する１つまたは複数の子注文に関連するさらなる情報を提供することもできる。例えば、ウィンドウ６４０は、選択された親注文に関連して取引／処理された子注文の数を示す子注文取引数６４３を含むことができる。ウィンドウ６４０はさらに、選択された親注文に関連する子注文の最初および最後の取引の時刻（および／または日付）をそれぞれ示す最初の取引時刻６４４および最後の取引時刻６４５を含むことができる。例えば、最初の取引時刻６４４は、選択された親注文に関連する最初の取引が実行された時刻に対応することができる。同様に、最後の取引時間６４５は、選択された親注文に関連する最後の取引が実行された時刻に対応することができる。
【００９６】
オーバレイウィンドウ６４０は、親注文および子注文の両方に関連するさらなる情報を提供することができる。例えば、ウィンドウ６４０は、取引に関連付けられた（または発注した）１つまたは複数の個人を示すトレーダ識別子６４６と、親注文および／または子注文に関連する少なくとも１つの取引の識別子値を示す取引識別子６４７とをさらに含むことができる。ウィンドウ６４０は、親注文および／または子注文に関連付けられたアカウントを示すアカウント識別子６４８と、親注文および／または子注文に関連付けられたボリューム加重平均価格を示すＶＷＡＰ  ６４９とをさらに含むことができる。オーバレイウィンドウ６４０に示されるアイテムは非限定的であり、本明細書で説明される技術は、ウィンドウ６４０に表示することができる様々なデータを想定していることを理解されたい。
【００９７】
図６Ｂに示されるディスプレイは、ユーザインタフェースの上部付近にさらなる要約情報を含んでもよいことを理解されたい。例えば、ユーザインタフェースは、いくつの子取引が強調表示されているかを示す子取引数６０６の値を含むことができる。ユーザインタフェースは例えば、表示されたグラフに表される強調表示された子取引について取引されている株式の数を示す子ボリューム６０７をさらに含むことができる。また、子ボリューム６０７は、ボリューム６０２に対する子ボリューム６０７の全パーセンテージを示すパーセンテージ値を示すこともできる。また、ユーザインタフェースは例えば、表示されたグラフに表される強調表示された子取引の全ドル金額を示す子の値６０８を含むことができる。子ボリューム６０７と同様に、子の値６０８は、値６０３に対する子の値６０８の全パーセンテージを示すパーセンテージ値を示すこともできる。図６Ａおよび６Ｂに示される要約項目はもちろん、非限定的な例であり、本明細書で説明される技術は、示され得る要約情報の任意の種類または修正を想定する。
図７の説明
【００９８】
図７は、システム１２６０のハードウエアアーキテクチャの非限定的例示的ブロック図を示す。図７に示される例では、クライアントデバイス１２１０はネットワーク１２４０を介してサーバシステム１２００と通信する。ネットワーク１２４０はインターネットなどの相互に接続された計算デバイスのネットワークを含みうる。ネットワーク１２４０はローカルエリアネットワーク（ＬＡＮ）を含んでもよく、またはクライアントデバイス１２１０とサーバシステム１２００との間のピアツーピア接続を含んでもよい。後述されるように、図７に示されるハードウエア要素は、上で示され説明された種々のソフトウエアコンポーネントおよび動作を、クライアントデバイス１２１０およびサーバシステム１２００に含まれるかおよび／またはそれにおいて実行されるものとして実装するために使用可能である。
【００９９】
いくつかの実施の形態では、クライアントデバイス１２１０（これは本明細書において「クライアントシステム」とも称される）は、１つまたは複数のプロセッサ１２１２、１つまたは複数のメモリデバイス１２１４、１つまたは複数のネットワークインタフェースデバイス１２１６、１つまたは複数のディスプレイインタフェース１２１８、および１つまたは複数のユーザ入力アダプタ１２２０のうちの１つまたは複数を含む。さらに、いくつかの実施の形態では、クライアントデバイス１２１０はディスプレイデバイス１２２２に接続されるか、またはディスプレイデバイス４１２を含む。以下で説明するように、これらの要素（例えば、プロセッサ１２１２、メモリデバイス１２１４、ネットワークインタフェースデバイス１２１６、ディスプレイインタフェース１２１８、ユーザ入力アダプタ１２２０、ディスプレイデバイス１２２２）は、計算デバイス１２１０の様々な異なる機能を実行するように構成されたハードウエアデバイス（例えば、電子回路または回路の組合せ）である。
【０１００】
いくつかの実施の形態では、プロセッサ１２１２の各々またはいずれかは、例えば、シングルコアまたはマルチコアプロセッサ、マイクロプロセッサ（例えば、中央処理装置またはＣＰＵと呼ばれ得る）、デジタル信号プロセッサ（ＤＳＰ）、ＤＳＰコアに関連するマイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）回路、またはシステムオンチップ（ＳＯＣ）（例えば、ＣＰＵと、メモリ、ネットワーキングインタフェースなどの他のハードウエア構成要素とを含む集積回路）であるか、またはそれらを含む。および／または、いくつかの実施の形態では、プロセッサ１２１２のそれぞれまたはいずれかは、ｘ８６またはＡＲＭ（Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ）などのインストラクションセットアーキテクチャを使用する。
【０１０１】
いくつかの実施の形態では、メモリデバイス１２１４の各々またはいずれかは、ランダムアクセスメモリ（ＲＡＭ）（ダイナミックＲＡＭ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）など）、フラッシュメモリ（例えば、ＮＡＮＤまたはＮＯＲ技術に基づく）、ハードディスク、光磁気媒体、光媒体、キャッシュメモリ、レジスタ（例えば、インストラクションを保持する）、またはデータおよび／またはインストラクションの揮発性または不揮発性保持を実行する他のタイプのデバイス（例えば、プロセッサ１２１２上でまたはプロセッサ４０２によって実行されるソフトウエア）であるか、またはそれらを含む。メモリデバイス１２１４は、不揮発性コンピュータ可読保持媒体の例である。
【０１０２】
いくつかの実施の形態では、ネットワークインタフェースデバイス１２１６のそれぞれまたはいずれかは、１つまたは複数の回路（ベースバンドプロセッサおよび／または有線または無線トランシーバなど）を含み、１つまたは複数の有線通信技術（イーサネット（ＩＥＥＥ  ８０２．３）など）および／または無線通信技術（ブルートゥース、ＷｉＦｉ（ＩＥＥＥ  ８０２．１１）、ＧＳＭ、ＣＤＭＡ２０００、ＵＭＴＳ、ＬＴＥ、ＬＴＥ−Ａｄｖａｎｃｅｄ（ＬＴＥ−Ａ）、および／または他の短距離、中距離、および／または長距離無線通信技術など）のためのレイヤ１、レイヤ２、および／またはより高次のレイヤを実装する。トランシーバは、送信機および受信機のための回路を備えることができる。送信機および受信機は共通の筐体を共有することができ、送信および受信を実行するために筐体内の回路のいくつかまたはすべてを共有することができる。いくつかの実施の形態では、トランシーバの送信機および受信機は、いかなる共通の回路も共有しなくてもよく、および／または同じまたは別個のハウジング内にあってもよい。
【０１０３】
いくつかの実施の形態では、ディスプレイインタフェース１２１８の各々またはいずれかは、プロセッサ１２１２からデータを受信し、受信したデータに基づいて対応する画像データを（例えば、ディスクリートＧＰＵ、組み込みＧＰＵ、グラフィック処理を実行するＣＰＵなどを介して）生成し、および／または生成された画像データを画像データを表示するディスプレイデバイス１２２２に出力する（例えば、高精細度マルチメディアインターフェース（ＨＤＭＩ）、ディスプレイポートインタフェース、ビデオグラフィックスアレイ（ＶＧＡ）インタフェース、デジタルビデオインタフェース（ＤＶＩ）など）、１つまたは複数の回路であるか、またはそれらを含む。代替的にまたは追加的に、いくつかの実施の形態では、ディスプレイインタフェース１２１８の各々またはいずれかは、例えば、ビデオカード、ビデオアダプタ、またはグラフィックス処理ユニット（ＧＰＵ）であるか、またはそれらを含む。
【０１０４】
いくつかの実施の形態では、ユーザ入力アダプタ１２２０のそれぞれまたはいずれかは、クライアントデバイス１２１０に含まれ、それに取り付けられ、またはそれと通信する１つまたは複数のユーザ入力デバイス（図７には示されていない）からユーザ入力データを受信し、処理し、受信した入力データに基づいてプロセッサ１２１２にデータを出力する１つまたは複数の回路であるか、またはそれを含む。代替的にまたは追加的に、いくつかの実施の形態では、ユーザ入力アダプタ１２２０の各々またはいずれかは、例えば、ＰＳ／２インタフェース、ＵＳＢインタフェース、タッチスクリーンコントローラなどであるか、またはそれらを含み、および／またはユーザ入力アダプタ１２２０は例えば、キーボード、マウス、トラックパッド、タッチスクリーンなどのユーザ入力デバイス（図７には図示せず）からの入力を容易にする。
【０１０５】
いくつかの実施の形態では、ディスプレイデバイス１２２２は、液晶ディスプレイ（ＬＣＤ）ディスプレイ、発光ダイオード（ＬＥＤ）ディスプレイ、または他のタイプのディスプレイデバイスとすることができる。ディスプレイデバイス１２２２がクライアントデバイス１２１０の構成要素である（例えば、計算デバイスおよびディスプレイデバイスが統合ハウジングに含まれる）実施の形態では、ディスプレイデバイス１２２２は、タッチスクリーンディスプレイまたは非タッチスクリーンディスプレイとすることができる。ディスプレイデバイス１２２２がクライアントデバイス１２１０に接続される（例えば、クライアントデバイス１２１０の外部にあり、有線および／または無線通信技術を介してクライアントデバイス１２１０と通信する）実施の形態では、ディスプレイデバイス１２２２は例えば、外部モニタ、プロジェクタ、テレビジョン、ディスプレイ画面である。
【０１０６】
様々な実施の形態では、クライアントデバイス１２１０は、上述の要素（例えば、プロセッサ１２１２、メモリデバイス１２１４、ネットワークインタフェースデバイス１２１６、ディスプレイインタフェース１２１８、およびユーザ入力アダプタ１２２０）の各々またはいずれかの１つ、２つ、または３つ、４つ、またはそれ以上を含む。代替的にまたは追加的に、いくつかの実施の形態では、クライアントデバイス１２１０は、プロセッサ１２１２を含む処理システム、メモリデバイス１２１４を含むメモリまたはストレージシステム、およびネットワークインタフェースデバイス１２１６を含むネットワークインタフェースシステムのうちの１つまたは複数を含む。
【０１０７】
クライアントデバイス１２１０は様々な実施の形態において、多くの異なる方法で構成されうる。単なる一例として、クライアントデバイス１２１０は、プロセッサ１２１２が：マルチ（または単一）コアプロセッサと、第１ネットワークインタフェースデバイス（これは例えばＷｉＦｉやブルートゥースやＮＦＣなどで実装される）と、１つ以上のセルラ通信技術（例えば３Ｇ、４Ｇ  ＬＴＥ、ＣＤＭＡなど）を実施する第２ネットワークインタフェースデバイスと、メモリまたはストレージデバイス（例えばＲＡＭ、フラッシュメモリ、またはハードディスク）と、を含むように構成されうる。プロセッサ、第一のネットワークインタフェースデバイス、第二のネットワークインタフェースデバイス、およびメモリデバイスは、同一のＳＯＣ（例えば１つの集積回路チップ）の一部として統合されうる。別の例として、クライアントデバイス１２１０は、プロセッサ１２１２が２、３、４、５つ、またはそれより多いマルチコアプロセッサを含み、ネットワークインタフェースデバイス１２１６がＥｔｈｅｒｎｅｔを実施する第一のネットワークインタフェースデバイスとＷｉＦｉおよび／またはＢｌｕｅｔｏｏｔｈを実施する第二のネットワークインタフェースデバイスとを含み、並びにメモリデバイス１２１４がＲＡＭおよびフラッシュメモリもしくはハードディスクを含むよう構成されうる。
【０１０８】
サーバシステム１２００は、図２のサーバシステム２２０のソフトウエア要素を実装するために用いられる種々のハードウエアコンポーネントを備える。いくつかの実施の形態では、サーバシステム１２００（これは本明細書において「サーバデバイス」とも称される）は、１つまたは複数のプロセッサ１２０２、１つまたは複数のメモリデバイス１２０４および１つまたは複数のネットワークインタフェースデバイス１２０６のうちの１つまたは複数を含む。以下で説明するように、これらの要素（例えば、プロセッサ１２０２、メモリデバイス１２０４、ネットワークインタフェースデバイス１２０６）は、サーバシステム１２００の様々な異なる機能を実行するように構成されたハードウエアデバイス（例えば、電子回路または回路の組合せ）である。
【０１０９】
いくつかの実施の形態では、プロセッサ１２０２の各々またはいずれかは、例えば、シングルコアまたはマルチコアプロセッサ、マイクロプロセッサ（例えば、中央処理装置またはＣＰＵと呼ばれ得る）、デジタル信号プロセッサ（ＤＳＰ）、ＤＳＰコアに関連するマイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）回路、またはシステムオンチップ（ＳＯＣ）（例えば、ＣＰＵと、メモリ、ネットワーキングインタフェースなどの他のハードウエア構成要素とを含む集積回路）であるか、またはそれらを含む。および／または、いくつかの実施の形態では、プロセッサ１２０２のそれぞれまたはいずれかは、ｘ８６またはＡＲＭ（Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ）などのインストラクションセットアーキテクチャを使用する。
【０１１０】
いくつかの実施の形態では、メモリデバイス１２０４の各々またはいずれかは、ランダムアクセスメモリ（ＲＡＭ）（ダイナミックＲＡＭ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）など）、フラッシュメモリ（例えば、ＮＡＮＤまたはＮＯＲ技術に基づく）、ハードディスク、光磁気媒体、光媒体、キャッシュメモリ、レジスタ（例えば、インストラクションを保持する）、またはデータおよび／またはインストラクションの揮発性または不揮発性保持を実行する他のタイプのデバイス（例えば、プロセッサ１２０２上でまたはプロセッサ４０２によって実行されるソフトウエア）であるか、またはそれらを含む。メモリデバイス１２０４は、不揮発性コンピュータ可読保持媒体の例である。
【０１１１】
いくつかの実施の形態では、ネットワークインタフェースデバイス１２０６のそれぞれまたはいずれかは、１つまたは複数の回路（ベースバンドプロセッサおよび／または有線または無線トランシーバなど）を含み、１つまたは複数の有線通信技術（イーサネット（ＩＥＥＥ  ８０２．３）など）および／または無線通信技術（ブルートゥース、ＷｉＦｉ（ＩＥＥＥ  ８０２．１１）、ＧＳＭ、ＣＤＭＡ２０００、ＵＭＴＳ、ＬＴＥ、ＬＴＥ−Ａｄｖａｎｃｅｄ（ＬＴＥ−Ａ）、および／または他の短距離、中距離、および／または長距離無線通信技術など）のためのレイヤ１、レイヤ２、および／またはより高次のレイヤを実装する。トランシーバは、送信機および受信機のための回路を備えることができる。送信機および受信機は共通の筐体を共有することができ、送信および受信を実行するために筐体内の回路のいくつかまたはすべてを共有することができる。いくつかの実施の形態では、トランシーバの送信機および受信機は、いかなる共通の回路も共有しなくてもよく、および／または同じまたは別個のハウジング内にあってもよい。
【０１１２】
様々な実施の形態では、サーバシステム１２００は、上述の要素（例えば、プロセッサ１２０２、メモリデバイス１２０４、ネットワークインタフェースデバイス１２０６）の各々またはいずれかの１つ、２つ、または３つ、４つ、またはそれ以上を含む。代替的にまたは追加的に、いくつかの実施の形態では、サーバシステム１２００は、プロセッサ１２０２を含む処理システム、メモリデバイス１２０４を含むメモリまたはストレージシステム、およびネットワークインタフェースデバイス１２０６を含むネットワークインタフェースシステムのうちの１つまたは複数を含む。
【０１１３】
サーバシステム１２００は様々な実施の形態において、多くの異なる方法で構成されうる。単なる一例として、サーバシステム１２００は、プロセッサ１２０２が：マルチ（または単一）コアプロセッサと、第１ネットワークインタフェースデバイス（これは例えばＷｉＦｉやブルートゥースやＮＦＣなどで実装される）と、１つ以上のセルラ通信技術（例えば３Ｇ、４Ｇ  ＬＴＥ、ＣＤＭＡなど）を実施する第２ネットワークインタフェースデバイスと、メモリまたはストレージデバイス（例えばＲＡＭ、フラッシュメモリ、またはハードディスク）と、を含むように構成されうる。プロセッサ、第一のネットワークインタフェースデバイス、第二のネットワークインタフェースデバイス、およびメモリデバイスは、同一のＳＯＣ（例えば１つの集積回路チップ）の一部として統合されうる。別の例として、サーバシステム１２００は、プロセッサ１２０２が２、３、４、５つ、またはそれより多いマルチコアプロセッサを含み、ネットワークインタフェースデバイス１２０６がＥｔｈｅｒｎｅｔを実施する第一のネットワークインタフェースデバイスとＷｉＦｉおよび／またはＢｌｕｅｔｏｏｔｈを実施する第二のネットワークインタフェースデバイスとを含み、並びにメモリデバイス１２０４がＲＡＭおよびフラッシュメモリもしくはハードディスクを含むよう構成されうる。
【０１１４】
既述の通り、ソフトウェアモジュールまたはソフトウェアプロセスが任意の動作を実行すると本書で記載されている場合はいつでも、当該動作は実際は、当該ソフトウェアモジュールを備えるインストラクションに従い基礎となるハードウェアエレメントによって実行される。前述と一致して、種々の実施の形態では、クライアントデバイス２１０やサーバシステム２２０のそれぞれは、この段落の残りの部分において明確性のために個々に「コンポーネント」と呼ばれるが、それらのコンポーネントのそれぞれまたは任意の組み合せは、図７のクライアントデバイス１２１０やサーバシステム１２００の例を使用して実装される。そのような実施の形態では、各コンポーネントに対して以下が適用される：（ａ）図７に示すクライアントデバイス１２１０の要素（すなわち、１つ以上のプロセッサ１２１２、１つ以上のメモリデバイス１２１４、１つ以上のネットワークインタフェースデバイス１２１６、１つ以上のディスプレイインタフェース１２１８、および１つ以上のユーザ入力アダプタ１２２０）およびサーバシステム１２００の要素（すなわち、ひとつ以上のプロセッサ１２０２、ひとつ以上のメモリデバイス１２０４、ひとつ以上のネットワークインタフェースデバイス１２０６）、または前述のものの適切な組み合わせもしくは部分集合は、コンポーネントによっておよび／またはコンポーネント内に含まれるとして本明細書で説明される任意のソフトウェアモジュールによって実行されるとして本明細書で説明される動作、行動、もしくは特徴のそれぞれもしくは任意の組み合わせを実施するように構成され、適応され、および／またはプログラムされる、（ｂ）代替的または付加的に、１つ以上のソフトウェアモジュールがコンポーネント内に存在すると本明細書で説明される範囲で、いくつかの実施形態では、（ソフトウェアモジュールによって扱われおよび／または使用されるとして本明細書で説明された任意のデータとともに）そのようなソフトウェアモジュールは対応するメモリデバイス（例えば様々な実施形態では、ＲＡＭのような揮発性メモリデバイス、命令レジスタ、および／またはフラッシュメモリもしくはハードディスクのような不揮発メモリデバイス）に格納され、ソフトウェアモジュールによって行われるとして本明細書で説明される全ての動作は、クライアントデバイス１２１０またはサーバシステム１２００の中および／またはそれに接続される他の要素と適切に連動する対応するプロセッサによって実行される、（ｃ）代替的または付加的に、コンポーネントはデータを処理し、および／またはさもなければ扱うと本明細書で説明される範囲で、いくつかの実施形態では、そのようなデータは、対応するメモリデバイス（例えばいくつかの実施形態では、ＲＡＭのような揮発性メモリデバイスおよび／またはフラッシュメモリもしくはハードディスクのような不揮発メモリデバイス）に格納され、および／またはクライアントデバイス１２１０またはサーバシステム１２００の中にあるかおよび／またはそれに接続される他の要素と適切に連携する対応するプロセッサによって処理され／扱われる、（ｄ）代替的または付加的に、いくつかの実施形態では、対応するメモリデバイスは、対応するプロセッサによって実行される場合に、当該プロセッサに、コンポーネントによっておよび／またはコンポーネント内に含まれるとして本明細書で説明された任意のソフトウェアモジュールによって実行されるとして本明細書で説明された動作のそれぞれまたは任意の組み合わせを、クライアントデバイス１２１０やサーバシステム１２００の中のおよび／またはそれに接続された他の要素と適宜連携して、実行させる命令を格納する。
【０１１５】
図７に示され、上記で説明されたハードウエア構成は例として提供され、本明細書で説明された主題は様々な異なるハードウエアアーキテクチャおよび要素と併せて利用され得る。例えば、本明細書の多くの図では、個々の機能／アクションブロックが示され；様々な実施の形態では、これらのブロックの機能は（ａ）個々のハードウエア回路を使用して、（ｂ）記載された機能／アクションを実行するように特に構成された特定用途向け集積回路（ＡＳＩＣ）を使用して、（ｃ）記載された機能／アクションを実行するように特に構成された１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）を使用して、（ｄ）図７を参照して上述したハードウエア構成を使用して、（ｅ）他のハードウエア構成、アーキテクチャ、および構成を介して、および／または（ａ）〜（ｅ）に記載された技術の組み合わせを介して、実装され得る。
説明された主題の技術的利点
【０１１６】
本明細書で説明される技術は注文データの効率的な記憶および処理を可能にし、情報を表示し、ユーザと対話するシステムの能力を改善する。特に、システムは大量の注文データ要素を処理し、システムによって管理されるデータベースに効率的に格納することができ、その結果、そのデータを使用してユーザインタフェースを生成することができる。その際、システムは、データを提示する表示の高速かつ効率的な生成に使用される理解可能なコンポーネントにデータを分解することによって、大量のデータを効率的に保存し、編成し、管理する。
【０１１７】
したがって、システムによって生成された結果物としてのユーザインタフェースは、見やすい方法で情報を提供する。特に、ユーザインタフェースは、親注文と子注文との間の関係を示す注文データのグラフィカル表示を提供する。ユーザインタフェースは、関連する子注文が強調表示され得るように、個々の親注文を選択することによって、ユーザがディスプレイを操作することを可能にする。したがって、グラフィカルユーザインタフェースは、注文データ自体を見るよりもはるかに理解しやすくアクセスしやすい方法で注文データを提示する。さらに、グラフィカルユーザインタフェースは注文情報を表示するための特定の方法を提供し、その結果、ユーザインタフェースが改善される。したがって、この技術はまた、ソフトウエアユーザインタフェースの技術分野における改善を提供し、ユーザと対話するシステムの能力を改善するインタフェースを生成する。
選択された定義
【０１１８】
本書面では、「いくつかの実施形態」、「様々な実施形態」、「特定の実施形態」、「特定の例示的な実施形態」、「いくつかの例示的な実施形態」、「例示的な実施形態」に所定のアイテムが示されることが説明されるときはいつでも、または任意の他の類似の言葉が用いられるときはいつでも、所与のアイテムは少なくとも１つの実施形態に示されてはいるが、全ての実施形態に示される必要はないことは理解されたい。上述と整合して、本書では、動作が実行され「てもよく」、「ることができ」、もしくは「うる」ことと、機能、エレメント、もしくは構成要素が所与のコンテキストに含まれ「てもよく」、「ることができ」、もしくは「うる」、または適用可能なことと、所与のアイテムが所与の特性を有し「てもよく」、「ることができ」、もしくは「うる」こととが説明されるときはいつでも、または「〜てもよい」、「〜できる」もしくは「〜しうる」という用語を含む任意の類似の語句が使用されるときはいつでも、所与の動作、特徴、エレメント、構成要素、特性、などが少なくとも１つの実施形態に示されているが、全ての実施形態に示される必要はないことが理解されたい。本書で使用される用語と語句、およびそれらの変形は、特に明記しない限り、限定的ではなく包含的に解釈されるべきである。先の例としては、「および／または」は、関連して挙げられたアイテムのうちの１つ以上の任意のまたは全ての組み合わせ（例えば、ａおよび／またはｂは、ａ、ｂ、またはａとｂを意味する）を含み、単数形「ａ」、「ａｎ」および「ｔｈｅ」は「少なくとも１の」、「１つ以上の」、または類似のものを意味するとして読まれるべきであり、「例」という用語は議論中の主題の例を提供するためにもちいられるがそれの網羅的なものでも限定的リストでもなく、「備える」と「含む」（および他の活用とそれらの他の変形）は関連する挙げられたアイテムの存在を特定するが、１つ以上の他のアイテムの存在または追加を排除するものではなく、アイテムが「随意に（ｏｐｔｉｏｎａｌ）」と説明される場合、そのような説明は他のアイテムが随意ではないことを示すものと理解されるべきではない。
【０１１９】
本明細書で使用されるように、「非一時的のコンピュータ可読ストレージ媒体」は、レジスタ、キャッシュメモリ、ＲＯＭ、（Ｄ−ＲＡＭ、Ｓ−ＲＡＭ、または他のＲＡＭのような）半導体メモリ装置、フラッシュメモリといった磁気記録媒体、ハードディスク、光磁気記録媒体、ＣＤ−ＲＯＭ、ＤＶＤ、もしくはＢｌｕ−Ｒａｙディスクといった光学記録媒体、または非一時的の電子データストレージのための他のタイプの装置、を含む。「非一時的のコンピュータ可読ストレージ媒体」は一時的な伝搬する電磁信号は含まない。
＜説明された主題のさらなる応用＞
【０１２０】
本明細書ではウェブアプリケーションを数多く参照するが、本明細書で説明される特徴はクライアントシステム上でバイナリとして展開／インストールされるアプリケーションなどの他のタイプのアプリケーションのコンテキストで、様々な実施の形態で使用することもできることを理解されたい。
【０１２１】
本明細書では「証券」および「金融商品」の取引について多数の言及がなされているが、本明細書で説明される特徴はあらゆる種類の証券（株式、デリバティブ、オプションなど）、先物、ファイト通貨、暗号資産（暗号通貨およびトークンを含む）を含むが、これらに限定されない、あらゆる種類の市場で取引することができるあらゆる種類の資産または金融商品に関して使用することができることを理解されたい。
【０１２２】
限定的でなく図１から図７を参照して含まれるような処理ステップ、アルゴリズムあるいはその類が特定の順序で記載またはクレームされている場合があるが、このような処理は、異なる順序で動作するように構成設定することができる。換言すれば、本明細書で明示されるかクレームされるいかなるシーケンスあるいはステップの順序も、そのステップがその順序で実行される必要性を示すものでは必ずしもなく、本明細書で説明される処理ステップは任意の可能な順序で実行されてもよい。また、いくつかのステップは、非同時的に発生するように記載されているあるいは暗示されているが（例えば、あるステップは、他のステップの後に記載されているからである）、同時に（または並行して）実行されうる。さらに、図面における図示による処理の説明は、図示される処理が他の変形や変更について排他的であることを暗示しているのではなく、また、図示される処理あるいはその任意のステップが必要であることを暗示しているのではなく、また、図示される処理が好ましいことを暗示しているのでもない。
【０１２３】
様々な実施形態が詳細に示され、説明されたが、請求項は特定の実施形態または例の何れにも限定されない。上記の説明の何れもが、任意の特定のエレメント、ステップ、範囲、または機能が必要不可欠であることを暗示するとして読まれるべきではない。上述の実施の形態の要素に対する構造的および機能的等価物のうち当業者に既知のものは全て、明示的に本明細書に参照により組み入れられており、包含されることが意図されている。さらに、本発明に包含されるために、デバイスや方法が、本発明により解決されるべきおのおの全ての課題を指向する必要はない。本書の実施形態、特徴、構成要素、コンポーネント、またはステップは、公に供することを意図されていない。
【図１Ａ】
2020522073.tif 000003
【図１Ｂ】
2020522073.tif 000004
【図２】
2020522073.tif 000005
【図３】
2020522073.tif 000006
【図４】
2020522073.tif 000007
【図５Ａ】
2020522073.tif 000008
【図５Ｂ】
2020522073.tif 000009
【図６Ａ】
2020522073.tif 000010
【図６Ｂ】
2020522073.tif 000011
【図７】
2020522073.tif 000012
【国際調査報告】
2020522073.tif 000013
2020522073.tif 000014
2020522073.tif 000015
2020522073.tif 000016