↗
TENSORPARADIGMニューラル市場分析
TENSORPARADIGM リサーチ / 複数戦略のポートフォリオ / リスク

複数のトレーディングボットを運用するには:相関の測り方とポートフォリオのリスク管理

時点をそろえた純リターン、リスク寄与度、共通エクスポージャー、口座単位の制御を使い、複数ボットを組み合わせる方法を解説。再現可能な Python と CSV の例を掲載。

結論

複数のトレーディングボットは、リターンの動きと経済的なエクスポージャーが互いを補う場合、ポートフォリオのリスクを下げられます。ただし、ボットの数だけではほとんど判断できません。各ボットの資金を実口座と照合し、同じ時点で評価した純リターンを測定し、各ボットがポートフォリオのボラティリティにどれだけ寄与するかを計算したうえで、同時に損失が出るポジションをストレステストします。本稿の仮定を開示した数値例では、資金の25%を配分したボットが、モデル上のポートフォリオ・ボラティリティの43.19%を占めます。付属コードで計算を再現できますが、人工的に作成した入力は運用実績でも予測でもありません。

この記事で検証できること

  • 欠測データを現金保有日のリターンと取り違えず、比較可能な純リターンから相関行列を作る。
  • 資金配分、現在のエクスポージャー、モデル上のポートフォリオ・ボラティリティへの寄与を区別する。
  • 3つのボットの口座計算を最初から再現し、最大ドローダウンを単純平均できない理由を確かめる。
  • 同時損失のシナリオを口座通貨で計算し、一部を現金に置いたとき何が変わるかを確認する。
  • 注文の同時発注、証拠金の逼迫、古いデータ、停止したボットの再開に対応する共有口座の制御を設計する。

まず、残高を照合できるポートフォリオを作る

利益を出す3つのボットが、1つの脆弱な口座を共有していることもあります。ビットコインのブレイクアウト・ボット、イーサリアムのモメンタム・ボット、機械学習の分類モデルは、コードが違っても、すべて暗号資産市場の上昇に対するエクスポージャーを増やしているかもしれません。個別のダッシュボードでは、合計すると何に賭けているのかは分かりません。まず口座残高、実際の保有ポジション、今後も資金を使い得る未約定注文を確認します。

具体的に始めるには、Python の計算プログラム、テストファイル、入力 CSV、実験プロトコルを同じフォルダーに保存してください。Python 3.10 以降で、以下のコマンドを実行します。外部ライブラリ、ネットワークへのリクエスト、証券会社の認証情報は不要です。実行する前に計算結果の全体を確認することもできます。ZIP のダウンロードは必要ありません。

保存したフォルダーで人工データの例を再現する
python study.py
python -m unittest -v

合計の期末純資産は 100,532.90757 USDT、日次終値ベースの最大ドローダウンは 2.75300% になるはずです。これらは、人工的に作成した24件の観測値に対する会計処理の確認用数値です。2026年9月1~24日という日付はラベルであり、実際のボットが稼いだリターンではありません。CSV は単純リターンを小数で表し、0.010 は +1%、−0.006 は −0.6% を意味します。すべての入力行を確認できます。

リターンが空欄なら、欠測データのエラーを出して処理を停止するべきです。空欄をゼロで置き換えると、「口座価値が分からない」が「口座価値は変わらなかった」に変わってしまいます。この区別を保てるかどうかが、役に立つリスク監視の最初の実践的な確認になります。

実口座と各ボットの仮想残高を分けて考える

口座に 100,000 USDT があるとします。この例では、ボット A に 40,000、B に 35,000、C に 25,000 USDT を割り当てます。これらは資金を全額確保した会計上の運用枠です。外部からの入出金も、枠同士の資金移動もありません。各ボットのリターンは、未使用の現金を含む、その運用枠全体の純資産に適用します。口座純資産は、時価評価した3つの運用枠の合計です。

