一日100万株の出来高がある銘柄で、1万株買うだけなら全体の1%なので小さい。そう考えて短時間に注文すると、思った以上に価格が滑ることがある。一日全体では小さくても、その数分間の出来高に対しては大きな注文かもしれないからだ。
発注量を考えるときは、日次平均だけでなく、実際に取引する時間窓の出来高に対する参加率を見る必要がある。ここでは架空の株式取引を使い、分割注文の量、時間、未約定、出口の容量を一つの計画として考える。
分母を一日から発注時間へ変える
一日出来高100万株に対して1万株なら1%だ。しかし発注予定の5分間に市場全体で2万株しか取引されないなら、1万株はその50%に相当する。後者は一日の割合から受ける印象とは大きく違う。
この計算は過去の窓の出来高を使った計画上の比較であり、未来の実際の参加率を保証するものではない。自分の注文が出来高や価格に影響する可能性もある。日次平均を使う指標は便利だが、実際の執行時間と分母をそろえることが出発点になる。

参加率の定義を固定する
参加率は、自分の約定量を対象時間帯の市場出来高で割る考え方だ。ただし、市場出来高に自分の約定を含めるか、対象取引所をどこまで含めるか、立会外や寄り付きの取引を含めるかで値が変わる。
例えば他の市場取引が9000株、自分が1000株なら、合計1万株に対する参加率は10%。他の取引だけを分母にすれば約11.1%となる。数字を比較する前に定義をそろえ、異なる提供元の参加率をそのまま並べない。
時間帯ごとの出来高は均等でない
一日出来高を取引時間で割って毎分同じ数量を注文する方法では、薄い時間に相対的に大きな注文を出す可能性がある。寄り付きや引け、昼間、材料発表直後では取引量の分布が違う。
まず同じ銘柄の同じ時間帯を複数日で比較する。平均だけでなく中央値や薄い日の値も見る。決算日や指数変更日の大きな出来高が平均を押し上げているなら、通常日の容量を過大評価してしまう。
5分ごとの注文量を計画する例
四つの5分窓の予想出来高が、2万株、1万株、4万株、3万株だったとする。説明用に各窓の10%を目安にすれば、2000株、1000株、4000株、3000株で合計1万株になる。
ただし10%は安全基準ではなく架空の設計値だ。同じ参加率でも板、スプレッド、注文方向、情報環境によって費用が違う。予想出来高どおりに市場が動かなければ、予定した時間内に全量を買えないこともある。

