EAの最適化とは?
EA制作者やEAを運用する人たちは、しばしばEAの最適なパラメーター数値を導き出すために「最適化」という作業を行います。
EAの最適化の目的は、過去のデータに基づいて、将来より良いパフォーマンスを発揮できるパラメータの設定数値を見つけ出すことです。
EAによっては、ロジックが最近の相場状況と合っていないと感じるケースがあり、
その場合は直近2年程度の相場の中で、今の相場にフィットする最適な数値をはじき出すのです。
私個人的にはこの最適化は好きではなく、EA制作をする際には極力最適化の必要が無いロジックを考案しています。
というのも、この最適化はEA業界においてしばしば悪用され、バックテストを良く見せるために過剰な最適化(カーブフィッティング)を施して、過去相場においていかにも圧倒的に儲かるかを見せることが出来るからです。
これが行われるとどうなるかというと、高額なEA購入代金を払ったとしても、
リアル相場でのフォワードテストで全然勝てずに破綻するなんてことが起こるのです。
EAの最適化方法
まずはMT4のストラテジーテスターを開き、最適化検証したいEAを設置、
通貨ペア・期間を指定し、最適化の欄にチェックを入れます。
今回は、2022年・2023年の2年間におけるStopLossとTakeProfitの最適な数値を導き出すために、
StopLossの始まり(スタート)は100から、100ステップずつ検証し、MAX500(ストップ)までの検証を行います。
TakeProfitは20から、20ステップずつで最大100までの検証を行います。
やはり検証するパラメーターの数が多ければ多い程、幾通りもの計算を行いますので、
最適化はバックテストよりも圧倒的に時間が掛かります。
また、そのスピードはPCのスペックにも依存します。
「最適化結果」タブを選択すると、検証結果が出た順番にこのように結果が表示されていきます。
尚右クリックで「マイナスの結果を表示しない」を選択することで、利益が出る設定のみを表示してくれます。
ここで表示された結果の中で、良かった数値を今度は長期でバックテストを行い、
最終的に最適なパラメータ設定数値を導き出していく、とても地道な作業になります。
「損益」「総取引数」「プロフィットファクター」「期待利得」「ドローダウン$」「ドローダウン%」の項目がありますが、それぞれ大事な項目で、各項目のトップを選択することで並び順をその順番にすることができます。
●損益の高い順
●ドローダウンの低い順