1つの口座と、実際に確保した3つの資金枠
運用枠初期資金当初の口座ウェイトリターンの分母
ボット A40,000 USDT40%ボット A の運用枠全体の時価純資産
ボット B35,000 USDT35%ボット B の運用枠全体の時価純資産
ボット C25,000 USDT25%ボット C の運用枠全体の時価純資産
合計100,000 USDT100%照合済みの口座純資産

共有ウォレットでは、この区別が重要です。3つのボットがそれぞれ 100,000 USDT の全額を自分で使えると考えて注文量を決めると、合計の要求が利用可能な現金や意図したエクスポージャーと一致しない可能性があります。注文が拒否されることは、ポートフォリオの配分方針ではありません。別のプロセスに資金を使わせる前に、配分システムはすでに確約した資金を予約する必要があります。

外部資金フローがなければ、運用枠の単純リターンは、期末の時価純資産を期初の時価純資産で割り、1を引いた値です。未決済ポジションの損益と、すでに課金された取引コストを含めます。入金、出金、振替があれば、その前後で評価するか、発生時点を考慮する文書化されたリターン計算方法を使ってください。入金は売買利益ではありません。

実際の各期間では、口座リターンは各運用枠のリターンにその期間の期初純資産ウェイトを掛けた値の合計です。リターンが異なると、ウェイトは変動します。毎日固定の 40/35/25 で加重した値は、リバランスされるポートフォリオを表し、一度だけ資金を割り当てた本例の運用枠を再現しません。リバランスには実行日程、売買、場合によってはコストがあり、それぞれの実装が必要です。

会計恒等式:外部資金フローも振替もない場合
sleeve_equity[i, t] = sleeve_equity[i, t-1] × (1 + return[i, t])
account_equity[t] = sum(sleeve_equity[i, t])
weight[i, t-1] = sleeve_equity[i, t-1] / account_equity[t-1]
account_return[t] = sum(weight[i, t-1] × return[i, t])

同時点の純リターンを測り、現在のエクスポージャーを確認する

ここには別々の2つの問いがあります。リターンの相関は、指定した標本期間において、時価評価した戦略の結果がどう連動したかを示します。ポジションのエクスポージャーは、現在の保有内容から口座にどのような損失が生じ得るかを示します。相関行列は過去または人工標本の要約であり、現在の取引の一覧ではありません。

リターン行列では、評価の締め時刻、カレンダー、リターンの定義を統一します。必要なコストと資金フローを調整したうえで、同じ期間同士を比較してください。あるボットの1件目の取引を別のボットの1件目と組み合わせる方法では、発生時点も保有期間も無視されます。累積した純資産水準の相関にも、それまでの履歴が混ざります。本稿の共分散計算に適した入力は、各期間の純リターンです。

実際にポジションを持たず現金で待機していた日のゼロ・リターンは残します。一方、エクスポートの欠落、価格の欠測、更新されていない評価額は調べる必要があります。ヘッジファンドのリターン平滑化に関する研究は、非流動性や価格の入手困難によって測定上のボラティリティが隠れることを示しています。これは丁寧な評価管理の根拠であり、横ばいのボット記録を不正だと決めつけるものではありません。 [5]

行列には、文書化した共通標本を使い、観測数を併記します。各ペアで異なる利用可能日を使うと、一貫したポートフォリオ共分散の計算に適さない行列になることがあります。あるボットが標本期間中ずっと現金だけを保有していた場合、分散がゼロなのでリターンの相関は定義されません。「相関 0.00」と表示すると、実際には推定していない統計量があるかのように見えてしまいます。

付属ローダーは、この例が24時間・週7日の評価日程を想定するため、連続した暦日を要求します。株式市場に応用するなら、想定する取引セッションと休場中の評価方法を独自に定めてください。例のファイルの日付条件を満たすためだけに観測値を作ってはいけません。

ペアの相関が低くても、同時損失は起こる

