English
中文
日本語
ID
Vietnam
한국어
Filipino
 
   カレッジ・ナビゲーション

MT4 でエキスパートアドバイザー (EA) を適切に最適化する方法

How to Properly Optimize an Expert Advisor (EA) in MT4

最適化を考えずに取引システムを開発するのは良いことでしょう。 しかし実際には、収益性の高いトレーディング戦略の開発は試行錯誤の作業であり、常に何らかの形での最適化が必要となります。 オプティマイザーは常にどこかにあります。デスクトップに表示されていない場合は、影の中に潜んでいます。

- J. カッツ、D. マコーミック。 トレーディング戦略の百科事典。


この記事では、MT4 では、バックテストから最適なモデル タイプの選択まで、エキスパート アドバイザー (EA) を適切に最適化します。


Metatrader 4 の非常に強力な機能の 1 つは、内蔵オプティマイザーです。これにより、Expert Advisor 設定の何百もの組み合わせをテストして、最も最適な設定を見つけることができます。適切で最も収益性が高い。 これがバックテストの最大の力であり、それ以上です。


何百ものサポート結果 (パラメータおよびパラメータの組み合わせ内の任意の変数範囲) を、純利益などの注目すべき統計データごとに並べ替えた美しい表に表示できます。プロフィットファクターと最大ドローダウン。 これらのさまざまな設定のそれぞれが歴史的にどのように実行されてきたかを一目で確認できるため、戦略がそのすべての部分にどのように関連しているかをより完全に把握できます。 さらに、この大きな全体像により、EA を強化するための最適なパラメーター値を選択することができます。


オプティマイザは、選択した日付範囲のさまざまな設定の結果を返して並べ替えるため、ユーザーは最適な組み合わせを見つけやすくなります。


エキスパート アドバイザを最適化するには、エキスパート アドバイザをチャートに挿入し、エキスパート アドバイザ/ストラテジー テスターを右クリックするか F6 を押します。 これにより、ストラテジー テスターに​​エキスパート アドバイザの名前、シンボル、モデリング タイプ、および期間が設定されます。


あるいは、EA の名前を Expert Advisor ドロップダウン ボックスから選択し、通貨をシンボル ボックスから選択し、チャート期間を時代の箱。 モデルについては、次の 3 つのモデル タイプから選択できます: 1) すべてのティック (利用可能な最小のタイムフレームに基づいて各ティックを生成する最も正確な方法); 2) コントロール ポイント (最新の比較に基づく、より短いタイムフレームに対する非常に大雑把な方法) 、結果が考慮されない場合があります)、および 3) 始値のみ (完了したばかりのバーを分析する最速の方法、バーの開始を明示的に制御する EA のみ)。


最適なモデル タイプの選択

バックテストと最適化に最も理想的なモデル タイプは、他の 2 つよりもはるかに正確であるため、Every Tick です。 ただし、このモデル タイプの実行には、特に最適化の場合、他の 2 つのモデルよりも時間がかかります。 パラメーターの組み合わせが多いほど、日付範囲が大きくなり、最適化の速度が遅くなります。


何時間も待つことになります。 処理を高速化するには、他の 2 つのモデル タイプを可能な限り活用する必要があります。 始値モデル タイプは最も速い方法ですが、精度が最も低く、制御点方法はこの 2 つの間の適切な妥協点です。 EA に最適な方法を見つけるには、Tick モードをアービターとして使用して、6 か月間にわたって 3 つのモードすべてで EA のサンプル バックテストまたは最適化を実行します。 Control と Open の結果が Tick の結果と一致する場合は、メソッドとして Open を選択します。Control のみが Tick の結果と一致する場合は、Control を選択します。Control と Open のどちらも Tick と一致しない場合は、Tick を選択します。


エキスパート プロパティ ボタンを左クリックして、エキスパート アドバイザー設定を開きます。 「テスト」タブの下に、500 から 50,000 までの初回デポジットが表示されます。ここに任意の数字を追加して、USD、EUR、GBP、CHF で表すことができます。 私は通常、10,000 ドルまたはテスト対象の戦略に一致する現実的な値を使用してテストします。 ロングとショートではなくロングのみ、またはショートのみをテストする場合を除き、このタブの他のフィールドはデフォルト値のままにします。


中央のタブ [入力] では、最適化する値の範囲を入力できます。 特定の設定の最小値は「開始」列に表示され、最大値は「停止」列に表示されます。 「ステップ」列は、オプティマイザが開始から停止までに設定する「ステップ」の数です。


上の画像では、MACros Expert Advisor 用に FastMAPeriod と SlowMAPeriod を最適化しています。 FastMAPeriod の場合、開始値は 15、ステップは 5、停止値は 50 です。 オプティマイザは、15、20、25 などから 50 までの値のあらゆる組み合わせをテストします。 SlowMAPeriod の場合、開始値は 50、ステップは 25、停止値は 250 です。


