BJF TRADING GROUP · SHARPTRADERエコシステム
SharpTrader Optimizer:レイテンシー、ヘッジ、ロック・アービトラージなどのためのマルチコア・バックテスター&戦略オプティマイザー
SharpTraderのアービトラージ戦略および非アービトラージ戦略のための、プロ仕様のバックテストおよびパラメータ最適化エンジンです。実際の過去のティックを設定可能な注文執行時間で再生し、大規模なパラメータグリッドをすべてのCPUコアに分散し、ティックストリーム自体からすべての注文について現実的なスリッページを自動的に算出します。SharpTrader Proの開発チームが構築しており、同じ執行エンジン、同じブローカー方言を使用しています。
買い切りライセンス
SharpTrader Optimizerでできること
SharpTrader Optimizerは、SharpTraderプラットフォーム上に構築されたアービトラージ戦略および非アービトラージ戦略のための専用バックテストおよびパラメータ最適化エンジンです。過去のティックデータを戦略ロジックに通して再生し、現実的な執行コスト(設定可能な執行時間、ティックごとに変動するスプレッド、ティックから算出されるスリッページ)をモデル化し、利用可能なすべてのCPUコアを並列に使って数千通りのパラメータの組み合わせでグリッド最適化を実行します。
このツールは、レイテンシー、ロック、ヘッジ、ペアトレード、ニュース主導、トレンドの各戦略を運用し、実資金をリスクにさらす前に堅牢なパラメータセットを見つける必要があるトレーダーのために設計されています。標準的なリテール向けバックテスターとは異なり、SharpTrader Optimizerは実際の過去のティックで動作し、注文ごとの執行時間をミリ秒単位で設定でき、スリッページをティックストリームから自動的に算出します。これらは、戦略が本番環境で利益を出せるかどうかを実際に左右する3つの変数です。
単一設定のバックテスト
1つのパラメータセットを過去のティックデータで実行し、損益曲線、ドローダウン、勝率、時間帯別の内訳を確認します。
パラメータ範囲の最適化
各戦略パラメータの最小値/最大値/ステップを定義すると、エンジンがすべての組み合わせをグリッド化し、損益またはドローダウンで結果をランク付けします。
マルチコアへの分散
処理負荷をすべてのCPUコアに均等に分散します。シングルスレッドで12時間かかる処理が、4コアCPUでは約3時間で完了します。
執行時間を考慮
注文ごとの執行時間をミリ秒単位で設定します。エンジンはそのレイテンシー分だけティックストリームを先に進め、その時点のBid/Askで約定させるため、現実的なプラスまたはマイナスのスリッページが自動的に生じます。
対応戦略
Optimizerには、初日からテストできる2種類のアービトラージ戦略が付属しています。さらに3種類が、ライセンス保有者向けの無料製品アップデートとして2026年第2〜第3四半期に追加されます。
現在利用可能 提供中
リリースv1.0時点
- レイテンシー・アービトラージ:高速フィードと低速フィードを比較する古典的な戦略。エントリーの価格差(diff-to-open)とトレーリング決済を設定可能。
- DominionForce:適応型のスプレッドフィルターを備えた、SharpTrader独自のワンレッグ・アービトラージのバリエーション。
- Phantom Drift:マーチンゲールとロック・アービトラージを組み合わせたハイブリッドロジック。
- ロック戦略(全ファミリー):クラシック・ロック、非対称ロック、マルチレッグ・ロック。
- ヘッジ・アービトラージ:リスクパリティによる2ブローカーでの同時エントリー。
ロードマップ 2026年第3〜第4四半期 予定
ライセンス保有者は無料でアップデート
- ペアトレード:相関のあるシンボル間で共和分に基づく平均回帰。
- 三角アービトラージ(FX):3通貨間のクロスレートの非効率性。
- マルチシンボルのポートフォリオ最適化:2026年後半に登場予定。
バックテストモードと最適化モード
Optimizerは、互いに補完し合う2つのモードで動作します。多くのワークフローでは両方を使います。まず最適化で候補となるパラメータ範囲を見つけ、次に上位の候補を詳細にバックテストして、資産曲線の形状とドローダウンの特性を検証します。
バックテストモード
1つのパラメータセットを過去の期間で実行します。完全な損益チャート、時間帯別のパフォーマンス、方向別の勝ち/負けの内訳、取引ごとの台帳が得られます。
- 資産曲線を取引ごとに可視化
- 決済済みの各注文を確認:チケット、時刻、タイプ、ロット、価格、損益
- 曜日と時間帯で絞り込み
- 用途:単一設定の検証、戦略ロジックのデバッグ、顧客やパートナー向けのレポート作成
最適化モード
数千から数十万通りのパラメータの組み合わせをグリッドサーチとして実行します。損益、最大ドローダウン、またはカスタムスコアで並べ替えたランキング表が得られます。
- 各戦略パラメータの最小値/ステップ/最大値を定義すると、エンジンが完全なグリッドを生成
- マルチコア並列処理(各コアが1つの組み合わせを同時に処理)
- 完了した組み合わせ数と残り時間の目安を表示するリアルタイムの進捗バー
- 用途:堅牢なパラメータ領域の発見、ウォークフォワード分析、さまざまな執行時間シナリオでのストレステスト
マルチコア並列処理が状況を一変させる理由
標準的なリテール向けバックテスターの多くは、1つのCPUスレッドで動作します。最近の4〜16コアのCPUでは、利用可能な演算能力の75〜94%が無駄になります。SharpTrader Optimizerは当初から、最適化の処理負荷を利用可能なすべてのコアに分散するよう設計されており、各コアが独立したパラメータの組み合わせを処理します。
実際には、戦略のアイデアを1週間ではなく一晩で試行錯誤できることを意味します。妥当なステップ幅での一般的な中規模の最適化では、1週間分のティックデータで30,000〜100,000通りの組み合わせが生成されます。4コアのワークステーションなら一晩で十分に処理でき、16コアのマシンなら数時間です。
本格的な最適化に推奨されるハードウェア
数か月分のティックデータで10万通り以上の組み合わせのグリッドを実行する場合は、8〜16コアのCPU(Intel i7/i9 第12世代以降、AMD Ryzen 7/9 5000シリーズ以降)を推奨します。数年分のティック履歴を読み込む場合、RAMは最低32 GBです。ティックデータの入出力にはSSDを強く推奨します。
性能の低いハードウェアでも動作しますが、時間がかかるだけです。Optimizerはコア数を自動検出し、それに比例してスケールします。
最適化パラメータの解説
各戦略には、それぞれ最適化可能なパラメータのセットがあります。下の表は、代表例としてレイテンシー・アービトラージ戦略で利用できるパラメータを示しています。その他の戦略(DominionForce、Phantom Drift、ロック、ヘッジ、ペアトレード)では異なるセットが用意されています。各パラメータは個別にオン/オフでき、Opt?チェックボックスをオンにするとグリッドに含まれ、オフのままにすると単一の値に固定されます。範囲を調整すると、組み合わせの総数がリアルタイムで表示されます。
| パラメータ | 制御内容 | 標準的な範囲 |
|---|---|---|
| StopLoss | 強制決済までの最大損失(pips)。ロック戦略やヘッジ戦略のリスク管理に不可欠です。 | 50〜100、ステップ10 |
| TakeProfit | 目標利益(pips)。TPを低くするとヒット率が上がり、高くするとより大きな値動きを捉えられます。 | 200〜500、ステップ50 |
| MinProfit | トレーリングストップが作動する前の最低利益のしきい値。ごく小さな利益を除外します。 | 10〜100、ステップ10 |
| PipsForMinProfit | MinProfitを確定させるのに必要な価格変動のpips数。トレーリングのロジックでMinProfitと組み合わせて使います。 | 0〜100、ステップ10 |
| TrailingStep | トレーリングストップのステップ幅。ステップが小さいほど利益を多く守れ、大きいほどノイズによる早すぎる決済を避けられます。 | 10〜100、ステップ10 |
| DiffToOpen | 新規ポジションを建てる前に必要な価格フィード間の最小差(ポイント)。レイテンシー・アービトラージの中核となるシグナルのしきい値です。 | 10〜100、ステップ10 |
| MaxSpreadSlow | シグナルを有効とするための低速フィードの最大許容スプレッド。スプレッドが拡大している局面を除外します。 | 1〜20、ステップ5 |
| MaxSpreadFast | 高速フィードの最大許容スプレッド。MaxSpreadSlowとともに、執行品質の範囲を定義します。 | 1〜50、ステップ5 |
執行時間のモデル化が現実的なスリッページを生み出す仕組み
公開されているアービトラージのバックテスト結果が実際の市場で通用しない最大の理由は、レイテンシーをゼロとする前提です。標準的なリテール向けバックテスターは、注文が送信された瞬間に表示価格で約定すると仮定します。実際のブローカーはそうではありません。戦略が注文の送信を決定した瞬間から、その注文がブローカーのサーバーでマッチングされる瞬間までの間に、価格はすでに動いています。1取引あたり1〜3ポイントを獲得する戦略では、この動きが利益と損失の分かれ目になることがよくあります。
SharpTrader Optimizerは、スリッページの数値を推測するよう求めることはありません。代わりに、1つの物理的な入力値、つまり注文の執行時間(ミリ秒)を設定すると、エンジンが過去のティックストリーム自体からスリッページを導き出します。
エンジンが執行時間からスリッページを算出する方法
執行時間 = T ms(実運用で観測される往復時間)を設定します。エンジンは片道分のみ、つまりT / 2 msを使い、戦略が注文の送信を決定した瞬間からその分だけティックストリームを先に進めます。ブローカーからの応答分は意図的に除外されます。応答が戻ってくる時点では、約定価格はすでにリクエストの間に市場がどう動いたかで決まっているからです。シグナル時刻 + T/2の時点のティックにあるBid/Askが、注文の約定価格になります。その価格と、戦略が行動を決定した時点で「見ていた」価格との差が、実現したスリッページです。プラス、マイナス、ゼロのいずれにもなり、その大きさはその数ミリ秒間に市場が実際にどう動いたかによって決まります。
How SharpTrader Optimizer resolves slippage from execution time
SharpTrader Optimizerが執行時間からスリッページを算出する方法:同じ戦略を0 ms、50 ms、150 msで、同じティックストリームに沿って進めた例。
入力:執行時間(ms)
注文ごとの執行時間を全体またはレッグごとに設定します。標準的な値:5〜20 ms(コロケーションされた機関投資家向け)、30〜60 ms(高速なブリッジVPS)、80〜180 ms(標準的なリテール向けVPS)、200 ms以上(接続環境が悪い場合)。
レイテンシーの半分だけティックを進める
エンジンはシグナル発生時点から実時間でT/2だけ進み、次に利用可能なティックに合わせます。約定には、売りの場合はそのティックのBid、買いの場合はAskが使われます。
出力:約定ごとの実現スリッページ
スリッページは、ティックを進めた結果そのものです。その日の実際の市場の動きを反映した現実の分布になります。プラス(価格が有利に動いた)にもマイナス(価格が不利に動いた)にもなり、その大きさは実際のティックのボラティリティに連動します。
エントリーと決済で個別に設定
注文のエントリーと決済で異なる執行時間を設定できます。決済はエントリーより遅いルーティング経路を通ることが多いという、実際のブローカーの挙動を反映できます。
実践的なワークフロー
同じパラメータセットを、異なる執行時間の前提で3回実行します:0 ms(即時。上限を確認するためのもので、実運用向けではありません)、50 ms(高速VPS/コロケーションされたブリッジ)、150 ms(標準的なリテール向けVPS)。50 msと150 msのシナリオの間で損益が崩れる場合、その戦略はレイテンシーに敏感であり、ブローカーやVPSを変えると通用しません。損益が安定していれば、現実的なブローカー環境全般に通用するはずの堅牢な構成です。
24時間のパフォーマンス分析
すべてのバックテストで24時間のパフォーマンス内訳、つまり時間帯別の損益寄与のヒストグラムが作成されます。これはリテールトレードで最も活用されていない診断ツールの1つで、戦略がいつ利益を出し、いつ損失を出し、いつ停止すべきかを正確に明らかにします。
よくある発見:
- EURUSDのレイテンシー・アービトラージでは、利益の60〜80%が特定の2〜3時間(ロンドン・オープン、NYオープン、ロンドン・クローズ)に集中することがよくあります。
- 貴金属(XAUUSD)のニュース取引に近い戦略は、14:30 UTC前後(米国の経済指標発表)と22:00〜23:00 UTC(アジア・オープン)にピークを迎えることが多いです。
- ロック戦略とヘッジ戦略は時間帯に左右されにくい傾向がありますが、週末のロールオーバーや祝日の流動性低下時にはパフォーマンスが落ちます。
Optimizerでは、実行完了後に曜日と時間帯で結果を絞り込めるため、最適化を再実行することなく「火〜木曜の22:00〜23:00 UTCのみ取引」といったルールを見つけられます。
その他のフィルター:注文の保有期間(長く保有しすぎたポジションを検出)、総注文数(取引不足/過剰を発見)、実現スリッページ(プラスのスリッページの恩恵を受けた実行を区別)。
システム要件
最小要件
| OS | Windows 10/11(64ビット) |
| CPU | 4コア、2.5 GHz以上 |
| RAM | 8 GB |
| ストレージ | SSDの空き容量20 GB |
| .NET | .NET 8.0ランタイム |
| ディスプレイ | 1920×1080 |
| ネットワーク | 必須(ライセンス認証 + ティックデータフィードの更新) |
推奨要件(大規模な最適化)
| OS | Windows 11 Pro |
| CPU | 8〜16コア、Intel i7/i9 第12世代以降またはRyzen 7/9 5000以降 |
| RAM | 32 GB |
| ストレージ | NVMe SSD、空き容量100 GB以上 |
| .NET | .NET 8.0ランタイム |
| ディスプレイ | 2560×1440以上 |
| VPS | 任意:VPSガイドを参照 |
macOS/Linux:現在、ネイティブビルドには対応していません。必要な場合は、Parallels(Apple Silicon)やCrossOver/VMware(Linux)上のWindows 11で安定して動作します。
SharpTrader Optimizerと標準的なバックテスターの比較
標準的なリテール向けバックテスターは、トレンドフォローやインジケーターベースの戦略向けに作られたもので、アービトラージ向けではありません。即時約定、固定スプレッド、単一フィードの価格という前提は、アービトラージのバックテストに必要な現実性を気づかないうちに損ないます。SharpTrader Optimizerは、この3つのギャップを埋めるために特別に構築されました。
バーによる近似ではなく、実際のティック単位のデータ
すべてのバックテストで、実際の過去のティック(タイムスタンプ + Bid + Ask)を再生します。標準的なテスターはM1/M5のバーによる補間に頼るため、アービトラージ戦略の成否を左右するまさにその価格変動が、気づかないうちに平滑化されてしまいます。
注文の執行時間を設定可能
注文の執行レイテンシー(ミリ秒)を設定すると、エンジンが注文ごとに適用します。標準的なテスターはレイテンシーゼロの約定を前提としており、これがレイテンシー・アービトラージのバックテストがシミュレーションでは好成績なのに実運用で失敗する最大の理由です。
変動スプレッドを自動で反映
スプレッドは過去のティックストリームからティックごとに直接読み取られます。エントリーと決済はそれぞれ独立してスリッページが考慮されます。標準的なテスターはすべての約定に単一の固定スプレッドを適用しますが、ニュース、ロールオーバー、流動性の低い時間帯の実際のスプレッドはそのようには動きません。
比較表:
| 機能 | 標準的なバックテスター | SharpTrader Optimizer |
|---|---|---|
| 実際のティックデータ(バー補間ではない) | まちまち:ブローカーのデータ品質次第 | あり:ネイティブのティック再生(BJF Feed:ロンドン/東京/NY) |
| 注文執行時間のモデル化 | なし:即時約定を前提 | あり:執行レイテンシーを設定可能(ms) |
| 変動スプレッド(ティックごと) | 固定スプレッドのみ | 自動:ティックストリームから読み取り + MaxSpreadの上限 |
| 現実的なスリッページのモデル化 | なし(注文は表示価格で約定) | あり:執行時間分ティックを進めることでティックストリームから自動算出(プラスまたはマイナス、実際の大きさ) |
| マルチコア並列処理 | シングルスレッド | あり:全コアで95%以上の使用率 |
| デュアルフィード(高速 + 低速)対応 | なし | ネイティブ対応:レイテンシー・アービトラージに必須 |
| グリッド最適化 | あり、ただし低速でシングルスレッド | あり:1回あたり10万通り以上、マルチコア |
| 24時間のパフォーマンス内訳 | 手動(エクスポートして外部でグラフ化) | 内蔵のチャート&フィルター |
| 曜日フィルター | なし | あり |
| ウォークフォワード分析 | なし | あり:期間の分割 |
| 最適化モード | 遺伝的アルゴリズム/ブラックボックス | グリッド + ランキング(決定的で監査可能) |
| テスト対象の戦略 | 汎用的な自動売買戦略 | SharpTraderのアービトラージ戦略(レイテンシー、DominionForce、さらに5種類を予定) |
| 費用 | リテール向けターミナルに付属/無料 | $595の買い切りライセンス |
よくある質問
OptimizerはSharpTraderの執行エンジン向けに作られた戦略を実行します。リサーチやバックテストのためにOptimizerを単体で実行することはできますが、最適化したパラメータを実運用に展開するにはSharpTraderのライセンス(Liteは$800から、Proは$2,995から)が必要です。多くのトレーダーは、まずOptimizerを購入して戦略を検証し、その後アップグレードしています。
組み合わせの数、過去データの期間、CPUのコア数の3つによって決まります。一般的なリテール向けワークステーションでの現実的な目安として、4コアのCPUで1週間分のXAUUSDのティックデータに対して約30,000通りの組み合わせを実行すると、約12時間かかります。同じ3万通りのグリッドは、16コアのマシンではおよそ3時間で完了します。1週間分のデータで小規模なグリッド(5,000〜10,000通り)なら、4コアで2〜4時間で完了します。数か月分のデータでの大規模なグリッド(100,000通り以上)は、16コア以上の専用サーバーでの実行が最適です。
はい。Optimizerは標準的な形式のティックデータ(タイムスタンプ/Bid/AskのCSV、一般的なターミナルからエクスポートしたティック/履歴形式、独自のBJF Feed形式)に対応しています。最良の結果を得るには、ロンドン、東京、ニューヨークのノードから提供されるBJF Feedのデータの使用を推奨します。これは実運用のSharpTrader Proが使用するソースと一致するため、バックテストが実際の執行をできるだけ忠実に反映します。
買い切りライセンス:$595。継続的な料金はかかりません。12か月間の無料アップデート(Phantom Drift、ロック戦略、ヘッジ、ペアトレードの追加を含む)が含まれます。12か月経過後もソフトウェアは引き続き動作し、新しい戦略の追加にのみ任意の$99のアップデートライセンスが必要です。
正しく最適化した場合に限ります。強く推奨する2つの安全策:(1) 執行時間を実際の環境に合った現実的な値に設定すること。標準的なリテール向けVPSでは通常80〜150 ms、コロケーションされたブリッジでは30〜60 msです。執行時間 = 0 msで最適化してはいけません。(2) ウォークフォワード検証を行うこと。1〜3月で最適化し、4〜6月で検証します。期間によって最上位の設定が変わる場合、その戦略は過剰適合しています。Optimizerの期間フィルターを使えば、ウォークフォワードは簡単です。
リサーチ用途では、AMD Ryzen 9 7950X(16コア)またはIntel i9-13900K(Eコアを含め24コア)が最適な選択です。いずれも、1週間分のティックデータで4コアでは通常12時間かかる処理をおよそ3時間に短縮し、10万通り以上のグリッドもスケジュールを破綻させることなく処理できます。たまに使う程度であれば、最近の6〜8コアのデスクトップCPUで十分です。クラウドの選択肢(AWS c7i.4xlarge、Hetzner CCX33)も利用でき、必要に応じてスケールできます。
はい。Optimizerはヘッドレスでも、リモートデスクトップ経由でも動作します。VPSプロバイダーと設定のヒントについては、FXアービトラージVPSガイドをご覧ください。注意:月額$30程度の一般的なFX向けVPSはコアが2つしかありません。本格的な最適化には、月額$40〜120の専用CPUサーバー(Hetzner AXシリーズ、OVH Gameシリーズ)が必要です。
現在、OptimizerにはFX向けの戦略テンプレート(レイテンシー、DominionForce)が付属しています。VIP Crypto Arbitrageのヘッジ版やワンレッグ版を含む暗号資産専用の戦略は、2026年第3四半期のアップデートで追加される予定です。ライセンス保有者は無料アップデートとして入手できます。
BJF Trading Groupは、お使いのハードウェアでOptimizerが説明どおりに機能しない場合、ご購入から30日以内であれば100%返金を保証しています。詳細な条件は保証ページをご覧ください。保証の対象はソフトウェアの機能であり、バックテストするいかなる戦略の収益性も対象外です。
StrategyQuantとQuantAnalyzerは戦略ジェネレーターであり、インジケーターのランダムな組み合わせからEAを自動作成します。SharpTrader Optimizerは戦略ジェネレーターではありません。既存のアービトラージ戦略(レイテンシー、DominionForceなど)を、現実的な執行のモデル化とともにテスト・最適化します。この2つのツールは目的が異なります。仮説の生成にはSQ/QAを、アービトラージ固有のパラメータ調整と実運用の執行に即した現実性にはSharpTrader Optimizerをお使いください。
推測はやめて、最適化を始めましょう。
買い切りライセンス$595。12か月間の無料の戦略アップデート。30日以内の100%返金保証。SharpTrader LiteまたはProと組み合わせて、最適化したパラメータを実運用に展開できます。