付属のテストデータには、人工的に作成したことを明示した24組のリターン・ベクトルがあります。A/B の相関は 0.18780、A/C は 0.55422、B/C は 0.43298 です。9月9日と9月18日の2行では、3つともリターンが負になります。後者はそれぞれ −2.5%、−2.2%、−2.8% です。A/B の比較的低い標本相関と、共通の損失日は両立します。

これは計算の例示であり、実際のボットが同時に損失を出す頻度の推定ではありません。標本全体をこちらで作成し、公開しています。市場データの出典も、当てはめた確率分布もありません。一般に、線形相関がゼロでも独立とは限りません。相関だけで依存関係をすべて説明しようとする数学上の落とし穴は、文献で詳しく示されています。 [1]

100,000 USDT から各運用枠を別々に複利計算し、その時価純資産を足すと、以下の結果になります。入力は運用枠の純リターンとして定義しているため、手数料を追加で控除しません。ポジション、注文の約定、流動性、税金、執行コストを個別にモデル化したわけでもありません。

人工データによる口座計算の例:リバランスも実市場リターンもなし
指標計算結果
同時点の観測数人工的に作成した日次データ24行
ボット A / B / C の期末純資産40,284.07 / 35,352.96 / 24,895.87 USDT
合計期末純資産100,532.91 USDT
合計累積リターン+0.53291%
日次終値ベースの合計最大ドローダウン2.75300%
単独最大ドローダウンの当初ウェイト加重平均3.29056%;合計のドローダウンではない
最終資金ウェイト、A / B / C40.07053% / 35.16556% / 24.76390%

合計の最大ドローダウンは 2.75300% です。3つの単独最大ドローダウンを当初ウェイトで加重平均すると、3.29056% になります。各運用枠の最悪のピークからボトムまでの期間が、口座全体の最悪期間と一致するとは限らないためです。ドローダウンは合計純資産の推移から計算し、個別の最悪局面を足したり平均したりしないでください。単独のプロフィットファクターの平均を口座のプロフィットファクターとすることにも、同じ注意が必要です。

相関によってモデル上のポートフォリオ・ボラティリティはどう変わるか

単純なモデルを使えば、依存関係の影響だけを取り出せます。3つのリターン系列の日次標準偏差がそれぞれ 1%、資金配分がそれぞれ3分の1、すべてのペアの相関が同じ ρ だとします。これは別の数学例です。ボラティリティも相関も仮定であり、24行のテストデータから推定した値ではありません。

ポートフォリオの分散は wᵀΣw です。w は資金ウェイト、Σ はリターンの共分散行列を表します。この等ウェイト・等ボラティリティの例では、ポートフォリオの日次標準偏差は 1% × √[(1 + 2ρ)/3] に簡略化できます。相関の仮定をゼロから 0.9 に変えると、モデル上の日次ボラティリティは 0.57735% から 0.96609% に上昇します。ボットの数は3つのままです。

等ウェイトの3ボット:それぞれ日次ボラティリティ 1% を仮定
全ペアで仮定する相関モデル上のポートフォリオ日次ボラティリティ分散化比率
0.00.57735%1.73205
0.50.81650%1.22474
0.90.96609%1.03510

これらの標準偏差は1日の損失上限でも、テール損失の予測でもありません。指定した共分散モデルの下で変動の大きさを要約しています。日ごとの独立性を不用意に想定させる年率換算値は加えず、日次単位のまま示します。

下表の分散化比率は、単独ボラティリティの加重和をポートフォリオ・ボラティリティで割った値です。この共分散モデルを簡潔に表すもので、収益性、運用の信頼性、共通ショックによる最大損害を測る指標ではありません。

資金配分25%でも、モデル上のリスクの43%を担うことがある

資金ウェイトは、お金をどこに割り当てたかを示します。口座の変動をどのボットが支配しているかは示しません。別の明示した共分散モデルで、A、B、C の日次ボラティリティを 1%、2%、3%、全ペア共通の相関を 0.3、資金ウェイトを 40%、35%、25% とします。計算されるポートフォリオの日次ボラティリティは 1.36949% です。

