◆アルゴリズム取引　高頻度取引編　～取引後のコスト分析をしよう、敵を知り己を知れば百戦危うからず～◆

## モチベーション

投資家の理想的な戦略を実現するためには、利益を追求するだけでは厳しく、リスク管理やコストについて考える必要が出てきます。
この記事では、主にコストについて紹介します。具体的に、どういった種類のコストが合って、それらのコストがどういったものなのか、対処法はあるのか等について解説していきたいと思います。
ただ、参考文献が英語で今回はかなり用語が難しかったため、翻訳の精度がご容赦くださいませ。

取引コストは、高頻度取引戦略の収益性を左右する可能性があります。長期的な戦略では無視できる可能性のあるトランザクションコストは、高頻度の設定で劇的に増幅されます。
市場の動きを海の波のパターンと例えると、長期的な投資戦略は、波に乗るサーファーと考えることができます。高頻度取引の戦略は、海底に平行に投げられた小石や海岸近くの小さな波紋をかすめるようなものです。波のパターンの小さな変化は、大きな波を飼いならすサーファーの能力に大きな違いはありません。一方、波の構造がわずかに変化すると、小石の軌道が変わる可能性があります。小石が小さいほど、波形、サイズ、速度の影響が大きくなります。取引コストは、大規模な市場の動きに乗ろうとする低頻度の戦略ではほとんど認識できない市場の波の特性と考えることができます。同時に、取引コストは高頻度取引の収益性に大きく影響し、市場の波紋を最小限に抑えようとします。この章では、高頻度取引に影響を与える透明で潜在的なコストに焦点を当てます。市場の構造と実現された実行における在庫と流動性の役割、およびトレーダーが最良の価格を取得できるようにする注文スライスやその他の取引最適化手法について説明します。

この記事では、**取引コストの見つけ方と管理方法に加えて、取引後のパフォーマンスを分析するための一般的なアプローチについても説明します。**

取引後の分析を2つのパートで説明します。

- **1.コスト分析-すべてのライブトレーディング戦略の実現コスト**
- **2.パフォーマンス分析-ベンチマークと比較した実行パフォーマンス。**

取引後分析は、各取引後、および各取引日の終わりに実行できます。多くの場合、分析は自動的に開始および実行され、一貫した日次レポートを生成するようにプログラムされています。レポートは取引戦略ごとに生成され、すべてのポートフォリオマネージャーまたはストラテジスト、および実行プロセスに関与している場合はすべてのトレーダーによって調査されます。コスト分析とベンチマーク分析については、次のセクションで説明します。

## 取引後取引コスト分析

執行コストの分析は、タイプ別、および個々の取引、取引戦略、ポートフォリオマネージャー、または執行トレーダーが負担するコストの特定と見積もりから始まります。執行費用は、買い手または売り手が支払うが、買い手または売り手が受け取らない取引手数料または手数料です。初心者は、取引費用がブローカー手数料と交換手数料のみで構成されていると想定する場合があります。実際には、ほとんどの取引には少なくとも9種類のコストがかかりますが、そのほとんどは直接観察できず、厳密な見積もりプロセスが必要です。最も一般的な実行コストは次のとおりです。

- **透明な執行コスト(Transparent execution costs ※事前に分かるコストです**):
 - ブローカーの手数料
 - 取引所の手数料
 - 税金
- **潜在的な執行コスト(Latent execution costs)**
 - ビッド/アスク スプレッド
 - 投資の遅延
 - 価格変動(*Price Appreciation ※普通に訳すと価格上昇ですが、変動による損失を意味するので価格変動と訳しました*)
 - マーケットインパクト
 - タイミングリスク
 - 機会損失
 
取引活動の前に知られているコストは「透明」または「明示的」と呼ばれ、見積もる必要のあるコストは「潜在的」または「暗黙的」と呼ばれます。 Kissell and Glantz（2003）によると、透明なコストは取引前に確実にわかっていますが、潜在的なコストは、過去の取引のデータから推測されるコストの履歴分布からのみ推定できます。潜在的なコスト値を見積もる目的は、実行中のこれらのコストに関する取引前の不確実性を取り除くことです。該当するすべての実行コストが特定および見積もられると、コスト情報がトレーディングチームに中継され、より優れた、よりコスト効率の高い実行を実現する方法が見つかります。
次のセクションでは、各種類の実行コストの識別と見積もりの​​メカニズムについて説明します。


