(57)【特許請求の範囲】
【請求項１】
コンピュータによって実施されるクライアント取引エンジンから電子取引注文を受信し、前記電子取引注文を取引所の１つ以上の取引所サーバに送信し、前記取引所において前記取引注文が実行されるシステムであって、
前記クライアント取引エンジンと通信し、前記１つ以上の取引所サーバと通信する低レイテンシ・システムを備えており、該低レイテンシ・システムは、少なくとも１つのサーバを備え、
前記クライアント取引エンジンから取引注文を受信し、
該取引注文について１回以上の注文前リスク・チェックを実行し、前記１回以上の注文前リスク・チェックは、少なくとも１つのサーバを備える注文後リスク・チェック・データ・センタが前記取引注文について実行する注文後リスク・チェックとは異なり、かつ、当該注文後リスク・チェックよりも計算コストが掛からないものであり、
前記取引注文が前記１回以上の注文前リスク・チェックに合格したときに、前記取引注文を前記１つ以上の取引所サーバに送信し、前記１つ以上の取引所サーバは、メッセージ・プロトコルを実装し、メッセージの連番を維持し、
前記取引注文が前記１回以上の注文前リスク・チェックに不合格であった場合に、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間における整合したメッセージの連番付与を維持するように、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において単一のプロトコル・セッションを維持するように構成され、
前記注文前リスク・チェックに不合格であった場合に前記整合したメッセージの連番付与を維持する前記低レイテンシ・システムの構成が、前記クライアント取引エンジンから受信した前記取引注文を修正し、前記修正した取引注文を前記取引所サーバに送ることを含み、前記取引注文は、前記１つ以上の取引所サーバが前記取引注文を拒絶するように修正される、
システム。
【請求項２】
請求項１記載のシステムにおいて、
前記クライアント取引エンジンと前記低レイテンシ・システムとの間にはワイド・エリア・ネットワーク（ＷＡＮ）のホップがなく、
前記低レイテンシ・システムと前記１つ以上の取引所サーバとの間にはＷＡＮのホップがない、システム。
【請求項３】
請求項１記載のシステムにおいて、前記クライアント取引エンジン、前記低レイテンシ・システム、および前記１つ以上の取引所サーバは、データ・センタにおいてコロケートされている、システム。
【請求項４】
請求項１記載のシステムにおいて、前記低レイテンシ・システムおよび前記１つ以上の取引所サーバは、データ・センタにおいてコロケートされている、システム。
【請求項５】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、当該低レイテンシ・システムが前記１つ以上の取引所サーバと通信するのに用いる交換通信プロトコルと同一である交換通信プロトコルを用いて、前記クライアント取引エンジンと通信する、システム。
【請求項６】
請求項５記載のシステムにおいて、
前記クライアント取引エンジンと前記低レイテン・シシステムとの間にはＷＡＮのホップがなく、
前記低レイテンシ・システムと前記１つ以上の取引所サーバとの間にはＷＡＮのホップがない、システム。
【請求項７】
請求項６記載のシステムにおいて、前記低レイテンシ・システムが実行する前記１回以上の注文前リスク・チェックは、取引数量チェックを含む、システム。
【請求項８】
請求項１記載のシステムおいて、前記低レイテンシ・システムが実行する前記１回以上の注文前リスク・チェックは、３回以下の注文前リスク・チェックを含む、システム。
【請求項９】
請求項８記載のシステムにおいて、前記低レイテンシ・システムが実行する前記３回以下の注文前リスク・チェックは、１回のみの注文前リスク・チェックを含む、システム。
【請求項１０】
請求項９記載のシステムにおいて、前記１回のみの注文前リスク・チェックは、取引数量チェックである、システム。
【請求項１１】
請求項８記載のシステムにおいて、前記低レイテンシ・システムが実行する前記３回以下の注文前リスク・チェックは、取引数量チェックと時間期間において前記クライアント取引エンジンがサブミットした取引数についてのチェックとを含む、システム。
【請求項１２】
請求項８記載のシステムにおいて、前記低レイテンシ・システムが実行する前記３回以下の注文前リスク・チェックは、取引数量チェックと取引注文の値が限度内かどうかについてのチェックとを含む、システム。
【請求項１３】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、当該低レイテンシ・システムの前記少なくとも１つのサーバと通信する少なくとも１つのルータを備える、システム。
【請求項１４】
請求項１３記載のシステムにおいて、前記低レイテンシ・システムは、前記少なくとも１つのルータおよび前記低レイテンシ・システムの前記少なくとも１つのサーバに接続される少なくとも１つのレイヤ２スイッチを備えている、システム。
【請求項１５】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、前記１つ以上の取引所サーバに前記取引注文を拒絶させる前記取引注文のデータを変更することによって前記取引注文を修正する、システム。
【請求項１６】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、前記１つ以上の取引所サーバに前記取引注文を拒絶させる前記取引注文にデータを追加することによって前記取引注文を修正する、システム。
【請求項１７】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、多数の取引注文が不合格である場合に、修正した取引注文を送信するのを止めるように構成される、システム。
【請求項１８】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、前記注文後リスク・チェック・データ・センタと通信し、前記取引注文を前記１つ以上の取引所サーバに送るのと同時に若しくはほとんど同時に、前記取引注文を前記注文後リスク・チェック・データ・センタへ送るように構成される、システム。
【請求項１９】
請求項１８記載のシステムにおいて、前記１つ以上の取引所サーバに送られた前記取引注文が、前記注文後リスク・チェックを開始する、システム
【請求項２０】
請求項１記載のシステムにおいて、前記低レイテンシ・システムは、前記注文後リスク・チェック・データ・センタと通信し、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信し、当該レポートを前記注文後リスク・チェック・データ・センタへ送るように構成される、システム。
【請求項２１】
請求項１記載のシステムにおいて、前記注文後リスク・チェック・データ・センタは、前記１つ以上の取引所サーバと通信し、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信して前記注文後リスク・チェックを開始するように構成される、システム。
【請求項２２】
請求項１記載のシステムにおいて、前記注文後リスク・チェックは、前記低レイテンシ・システムが前記１つ以上の取引所サーバに前記取引注文を送信した後に、前記取引注文について実行される、システム。
【請求項２３】
請求項１記載のシステムにおいて、前記注文後リスク・チェックは、市場影響分析を含む、システム。
【請求項２４】
コンピュータによって実施されるクライアント取引エンジンから取引所の１つ以上の取引所サーバに電子取引注文を送信し、前記取引所において前記取引注文を実行する、コンピュータによって実施される方法であって、
前記クライアント取引エンジンが送信した取引注文を、低レイテンシ・システムにおいて受信するステップであって、前記低レイテンシ・システムが少なくとも１つのサーバを備えるステップと、
前記低レイテンシ・システムによって、前記取引注文について１回以上の注文前リスク・チェックを実行するステップであって、前記１回以上の注文前リスク・チェックは、少なくとも１つのサーバを備える注文後リスク・チェック・データ・センタによって前記取引注文について実行される注文後リスク・チェックとは異なり、かつ、当該注文後リスク・チェックよりも計算コストが掛からない、ステップと、
前記取引注文が前記１回以上の注文前リスク・チェックに合格した場合に、前記低レイテンシ・システムによって、前記取引注文を前記１つ以上の取引所サーバに送信するステップであって、前記１つ以上の取引所サーバがメッセージ・プロトコルを実装し、メッセージの連番を維持する、ステップと、
前記取引注文が前記１回以上の注文前リスク・チェックに不合格であった場合に、前記低レイテンシ・システムによって、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において整合したメッセージの連番付与を維持するように、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において単一のプロトコル・セッションを維持するステップとを備え、
前記注文前リスク・チェックに不合格であった場合に前記整合したメッセージの連番付与を維持する前記ステップは、
前記低レイテンシ・システムによって、前記クライアント取引エンジンから受信した前記取引注文を修正すること、および
前記低レイテンシ・システムによって、前記修正した取引注文を前記１つ以上の取引所サーバに送ることであって、前記１つ以上の取引所サーバが前記取引注文を拒絶するように、前記取引注文を修正すること、を含む、
方法。
【請求項２５】
請求項２４記載の方法において、前記クライアント取引エンジンと前記低レイテン・シシステムとの間にはＷＡＮのホップがなく、
前記低レイテンシ・システムと前記１つ以上の取引所サーバとの間にはＷＡＮのホップがない、方法。
【請求項２６】
請求項２４記載の方法において、前記クライアント取引エンジン、前記低レイテンシ・システム、および前記１つ以上の取引所サーバは、データ・センタにおいてコロケートされている、方法。
【請求項２７】
請求項２４記載の方法において、前記低レイテンシ・システムおよび前記１つ以上の取引所サーバは、データ・センタにおいてコロケートされている、方法。
【請求項２８】
請求項２４記載の方法において、前記低レイテンシ・システムは、当該低レイテンシ・システムが前記１つ以上の取引所サーバと通信するのに用いる交換通信プロトコルと同一である交換通信プロトコルを用いて、前記クライアント取引エンジンと通信する、方法。
【請求項２９】
請求項２８記載の方法において、
前記クライアント取引エンジンと前記低レイテンシ・システムとの間にはＷＡＮのホップがなく、
前記低レイテンシ・システムと前記１つ以上の取引所サーバとの間にはＷＡＮのホップがない、方法。
【請求項３０】
請求項２９記載の方法において、前記低レイテンシ・システムが実行する前記１回以上の注文前リスク・チェックは、取引数量チェックを含む、方法。
【請求項３１】
請求項２４記載の方法において、前記低レイテンシ・システムは、前記１つ以上の取引所サーバに前記取引注文を拒絶させる前記取引注文のデータを変更することによって前記取引注文を修正する、方法。
【請求項３２】
請求項２４記載の方法において、前記低レイテンシ・システムは、前記１つ以上の取引所サーバに前記取引注文を拒絶させる前記取引注文にデータを追加することによって前記取引注文を修正する、方法。
【請求項３３】
請求項２４記載の方法であって、さらに、通信ネットワークを介して前記低レイテンシ・システムと通信する注文後リスク・チェック・データ・センタによって、前記取引注文について前記注文後リスク・チェックを実行するステップを備えており、前記注文後リスク・チェックは、前記低レイテンシ・システムが前記１つ以上の取引所サーバに前記取引注文を送信した後に実行される、方法。
【請求項３４】
請求項３３記載の方法であって、さらに、前記取引注文を前記低レイテンシ・システムから前記１つ以上の取引所サーバに送るのと同時若しくはほとんど同時に、前記取引注文を前記低レイテンシ・システムから前記注文後リスク・チェック・データ・センタに送るステップを備える、方法。
【請求項３５】
請求項３４記載の方法において、前記前記１つ以上の取引所サーバに送られた前記取引注文が、前記注文後リスク・チェックを開始する、方法。
【請求項３６】
請求項３３記載の方法であって、さらに、前記低レイテンシ・システムによって、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信し、前記レポートを前記低レイテンシ・システムから前記注文後リスク・チェック・データ・センタに送るステップを備える、方法。
【請求項３７】
請求項３３記載の方法であって、さらに、前記注文後リスク・チェック・データ・センタによって、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信して前記注文後リスク・チェックを開始するステップを含む、方法。
【請求項３８】
請求項３３記載の方法において、前記注文後リスク・チェックは、前記低レイテンシ・システムが前記取引注文を前記１つ以上の取引所サーバに送信した後に、前記取引注文について実行される、方法。
【請求項３９】
請求項３３記載の方法において、前記注文後リスク・チェックは、市場影響分析を含む、方法。
【請求項４０】
コンピュータによって実施されるクライアント取引エンジンから電子取引注文を受信し、前記電子取引注文を取引所の１つ以上の取引所サーバに送信し、前記取引所において前記取引注文が実行されるシステムであって、
前記クライアント取引エンジンと通信し、前記１つ以上の取引所サーバと通信する低レイテンシ・システムを備えており、該低レイテンシ・システムは、少なくとも１つのサーバを備え、
前記クライアント取引エンジンから取引注文を受信し、
該取引注文について１回以上の注文前リスク・チェックを実行し、前記１回以上の注文前リスク・チェックは、少なくとも１つのサーバを備える注文後リスク・チェック・データ・センタが前記取引注文について実行する注文後リスク・チェックとは異なり、かつ、当該注文後リスク・チェックよりも計算コストが掛からないものであり、
前記取引注文が前記１回以上の注文前リスク・チェックに合格したときに、前記取引注文を前記１つ以上の取引所サーバに送信し、前記１つ以上の取引所サーバは、メッセージ・プロトコルを実装し、メッセージの連番を維持し、
前記取引注文が前記１回以上の注文前リスク・チェックに不合格であった場合に、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において整合したメッセージの連番付与を維持するように、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において単一のプロトコル・セッションを維持するように構成され、
前記注文前リスク・チェックに不合格であった場合に前記整合した連番付与を維持する前記低レイテンシ・システムの構成は、非取引注文メッセージを前記１つ以上の取引所サーバに送ることを含む、
システム。
【請求項４１】
請求項４０記載のシステムにおいて、前記非取引注文メッセージは、前記１つ以上の取引所サーバが拒絶された取引注文を受信するかのように、前記１つ以上のサーバによって維持される連番を有効に増加する制御メッセージ・タイプである、システム。
【請求項４２】
請求項４０記載のシステムにおいて、前記非取引注文メッセージは、ハートビート・メッセージである、システム。
【請求項４３】
請求項４０記載のシステムにおいて、前記低レイテンシ・システムは、さらに、前記非取引注文メッセージを前記１つ以上の取引所サーバに送信した後に、前記１つ以上の取引所サーバから連番を受信し、前記クライアント取引エンジンに送られる拒絶メッセージを生成するために前記受信した連番を用いるように構成される、システム。
【請求項４４】
請求項４０記載のシステムにおいて、低レイテンシ・システムは、当該低レイテンシ・システムが前記１つ以上の取引所サーバと通信するのに用いる交換通信プロトコルと同一である交換通信プロトコルを用いて、前記クライアント取引エンジンと通信する、システム。
【請求項４５】
請求項４０記載のシステムおいて、前記低レイテンシ・システムが実行する前記１回以上の注文前リスク・チェックは、３回以下の注文前リスク・チェックを含む、システム。
【請求項４６】
請求項４５記載のシステムにおいて、前記低レイテンシ・システムが実行する前記３回以下の注文前リスク・チェックは、１回のみの注文前リスク・チェックを含む、システム。
【請求項４７】
請求項４６記載のシステムにおいて、前記１回のみの注文前リスク・チェックは、取引数量チェックである、システム。
【請求項４８】
請求項４５記載のシステムにおいて、前記低レイテンシ・システムが実行する前記３回以下の注文前リスク・チェックは、取引数量チェックと時間期間において前記クライアント取引エンジンがサブミットした取引数についてのチェックとを含む、システム。
【請求項４９】
請求項４５記載のシステムにおいて、前記低レイテンシ・システムが実行する前記３回以下の注文前リスク・チェックは、取引数量チェックと取引注文の値が限度内かどうかについてのチェックとを含む、システム。
【請求項５０】
請求項４０記載のシステムにおいて、前記低レイテンシ・システムは、前記注文後リスク・チェック・データ・センタと通信し、前記取引注文を前記１つ以上の取引所サーバに送るのと同時に若しくはほとんど同時に、前記取引注文を前記注文後リスク・チェック・データ・センタへ送るように構成される、システム。
【請求項５１】
請求項５０記載のシステムにおいて、前記１つ以上の取引所サーバに送られた前記取引注文が、前記注文後リスク・チェックを開始する、システム
【請求項５２】
請求項４０記載のシステムにおいて、前記低レイテンシ・システムは、前記注文後リスク・チェック・データ・センタと通信し、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信し、当該レポートを前記注文後リスク・チェック・データ・センタへ送るように構成される、システム。
【請求項５３】
請求項４０記載のシステムにおいて、前記注文後リスク・チェック・データ・センタは、前記１つ以上の取引所サーバと通信し、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信して前記注文後リスク・チェックを開始するように構成される、システム。
【請求項５４】
請求項４０記載のシステムにおいて、前記注文後リスク・チェックは、前記低レイテンシ・システムが前記１つ以上の取引所サーバに前記取引注文を送信した後に、前記取引注文について実行される、システム。
【請求項５５】
コンピュータによって実施されるクライアント取引エンジンから取引所の１つ以上の取引所サーバに電子取引注文を送信し、前記取引所において前記取引注文を実行する、コンピュータによって実施される方法であって、
前記クライアント取引エンジンが送信した取引注文を、低レイテンシ・システムにおいて受信するステップであって、前記低レイテンシ・システムが少なくとも１つのサーバを備えるステップと、
前記低レイテンシ・システムによって、前記取引注文について１回以上の注文前リスク・チェックを実行するステップであって、前記１回以上の注文前リスク・チェックは、少なくとも１つのサーバを備える注文後リスク・チェック・データ・センタによって前記取引注文について実行される注文後リスク・チェックとは異なり、かつ、当該注文後リスク・チェックよりも計算コストが掛からない、ステップと、
前記取引注文が前記１回以上の注文前リスク・チェックに合格した場合に、前記低レイテンシ・システムによって、前記取引注文を前記１つ以上の取引所サーバに送信するステップであって、前記１つ以上の取引所サーバがメッセージ・プロトコルを実装し、メッセージの連番を維持する、ステップと、
前記取引注文が前記１回以上の注文前リスク・チェックに不合格であった場合に、前記低レイテンシ・システムによって、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において整合したメッセージの連番付与を維持するように、前記クライアント取引エンジンと前記１つ以上の取引所サーバとの間において単一のプロトコル・セッションを維持するステップとを備え、
前記整合したメッセージの連番付与を維持する前記ステップは、前記低レイテンシ・システムによって、非取引注文メッセージを１つ以上の取引所サーバに送ることを含む、
方法。
【請求項５６】
請求項５５記載の方法において、前記非取引注文メッセージは、前記１つ以上の取引所サーバが拒絶された取引注文を受信するかのように、前記１つ以上の取引所サーバが維持する連番を有効に増加する制御メッセージ・タイプである、方法。
【請求項５７】
請求項５５記載の方法において、前記非取引注文メッセージは、ハートビート・メッセージである、方法。
【請求項５８】
請求項５５記載の方法であって、さらに、
前記低レイテンシ・システムによって、前記１つ以上の取引所サーバに前記非取引注文メッセージを送信した後に、前記１つ以上の取引所サーバから連番を受信するステップと、
前記低レイテンシ・システムによって、前記１つ以上の取引所サーバから受信した前記連番を用いて生成した連番を有する拒絶メッセージを、前記クライアント取引エンジンに送るステップとを備える、方法。
【請求項５９】
請求項５５記載の方法において、低レイテンシ・システムは、当該低レイテンシ・システムが前記１つ以上の取引所サーバと通信するのに用いる交換通信プロトコルと同一である交換通信プロトコルを用いて、前記クライアント取引エンジンと通信する、方法。
【請求項６０】
請求項５５記載の方法であって、さらに、通信ネットワークを介して前記低レイテンシ・システムと通信する注文後リスク・チェック・データ・センタによって、前記取引注文について前記注文後リスク・チェックを実行するステップを備えており、前記注文後リスク・チェックは、前記低レイテンシ・システムが前記１つ以上の取引所サーバに前記取引注文を送信した後に実行される、方法。
【請求項６１】
請求項６０記載の方法であって、さらに、前記取引注文を前記低レイテンシ・システムから前記１つ以上の取引所サーバに送るのと同時若しくはほとんど同時に、前記取引注文を前記低レイテンシ・システムから前記注文後リスク・チェック・データ・センタに送るステップを備える、方法。
【請求項６２】
請求項６１記載の方法において、前記前記１つ以上の取引所サーバに送られた前記取引注文が、前記注文後リスク・チェックを開始する、方法。
【請求項６３】
請求項６０記載の方法であって、さらに、前記低レイテンシ・システムによって、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信し、前記レポートを前記低レイテンシ・システムから前記注文後リスク・チェック・データ・センタに送るステップを備える、方法。
【請求項６４】
請求項６０記載の方法であって、さらに、前記注文後リスク・チェック・データ・センタによって、前記１つ以上の取引所サーバから注文のレポートについての肯定応答を受信して前記注文後リスク・チェックを開始するステップを含む、方法。
【請求項６５】
請求項６０記載の方法において、前記注文後リスク・チェックは、前記低レイテンシ・システムが前記取引注文を前記１つ以上の取引所サーバに送信した後に、前記取引注文について実行される、方法。
【発明の詳細な説明】
【従来技術】
【０００１】
金融市場では、多くの市場参加者が投資戦略を実施するが、これらには、最新のデータ、即ち、リアル・タイムの市場データに基づいて自律的に取引を実行する、コンピュータ化された取引エンジンを必要となる。これらの取引は、多くの場合、市場データを受信した後にミリ秒単位で実行され、ときとして、数ミリ秒の差が取引の勝者と取引の敗者を分ける可能性もある。遅延に寄与する要因の１つは、レイテンシ、即ち、（ａ）取引エンジンが取引注文を取引所(exchange)に送ったときと、（ｂ）取引注文が取引所によって承認され実施されたときとの間の時間間隔である。
【０００２】
図１ａは、既知の取引アーキテクチャの簡略図である。クライアント取引エンジン１０が、市場データを受信し、それを分析し、それに基づいて取引注文をワイド・エリア・ネットワーク（ＷＡＮ）１２を通じて、ダイレクト市場アクセス（ＤＭＡ）取引エンジン１４に送る。ＤＭＡ取引エンジン１４は、登録されているブローカ／ディーラによってホストされている。ＤＭＡ取引エンジン１４は、取引注文についてリスク・チェックおよび注文の妥当性確認を行い、注文が拒絶されなければ、それを別のＷＡＮ１６を通じて取引所サーバ１８に送り、ここで取引が実行される。取引所サーバ１８は、次いで、取引注文についてのレポートをＤＭＡ取引エンジン１４に返送する。すると、ＤＭＡ取引エンジン１４は、種々の取引後リスク・チェックを実行する。
【０００３】
このようなアーキテクチャでは、注文は２系統のＷＡＮ１２、１６を通じて、そして多数のフィアウォールを介して送られる。また、クライアント取引エンジン１０およびＤＭＡ取引エンジン１４は、通例、ＤＭＡ取引エンジン１４が取引所データ・センタ１８と通信する際に用いるプロトコルとは異なる通信プロトコルを用いて通信する。このため、ＤＭＡ取引センタ１４は注文を一方のプロトコルから他方のプロトコルに変換することも必要となり、これがレイテンシに加わることになる。
【０００４】
また、クライアント・データ・センタ２２は、クライアント取引エンジン１０が実行する取引を追跡することができるように、クライアント取引エンジン１０は、クライアント・データ・センタ２２とも通信状態にある。
【０００５】
別の既知のアーキテクチャでは、図１ｂに示すように、クライアント取引エンジン１０が注文を直接取引所サーバ１８にＷＡＮ１２を通じてサブミットする。このアーキテクチャにはレイテンシ低減という利点があるが、注文がクライアント取引エンジン１０から送られた後、注文が取引所サーバ１８に到達する前には取引前リスク・チェックがこのアーキテクチャにはない（クライアントが行う何らかの取引前リスク・チェックがある場合、それは除く）。この状況では、取引が取引所にサブミットされた後に、ＷＡＮ２３を通じて取引所サーバ１８と通信するデータ・センタ２６によって、取引後リスク・チェックが行われる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
総合的な一態様では、本発明は、取引注文をクライアント取引エンジンから取引取引所に送信し、取引所データ・センタの１つ以上のサーバによって取引を実行するシステムおよび方法に関するものである。
【課題を解決するための手段】
【０００７】
種々の実施形態によれば、本システムは、１つ以上のサーバを備えており、クライアント取引エンジンおよび取引所サーバ（群）と通信する低レイテンシ・システムを備えている。低レイテンシ・システムは、クライアント取引エンジンから取引注文を受信し、取引注文について１回または限定回数の注文前リスク・チェックを実行し、前記取引注文がリスク・チェック（群）に合格したときに、取引注文を取引所サーバ（群）に送信する。また、本システムは、通信ネットワーク（例えば、ＷＡＮ）を通じて前記低レイテンシ・システムと通信する注文後リスク・チェック・データ・センタも備えている。注文後リスク・チェック・データ・センタは、前記低レイテンシ・システムが前記取引注文を取引所サーバ（群）に送信した後に、前記取引注文について注文後リスク・チェックを実行する。こうして、サーバ・センタは、比較的軽量となり、レイテンシを低減するために、少数回だけの取引前リスク・チェックを行うことができる。
【０００８】
また、種々の実施態様では、前記クライアント取引エンジンと前記低レイテンシ・システムとの間には、ホッネットワーク（例えば、ＷＡＮ）のホップがなく、クライアント取引エンジンと取引所サーバ（群）との間にはネットワーク（例えば、ＷＡＮ）のホップがない。種々のサーバ間においてネットワークのホップを排除することによっても、システム・レイテンシを低減することができる。また、前記クライアント取引エンジン、前記低レイテンシ・システム、および取引所サーバ（群）は、取引所データ・センタにおいて一緒に配置してもよい。加えて、低レイテンシ・システムは、当該低レイテンシ・システムが取引所サーバ（群）と通信する際に用いる交換通信プロトコルと同一である交換通信プロトコルを用いて、前記クライアント取引エンジンと通信することもできる。
【０００９】
種々の実施態様において、低レイテンシ・システムは、クライアント取引エンジンおよび取引所サーバ（群）と別個の通信プロトコル・セッションを維持するように構成してもよい。別の実施形態では、低レイテンシ・サーバ・セッションが取引注文をクライアント取引エンジンから受信した同じプロトコル・セッションを用いて、低レイテンシ・システムによって取引注文を取引所サーバ（群）に転送してもよい。このような実施形態では、共通プロトコル・セッション上においてクライアント取引エンジンと取引所サーバ（群）との間で送られるメッセージに対する連番付与を維持するために、低レイテンシ・システムは、クライアント取引エンジンからの取引注文が取引前リスク・チェックで不合格になったとき、修正した取引注文を取引所サーバ（群）に送り、取引所サーバ（群）に取引を拒絶するように構成してもよい。別の実施形態では、低レイテンシ・システムは、クライアント取引エンジンからの取引注文が取引前リスク・チェックで不合格であった場合、連番付与を維持するために、非取引注文メッセージを取引所サーバ（群）に送るように構成してもよい。別の実施形態では、低レイテンシ・システムは、共通プロトコル・セッション上においてクライアント取引エンジンと取引所サーバ（群）との間において送られるメッセージに連番を管理し、メッセージに正しい連番を計算するように構成することもできる。
【００１０】
本発明のこれらおよびその他の潜在的な便益および利点は、以下の説明から明らかとなろう。
【００１１】
本明細書では、本発明の種々の実施形態について、以下の図と合わせて一例として説明する。
【図面の簡単な説明】
【００１２】
【図１ａ】図１ａは、先行技術の取引システムの図である。
【図１ｂ】図１ｂは、先行技術の取引システムの図である。
【図２】図２は、本発明の種々の実施形態による取引システムの図である。
【図３ａ】図３ａは、本発明の種々の実施形態による、図２の取引システムの動作方法を示す。
【図３ｂ】図３ｂは、本発明の種々の実施形態による、図２の取引システムの動作方法を示す。
【図３ｃ】図３ｃは、本発明の種々の実施形態による、図２の取引システムの動作方法を示す。
【図４】図４は、本発明の種々の実施形態による、図２の取引システムの動作方法を示す。
【図５】図５は、本発明の種々の実施形態による図２の取引システムの更に詳細な図である。
【図６】図６は、本発明の種々の実施形態によるプロセスのフローチャートの図である。
【発明を実施するための形態】
【００１３】
図２は、本発明の種々の実施形態による取引システム即ちアーキテクチャ３０の図である。図２のアーキテクチャ３０では、クライアント取引エンジン１０がその取引注文を低レイテンシ・システム３２に送る。低レイテンシ・システム３２は、取引所に登録されているブローカ／ディーラによってホストすることができる。低レイテンシ・システム３２は、以下で更に説明するような１つ以上の低レイテンシ・サーバを備えており、取引前リスク・チェックおよび取引妥当性確認を、取引に関して実行し、受入可能であれば、取引を取引所サーバ１８に送信し、取引所サーバ１８において取引を実行する。取引注文が、低レイテンシ・システム３２によって受入できないと判断された場合、低レイテンシ・システム３２は取引を拒絶することができる。取引注文は、例えば、ある単位量の公開取引証券（株式または債券のような）を購入または売却する注文とすればよい。また、取引注文は、デリバティブ契約を始めるための注文とすることもでき、この場合、例えば、取引所はデリバティブ取引所である。
【００１４】
図２に示すように、クライアント取引エンジン１０は、クライアント・データ・センタ２２と通信ネットワーク２０を通じて通信することができる。
【００１５】
ＤＭＡ取引エンジン１４が種々の取引前リスク・チェックを実行する図１に示す先行技術のシステムと比較すると、低レイテンシ・システム３２は、１つまたは数個の取引前リスク・チェックのみを実行するとよい。例えば、一実施形態では、低レイテンシ・システム３２は、取引注文において取引される量だけをチェックすることができる（例えば、それが多すぎるかまたは少なすぎるか）。その量が規定の限度以内でない場合、低レイテンシ・システム３２は取引を拒絶することができる。その量が規定の限度以内である場合、低レイテンシ・システム３２は注文を取引所サーバ１８に転送することができる。また、低レイテンシ・システム３２は、規制(Regulation)ＮＭＳに対する遵守についての、遵守チェックのような、レイテンシにあまり悪影響を及ぼさない、非リスク注文前チェックを備えることもできる。
【００１６】
注文後リスク・チェック・データ・センタ３４は、低レイテンシ・システム３２と通信ネットワーク３６を通じて通信し、低レイテンシ・システム３２が実行しない注文について、一層精巧化した近時間(near-time)注文後リスク・チェックおよび妥当性判断を実行することができる。このようなデータ・センタ３４が実行する注文後リスク・チェックは、例えば、複雑な市場影響分析（例えば、取引が市場にどのような影響を及ぼすか）、および取引がクライアントの他のポジション(position)にとって不利になるか否かについての判断を含むことができる。取引注文が注文後リスク・チェックで不合格であった場合、取引所によって未だ実行されていなければ、取引を取り消すことは未だ可能であることもある。また、注文後リスク・チェックで不合格になったことにより、今後のある種の注文が拒絶されたり、および／またはクライアント取引エンジン１０にその取引戦略を変更または見直させる可能性がある。このような実施形態では、取引注文が取引所サーバ１８に送られた後に、注文後リスク・チェック・データ・センタ３４によって一層総合的で計算的に費用がかかるリスク・チェックを実行するので、低レイテンシ・システム３２は比較的軽量となることができ、レイテンシを低減するために、少数のまたは限られた数の取引前リスク・チェックだけを行うことができる。
【００１７】
通信ネットワーク２０、３６は、ＬＡＮ、ＷＡＮ、ＭＡＮ等のような、適した種類のコンピュータ・ネットワークであればいずれでもよく、ＴＣＰ／ＩＰのような、適した通信プロトコルであればいずれでも用いることができる。
【００１８】
図３ａに示すように、一実施形態では、低レイテンシ・システム３２は、取引注文を取引所サーバ１８に送る（ステップ２ａ）ことに加えて、注文後リスク・チェック・データ・センタ３４が注文後リスク・チェックを開始するために、取引注文を取引所１８に送ると同時またはほぼ同時に、注文を注文後リスク・チェック・データ・センタ３４にも送る（ステップ２ｂ）。別の実施形態では、図３ｂに示すように、低レイテンシ・システム３２は、注文を取引所１８に送信し（ステップ２）、取引所１８は取引についてのレポートを低レイテンシ・システム３２に返送する（ステップ３において）。次いで、低レイテンシ・システム３２はレポートを注文後リスク・チェック・データ・センタ３４（ステップ４ａ）およびクライアント取引エンジン（ステップ４ｂ）双方に送ることができる。
【００１９】
図３ｃは、基本的に図３ａおよび図３ｂの実施形態の組み合わせである実施形態を示す。取引注文をクライアント取引エンジン１０から受信した後（ステップ１）、低レイテンシ・システム３２は取引注文を取引所サーバ１８（ステップ２ａ）および注文後リスク・チェック・データ・センタ（ステップ２ｂ）の双方に送る。次いで、取引所サーバ１８が取引についてのレポートを低レイテンシ・システム３２に返送する（ステップ３）。次いで、低レイテンシ・システム３２は、レポートを注文後リスク・チェック・データ・センタ３４（ステップ４ａ）およびクライアント取引エンジン（ステップ４ｂ）の双方に送ることができる。
【００２０】
別の実施形態では、図４に示すように、取引所サーバ１８は、注文後リスク・チェック・データ・センタ３４がリスク・チェックを開始するために、取引に関するレポートを、ネットワーク３６を通じて注文後リスク・チェック・データ・センタ３４に送ることもできる。いずれの場合でも、データ・センタ３４は、低レイテンシ・システム３２が注文を取引所１８に送信した後に、一層総合的なリスク・チェックを実行する。また、いずれの実施形態においても、データ・センタ３４はその取引後リスク・チェックおよび注文の妥当性判断の結果をクライアント・データ・センタ２２に送ることができる（図２参照）。
【００２１】
図１ａを図２と比較するとわかるように、図２のアーキテクチャでは、クライアント取引エンジン１０と取引所サーバ１８との間にネットワークがなく（したがって、ネットワークのホップがない）、一方図１ａのアーキテクチャには２回のＷＡＮホップがある。更に、前述のように、図２における低レイテンシ・システム３２は、図１ａにおけるＤＭＡ取引エンジン１４が実行する一層総合的なリスク・チェックと比較して、１回または少数回の取引前リスク・チェックにしか備えることができない。これらの要因が、図１ａのアーキテクチャと比較して、図２のアーキテクチャの低レイテンシに寄与する。
【００２２】
加えて、更にレイテンシを低減するために、一実施形態では、クライアント取引エンジン１０、低レイテンシ・システム３２、および取引所サーバ１８を、取引所のデータ・センタ４０と同じ場所に設置してもよい。サーバ１０、３２、１８を１つのデータ・センタ４０に一緒に設置することにより、通常は、データ・パケットが構成機器間を移動するのに要する時間が短縮する。別の実施形態では、取引所は、クライアント取引エンジン１０および低レイテンシ・システム３２を物理的にホストする能力を有していない場合、クライアント取引エンジン１０および低レイテンシ・システム３２を、取引所サーバ１８に物理的に近い同一設置設備（図示せず）（例えば、１マイル以内または５マイル以内）に一緒に設置することができる。また、他の実施形態では、低レイテンシ・システム３２をデータ・センタ４０において取引所サーバ１８と一緒に設置することもでき、そしてクライアント取引エンジン１０を近隣（例えば、５マイル以内）に設置することができる。
【００２３】
種々の実施形態において、クライアント取引エンジン１０は、低レイテンシ・システム３２が取引所サーバ１８と通信するために用いる交換通信プロトコルと同じ通信プロトコルを用いて、低レイテンシ・システム３２と通信することができる。例えば、双方の通信リンクはＦＩＸ（金融情報交換;Financial Information eXchange）プロトコル、ＯＵＣＨプロトコル、ＣＭＳ（共通メッセージ交換）プロトコル、または適したプロトコルであればその他のいずれでも用いることができる。一実施形態では、低レイテンシ・システム３２は２つのプロトコル・セッション、即ち、クライアント取引エンジン１０とのセッション、および取引所サーバ１８との別のセッションを維持してもよい。
【００２４】
別の実施形態では、クライアント取引エンジン１０と取引所サーバ１８との間に１回のプロトコル・セッションがあればよく、低レイテンシ・システム３２は、セッション上においてクライアント取引エンジン１０と取引所サーバ１８との間でトラフィックを受信し転送する役割を果たすだけとする。殆どの取引(exchange)プロトコルでは、送信側および受信側は、互いに送るメッセージの連番を維持する。これは、失ったメッセージを検出するための共通メカニズムである。低レイテンシ・システム３２は取引注文について１回以上の取引前リスク・チェックを実行し、取引前リスク・チェックで不合格となった取引を拒絶し、取引注文が取引所サーバ１８に転送されないようにしているので、低レイテンシ・システム３２は、このような実施形態では、連番付与問題に取り組み、拒絶後に来る次の取引注文が取引所サーバ１８に出現する際に、連番が跳ばないようにすることが好ましい。同様に、連番付与に取り組まない場合、取引所サーバ１８がその次の連番で応答すると、クライアント取引エンジン１０は、拒絶されたメッセージによって既に低レイテンシ・システム３２からクライアント取引エンジン１０に送られた番号と同じ連番を二重に受信することになる。
【００２５】
この問題を解決するために、一実施形態では、低レイテンシ・システム３２が、取引注文が取引前リスク・チェックで不合格になったと判断した場合、低レイテンシ・システム３２は、修正した取引注文を取引所サーバ１８に送ることによって、取引を拒絶し、取引所サーバ１８が取引を拒絶するような仕方で取引注文を修正する。低レイテンシ・システム３２は、例えば、注文におけるデータを修正するまたは余分な情報（例えば、フラグをセットする）を注文に加えることによって、取引所サーバ１８に取引を拒絶させるような仕方で取引注文を修正することができる。このような実施形態では、連番付与は正しいままであり続ける。
【００２６】
多くの拒絶があるという希な場合には、低レイテンシ・システム３２はこれら修正取引注文の多くを取引所サーバ１８に送らなければならないこともあり、これによって低レイテンシ・システム３２のレイテンシに悪影響を及ぼすこともあり得る。このような場合、取引所１８との接続を欠落させる（または、メッセージを取引所サーバ１８に転送するのを中止する）ように、低レイテンシ・システム３２を構成してもよい。
【００２７】
別の実施形態では、修正した取引注文を取引所サーバ１８に送る代わりに、連番付与を維持するために、非取引注文メッセージを取引所サーバ１８に送るように低レイテンシ・システム３２を構成してもよい。非取引注文メッセージは、例えば、心音メッセージ(heartbeat message)とすればよい。この種のセッション制御メッセージは、拒絶された取引注文を受信したかのように、取引所の連番を事実上増加させる。次いで、低レイテンシ・システム３２は取引所からの連番を用いて、拒絶メッセージを作成し、クライアント取引エンジン１０に返送することができる。
【００２８】
更に別の実施形態では、修正した取引注文または非取引注文メッセージを送る代わりに、両端において連番を管理し、双方の側に送るべき正しい連番を計算するように、低レイテンシ・システム３２をプログラムし直してもよい。
【００２９】
図５は、本発明の種々の実施形態によるアーキテクチャの更に詳細な図である。矢印５０で示すように、クライアント取引エンジン１０は、１つ以上のサーバ５２を備えており、取引注文を低レイテンシ・システム３２の低レイテンシ・サーバ５３に、ファイアウォール（群）２４、クライアント取引エンジン・スイッチ５４、および低レイテンシ・サーバ・センタ・スイッチ５６を通じて送信する。低レイテンシ・サーバ５３は、注文前リスク・チェックを実行した後、矢印５７で示すように、注文を取引所５８のサーバ・ファーム１８に、低レイテンシ・サーバ・スイッチ５６、６０、ファイアウォール２４、取引所ルータ６２、および取引所スイッチ６４を通じて送信することができる。スイッチ５４、５６、６０、６４は、例えば、レイヤ２および／またはレイヤ３のスイッチとすればよい。矢印６６で示すように、低レイテンシ・システム３２のサーバ５３は注文を注文後リスク・チェック・データ・センタ３４のサーバ６３に、サーバ・センタ・ルータ６７、ネットワーク３６、ブローカ／ディーラのデータ・センタ・ルータ６８、およびブローカ／ディーラのデータ・センタ・ファイアウォール７０を通じて送信してもよい。注文後リスク・チェック・データ・センタ３４のサーバ６３は、注文後リスク・チェックおよび注文の妥当性判断を、前述のように実行することができる。
【００３０】
また、図５は、取引所のＷＡＮ／エクストラネット７５も示す。また、クライアント・データ・センタ２２は、ネットワーク２０を通じてクライアント取引エンジン１０と通信するように示されている。図５に示すように、クライアント・データ・センタ２２は、ファイアウォール８２、クライアント・データ・センタ・ルータ８４、ネットワーク２０、およびクライアント取引エンジン・ルータ８６を通じてクライアント取引エンジン１０と通信するサーバ８０を備えることができる。また、図５には示されていないが、注文後リスク・チェック・データ・センタ３４は、低レイテンシ・システム３２も管理するブローカ／ディーラによって管理することもでき、ＷＡＮ（図示せず）のようなネットワークを通じて、クライアント・データ・センタ２２と通信することもできる。別の実施形態では、低レイテンシ・システム３２およびデータ・センタ３４は、異なる実体によって管理することもできる。
【００３１】
種々の実施形態では、取引前数量リスク・チェックに加えて、低レイテンシ・システム３２は追加の取引前リスク・チェックを実行することもできる。但し、この追加のチェックが容認基準を超えてレイテンシを増大しない場合に限る。このような追加の取引前リスク・チェックは、ある時間期間内にクライアント取引エンジン１０がサブミットする取引注文の回数のチェックを含むとよい。例えば、取引エンジン１０からの１秒当たりの取引回数が閾値限度よりも多い場合、低レイテンシ・システム３２は、取引の一部または全部を拒絶することもできる。また、低レイテンシ・システム３２は、取引の額をチェックして、それが容認可能な限度以内であることを確認することもできる。
【００３２】
加えて、種々の実施形態によれば、注文後リスク・チェック・データ・センタ３４は、低レイテンシ・システム３２に対して管理上の変更を行うことができるようにしてもよい。例えば、データ・センタ３４は、取引時間中オフにする命令を低レイテンシ・システム３２に送ることにより、クライアント取引エンジン１０からの全ての取引が取引所サーバ１８に到達するのを妨げることができる。
【００３３】
図２から図５は、１つのクライアント取引エンジン１０および１つの低レイテンシ・システム３２のみを示す。注記すべきは、種々の実施形態では、低レイテンシ・システム３２の１つのサーバ５３は多数のクライアント取引エンジン１０にサービスを提供することができる、即ち、クライアント取引エンジン１０毎に別個のサーバ５３があることも可能であるということである。また、２つ以上のサーバ５３が単一のクライアント取引エンジン１０にサービスを提供することもできる。また、ブローカ／ディーラのような企業がこのような低レイテンシ・システム３２を多数の取引所１８に設立することもでき、サーバ・センタ３２の各々が、注文後リスク・チェックのために１つのデータ・センタ３４と通信することもできる。あるいは、多数のサーバ・センタ３２に応対する多数のデータ・センタ３４があることも可能である。
【００３４】
加えて、本アーキテクチャは、より多くのクライアントをルータ・ペア６７に追加することによって、規模を拡大することもできる。ルータ６７上において、ルート／パケット・フィルタリングを採用し、異なるクライアントがルータ６７を通じて違いに通信するのを防止することもできる。また、クライアント取引エンジン１０および低レイテンシ・システム３２が、直接取引所１８にではなく、同一場所共用設備(co-location facility)に配置されている実施形態では、図５に示すクライアント取引エンジン１０の低レイテンシ・システム３２のコンポーネントは、同一場所共用設備に一緒に配置することができる。このような実施形態におけるレイテンシは、低レイテンシ・システム３２および取引エンジン１０が取引所１８に一緒に配置される場合よりも高くなるが、このような環境は多数の取引所を跨って規模を拡大することができる。例えば、スイッチ・ペア６０は、複数のスイッチまたはＷＡＮルータとすることができ、多数の取引所をルータ／スイッチ・ペア６０に接続することができる。
【００３５】
図６は、本発明の種々の実施形態によるプロセスのフロー・チャートである。ステップ１００において、低レイテンシ・システム３２は取引注文をクライアント取引エンジン１０から受信する。前述のように、注文は、レイテンシを低減するために、ＷＡＮホップを伴うことなく送ることができる。ステップ１０２において、サーバ・センタは、取引注文について、限られた回数の注文前リスク・チェックを実行する。注文前リスク・チェックは、低レイテンシ・システム３２のサーバ５３（図５参照）が比較的軽量であり続けることができるように、回数を制限することにより、取引レイテンシを低減することができる。注文が受入可能である場合、ステップ１０４において、低レイテンシ・システム３２によって取引を取引所１８に送信し、ここで実行する。ステップ１０５において、注文を注文後リスク・チェック・データ・センタ３４にも送り、ステップ１０６において、注文後リスク・チェックを実行する。前述のように、ある種の実施形態では、ステップ１０４および１０５を同時にまたはほぼ同時に実行してもよい。また、図３ｂおよび図４に示すように、実施形態によっては、低レイテンシ・システム３２は取引注文を取引所サーバ１８のみに送ってもよく、注文後リスク・チェック・データ・センタ３４は取引所サーバ１８から直接的または間接的に受信したレポートに基づいて、注文後リスク・チェックを実行してもよい。ステップ１０２に戻り、注文が受け入れることができない場合、ステップ１０８において注文を拒絶する。
【００３６】
別の実施形態では、低レイテンシ・システム３２は、低レイテンシを維持しつつ、他の機能性を備えることもできる。例えば、クライアント取引エンジン１０からの取引注文は、取引所１８において取引される原資産（例えば、証券または商品）に対する現在価格に基づく、スワップ契約を始めるための注文であってもよい。このような場合、低レイテンシ・システム３２は、対応する取引注文を取引所１８に送り、場合によっては、原資産を購入または売却して、スワップの損失を防ぐこともできる。例えば、クライアントがエクイティ・スワップを始め、取引所１８において取引した基礎エクイティ(underlying equity)に対する収益をその一行程(leg)で受け取るようにしたい場合、低レイテンシ・システム３２は対応する取引注文を取引所１８に送り、エクイティを購入することにより、スワップにおけるそのエクスポージャを防ぐことができる。
【００３７】
本明細書において開示した種々の実施形態において、所与の１つまたは複数の機能を実行するために、単数のコンポーネントを多数のコンポーネントで置き換えてもよく、更に多数のコンポーネントを単数のコンポーネントで置き換えてもよい。このような交換が効力を発しない場合を除いて、このような交換は実施形態の意図する範囲に該当するものとする。例えば、本明細書において記載したあらゆるサーバも、「サーバ・ファーム」または協同機能のために配置および構成されたネットワーク接続サーバのその他の集合体と交換することもできる。尚、サーバ・ファームは当該ファームの個々の構成機器間で作業負荷を分散する役割を果たすことができ、多数のサーバの集合的および協同的パワーを利用することにより、計算プロセスを促進することができる。このようなサーバ・ファームは、例えば、異なるマシンからの処理パワーの要求の追跡、ネットワーク要求に基づくタスクの優先順位決定およびスケジューリング、および／または構成機器の故障または運用性低下の場合における偶発事故のためのバックアップの提供というようなタスクを遂行する負荷均衡ソフトウェアを採用することができる。
【００３８】
以上、本明細書においては種々の実施形態について記載したが、これらの実施形態に対して、その利点の少なくとも一部を達成する、種々の修正、変更、および改造が当業者には想起され得ることは明白であろう。例えば、先に説明したプロセスにおけるある種のステップは、異なる順序でまたは同時に実行してもよい。したがって、本明細書に明記した実施形態の範囲から逸脱することなく、開示した実施形態は、このような修正、変更、および改造を全て含むことを意図している。
【図１ａ】
0004610677.tif 000002
【図１ｂ】
0004610677.tif 000003
【図２】
0004610677.tif 000004
【図３ａ】
0004610677.tif 000005
【図３ｂ】
0004610677.tif 000006
【図３ｃ】
0004610677.tif 000007
【図４】
0004610677.tif 000008
【図５】
0004610677.tif 000009
【図６】
0004610677.tif 000010