ボット C は資金配分が最小なのに、このモデルのボラティリティの 43.19% に寄与します。最大の資金配分を受けるボット A の寄与率は 17.81% です。分解には標準偏差のオイラー寄与度 RCᵢ = wᵢ(Σw)ᵢ / σₚ を使います。各寄与度を足すとポートフォリオ標準偏差になり、それぞれを σₚ で割ると寄与率になります。これは確立された配分手法であり、私たちの考案ではありません。 [2]

仮定した共分散モデル:人工リターンのテストデータからの推定ではない
ボット資金ウェイト仮定した日次ボラティリティボラティリティ寄与度(ポイント)モデル上のボラティリティ寄与率
A40%1%0.2438917.81%
B35%2%0.5341439.00%
C25%3%0.5914643.19%
ポートフォリオ100%—1.36949100.00%

表の寄与度の単位は、日次標準偏差のパーセントポイントです。同じ共分散項を総分散で正規化するため、その寄与率はポートフォリオ分散の対応する割合にもなります。ある実現ドローダウンの内訳でも、期待損失の内訳でもありません。異なる共分散行列の下では、ヘッジとなる要素の寄与度が負になることもありますが、レバレッジ、流動性、取引相手に関するリスクまで消えるわけではありません。

人工的な数学例。ボット間の相関の仮定が高まるとポートフォリオの日次ボラティリティが上昇し、資金の25%を受け取るボットがモデル上のボラティリティの43.19%を占める。
付属 Python コードで計算した、別々の2つの仮定に基づく共分散モデル。数学上の感応度を示すもので、観測した運用実績や将来リスクの推定ではありません。

2ボットの小さな例なら、違いが直感的に分かります。日次ボラティリティが 2% と 1% の無相関な系列に等額を配分すると、ポートフォリオ・ボラティリティは 1.11803%、リスク寄与率は 80%/20% になります。同じ金額でも分散への寄与は同じになりません。いずれの例も、実口座にとって等リスク配分が最善だと示すものではありません。

相関推定値は、その測定条件と一緒に読む

実際のボット記録では、推定値とともに標本期間と観測数を表示します。事前に決めたウィンドウを比較し、取引ルール、市場エクスポージャー、ボラティリティ、稼働状況の変化を調べます。本当に現金で待機している日が多い系列では、全期間の関係と、両方のボットが活動している間の関係が異なり得ます。最も分散して見える行列を選ぶのではなく、それぞれが何を答えているかを説明してください。

ストレス期間や下落時の診断は有用ですが、標本を選ぶと統計量そのものが変わります。Ang と Chen は、過去の株式データにおける非対称な連動と、特定のリターン条件で選別した相関の解釈の難しさを示しています。選んだ損失日の相関が高いだけでは、安定した過程が変化したことも、リスクの伝播が起きたことも証明できません。選別ルール、観測値、日付を示してください。 [4]

最適化は、さらにもう一段の選択を加えます。多数のボットやウェイトの組み合わせから選ぶと、直近のリターンだけでなく共分散の推定誤差にも適合してしまいます。Ledoit と Wolf の共分散推定の研究は、標本行列のノイズが大きい場合に縮小推定を使う動機を説明しますが、その株式ポートフォリオでの結果は、特定のボット配分を保証しません。 [3]

配分ルールを採用する前に、参照できる履歴、見直し日程、売買回転の制約、その後の評価方法を定義します。直近の勝者のウェイトを繰り返し増やすこと自体が1つの取引戦略です。リバランスのコストと意思決定を記録し、後の期間で検証する必要があります。本稿は最適化モデルを当てはめず、最適ウェイトを特定したとも主張しません。

相関行列に表れない損失をストレステストする