## 透明な執行コスト

# ブローカー手数料
ブローカーは、さまざまな取引所やディーラー間ネットワークへの接続を提供するビジネスのコストをカバーするために手数料を請求します。ブローカー手数料には、固定コンポーネントと可変コンポーネントの両方を含めることができます。固定コンポーネントは、月ごとのフラットコミッションまたはトレードごとのフラットチャージであり、多くの場合、トレードごとの最小値です。変動要素は通常、各取引のサイズに比例し、取引サイズが大きいほどコストが低くなります。ブローカーは、ビジネスを差別化するためにカスタム価格スケジュールを設定します。一部のブローカーは、他の取引商品にプレミアムレートを請求しながら、特定の証券セットに対してより低い手数料を見積もる場合があるため、実行中のブローカーごとのコスト見積もりの​​違いは重要です。ブローカーの手数料は、ブローカーが特定の会社から受け取るビジネス全体、およびブローカーが直接執行するサービスに加えて提供する「ソフトドル(*soft-dollar*)」取引の範囲にも依存する場合があります。ブローカーの手数料は通常、次のサービスを対象としています。

- 取引手数料
- 金利、資金調達手数料
- マーケットデータ及びニュースの費用
- 研究費用
- その他雑費

一部のブローカーディーラーは、ストリーミング市場データや独自の調査などの他のプレミアム情報へのアクセスに対して追加料金を顧客に請求する場合があります。他の人は、多くの追加の雑費を別々に請求するかもしれません。
ブローカー手数料は通常、バンドル(*bundled*)とアンバンドル(*un-bundled*)の2つの形式で提供されます。バンドルされたコミッションは、契約ごとの固定のオールイン価格であり、株式、先物、または商品取引が実行される取引所の手数料が含まれる場合があります。たとえば、固定バンドル料金は、1株あたり0.10米ドルにすることができます。バンドルされていない手数料は、交換手数料とブローカー手数料を別々に会計処理します。取引所は異なるレートを請求するため、バンドルされていない料金体系により、投資家は支払う手数料を最小限に抑えることができます。株式ブローカーは、次のセクションで説明する交換手数料に加えて、取引する株式1株あたり0.0001米ドルから0.003米ドルの手数料を請求します。同様に、外国為替では、一部のブローカーディーラーは、増加したビッドアスクスプレッドのすべてのコストを価格設定することにより、「手数料なし」のプラットフォームを提供します。他の人は反対の極端に行き、微細な取引機能の「バンドルされていない」リストに従ってすべての取引の価格を設定します。

ブローカーディーラーはまた、現金口座で顧客に支払う利息や、証拠金融資やその他の形態のレバレッジなどのサービスに対して顧客に請求する融資手数料についても異なります。現金勘定は、取引戦略によって展開されない総資本の部分です。たとえば、会社がブローカーディーラーと管理しているアカウントの合計サイズが100,000,000ドルであり、この金額のうち1つが20,000,000ドルのみを積極的に取引している場合、残りの80,000,000ドルはアカウントに「現金」のままです。ブローカーは通常、この現金を使用して他の顧客へのローンを進めます。ブローカーは、現金口座の所有者にパッシブキャッシュバランスの利息を支払います。多くの場合、利息はベンチマークレートから数パーセントを差し引いたものです。ベンチマークレートは通常、米ドル建ての現金口座のフェデラルファンド金利と他の通貨の預金の中央銀行の同等物です。サンプルレートは、例えば、LIBORマイナス0.1パーセントとして見積もることができます。ブローカーは通常、借入投資家のレバレッジに資金を提供するためにベンチマークレートとスプレッド（0.05％– 1％）を請求し、借入活動と貸付活動の間のスプレッドから収入を生み出します。スプレッドは、理想的には借り手の信用力を反映しています。

