SharpTrader OptimizerにおけるPhantom DriftとLock戦略の最適化 2026年07月13日 – Posted in: Arbitrage Software
Phantom DriftとすべてのLock戦略の最適化:Martingale-Plus-Arbitrageがレイテンシー以上に誠実なバックテストを必要とする理由
当社のライブ・レイテンシーテストは、パラメータ最適化が実際の資金に影響することをすでに証明しました。同じ戦略、2つの口座、そして最適化済みセットにより平均損失は3分の1に削減されました。Lockファミリーの戦略には、averaging ladderとlock-arbitrage legという2つの利益エンジンが重なっているため、誠実な最適化による効果は小さくなるのではなく、さらに大きくなります。SharpTrader Optimizerは現在、Hedge、Phantom Drift、すべてのLockバリアントについて、この両方を同時に調整します。
短い答え:SharpTrader Optimizerは現在、Phantom Driftを含むすべてのLockファミリー戦略に対して、現実的な約定を考慮したパラメータ検索を実行します。戦略の両側を制御する13個の数値パラメータをスイープします。つまり、averaging ladder(MaxTrades, LotExponent, PipStep, StopLoss, TakeProfit)と、arbitrageおよびexitロジック(DiffToOpen1/2, MaxSpreadFast/Slow, ArbProfit、および利益管理)です。各候補は、実際のtickデータ、モデル化された約定レイテンシー、tickごとの変動spread、両legのslippageを使って評価されます。RSIインジケーター自体はグリッドには含まれません。代わりに、異なるRSI設定で個別にバックテストを実行し、それらが結果をどう変えるかを比較します。複数要素の戦略は、各averaging層とhedgeの両側で約定コストを支払うため、単一legのlatency arbitrageよりもバックテストの誠実さに大きく影響され、適切に行われた最適化からより大きな恩恵を受けます。
今回提供開始されたもの
今年初め、SharpTrader OptimizerはHedge戦略の最適化を追加し、次のマイルストーンとしてLockファミリー全体を掲げていました。そのマイルストーンがいま実現しました。Optimizerは、すべてのLockファミリー戦略に対して、実tickかつ約定を考慮したパラメータスイープを実行できます。これには、Phantom Driftも含まれます。これは、lock arbitrageをRSIトリガーのaveragingシーケンス内に包み込み、ブローカーのリスクシステムからは通常のテクニカルトレーダーのように見える戦略です。
重要なのは、何が最適化されるかです。Phantom Driftは単一の仕組みではありません。順番に働く2つの仕組みです。1つは目に見えるaveraging ladder、つまりdrawdownの深さを作るmartingale部分。もう1つはfast-feedシグナルでポジションを解除するlock-arbitrage leg、つまりarbitrage部分です。これまでは、これらの要素を手作業で調整して期待するしかありませんでした。現在は、optimizerが両方の共同パラメータ空間を検索し、ライブ市場が実際に課すコストに沿って各候補を評価します。
レイテンシーテストはすでに原理を証明しています
optimizerを複数要素の戦略へ拡張する前に、現実的な約定評価がライブ結果に反映されることを、明確に測定できる戦略で証明したいと考えました。そこで最も単純な実験を行いました。同じlatency arbitrageロジックを2つのライブ口座で同時に稼働させ、一方は最適化済みパラメータ、もう一方はデフォルト、同じ銘柄、同じlotサイズ、同じ開始残高にしました。唯一の変数はパラメータセットでした。
最適化済み口座は、より大きな勝ちを追ったわけではありません。負けトレードのコストを縮小し、平均負けトレードを−6.2 pipsから−2.0 pipsへ削減し、profit factorを2倍以上にしながらdrawdownも低下させました。これは単一legの戦略で、1回のentryと1回のexitです。では、この結果を、ポジションのaveraging ladderを開き、その後スタック全体をhedgeする戦略と並べてみてください。最適化のレバレッジがどこで大きくなるかが見えてきます。
Lock戦略がより難しく、より重要な最適化問題である理由
単一legのlatencyトレードは、約定コストを2回支払います。入るときに1回、出るときに1回です。Phantom Driftの1サイクルは、それをはるかに多く支払います。各averaging層は、実際のspreadをまたぎ、実際のslippageを受ける本物の注文です。その後、lockがhedgeポジションを追加し、unlockがそれを閉じます。それぞれが独自のfillコストを持つlegです。latency口座の負けトレードあたり数pipsを削った同じ約定摩擦が、いまやladder全体と両側hedgeにわたって増幅されます。
複利的な問題を一文で言うと
単一legのlatency arbitrageでは、約定コストは1回の往復取引への税金です。martingale-lock戦略では、約定コストは各averaging層とhedgeの両legで積み上がるため、latency口座を静かに削った同じper-fillエラーが、ladder全体のリスクプロファイルを作り変えてしまいます。
この積み上がりは両方向に作用します。つまり、bar data、zero-latency fills、固定spreadといった甘い前提でテストされたLock戦略は、実際の取引よりも劇的に安全で滑らかに見えます。層ごとの摩擦が一切課金されないからです。そして、誠実な約定コストを生き残るパラメータセットを見つける価値は、ここでは他のどこよりも大きくなります。間違え得るコストが多いからです。
optimizerが現在一緒に調整する2つの要素
最適化可能な13個のパラメータは、2つの結合したグループに分かれます。optimizerはそれらを共同で検索します。averaging ladderの間隔とサイズが各legの約定コスト吸収量を決め、spreadと差分のしきい値がladderがそもそもどれほど頻繁に起動するかを決めるからです。
PART A · AVERAGING LADDER
martingale構造ブローカーから見えるポジション構築シーケンスであり、lockが必要とするdrawdownの深さを作る部分です。スイープされるパラメータ:
|
PART B · ARBITRAGE & EXIT
利益メカニズムとゲートポジションを開く価値があるかを決める差分およびspreadのしきい値と、それを閉じる利益管理です。スイープされるパラメータ:
|
どちらか一方だけを調整すると、価値を取り逃します。より深い、または広いaveraging ladderは、arbitrage legが回復しなければならないdrawdownを変えます。より厳しいspreadまたは差分ゲートは、ladderがそもそも構築される頻度を変えます。共同検索こそが要点です。
完全な最適化グリッド
以下は、sweepが変化させるパラメータと、デフォルトのmin、step、max範囲です。検索を実行する前に、銘柄と口座サイズに合わせて各範囲を広げる、または狭めてください。
| Parameter | Min | Step | Max |
|---|---|---|---|
| StopLoss | 50 | 10 | 100 |
| TakeProfit | 200 | 50 | 500 |
| MinProfit | 10 | 10 | 100 |
| PipsForMinProfit | 10 | 10 | 100 |
| DiffToOpen1 | 10 | 10 | 100 |
| DiffToOpen2 | 10 | 10 | 100 |
| MaxSpreadSlow | 1 | 5 | 50 |
| MaxSpreadFast | 1 | 5 | 50 |
| MaxTrades | 2 | 1 | 6 |
| LotExponent | 1.5 | 0.5 | 3 |
| PipStep | 20 | 10 | 60 |
| MaxProfit | 10 | 10 | 50 |
| ArbProfit | 10 | 10 | 100 |
RSIインジケーターはグリッドに含まれません。それは意図的です
Phantom DriftのentryインジケーターであるRSIは、スイープされる数値パラメータの1つではありません。グリッドは、上記のポジション構築、spread、差分、利益パラメータを調整します。RSI設定が結果にどう影響するかを調べるには、テストしたい各RSI設定で最適化を個別に実行し、それらの実行間で最高評価のパラメータセットを比較してください。
これは、インジケーターを考えるうえでも多くの場合より有用です。1つのグリッドに混ぜ込むのではなく、より厳しい、またはより緩いRSIが、他の条件を誠実に保ったまま、最適化された全体の面をどう動かすかを明確に読めるからです。
標準的なバックテスターがmartingale-lock戦略で誤解を招く理由
ほとんどの個人向けstrategy testerは方向性システム向けに作られており、方向性戦略では単に楽観的に過ぎないものの、martingale-lock戦略では積極的に危険となる3つの前提を置きます。bar dataで価格を付けること、zero-latency fillsを仮定すること、単一の固定spreadを適用することです。averaging ladderでは、これらの誤差が各層ごとに1回、さらに両方のhedge legで再び課されます。
M1 bars上では滑らかに見えるmartingaleのequity curveも、各averaging entryがそのtickに実際に存在した変動spreadを支払い、lockとunlockがそれぞれ独立したslippageを支払い、fill遅延が無視されるのではなくモデル化されると、まったく別物になり得ます。その違いは、単に少し低い数字として現れるのではありません。異なるリスクプロファイルとして現れます。甘いbacktestが生き残ると言う層こそ、誠実なbacktestではequity-control levelを破る層だからです。
| 課されるもの | 標準backtester | SharpTrader Optimizer |
|---|---|---|
| 価格解像度 | M1 / M5 bar近似 | 自分の口座から記録された実ticks |
| 注文約定時間 | 即時と仮定(zero latency) | ミリ秒単位で設定可能なlatency |
| Spread | 固定のブローカー標準値 | tickごとの過去変動spread |
| 各averaging entryのslippage | 無視または固定 | fillごとにモデル化 |
| Lock + unlock legs | 無料 / 即時として扱う | 両legを独立して課金 |
| 実行可能なグリッドサイズ | 小規模、シングルスレッド | 全コアで100,000以上の組み合わせ |
| 最適な取引時間 | 表示されない | 24時間パフォーマンスheatmap |
誠実な約定評価がLock戦略で変えるもの
latency結果を信頼できるものにした4つの要素は、Lock戦略では重要性が低くなるのではなく、さらに高くなります。各要素がladderとhedge全体で繰り返し課されるからです。
|
01
自分の口座からの実tickデータticksはSharpTraderによってライブブローカー口座から記録されるため、各averaging entryは、barのopenやcloseでも理想化されたfeedでもなく、口座が実際に見た価格に着地します。ブローカーの実際の挙動も含まれます。ladderでは、bar近似がarbitrage legに引き継がれるdrawdownを静かに誤って見積もります。 |
02
約定時間のモデル化現実的なfill遅延をミリ秒単位で設定します。Lock-arbitrage legは、そのedge全体がfast-feedの優位性に依存しているため、zero-latencyの仮定は、紙の上では美しく見せ、ライブでは失敗させるまさにその仮定です。 |
|
03
tickごとの変動spread各層は、開いたときに実際に存在したspreadを支払います。固定のデフォルトではありません。Averagingは多くの場合、変動が大きくspreadが広い瞬間に追加されます。これは、固定spreadテストが実際のコストを最も過小評価する場面です。 |
04
両legのslippagelockとunlockは独立してモデル化されます。素朴なテストでは無料で閉じられるhedgeも、ここでは誠実に課金されるため、テスト上のサイクルごとの回復は、実際に期待できる回復になります。 |
Phantom Drift最適化の実行方法
1. 自分のtick履歴を記録します。 SharpTraderは、ブローカーが配布する理想化されたfeedではなく、ライブブローカー口座から直接ticksを収集します。つまり、その履歴には、ブローカー側のplugins、requotes、約定の癖を含め、あなたの口座が実際に経験するものが正確に含まれます。クリーンなラボfeedではなく、実際の取引条件に対してテストしているのです。パラメータはブローカー間で移植できないため、実際に運用する口座で記録し、テストしてください。
2. 現実的な約定latencyを設定します。fast feedが実行ブローカーに対して持つ優位性を反映するミリ秒単位の値です。
3. 13個のパラメータでグリッドを定義します。ladder側はMaxTrades、LotExponent、PipStep、StopLoss、TakeProfit。arbitrageおよびexit側はDiffToOpen1/2、MaxSpreadFast/Slow、ArbProfit、利益管理です。各min、step、maxを銘柄と口座サイズに合わせて調整します。
4. 全コアでsweepを実行します。 大規模な多パラメータグリッドでも数時間で完了し、各候補に対してtickごとの変動spreadと両legのslippageが課されます。
5. heatmapとscoreを読みます。 目に見えるwin rateではなく、profit factorとdrawdownで順位付けし、24時間heatmapでどのセッションが実際にedgeを支えているかを確認します。
6. RSI設定ごとに繰り返します。 RSIはグリッドでスイープされないため、比較したい各RSI設定でsweepを再実行し、最良のパラメータセットがそれらの間でどう変化するかを読み取ります。
実務上の意味
- arbitrageだけでなく、両方の要素が最適化されます。 隠れた約定コストの大半はaveraging ladderにあるため、誠実なfillsに対してそれを調整することが、多くの改善を生みます。
- 見かけのwin rateではなく、profit factorとdrawdownに合わせて最適化します。 latencyテストが示したように、見た目の良いwin rateの口座が、より多くのお金を残す口座とは限りません。
- 銘柄ごと、ブローカーごとに再調整します。 Lock戦略の約定プロファイルはブローカー固有です。ある環境で調整されたセットは、別の環境では有効ではありません。
- ladder上のzero-latency、fixed-spreadテストを決して信頼しないでください。 これは、戦略を実際に壊す層を隠すことが保証された設定です。
よくある質問
はい。Phantom DriftはLockファミリーの一部であり、Lockファミリー全体のサポートはすでに提供開始されています。optimizerは、LatencyおよびHedge戦略と同じ方法で、Phantom Drift全体に実tickかつ約定を考慮したパラメータスイープを実行します。
両方です。しかも共同で行います。optimizerはaveraging ladderのパラメータ(MaxTrades, LotExponent, PipStep, StopLoss, TakeProfit)を、arbitrageおよびexitパラメータ(DiffToOpen1/2, MaxSpreadFast, MaxSpreadSlow, ArbProfit, MinProfit, PipsForMinProfit, MaxProfit)と一緒にスイープします。2つのグループは結合しているため、一緒に調整することが要点です。RSI entryインジケーターはグリッドには含まれません。
約定コストが積み上がるからです。単一legのlatencyトレードは、1回の往復取引でspreadとslippageを支払います。Lock戦略は、それを各averaging層とhedgeの両legで支払います。zero latencyと固定spreadを仮定するbacktesterは、latencyではそのコストを1回過小評価しますが、ladderでは何度も過小評価します。その結果、単なる損益ではなく、戦略全体のリスクプロファイルが変わってしまいます。
13個の数値パラメータです。StopLoss, TakeProfit, MinProfit, PipsForMinProfit, DiffToOpen1, DiffToOpen2, MaxSpreadSlow, MaxSpreadFast, MaxTrades, LotExponent, PipStep, MaxProfit, ArbProfitです。それぞれに設定可能なmin、step、maxがあります。RSI entryインジケーターはグリッドでスイープされません。その効果を調べるには、異なるRSI設定で個別に最適化を実行し、比較します。
あなた自身の口座からです。SharpTraderはライブブローカー接続から直接ticksを記録するため、最適化に使う履歴は、あなたの口座が受け取った正確な価格ストリームです。ブローカーが口座上でpluginsを動かしているかどうかに関係なく、実際の約定挙動も含まれます。ブローカーが公開する理想化またはクリーン化されたfeedでテストしているのではなく、実際にあなたのターミナルへ届いたものに対してテストしています。これにより、パラメータはブローカー固有となり、結果はライブ条件を反映したものになります。
13個の数値的なポジション、spread、差分、利益パラメータをスイープするパラメータグリッド内ではできません。RSIが結果にどう影響するかを見るには、テストしたい各RSI設定で最適化を個別に実行し、それらの実行間で最高評価のパラメータセットを比較してください。これにより、RSIを1つのグリッドに混ぜるよりも、より厳しい、またはより緩いRSIが最適化面全体をどう動かすかをきれいに読み取れます。
いいえ。各銘柄には独自のspread挙動とvolatilityがあり、各ブローカーには独自の約定プロファイルがあります。パラメータセットは、それが調整された条件に対してのみ有効です。そのため、運用前に銘柄ごと、ブローカー環境ごとにsweepを再実行する必要があります。
はい、提供開始済みです。既存のSharpTrader Optimizerユーザーは最新buildをリクエストできます。また、ツールを検討している方は、製品ページで完全な機能一覧を確認できます。buildの入手やLock戦略sweepの設定支援については、support@bjftradinggroup.com までご連絡ください。
BJFのトレーディングリサーチを購読する
新しい約定研究、optimizer解説、製品リリースを、公開時にお届けします。
Phantom DriftとLock戦略を誠実に調整する
SharpTrader Optimizerは現在、Lockファミリー全体、Hedge、Phantom Driftを対象に、averaging ladderとlock-arbitrage legの両方をスイープし、実tickデータ、モデル化された約定時間、変動spread、両legのslippageで各候補を評価します。bar上で滑らかに見えるだけのセットではなく、本番環境を生き残るパラメータセットを見つけてください。
English
Deutsch
العربية
한국어
Español
Português
Indonesia
Tiếng Việt
中文