リターン行列と並べて、ポジション単位の一覧を持ちます。各ボットの銘柄・商品、売買方向、数量、取引先、担保、未約定注文を記録してください。エントリー条件が違っても、同じロング・エクスポージャーを生むことがあります。取引先が両建ての両方を実際に保有する場合、反対方向のポジションでネットのエクスポージャーが小さく見えても、大きなグロスのエクスポージャー、資金調達、ベーシス、執行上の負担は残ります。同一商品のポジションを相殺する口座モードもあり、その場合はボット単位の保有帰属と照合方法が変わります。

同時損失を透明な形で計算するため、100,000 USDT の口座がシナリオ開始時点で 40/35/25 のウェイトを持ち、3つの運用枠が同時に 8%、6%、10% を失うと仮定します。口座損失は 7,800 USDT、つまり 7.8% です。これは明示したウェイトでの1期間の仮定シナリオであり、テストデータとも共分散の例とも別です。事象の発生確率や過去の分位点は割り当てていません。

この特定のショックでは、等額配分の損失は 8,000 USDT です。20%をリターン・ゼロの現金とし、残りのリスク配分を比例縮小して 32/28/20 にすると、仮定損失は 6,240 USDT になります。損失が小さいのは、このシナリオでリスクにさらす資金が減るためです。残る戦略の依存関係が弱まった証拠でも、現金20%が最適な予備資金だという証拠でもありません。

仮定した同時ショック:A −8%、B −6%、C −10%、現金 0%
シナリオ開始時の配分A / B / C / 現金のウェイト口座損失損失 / 期初純資産
当初の配分40% / 35% / 25% / 0%7,800 USDT7.80%
リスク資金を等額配分33⅓% / 33⅓% / 33⅓% / 0%8,000 USDT8.00%
現金20%;残りの配分を比例縮小32% / 28% / 20% / 20%6,240 USDT6.24%

実口座では、同時決済時のスプレッド拡大、ヘッジの欠落、担保の再評価、必要証拠金の増加、取引先へのアクセス遅延もシナリオに加えます。コストを追加する前に、それが仮定した運用枠リターンに含まれているかを定義してください。全額資金を確保した運用枠の線形損失例は、オプション、資金調達コストの経路、強制決済の仕組み、ステーブルコインの破綻を価格評価するものではありません。

清算実務を見ると、より広い視点が必要な理由が分かります。CME の SPAN 2 は、過去データに基づくリスク、ストレスリスク、流動性、集中度を区別しています。口座を複数の側面から見る根拠として参照していますが、本稿のシナリオは CME の証拠金や証券会社の必要担保を再現していません。 [6]

ボットは担保、インフラ、障害要因も共有する

統計的な結果だけで、口座が証拠金の相殺を受けられるわけではありません。CME の株式関連 SPAN 2 の申請資料では、相殺は対象商品グループと経済的な根拠によって制約されるとしています。特定の清算手法の説明であり、個人向け証券会社や暗号資産取引所の約束ではありません。実際の口座、契約、担保に適用されるルールを確認してください。ソフトウェアのプロセスを分けても、独立した担保プールは生まれません。 [7]

具体的な証券会社の例として、Interactive Brokers は、指定した証拠金口座の種類について、リアルタイムの証拠金計算と、必要条件を満たさない場合の強制決済を説明しています。発動条件は各ボットが望む損切り水準ではなく、口座ルールに属します。商品と法域の詳細が重要であり、本稿は共通の証拠金閾値を示しません。 [8]

リターンが十分に分散していても、運用上の集中は残ります。複数のボットが、1つの取引所、1社のデータベンダー、1つのクラウド・リージョン、同じ認証サービスに依存しているかもしれません。独立したシグナルでも、アクセスできない発注経路を動かすことはできません。設計上のエクスポージャーとして依存先を記録し、口座の対応を訓練してください。リターンの相関係数には、それらを記載する欄はありません。