ブローカーの手数料は、執行のかなり前に交渉されます。ブローカーの手数料コストを詳細に理解することで、複数の戦略の注文をまとめたり、注文をより小さなチャンクに分解したりすることで、注文ごとのコスト構造を最適化できます。

# 取引手数料

取引所は、さまざまなブローカーディーラーまたは電子通信ネットワーク（*ECN: electronic communication networks*）からの注文をマッチングし、それらのサービスの料金を請求します。すべての取引所のコア製品は、トレーダーが取引所で取引しようとしているオープン売買の利息の在庫です。流動性を引き付けるために、取引所は流動性を供給する注文よりも流動性を消費する注文に対して高い手数料を請求します。流動性を引き付けるために、一部の取引所は、流動性を消費するトレーダーのみに請求する一方で、流動性を供給するトレーダーに支払うところまで行きます。

流動性はオープン指値注文によって作成されます。現在のアスクよりも低い価格で行われた指値買い注文は、現在のビッドよりも高い価格で行われた指値売り注文と同様に流動性を提供します。一方、成行注文は、取引所で利用可能な最良の指値注文と即座に照合され、流動性を減らします。指値注文も流動性を消費する可能性があります。マーケットアスク価格以上で行われた指値買いは、利用可能な最良の指値売りと即座にマッチングするため、取引所から売り注文が削除されます。同様に、市場の入札価格以下で行われた指値売りは、市場の売りと同様に、利用可能な最良の入札と即座にマッチングします。ブローカー手数料と同様に、為替手数料は執行前に交渉されます。

# 税金

ベンジャミン・フランクリンによれば、「この世界では、死と税金を除いて、確かなことは何も言えません。」税金は、取引事業が所在する適切な管轄区域によって、取引事業の純利益から請求されます。高頻度取引は、ほとんどの法域で減税キャピタルゲインの傘下に入る1年以上の投資とは異なり、通常は全税率の対象となる短期利益を生み出します。地元の公認会計士または公認会計士は、適切な税率に関する豊富な知識を提供できる必要があります。適切な税率は、取引活動に先立って決定することができます。

## 潜在的な執行コスト

# ビッド/アスク スプレッド

ビッド/アスク スプレッドは、市場ビッド（市場参加者が特定の証券を購入する意思がある最高価格）と市場アスク（市場参加者が証券の販売に同意する最低価格）の間の価格差です。最も一般的には、ビッド/アスク スプレッドは、カウンターパーティとして機能するリスクを市場参加者に補償し、市場の不利な動きの影響を緩和します。

ビッド/アスク スプレッドは事前にはわかりません。代わりに、それらは確率変数または確率変数であり、それらの履歴値の分布の形状によって最もよく特徴付けられます。したがって、コスト分析の目的は、将来のシミュレーションやライブ取引活動でビッドアスクスプレッド予測の精度を高めるために使用できるビッド/アスク スプレッドの分布を推定することです。

ビッドアスク分布のパラメーターを理解するために、トレーダーは、平均や標準偏差など、ビッドアスクスプレッドの主要な特性を確認します。過去の認識に基づくスプレッドのおおよその位置は、時間帯、市況、およびスプレッドの価値に影響を与える可能性のあるその他の要因によってグループ化されたスプレッドの統計的特性を計算することによって作成されます。

# 投資遅延コスト

遅延コストとも呼ばれる投資遅延コストは、投資決定が行われてから取引が実行されるまでに発生する、取引された証券の市場価格の不利な変化です。次の例は、投資遅延コストの概念を示しています。取引戦略では、株式（IBMなど）が56.50ドルでの買いであると識別されますが、市場買い注文が実行されるまでに、市場価格は58.00ドルまで上昇します。この場合、希望価格と実行時に取得された価格の1.50ドルの差が、投資遅延のコストになります。体系的な高頻度取引環境では、投資遅延コストは次の状況によって発生します。

- 1.ネットワーク通信の中断は、タイムリーな実行を混乱させ、注文の送信を遅らせる可能性があります。
- 2.清算カウンターパーティは、同時注文の過負荷を経験する可能性があり、その結果、注文処理のバックログとそれに続く実行の遅延が発生します。このような状況は、ほとんどの場合、変動性の高い環境で発生します。大規模な混乱がない場合、取引量が多いことによる遅延は最大数秒続く可能性があります。