未来の出来高をバックテストで先に使わない
過去データでは、その5分間の最終出来高が分かっている。しかし5分の開始時点ではまだ未知だ。最終出来高の10%を最初に発注したことにすると、未来の情報を使った計画になる。
事前の予測で配分する方式と、実際に観測した出来高へ追随する方式を分ける。後者でも、観測から注文到着まで遅れがあり、突然大きな約定が出た直後に追いかけると費用が増える場合がある。単純な割合だけでは実行価格まで決まらない。
POVとTWAPは違う制約を持つ
POV、出来高参加型の執行は、市場出来高に応じたペースを目指す考え方である。TWAPは時間方向へ注文を分ける考え方で、市場が静かでも同じ時間配分を続ければ参加率が上がる場合がある。
Interactive Brokersの教育資料も、選んだ時間内で指定した参加率を目指す出来高参加型の仕組みを説明している。個々のアルゴリズムには価格上限、終了時刻、積極性などの設定があり、同じ名称でも挙動は確認が必要だ。
どちらが常に優れているという話ではない。時間内の完了を重視するか、市場への相対的な量を抑えるかで選択が変わる。出来高参加型でも、将来出来高が少なければ完了しない可能性がある。
完了期限と参加率の両方を必ず守れるとは限らない
予定では20分で1万株買うはずが、実際の市場出来高が想定の半分だったとする。参加率10%を守れば約5000株までしか進まない。残り5000株を最後に成行で買えば、参加率制約を大きく超える可能性がある。
終了時刻に未約定を残してよいのか、時間を延ばすのか、条件を再評価するのかを先に決める。「必ず全量」と「常に低参加率」は、市場次第で両立しない。最後に残量を押し込む処理まで含めてコストを検証する必要がある。
出来高があっても片側の板は薄いことがある
大量の売買が成立した直後でも、今すぐ買える売り板が厚いとは限らない。出来高は既に成立した取引量、板は現在提示されている数量である。過去に取引が多かったことが、次の成行注文の受け皿を保証するわけではない。
参加率と併せて、スプレッド、最良気配の数量、複数価格帯の深さ、注文後の価格変化を見る。出来高の多い急変時は、価格が速く移動している場合もある。量があるから費用が低いと一律には判断できない。
注文を小さく分けても市場への影響は消えない
1万株を100株ずつ100回に分けても、短時間に同じ方向へ出し続ければ市場から見た需要は残る。板が補充される前に買い続ければ、不利な価格へ進むことがある。小口化は無影響化ではない。
また規則的な注文間隔や数量が観測されれば、他の参加者が継続注文を推測する可能性もある。単に乱数で間隔を変えれば解決するものではなく、戦略の目的、市場条件、総量に応じた評価が必要になる。
入るときより出るときの容量を見る
数日に分ければ買える数量でも、悪材料が出た一時間で売れるとは限らない。保有量を決める際は、想定する撤退時間の出来高と、売却可能な価格範囲を確認する。入口の平均出来高だけでは、出口の制約が見えない。
例えば1万株を持ち、薄い時間の出来高が一時間2万株しかないなら、その時間内に全部売るには大きな参加率になる。通常時の予測量、出来高半減、スプレッド拡大を別のケースとして考える。出口が難しければ、入口の数量を小さくする判断へつながる。
複数戦略の注文は口座全体で合算する
戦略Aが出来高の5%、戦略Bも5%、戦略Cも5%を買うなら、同じ銘柄・同じ時間の全体では15%になる。各戦略が小さく見えても、口座としての注文は集中している可能性がある。
銘柄と方向、時間窓ごとに予定数量を合算し、全体の上限を管理する。別の口座へ分けても市場での総需要が消えるわけではない。手動注文を出す場合も、自動売買側の計画と競合しないよう確認する必要がある。
寄り付きや引けの大量出来高を別扱いする
一括して価格を決める取引では、連続売買の各秒と同じ感覚で参加率を計算できない場合がある。最終的な出来高を知る前に注文締切があり、数量を途中で思いどおりに変えられるとは限らない。
日次出来高に大きな引け取引が含まれているのに、自分は昼間だけ売買するなら、その出来高を昼の執行容量へ足すのは不適切だ。自分が参加できる時間と取引方式の量を分母にする必要がある。
実測する指標は完了率と費用をセットにする
平均約定価格が有利でも、注文の半分しか成立していなければ全量完了した方式と単純比較できない。目標量、約定量、未約定量、平均価格、費用、終了時点の参照価格を残す。
参加率を下げた結果、費用が下がったのか、単に取引をしなくなったのかを分ける。未約定の評価は、その後に必ず不利だったという意味ではないが、同じ売買意図から出発した比較に必要だ。成立した部分だけの成功率を強調しない。
指値上限があると出来高が増えても進まない
買いの上限価格を1000円に設定し、市場が1005円で大量に取引されている場合、出来高が増えても自分の注文は進まない。参加率は唯一の制約ではなく、価格条件と同時に働く。出来高の10%だから必ず予定量を買えると考えないことが重要だ。
価格上限を外せば完了率は上がる可能性があるが、当初の投資判断で許容した価格を超える。未約定を減らすためだけに上限を変更するなら、その変更も戦略の一部として検証する。執行アルゴリズムが売買の根拠を勝手に広げないよう、条件変更の権限と記録を明確にしたい。
実績参加率と計画参加率を分ける
計画では10%だった注文も、実際には市場出来高の変化や未約定によって3%や20%になり得る。各時間窓の実約定量を実出来高で割り直し、設定値からのずれを残す。設定画面に10%と表示されていたことは、その期間の実績を証明しない。
ずれが生じた理由を、価格制約、数量単位、観測遅延、終了時の残量処理、出来高予測の誤差へ分ける。高参加率になった時間だけ費用が悪化していないかも見る。日次の平均参加率では短い集中が隠れるため、実際に発注した粒度に近い窓で点検することが役立つ。
数量拡大の前に小さい実測を行う
複数の取引場所の出来高を合算する場合は、自分の注文が実際に到達できる市場かも確認する。アクセスできない市場の大量売買を分母へ足すと、自分の参加率は低く見えるが、発注先の板に与える負担は減らない。重複配信された同一約定を二回数える誤りもあるため、集計範囲と取引識別子を点検する。市場全体で小さい注文と、利用可能な流動性に対して小さい注文は別である。
少量の実取引で時間帯別の滑りや待機を観測し、バックテストの仮定と比べる。注文量を二倍にしたとき費用も二倍とは限らず、流動性を超えると急に悪化する場合がある。比例計算だけで大きな資金へ拡張しない。
一日出来高の何%かという数字は、粗い入口の尺度にすぎない。実際の時間窓、参加率の定義、完了期限、出口の容量をそろえて考えることで、注文量を市場の流動性へ結び付けられる。売買のアイデアだけでなく、それを無理なく実行できる量までが戦略なのである。
参考:Interactive Brokersの出来高参加型執行の解説。参加率と出来高の数値は独自の架空例であり、安全な上限を示していない。

コメント