復旧時にも同じ問題が出ます。再起動したボットが最後のシグナルは覚えていても、すでに約定した注文を認識していなければ、重複ポジションを作る可能性があります。再開前に、証券会社のポジション、未約定注文、約定、シーケンス識別子、中央のリスク台帳を照合します。プロセスの稼働表示が緑でも、口座状態が一致する証拠にはなりません。

口座限度額を、すべてのボットの次の注文に適用する

共有口座には、提案された注文を許可するかどうかの共通判断が必要です。リスクを増やす注文を送る前に現在のポジションを照合し、その注文が消費し得る現金、証拠金、エクスポージャーを予約します。チェックと予約は、各ボットの同時要求に対して協調して行わなければなりません。そうでなければ、単独では許容できる2件の注文が、同じ未予約の余力に対して両方とも承認されてしまいます。

新たなリスクの禁止、注文取消、ポジション縮小、全決済を区別してください。これらは別の操作です。新規リスクを止めても既存ポジションのエクスポージャーは残ります。全注文の取消は保護注文まで消す場合があります。全決済の指示は新たな注文を発生させ、その約定と失敗も照合が必要です。選択した状態でリスク低減注文をどう許可するかを定義し、汎用的な「キルスイッチ」1つで方針が完成したと考えないでください。

限度額は、口座の運用目的、商品制約、ストレスへの許容度から決め、その変更権限と再開前に必要な手順を明確にします。人工的な24日間のテストデータから、共通の日次損失限度額やストップ水準を導くことはしません。閾値は運用上の発動条件です。ギャップ、市場の利用不能、執行コストにより、実現損失はそれを超えることがあります。

下表は応用するための制御設計であり、数値閾値の推奨ではありません。各行に責任者、データ源、実際に執行できる操作、記録された復旧条件を設定して初めて、役に立ちます。

稼働前に定義しておく口座単位の制御例
検知した状態事前に定める操作の例再開前に解消すべき条件
照合できないポジション、または評価額の欠測新規リスクを禁止し、証券会社の記録を調査。必要な保護措置は維持する口座と戦略の記録が一致し、評価が最新である
合計ファクターまたはグロス・エクスポージャーの上限到達リスクをさらに増やす注文を拒否、または所定の縮小手順を実行エクスポージャーと未完了の確約が承認された上限内にある
現金または証拠金バッファの不足新たな確約を止め、口座の資金追加または縮小方針を適用実際の取引先ルールの下で利用可能資源を確認済みである
口座損失・ドローダウンの発動条件に到達指定した制限状態に移行し、担当者に通知原因、現在のエクスポージャー、文書化した再開条件を確認する
取引先、データ、執行サービスが利用不能経路別の障害対応手順を適用し、古い注文の再送を防止接続が復旧し、注文とポジションの照合が完了している

次のボットを、口座への変更として評価する

採用の問いは、明示した目的と実行可能な運用条件の下で、候補が口座を改善するかどうかです。資金とエクスポージャーの前提を明確にして、現口座と提案された配分を比較します。置き換えられる現金、追加の売買回転、インフラ費用、必要証拠金も含めます。単独のシャープレシオが高いだけでは結論は出ません。

まず、記録を残すシャドー配分から始めます。バージョン、提案数量、その時点の入力、配分システムが承認または拒否したはずの判断を記録してください。見送ったシグナルも残します。ペーパー口座でも約定を楽観視し得るため、執行の仮定を明示し、観測した気配値と比較します。別途承認された小規模な実取引があれば、後の執行結果とも比較できます。

モンテカルロやブートストラップの診断を使うなら、ボット群を一緒に抽出します。同時点のリターン・ベクトルを再標本化し、時系列依存が検討対象なら適切な時間ブロックを保ちます。各ボットを独立にシャッフルすると、測りたいはずの同時損失関係が壊れます。こうした再標本化は入力に条件づけられており、戦略の意思決定、流動性、標本にない危機を再現しません。本稿では、この追加実験は実行していません。