投資遅延のコストは、変動の少ない市場での数ベーシスポイントから、EUR/USDの為替レートなどの非常に流動的で変動性の高い証券での数十ベーシスポイントまでさまざまです。投資遅延コストはランダムであり、取引前に正確に知ることはできません。ただし、過去の取引から推測される投資遅延コストの分配により、取引戦略開発プロセスで使用される予想コスト値が生成される可能性があります。

たとえ現在のテクノロジーを使用しても、投資遅延コストを完全に排除することはできませんが、コストを最小限に抑えることはできます。バックアップ通信システムと取引活動の継続的な人間による監視により、ネットワークの問題を検出し、代替のバックアップチャネルに沿って注文を宛先にルーティングし、取引情報の継続的な送信を保証できます。

# 価格変動コスト

価格変動コストとは、大きなポジションの実行中に投資価値が失われることを指します。かなりのサイズのポジションは、市場にすぐには吸収されず、小さなブロックに「スライス」する必要がある場合があります。1小さなブロックは、特定の期間にわたって一度に1ブロックずつ実行されます。実行中、取引された証券の価格は、自然な市場の動きの結果として上昇または下落する可能性があり、潜在的に価値の増分損失を引き起こす可能性があります。このような価値の損失は価格変動コストとして知られており、過去の取引に関する情報を使用して見積もることができます。価格変動コストは、マーケットインパクトコスト、または後で説明する取引活動自体によって生成される価格の不利な変化とは異なります。価格変動コストの例として、次のEUR/USD取引について考えてみましょう。取引戦略により、EUR/USDが1.3560で過小評価されていると判断され、次の3分間に実行する必要がある1億ドルの買い注文が出されたとします。予測は正しいことが判明し、EUR/USDは次の2分間で1.3660に変動します。したがって、価格変動コストは1分あたり50bpsです。価格変動コストは、EUR/USDでの取引活動ではなく、価格の基本的な変動によるものであることに注意してください。

# マーケットインパクトコスト

マーケットインパクトコストは、成行注文の実行による市場価格の不利な変化を測定します。より正確には、マーケットインパクトコストは、成行注文主導の取引に続く流動性の低下によって引き起こされる投資価値の損失です。すべての成行注文は利用可能な流動性を減らし、取引された証券の価格に変化を引き起こします。市場の買い注文は、証券の利用可能な供給を減らし、株価を即座に上昇させます。成行注文は証券の需要を減らし、証券の価格を瞬時に下落させます。マーケットインパクトは、注文によって作成された在庫の不均衡、供給または需要に対する注文の圧力、または他の市場参加者に過小評価されたセキュリティを示す取引の情報コンテンツが原因である可能性があります。マーケットインパクトコストは、大量注文が実行されたときに最も顕著になります。注文をより小さな標準サイズの「クリップ」または「ラウンド」に分割すると、マーケットインパクトが軽減されることが示されています。
マーケットインパクトの特性は次のように説明できます。

- 1. 指値板が観察できない場合、市場への影響の事前の予想は、通常の取引条件での買い注文と売り注文で同じです。言い換えれば、情報がない場合、市場で目立つ指値買いの数は指値売りの数に等しいと合理的な精度で仮定することができます。ただし、指値板を観察できる場合は、注文書を「ウォーク」することにより、注文書に存在する指値注文に基づいて市場への影響を正確に計算できます。
- 2. 市場への影響は、取引が行われた時点での全体的な市場ボリュームに対する取引のサイズに比例します。
- 3. 在庫効果による市場への影響は一時的なものです。言い換えれば、買い注文後の価格上昇が、市場ニュースではなく、実行ブローカーの注文の「消化」によるものである場合、実行ブローカーが「消化」を終了した後、価格は通常のレベルに戻る可能性があります。市場への影響コストが一時的であるか永続的であるかは、他の市場参加者の信念と行動に依存します。
- 4. 市場への影響は、成行注文にのみ付随します。指値注文は市場への影響コストを負担しません。
- 5. 市場への影響に関する情報内容は、反対の注文によってキャンセルされます。

