超簡単!!MT4バックテストのやり方(上級編:パラメーターの最適化)

以前の記事では初心者でもバックテストのやり方が分かるよう、初級編、中級編に分けてご説明しました。

MT4でEAを使用して自動売買を行なうにあたり、リアル口座で運用する前にバックテスト作業は必ず行なわなければなりません。バックテストにかける時間が長ければ長いほど、リアル口座でもメンタル的に安心してEAを稼働できます。バックテストを重要視する主な理由は4つあります。

バックテストを重視する4つの理由

(1)過去の相場において損益はどの程度なのか、未来に対しても通用するのかを判断できる。

(2)ある程度損失が続いても、事前にEAの最大ドローダウンを知ることで、EAを途中で止めたりすることがなくなる。

(3)ビジュアルモードを使いEAのエントリータイミングを観察することで、EAの動作ロジックを把握できる。

(4)パラメーターを自身で自由に変更し、検証することでより利益を獲得できるEAに生まれ変わらすことができる。

特にパラメーター変更の自由度が高いEAの場合(4)の検証にかける時間が多ければ多いほどより良いシステムを生み出す可能性が上がります。

パラメーターとは

EAにおけるパラメーターとは具体的に、利益損益確定pipsの値、トレーリングストップ開始pips、ロット調整、EAエントリーポイントの調整(例:エンベロープ乖離x%でエントリー)など様々な値のことです。

これらをEA利用者側で自由に変更できる場合、デフォルトではそこそこの成績だったEAが、パラメーターの組み合わせ次第でより多くの利益を生み出すEAに変身させることができます。つまり、「パラメーターの最適化」=「ただの原石だったEAを磨きあげて光る原石に変えていく作業」と言えます。

ただし、この作業は時間と労力が入ります。例えばトレーリングストップ開始pipsのパラメーターを変更していく場合、1pipsでトレーリング開始、1.5pipsでトレーリング開始、2pipsでトレーリング開始・・・・と都度バックテストをして成績の確認をしなければなりません。テスト期間が長ければ長いほど1回のバックテストにかける時間も長くなり、検証時間が膨大になってしまいます。MT4にはそんな問題を解決し、時間を有効活用させてくれる「最適化」というツールが存在します。

パラメーター最適化のやり方

上記例のようにEAのトレーリングストップ開始pipsを変更させていき成績の良いパラメーターを探す場合、1回ずつバックテストしていくのではなく、まとめてバックテストをしてくれるのが、「最適化」というツールです。今回はトレーリングストップ開始pipsを例に最適化のやり方を流れに沿ってご説明します。

(1)ストラテジーテスター設定画面で、「最適化」にチェックを入れ、「エキスパート設定」をクリックします。

(2)[パラメーターの入力]タブをクリックすると、EAのパラメーター設定画面が表示されます。今回は、トレーリングストップ開始pipsの最適化を行いたいと思います。

変数項目「TrailingStop1」に注目します。

(i)[値]:1.0 (ii)[スタート]:1.0 (iii)[ステップ] 0.0 (iv)[ストップ] 0.0 となっています。各項目についてご説明します。

(i)[値]・・・デフォルトで設定されている値です。利益が1pipsになったらトレイリングストップを開始するという意味になります。

(ii)[スタート]・・・最適化を実行するにあたり、パラメーターの最小値(スタート値)になります。トレーリングストップ開始pipsを最小で1pipsからスタートするという意味になります。

(iii)[ステップ]・・・トレーリングストップ開始pipsの刻み値を入力します。0.5とした場合、トレーリングストップ開始pipsを1→1.5→2→2.5→3→・・・・と自動で変化させてそれぞれの場合でバックテストをしてくれます。

(iv)[ストップ]・・・トレーリングストップ開始pipsの最大値(ストップ値)になります。4とした場合、1→1.5→2→2.5→3→3.5→4まで、それぞれの値でバックテストしてくれます。

それでは下記条件を設定画面に入力してみましょう。入力完了後「OK」をクリックします。

変数項目「TrailingStop1」

(i)[値]:1.0 (ii)[スタート]:1.0 (iii)[ステップ] 0.5 (iv)[ストップ] 4.0

(3)ストラテジーテスター設定画面の「スタート」をクリックすると「最適化」が始まります。

(4)最適化完了後、「最適化結果」を確認します。

最適化結果画面を確認すると、「TrailingStop1」を1→1.5→2→2.5→3→3.5→4に変更させていった場合の成績を確認することができます。

今回の場合は「トレーリングストップ開始pips=1pips」の時プロフィットファクタ1.57、ドローダウン0.36%ということが判明しました。トレーリングストップ開始pipsを大きくする毎に成績が多少悪くなっている傾向も確認できます。

(5)「最適化グラフ」を確認します。

最適化グラフを確認すると、青い点がプロットされています。これは、「TrailingStop1」を1→1.5→2→2.5→3→3.5→4に変更させていった場合の口座残高をグラフ化したものです。プロット位置が高いほど口座残高は多くなっているため、視覚的にどのパラメーターの結果がよいのかすぐに分かります。

バックテストの最適化のやり方は以上です。

「最適化」ツールを使用することで、バックテストにかける労力が軽減され、効率的に検証することができます。「最適化」は1つの項目だけでなく、下記のように複数の項目をかけ合わせて検証することも可能です。

(i)「TrailingStop1」を1→1.5→2→2.5→3→3.5→4

(ii)「Losscut1」を3→3.5→4→4.5→5

(i)(ii)をかけ合わせた場合、全部で35通りの組み合わせになります。パラメーターの組み合わせ数が多くなると、バックテスト時間が1日かけても終わらない事もあります。その為、適当に最適化するのではなく、あらかじめご自身で考察した上でパラメーター最適化を行ってください。使い方によっては作業効率が数倍上がります。

コメント