ChatGPT や Claude はエクスポートの照合やリスク報告の説明を、Codex や Claude Code は報告ソフトウェアの開発を支援できます。単位、タイムスタンプ、会計上の恒等式を明示してください。以下の再利用可能なプロンプトは、短い標本から利益を出す配分を捏造させず、監査できる診断を求めます。付属の例は AI の支援で実装し、実行可能な算術テストで確認しました。AI 製品を比較した実験ではありません。

再利用可能なプロンプト:提案した複数ボット口座を監査する
タイムスタンプ付きのボット・リターン、時価評価ポジション、口座残高、未約定注文を確認してください。各ボットの資金を実際の口座純資産と照合してください。欠測や古い記録を特定してから、共通標本のリターン相関と、指定ウェイトでの共分散寄与度を計算してください。共有する市場、担保、インフラのエクスポージャーを示してください。指定した同時ショックを口座通貨で計算し、確率を捏造したり配分を最適化したりしないでください。観測記録、仮定したシナリオ、未解決の問いを区別し、式、元の記録 ID、再現可能なレポートを返してください。

ボットの数ではなく、照合済みの口座で判断する

これらの例は、よくある誤解を解きます。仮定する相関が高ければ、3ボットでもモデル上の分散効果は小さいままです。小さな資金枠が、モデル上のボラティリティを支配することもあります。相関が低めでも同時損失は排除されません。合計ドローダウンは合計純資産から求める必要があり、現金バッファはリスクにさらす金額を変えるのであって、戦略の統計的独立性を変えるわけではありません。

既存のポートフォリオで次に役立つ成果物は、簡潔な口座報告です。照合済み純資産、資金とリスクの寄与、現在の売買方向を考慮したエクスポージャーとグロス・エクスポージャー、同時ストレス損失、運用上の依存先、各口座制御の状態をまとめます。検証できない項目は、安心できそうな推定値で埋めず、未解決のまま残してください。

別のボットを追加する根拠は、その報告と口座目的への貢献です。調査の結果、小さく保つ、配分を変える、記録を調べる、追加しない、と判断することもあります。単独では魅力的に見えるボットを断れることも、ポートフォリオ分析の有用な成果です。

10 / 確認事項

別のトレーディングボットを追加する前に

  1. 現金、ポジション、未決済損益、確約済み注文を証券会社または取引所の口座と照合する。
  2. 各ボットに識別可能なバージョンと、実際の資金またはエクスポージャー予算を設定する。
  3. 文書化した共通の評価カレンダーと締め時刻に、時価評価後の純リターンをそろえる。
  4. 欠測や古い観測値を調査し、確認済みの現金待機日のゼロは残す。
  5. 相関のウィンドウ、共通の観測数、コストと資金フローの処理方法を公開する。
  6. 資金ウェイトとボラティリティ寄与度を比較し、ファクター・エクスポージャーの集中を調べる。
  7. 実際の振替とリバランス方針に従って、合計純資産を再構築する。
  8. 同時損失、ヘッジの利用不能、執行コスト拡大、担保の逼迫をストレステストする。
  9. 注文の余力予約を集中管理し、口座上限で発動する操作を定義する。
  10. シャドーテスト前に提案配分を記録し、停止システムの再開前に状態を照合する。
FAQ / 質問への回答

複数のトレーディングボットを動かす際の実践的な疑問

複数のトレーディングボットは、1つだけより安全ですか?

信頼できるリターンとストレスの前提の下で、合計口座の集中度が低くなれば、安全性を高められる可能性があります。同じエクスポージャーを持ち、同じ取引先に依存し、同じ現金を取り合う複数ボットは、リスクを増幅することもあります。資金、エクスポージャー、コストの前提を明確にして、提案口座と現口座を比較してください。

ボット間の相関はどの程度がよいのでしょうか?

共通の安全な閾値はありません。低い推定値はモデル上のボラティリティを下げ得ますが、その有用性は標本、ポジション量、個別ボラティリティ、同時損失に依存します。人工的な24日間の例では、相関 0.19 でも同時に負のリターンとなる日があります。実市場の損失頻度を示したものではありません。