理想的な市場条件では、市場影響コストは、市場の2つの状態間の証券の市場価格の差として測定されます。

- 状態1: 注文が執行された状態。執行は時刻$t_0$に開始され、時刻$t_1$に執行が完了しました。
- 状態2: 注文は執行されなかった状態。（$t_0$から$t_1$まで、市場は注文によって邪魔されませんでした。）

現実の状況では、執行されていない市場と市場への取引執行の影響の両方を同時に観察することはほとんど不可能であり、市場への影響の真の価値は容易に入手できない可能性があります。代わりに、Kissell and Glantz（2003）によると、市場への影響は、$t_0$での市場価格と$t_0$から$t_1$までの平均実行価格との差として推定されます。

```math
\displaystyle MI = P_0 - \frac{1}{N}\sum_{N} P_{\tau, n}
```

ただし、$MI$はマーケットインパクトを意味し、$P_0$は執行直前の$t_0$における株価、$N$は$t_0$から$t_1$までの合計執行量、$P_{\tau, n}$は$n$番目の執行の約定価格で、$\tau$は執行時間、$\tau \in [t_0, t_1]$です。

マーケットインパクトのコストは、取引前と取引後の両方で測定することは困難ですが、マーケットインパクトコストは、特定の証券の総市場流動性のパーセンテージとして見積もることができます。戦略が消費する市場流動性の割合が高いほど、取引後の不利な価格変動が大きくなり、同じ方向での後続の取引によって発生する市場影響コストが高くなります。

消費流動性は、成行注文の執行に直接起因する、観察された市場ボリュームのパーセンテージとして概算できます。成行注文は最新の市場価格で処理されるため、成行注文は利用可能な流動性を消費し、市場に影響を与えるコストを生み出し、同じ方向でのその後の取引をより高価にする可能性があります。一方、指値注文は、供給流動性は、成行注文が「交差」した場合にのみ実行され、注文が実行された時点で市場への影響はほとんどありません。ただし、指値注文は実行に失敗し、市場が不利に動いた場合に重大なリスクをもたらす可能性があります。

成行注文と指値注文の組み合わせは、市場への影響のコストと不履行のリスクのバランスを取るのに役立ちます。成行注文と指値注文の最適な比率は、取引戦略のリスク回避係数に依存する可能性があります。たとえば、Almgren and Chriss（1999）は、市場対指値最適化問題を次のように指定します。

```math
\min_{\alpha} \mbox{MICost}(\alpha) + \lambda \mbox{Risk}(\alpha)
```

ただし、$\alpha$は取引戦略の量とマーケット出来高の割合、$\lambda$はリスク回避係数である。
一般的に、リスク回避度0.5は、保守的な富を維持する投資家の戦略に対応し、リスク回避度0は、リスクをほとんど考慮せずにリターンを最大化するように設計されたリスク中立戦略に対応します。上の式を用いて、さまざまな戦略のMICost / Riskプロファイルをプロットすることでリスク回避度を求めることが出来ます。結果として得られる効率的な取引フロンティアは、最良の実行戦略を特定します。

Kissell and Malamut（2005）によると、マーケットインパクトのコストは、動的ベンチマークを使用して最適化することもできます。これは、「価格スケーリング」と呼ばれることもあります。たとえば、「行使」価格スケーリング戦略では、価格がベンチマークよりも良い場合は常に成行注文の割合が増加し、価格がベンチマークよりも悪い場合は成行注文の割合が減少します。 「富(wealth)」戦略として知られる実行可能な代替戦略は、取引された証券の不利な変化へのエクスポージャーを最小限に抑えるために、**有利な価格では指値注文を、不利な市況では成行注文を出します**。 「プラス」戦略は、リスク/リターンのフレームワーク内でベンチマークを上回る可能性を最大化します。

ダークプールや似たような環境で指値板を直接観測できない場合は、Kissell and Glantz(2003)は次の式を用いてマーケットインパクトを推定するよう提案しました。

```math
\displaystyle k(x) = \frac{I}{X}\sum_{j} \frac{x_j^2}{x_j + 0.5v_j}
```

