代表的な取引アルゴリズムのパターン
代表的なパターンとして、アービトラージ系、マーケット・メイク系、執行系、ディレクショナル系、があります。これらは独立ではなく、実際には組み合わせや派生等が多数あると考えられています。
1.アービトラージ系
市場の動きを分析し、裁定機会を探索して、裁定取引による収益獲得を狙います。
裁定取引(アービトラージ)とは、同等とされる複数の商品に一時的な価格差が発生したときに、割安価格の商品を購入し、割高価格の商品を売却することで、価格変動リスクを取らずに売買差益を獲得する取引です。直接的な価格の裁定以外にも、統計分析により推定した理論価格を利用した「統計的裁定取引」もこの一種です。(図1)
通常、市場に裁定機会が存在するのはほんの一瞬であるため、最も高度な処理性能が要求されるパターンです。
図1:統計的裁定取引のイメージ
価格に統計的な関係性がある商品X群と商品Y群を発見する。
商品X群の実勢価格から、商品Y群の理論価格(統計的期待値)を算出し、商品Y群の実勢価格との間に差があれば、裁定取引を執行する。
2.マーケット・メイク系
市場に対して買(ビッド)・売(オファー)両方の注文を指値提示して、他の取引参加者からの注文を受けることで、スプレッド収益の獲得を狙います(図2)。
取引所からマーケット・メイカーとして指定された取引参加者のほか、それ以外の取引参加者が戦略として行う場合もあります。
図2:マーケット・メイクのイメージ
市場に対して買指値(ビッド)と売指値(オファー)の両方を提示する。他の取引参加者の注文執行を受けることで、提示した価格の差(スプレッド)分の利益が得られる。
3.執行系
主に大量の注文において、取引注文の執行によるコストの最小化や、約定価格の最適化を狙います。
市場に対して大規模な注文を一度に出すと、その注文自身の影響によって一時的に需給バランスが崩れて、売買価格が不利な方向に変動してしまうことがあります(マーケット・インパクト)。こうしたマーケット・インパクトの発生を抑えたり、約定価格を目標値に近付けたりするために、注文を分割して、1回あたりの数量や頻度を最適化します参考1。
4.ディレクショナル系
市場内外から得られるさまざまな情報を分析して、短期的な価格変動を予測し、それに応じた売買をすることで、売買収益の獲得や、損失の回避を狙います。
ディレクショナル系アルゴリズムは、ときにその影響が顕著に市場に現れるため、「アルゴリズム取引の影響」としてニュースを賑わすのは、概ねディレクショナル系のロジックです。典型的な例は、価格下落の初動を検知して即座に損失回避の売注文が発動し、それが集中して市場の価格が短時間で乱高下する事象です。
他のタイプのアルゴリズムは、どちらかというと取引価格を安定化させる方向に働き、あまり目立つことがありません。一口にアルゴリズム取引といっても、その特色はさまざまです参考2。
取引市場でのアルゴリズム運用
日本取引所の場合、システムに売買注文が出せるのは、「取引参加者」の資格を持つ取引所取引許可業者および登録金融機関に限られます参考3。市場でアルゴリズム取引を運用しているのは、これらの取引参加者のほか、取引参加者と契約してダイレクト・マーケット・アクセス(Direct Market Access, DMA)等を利用する機関投資家などが考えられます。
前述の通り、実運用で有効に機能するアルゴリズムは、非常に有用なノウハウであり、その詳細は一般に公開されることはないブラックボックスとなっています。ここで紹介したパターンに当てはまらない全く新しいタイプのアルゴリズムが存在する可能性もあります。取引環境の進化、取引ルールの更改などに応じて、またアルゴリズムを運用する取引参加者・投資家同士の競争によって、各社のアルゴリズムは絶え間なく高度化されていると考えられます。