オプティマイザは、50、75、100 などから 250 までの値のあらゆる組み合わせをテストします。 セットアップに適切な開始、ステップ、および停止の値を使用することが重要です。 FastMA は SlowMA よりも短い長さを示す必要があるため、より小さい Start、Step、Stop を使用する必要があります。


最適化したい設定の左端にチェックボックスを配置できます。 チェックされていないすべての設定では、[値] 列の数値が使用されます。 注: 最適化のために、一度に 3 セットを超えるチェックを行わないことをお勧めします。 オプティマイザが高速になり、結果の比較が読みやすく解釈しやすくなります。


最適化の準備ができたら、ストラテジー テスター ウィンドウの右下隅にある [開始] ボタンをクリックします。 期間、日付範囲、テスト モデル、最適化する設定の数に応じて、数分から数時間かかる場合があります。時間がかかりすぎる場合は、テスト モデルを変更する、日付範囲を短縮する、少ない設定で最適化する、またはより大きなステップ サイズ値を使用することを検討してください。


最適化が完了したら、[最適化結果] タブを開き、[利益] 列または [利益係数] 列をダブルクリックして結果を並べ替えます。 また、「結果の最適化」を右クリックして、「役に立たない結果をスキップ」の選択を解除することをお勧めします (これは 1 回だけ実行する必要があり、二度と実行する必要はありません)。


上記の例では、無駄な結果をスキップするチェックをオンのままにすると、168 個の最適化のうち 7 個だけ (収益性の高いもののみ) が表示され、161 個は無視されます。否定的な結果。 ここに 161 件の否定的な結果をすべてコピーして貼り付けることはできませんが、この戦略は、この時間枠と通貨では良いというよりも悪い結果であり、収益性が得られるのは少数の孤立した組み合わせだけであることがわかるため、有益だと思います。


「役に立たない結果をスキップする」のチェックを外す

愚かな理由により、「役に立たない結果をスキップする」のチェックを外す必要があるが、デフォルトで選択されています。 役に立たない結果をスキップすると、否定的な結果がすべてスキップされ、肯定的な結果のみが得られます。 これにより、オプティマイザーの機能が大幅に制限されます。 良くも悪くもすべての結果を確認できるのは非常に有益です。 良い結果がどの程度優れているかは、悪い結果と同等になるまでわかりません。 さらに、収益性パラメーターの隣接するすべての結果を表示して、結果の完全性と堅牢性をチェックできるようにしたいと考えています。 一般に、最も収益性の高いパラメーターには、堅牢であるとみなされるために、収益性の高い隣接パラメータが必要です。



最適化結果を右クリックし、[レポートとして保存] をクリックすることをお勧めします。 これにより、後で参照できるように最適化された HTML レポートを保存できるようになります。 このアプローチの唯一の問題は、最適化されたパラメーター値が保存されないことです。そのため、視覚的な記憶がない限り、どのパス番号がどの組み合わせに対応するかを思い出すのは不可能です。 代替の回避策があります。


シングルクリックで絞り込み結果を書き込み、[すべてコピー] をクリックして、テーブル全体を Excel ドキュメントのワークシートに貼り付けることができます。 さまざまな時間枠と通貨のさまざまな組み合わせなど、複数の異なるタイプの最適化を実行する予定がある場合、最適化を比較対照するための最良の方法は、それらをすべて別のシートに作成することです。


結果を表示するもう 1 つの方法は、最適化チャート、最適化 グラフは 2D または 3D にすることができます。 2D 最適化では、最初のパスから最終パスまで直線的な推移がプロットされます。グラフが常に途切れ途切れになっている場合は、どの組み合わせも残りの組み合わせより大幅に高いことが確認できます。


3D に切り替えて緑の色合いを表示することもできます。これは、優れているだけでなく、最良の (最も緑の) 状態にあるパラメータを見つけるのに役立ちます。近所の とても環境に優しいようですね。 一般に、最も緑の (暗い) 近傍に存在するパラメータに、より大きな統計的値が帰属する理由は他にもあります。 つまり、最適な周囲のパラメータはすべて、濃い緑色の色合いになります。


最適なパラメータが濃い緑色の領域にある場合、そのパフォーマンスは過剰な最適化による異常ではなく、より現実的であり注目に値します。 緑色のブロックの上にカーソルを置くと、パス番号、パラメータの組み合わせと値、およびバランスが表示されます。 3D グラフィックスを使用して緑豊かな近隣地域を見つけることで過剰な最適化を回避する方法に関する優れた記事があります。


最適化結果にリストされている結果をダブルクリックして、テスターに​​ロードできます。 もう一度 [開始] ボタンを押して、選択した設定でバックテストを実行し、資本曲線と最適化戦略に関する詳細な統計を確認します。


最後に、過剰な最適化を最小限に抑えるためのすべての手順を理解していることを確認してください。