$I$は即時マーケットインパクト、$X$は注文量、$x_j$は一回の注文量(複数回注文を出すことを想定)、$v_j$は時刻$j$における期待出来高です。
証券のトータルの出来高に対する個々の小包注文(parcel order)のサイズが小さいほど、注文の市場への影響は小さくなります。$v_j$の前にある0.5という係数は、より良いオーダーブックの詳細がない場合のバランスの取れたオーダーブックの素朴な期待を反映しています。買い注文と売り注文の数が等しいと推測すると、指値板の半分が各取引と関連します。

同時に実行される予定の複数の証券のポートフォリオのマーケットインパクトの事前リスクを見積もるために、Kissell and Glantz（2003）は、流動性リスクを潜在的なマーケットインパクトの分散として次のように計算します。

```math
\displaystyle \sigma^2(k(x)) = \sum_{i}\Bigl(\frac{I_i}{X_i}\Bigl)^2 \sum_{j} \frac{x_{ij}^4\sigma^2(v_ij)}{4(x_{ij}+0.5v_{ij})^4}
```

ただし、$\sigma^2(v_ij)$は証券$i$の時刻$j$における出来高の分散です。

その他のアプローチでは、Lee and Ready（1991）によって提案された、板の深さと出来高が観察できない場合の潜在的な市場の深さと対応するマーケットインパクトの推定に利用できます。

# タイミングコスト
タイミングコストは、執行戦略が最適な実行価格で指値で待っている、また注文しようとするのを待っている間に発生する、取引された証券のランダムで予測できない価格変動によるものです。タイミングリスクのコストは、平均して、取引された証券の価格が、投資決定が行われてから成行注文が実行されるまで1秒、10秒、1分などの範囲内でランダムに上昇または下落できる量によって表されます。タイミングリスクコストは、通常は成行注文を使用して実行されるアクティブな市場タイミング活動に適用されます。タイミングコストは指値注文には適用されません。タイミングリスクは、実行の不確実性のいくつかの原因を捉えます。

- 価格のボラティリティ
- 出来高のボラティリティ
- 潜在的なマーケットインパクトの不確実性

基礎となる証券の価格変動に起因する他のコストと同様に、タイミングコストは過去の取引データから見積もることができます。
タイミングコストは平均してゼロになる傾向がありますが、それでもコストはボラティリティとともに取引戦略のリスクプロファイルに影響を与えます。タイミングリスクは分布としてモデル化され、最悪のシナリオはバリューアットリスク（VaR）フレームワークを使用して推定されます。

# 機会損失

機会損失は、注文を完了できないことに関連する費用です。ほとんどの場合、機会費用は指値ベースの戦略を伴いますが、成行注文の実行にも存在する可能性があります。注文を履行できないのは、次のいずれかの要因が原因である可能性があります。

- 市場価格が指値価格に引っ掛からない。
- 市場には希望の価格で注文を履行するための十分な流動性（需要または供給）がなかった。
- 価格が急速に下がったため、注文を履行すると取引が不採算になり、注文がキャンセルされた。
- 機会損失は、注文が実行された場合に生成されると予想される利益として測定されます。

# 参考文献

- *Kissell, Robert and Morton Glantz, 2003. Optimal Trading Strategies. AMACOM, New York.*
- *Kissell, R. and R. Malamut, 2005. “Understanding the Profit and Loss Distribution of Trading Algorithms.” Institutional Investor, Guide to Algorithmic Trading, Spring 2005.*
- *Kissell, R. and R. Malamut, 2006. “Algorithmic Decision Making Framework.” Journal of Trading 1, 12–21.*
- *High-Frequency Trading: A Practical Guide to Algorithmic Strategies and Trading Systems (Wiley Trading), chapter 19*

# まとめ

ここでは、様々な方法でコストについて紹介しました。
取引履歴をどのように分析すればよいのか、コストを無視すれば勝てるけど、コストを考慮すると勝てない等、様々なモチベーションがあると思います。
コストを抑えるためにはコストを分析出来る必要があるため、ここではいくつかのコスト分析手法について紹介しました。
私もコストと戦います（笑）
また、専門的な用語も多く、正直分かりづらい部分も多いと思いますが、今後少しずつ翻訳は改善していこうと思います。