SomaOil
- エキスパート
- バージョン: 1.1
- アップデート済み: 18 7月 2026
- アクティベーション: 10
SomaOil は MetaTrader 5 専用のマルチストラテジー・ブレイクアウト型エキスパートアドバイザーで、WTI 原油(XTIUSD)のみに対応しています。1 枚のチャートに 1 つの EA で、20 の独立戦略が単一の分散ポートフォリオとして同時に稼働します。
ローンチ時に手に取りやすくするため、透明性のある段階的価格モデルを採用しています:
- ローンチ価格:100 USD(48 時間)
- 月曜から価格は 10 ライセンス販売ごとに 100 USD 上がります
- 価格の引き上げは 1 日最大 1 回。同日に 10 ライセンスを超えて販売されても同様です
早期購入者は、製品のライフサイクル全体を通じ最安価格を確保できます。
コンセプト
単一のセットアップで狭い市場レジームに過剰適合しがちなのではなく、SomaOil は厳選された 20 のプリチューン戦略を 1 枚の WTI チャート上の単一 EA で並列実行します。
各戦略は独自のマジックナンバー、コメント、時間足、スイング検出パラメータ、決済、ニュース距離、ロット刻みを持ちます。実行エンジンは共通ですが取引は独立しており、多数のチャートを管理せずに時間足とブレイクアウト幅にわたる真の分散が得られます。
ポートフォリオの構築
2 つの補完的なインサンプル期間それぞれで、同一のパラメータグリッドにより最適化を実施しました:
- 時間足は 5 グループ:D1、H12、H8、H4、H1
- ブレイクアウト幅は 3 バリアント:
- V1 Broad:スイングが広く、セットアップは少ないが強い;
- V2 Medium:セットアップ頻度のバランス;
- V3 Narrow:スイングが狭く、セットアップはより頻繁。
- いずれも return / drawdown で最適化:
- まず Return / Balance DD
- 次に Return / Equity DD
2 つの最適化期間とそのアウトオブサンプル期間は次のとおりです:
- Res1 — In Sample: 2018.10.10–2024.10.10 | OOS: 2024.10.10–2026.06.26
- Res2 — In Sample: 2020.06.26–2026.06.26 | OOS: 2018.10.10–2020.06.26
Res1 と Res2 は同一履歴の補完的な半分であり、各期間が他方をサンプル外で検証します。W2 OOS(2018–2020)は W1 IS 内にあり、W1 OOS(2024–2026)は W2 IS 内にあります — SomaBTC と同じ Res1/Res2 クロスバリデーションパターンで、2018.10.10 から利用可能な XTIUSD 履歴に基づいています。
時間足 × 幅 × 最適化期間の組み合わせが分散を生みます。異なるボラティリティ環境で異なる戦略が発火するため、エクイティ曲線は単一の市場挙動に依存しません。
各候補戦略は次の基準でフィルタリングされました:
- 残存戦略との相関が強すぎる戦略は除外。
- real ticks と一致しない、またはアウトオブサンプル期間に不合格の戦略は除外。
- すべての最適化は金曜クローズ有効で実施され、リスクの高い週末ギャップに基づく最適化を排除しました。
その結果、残ったのは 20 戦略のみです — Res1 から 7、Res2 から 13。
最適化期間とスイング時間足別の最終ポートフォリオ:
- Res1(7):1 D1、1 H12、2 H4、3 H1
- Res2(13):2 D1、4 H12、2 H8、4 H4、1 H1
- 合計(20):3 D1、5 H12、2 H8、6 H4、4 H1
最後に、各戦略のロットは専用 Python スクリプトで設定しました。return / balance DD の最良の組み合わせを探索。DD で相関が高い戦略ほど配分を小さくし、価値の高い戦略ほどロット配分を大きくします。
Magic numbers
各戦略は一意の 8 桁マジックナンバーを使用し、MetaTrader が他 EA や手動注文と区別できるようにしています。すべての注文・ポジションおよび戦略コメント(例:SomaOil #1 81241201)にマジックが表示されます。
桁はランダムではありません — 戦略の内容をエンコードしています:
- 1 桁目 — EA ファミリー(8 = SomaOil)
- 2 桁目 — 最適化期間(1 = Res1、2 = Res2)
- 3–4 桁目 — スイング時間足(時間)(01 H1、04 H4、08 H8、12 H12、24 D1)
- 5 桁目 — ブレイクアウト幅(1 Broad、2 Medium、3 Narrow)
- 6 桁目 — 最適化ターゲット(1 Balance DD、2 Equity DD)
- 7–8 桁目 — 研究バッチの元 set ファイル ID
例:マジック 81241201 は SomaOil · Res1 · D1 · Broad · Equity DD · set #01 と読みます。
ターミナルや口座履歴でどの戦略が取引を開いたかを、EA 設定を開かずに識別しやすくなります。
リスクとロットサイズ
2 つのサイジングモードがあります:
- 手動ロット — 取引ごとの固定ロット
- Lot per balance step — 口座資金に基づく自動サイズ(戦略ごとにスケール)
追加コントロールでリスクプロファイルを微調整できます:
- 算出ロット上のグローバルリスク乗数
- MaxLots による任意の EA ロット上限(デフォルト 0 = EA 制限なし、ブローカー仕様のみ);> 0 でハード上限
- サイズ基準として残高またはエクイティを選択
- OnlyUp モード — ロットはピーク資金に応じて上がるだけで、取引中のドローダウンでは下がりません。出金はサイジングピークを下げ、入金は上げます(いずれも即座にピーク同期と保留中のロット再調整をトリガー)。起動時に EA は直近の決済済み取引履歴(設定可能なルックバック)から過去最高値をシードし、再起動のたびにリセットされず最初のティックから意味のある OnlyUp 基準にします
- 非 USD 口座向けに正しいサイジングのための基軸通貨セレクター(USD、EUR、GBP、HKD、SGD またはカスタム銘柄)
- マージンコール保護(デフォルトオン)——発注前に EA は同方向の既存ストップ/指値(待機)を、すでに成行注文の必要証拠金がかかっているものとして扱い、ブローカーが待機に少額しか拘束しない場合でも使用可能証拠金を過剰に取りすぎないようにします。算出ロットを調整し、最悪でも同方向の同時注文がサイジング基準に紐づく証拠金バジェット内に収まるようにできます。レバレッジと余力を完全に把握している場合のみオフにしてください。
ニュースフィルター
SomaOil には米国ニュースカレンダーが組み込まれ、高インパクトの 3 種類をカバーします:
- NFP — Non-Farm Payrolls
- CPI — Consumer Price Index
- IR / FOMC — 中央銀行の政策金利決定
各イベント前後で EA は独立して新規エントリーをブロックし、既存の指値・逆指値をキャンセルし、建玉をクローズできます。各戦略にイベント前・後の分ウィンドウがあり、ニュース保護はグローバル一括ではなく戦略ごとに調整されます。
ブローカー GMT は手動設定または自動検出でき、夏時間の切り替えを含め常にブローカー時間にニュース枠が揃います。分類器は ADP Nonfarm Employment や FOMC の講演・議事録などの偽陽性を除外するよう厳格化されています。
取引ウィンドウ
オプションの月曜オープン/金曜クローズウィンドウで週末ギャップを回避できます。取引ウィンドウ外で待機注文を解消するか、建玉を決済するかも選択できます。
複数の戦略は、流動性の低い時間帯を避けるため、組み込みの日次セッションウィンドウ(戦略ごとの開始/終了時刻)も使用します。これらはポートフォリオプリセットの一部であり、別のユーザー入力ではありません。
最適化は金曜クローズ有効で実施され、これはデフォルト設定のため、リスクの高い週末ギャップ条件への過剰最適化はありません。
スプレッドフィルター
ブローカースプレッドが広すぎる場合、SomaOil はブレイクアウト指値の新規配置を見送れます。原油ではロールオーバー、ニュース、低流動性でスプレッドが広がるため重要です。
対象は指値注文のみ。建玉の SL/TP/トレール/建値移動は従来どおりです。
- MaxSpreadPips(既定 80)— 3 桁 WTI のMT5 ポイント上限。0 = 無効。
- RemovePendingSpreadSeconds(既定 60)— スプレッドが上限を連続して超えた秒数後にその戦略の指値を削除。0 = 新規ブロックのみ。
2 桁/3 桁の正規化、各戦略の DefaultValue と原油参照価格による上限スケールに対応。
Prop Firm コンプライアンス
MaxRandomizationPips により、各トレードのエントリー/イグジットに任意のランダム pip オフセットを適用できます。同じ EA を使う他トレーダーとわずかに異なる水準になります — prop-firm や funded 口座で同一のコピートレードパターンがフラグされるのを避けるのに有用です。0 で無効化。
SomaOil にはオプションのコンプライアンス層(デフォルト off)も含まれます:最大日次 DD ロックアウト、ノーヘッジルール、ペンディング注文上限。下記の EnablePropFirmCompliance と関連入力を参照。
チャート上ダッシュボード
SomaOil はチャート上にライブダッシュボードを表示します:
- ライセンス状態とアクティブポートフォリオ
- ロット基準と実効資本
- 指値と建玉を買い/売り別
- 含み損益と本日の決済損益
- 残高・エクイティのドローダウン(絶対値と%)
- スリッページ統計:全期間、7 日、24 時間
- 現在スプレッドとアクティブ戦略数
- 次回・前回の NFP、CPI、IR/FOMC
ダッシュボードは Strategy Tester で無効化でき、バックテストを高速化できます。
パラメータ
オーバーライド
- EnableMagicOverride -> オン時、取引 ID 番号は OverrideMagicBase + 戦略インデックスで割り当て;オフ時(デフォルト)各戦略は組み込み ID を使用
- OverrideMagicBase -> マジック上書き有効時の開始取引 ID 番号
- EnableCommentOverride -> オン時、全取引が同一コメントを共有;オフ時(デフォルト)各戦略は独自コメントを保持
- OverrideComment -> コメント上書き有効時に使用するコメントテキスト
取引方向
- AllowBuyTrades -> 買い/ロングと買い側待機注文を許可
- AllowSellTrades -> 売り/ショートと売り側待機注文を許可
ロットサイズ
- LotsAdjustMinChangePercent -> 有効ロット更新前の最小 % 変化
- Risk -> ManualLotSize(固定 StartLots)または LotSizeStep(資金連動)
- AdjustLotsizeToVariableValues -> 残高/エクイティ変化でロット再計算
- StartLots -> 手動時は固定ロット、step 時は下限参照
- MaxLots -> 任意 EA 上限; 0 = ブローカー仕様のみ
- UseEquity -> 残高ではなくエクイティでサイズ
- OnlyUp -> ピーク資金に応じてロットは上がるのみ;取引ドローダウン中は下がらない;出金はピークを下げ、入金は上げる
- RestorePeakFromHistory -> 起動時に直近決済履歴から OnlyUp ピークを設定
- RestorePeakLookbackDays -> ピーク復元のルックバック日数(0 = 全履歴)
- ManualBalanceForLotSizing -> > 0 で固定資金をサイズ基準に
- RiskMultiplier -> 算出ロットへのグローバル乗数
- MarginCallProtection -> 同方向待機の証拠金確保とロットを証拠金バジェット内に制限
- BaseCurrency -> USD/EUR/GBP/HKD/SGD または custom(非 USD 口座)
- CustomBaseCurrencyPair -> BaseCurrency が custom のときのブローカー銘柄
GMT
- Broker_GMT_OFFSET_Summer -> 夏の手動ブローカー GMT オフセット(時間)
- Broker_GMT_OFFSET_Winter -> 冬の手動ブローカー GMT オフセット(時間)
- AutoGMT -> ブローカー GMT を自動検出(手動は無視)
ニュースフィルター
- EnableNFP_Filter -> NFP 保護ウィンドウを有効
- NFP_CloseOpenTrades -> NFP 前に建玉を決済
- NFP_ClosePendingOrders -> NFP 前に待機注文をキャンセル
- EnableIR_Filter -> IR / FOMC 保護ウィンドウを有効
- IR_CloseOpenTrades -> IR 前に建玉を決済
- IR_ClosePendingOrders -> IR 前に待機注文をキャンセル
- EnableCPI_Filter -> CPI 保護ウィンドウを有効
- CPI_CloseOpenTrades -> CPI 前に建玉を決済
- CPI_ClosePendingOrders -> CPI 前に待機注文をキャンセル
イベント前後の分は戦略ごとにポートフォリオ内蔵(別パラメータなし)。
取引時間
- UseTradingTimeZones -> 週次月曜–金曜ウィンドウを適用
- KillPending -> ウィンドウ外で待機注文を解消
- KillOpen -> ウィンドウ外で建玉を決済
- MondayOpenHour / MondayOpenMinute -> 月曜このブローカー時間でウィンドウ開始
- FridayCloseHour / FridayCloseMinute -> 金曜このブローカー時間でウィンドウ終了
複数の戦略は、ポートフォリオプリセットの一部として組み込みの日次セッションウィンドウ(戦略ごとの開始/終了時刻)も使用します。これらは別のユーザー入力ではありません。
ダッシュボード
- DisableDashboardInTesting -> Strategy Tester でチャートダッシュボードを非表示
- DashboardUpdateSeconds -> ダッシュボード更新間隔(秒)
Spread Filter
- MaxSpreadPips -> MT5 ポイント上限(3 桁);DefaultValue でスケール;0 = off
- RemovePendingSpreadSeconds -> 持続的高スプレッド後に指値削除(秒);0 = 削除しない
Prop Firm コンプライアンス
すべての入力はデフォルト off/0 — 無効時はパフォーマンスへの影響ゼロ。
- MaxRandomizationPips -> prop firm エントリー/イグジットオフセット;他 EA ユーザーと差別化(0 = off)
- EnablePropFirmCompliance -> マスタースイッチ;以下のルールには true 必須
- PF_MaxDailyDrawdownPercent -> 日次ベースラインに対する最大日次 equity 損失 %(0 = off)
- PF_MaxDailyDrawdownMoney -> 口座通貨での最大日次 equity 損失(0 = off)
- PF_DailyResetHour -> 日次ウィンドウリセットのブローカー/サーバー時(0–23)
- PF_DailyLossBufferPercent -> ハードリミット前の安全クッション(デフォルト 10%)
- PF_DisallowHedging -> 反対方向エントリーをブロック;反対ペンディングを削除
- PF_MaxTotalPendingOrders -> EA ペンディング注文合計上限(0 = off)
推奨セットアップ
- 銘柄:WTI 原油 — ブローカーの US crude/WTI チャートに EA をアタッチしてください。同一商品はティッカーが異なることが多く、当社のテスト端末では XTIUSD、USOUSD、USOUSD.s、WTI、SpotCrude を確認しています。SomaOil は XTIUSD で始まる銘柄向けに設計されています。ブローカーが別名の場合は、マーケットウォッチで WTI、crude、oil、USO を検索して該当チャートを見つけてください。
- 時間足:任意(EA は内部で必要な時間足を読み取ります)
- 口座タイプ:狭スプレッドの ECN/RAW-spread を推奨
- 推奨最低残高:デフォルトリスクで 2000 USD。算出ロットは取引あたり 0.01 未満にはならないため、この水準未満の口座ではリスクをこれ以上下げられません。
- VPS:安定した 24/5 実行のために推奨
- MT5(ツール - オプション - エキスパートアドバイザー)の許可 URL に "https : // ea-license-server . somatrade . org" と "https : // www . worldtimeserver . com/" を追加してください
まとめ
- 単一の WTI(XTIUSD)チャート上の 20 のプリチューンブレイクアウト戦略
- 2018–2026 をカバーする 2 つの最適化期間とクロスバリデーション OOS
- 時間足:D1、H12、H8、H4、H1
- ブレイクイーブンとトレーリングストップによる段階的イグジット
- 偽陽性フィルタ付きの米国ニュース保護
- 指値向け任意スプレッドフィルター(MaxSpreadPips + 持続的高スプレッド削除)
- prop firm 独自性のための任意のエントリー/イグジットランダム化(MaxRandomizationPips)
- 任意の prop firm コンプライアンスモード(最大日次 DD、ノーヘッジ、ペンディング上限)— デフォルト off
- フルライブチャートダッシュボード
- 透明な段階的価格ローンチ:100 USD 開始、10 ライセンスごとに +100 USD、1 日最大 1 回
