MT5の便利な機能
MT5にはMT4にはないフォワードテストという便利な機能があります。この機能を使うことにより簡単に疑似フォワードテストを行うことが出来るので、過度の最適化によるカーブフィッティングに騙されにくい人間になれます(笑)
といいますか、最適化期間の終了後にやってくる落ち込みを目の当たりにしてショックを受ける回数が増えEAを開発するのが嫌になってきます(^^;
最適化するパラメータが少ない方がカーブフィッティングになりにくいのですが、MT5の最適化スピードに甘えてしまってついついフィルターを増やし過ぎてしまうというのが良くないのでしょうね。
フォワードテスト機能を使ってみる
最適化するパラメーターを少なくするためにはインジケーターの数を減らすことが一番手っ取り早い方法です。そこで今回はトレンドの方向と強さという2つを判断できる優れものインジケーターとして有名なADXを使用してみましょう。
MT5で使用できるのは通常のADXとADXワイルダーの2種類なのですが、個人的にはADXワイルダーが好みです。この辺は人それぞれ好き嫌いがあると思うので両タイプのADXを使用することが出来るように切り替えスイッチを用意しておきました。
- 「ADX_W」をtrueにするとADXワイルダーが適用されます。falseにすると通常のADXになります。
- ADXワイルダーのパラメーターを設定できます。
- ADXのパラメーターを設定できます。
ご覧のようにテクニカルに関する部分のパラメーターは2つだけになるのでかなりカーブフィッティングが防げるのではないかと期待できます。
というわけでさっそくフォワードテスト機能を使って最適化してみます。
- 最適化期間→2010.01.01~2020.0606
- フォワードテスト期間→2020.01.01
最適化期間を2010年1月1日から2020年6月6日まにしていますが、フォワードテスト期間を2020年1月1日に設定しているので、実際に最適化に使用される期間は2010年1月1日から2019年12月31日になります。
2020年1月1日以降は最適化のための計算に含まれないということですね。
この状態で最適化してみます。オプティマイズタブをクリックして結果を見てみましょう。
13886.56ドルという結果が一番良いですね。
続いて先行結果タブをクリックします。
結果順に並び変えてから損益を見てみましょう。
悲しいことに損益が最も多かった最適化の結果でフォワードテストした結果は-429.37ドルでした(T_T)
これではあまりにも悲しいのでストップロスとテイクプロフィットも最適化項目に追加して再チャレンジです。
最適化期間の損益が5,875.98ドルに対してフォワードテスト期間は391.22ドルとなりなんとかプラスになりました。
フォワードテスト期間がプラスにはなっているものの美しい右肩上がりというわけではないので、このEAとドル円との相性はそれほど良くないのかなという感じでしょうか。レンジ相場で負けまくっているようなのでトレイリングストップやブレイクイーブンでドローダウン対策をしてみるといいかもしれませんね。
今回作成したEAは以下のリンクからダウンロードすることが出来ます。
コメント