相関は純資産曲線と取引記録のどちらから計算すべきですか?

時価純資産に対する、同じ期間の純リターンを使います。未決済損益と、確認済みの非稼働日も含めてください。累積純資産水準の相関や、各ボットの1件目の取引同士を対応させる方法は、別の、しばしば誤解を招く問いに答えます。現在のエクスポージャーを理解するため、ポジションは別途保持します。

各ボットに同じ金額を配分するべきですか?

等額配分は分かりやすい初期ルールですが、等リスクではありません。本稿の別の2ボットの数学例では、日次ボラティリティが 2% と 1% の無相関系列に等額を割り当てると、モデル上のポートフォリオ・ボラティリティ寄与率は 80% と 20% になります。コスト、流動性、レバレッジ、テール・エクスポージャーは別途評価が必要です。

複数ボットのリターンを足したり、ドローダウンを平均したりできますか?

実際の運用枠の純資産または損益を、実口座資金に対して合計します。ウェイトでリターンを合成する場合は、実際の配分方針と整合する期初ウェイトを使います。最大ドローダウンは、時系列順の合計純資産から計算しなければなりません。各ボットの最悪ドローダウンを平均しても、口座の最大ドローダウンにはなりません。

ボットやサブ口座を分ければ、リスクも独立しますか?

プロセスを分けても資金は独立しません。サブ口座は取引先のルールによって権限や担保を分けることがありますが、市場エクスポージャー、保管先、データ、インフラを共有したリスクは残り得ます。ダッシュボードの名称から独立性を推測せず、実際の口座構造を確認してください。

ChatGPT、Claude、Codex、Claude Code でボットのポートフォリオを分析できますか?

明示した仕様から、計算の実装、エクスポートの照合、テストケースの作成を支援できます。タイムスタンプ、単位、資金の定義、既知の会計恒等式を渡し、結果を確認してください。口座のリスク限度額は、決定的で監査可能な制御に任せます。言語モデルの説明文は、注文の余力予約でも、確認済みのポジション記録でもありません。

ボットはいくつ動かすべきですか?

意味のある上限は、資金を用意し、監視し、確実に運用できる、経済的な根拠を持った異なる戦略の数です。本稿は最適な台数を示しません。追加するボットは、コスト、共通エクスポージャー、運用負担を考慮した後の増分貢献で、その価値を示す必要があります。

手法、出典、再現方法

数値例は、全面的に開示した人工入力から TensorParadigm が独自に計算したものです。市場リターンや実際のボット運用成績は測定していません。以下の論文は手法と限界を、清算機関および証券会社の公式文書は口座リスク管理の実務を説明するために参照しています。著者や機関が本例を確認または推奨したわけではありません。

  1. Embrechts、McNeil、Straumann:リスク管理における相関と依存関係、その性質と落とし穴(1998年の原稿)
  2. Tasche:事業部門とサブポートフォリオへの資本配賦、オイラー原理(2008年版)
  3. Ledoit、Wolf:Honey, I Shrunk the Sample Covariance Matrix(2003年ワーキングペーパー、2004年刊行)
  4. Ang、Chen:株式ポートフォリオの非対称相関(2002年刊行)
  5. Getmansky、Lo、Makarov:ヘッジファンド・リターンの系列相関と非流動性の計量モデル(MIT リポジトリ)
  6. CME Group:SPAN 2 の方法と機能
  7. CME Group:SPAN 2 株式商品フレームワークと条件付き証拠金相殺、申請資料 24-425(2024年)
  8. Interactive Brokers:口座設定、証拠金監視、強制決済に関する規定

ポートフォリオ分析の学習用であり、推奨配分や実取引システムではありません。付属例のリターンはすべて人工的に作成しています。相関、共分散寄与度、仮定したストレスから、将来の損失確率や最大損失額は確定できません。商品、取引先、口座のルールは別途確認してください。