皆さん、こんにちは!今日はMT4用のブランディEAについてお話しします。このエキスパートアドバイザーは、二つの移動平均を使ってトレード信号を発生させます。遅い移動平均がエントリーシグナル、速い移動平均がエグジットシグナルとして機能します。
- 遅い移動平均が上昇している場合は買いポジションをオープン。速い移動平均が下降したらクローズします。
- 遅い移動平均が下降している場合は売りポジションをオープン。速い移動平均が上昇したらクローズします。
これで完了です!複雑な交差や細かい調整は必要ありません。簡単ですね! :)
ここで、2007年7月から2008年7月までの最適化結果を見てみましょう。


最適化結果はどれも利益を示していますが、最適化後のEAは、最適化を行った期間以外のチャートでどう動くのでしょうか?
そこで、3ヶ月のフォワードテストを実施してみましょう。2008年7月から現在(10月後半まで)の間でテストを行います。このテストは最適化後の3ヶ月半の間に行われます。


ご覧の通り、最適化後もEAは3ヶ月以上にわたって利益を上げています。
最適化するパラメータ:
p1, p2 - 移動平均の計算に使う平均化期間。2から100までの値を1刻みで最適化します。
s1, s2 - 現在のバーから指定された期間だけシフトする値。2から20までの値を1刻みで最適化します。
sl - オープンポジションのストップロス。10から100までの値を5刻みで最適化します。
ts - オープンポジションをトレーリングストップで維持します。100から200までの値を5刻みで最適化します。
tsが100未満の場合、トレーリングは無効になります。これはEAの動作を妨げないようにし、接続が失われた際の安全策として機能します。例えば、EAがポジションを自動でクローズできない場合などです。
トレーリングを無効にするには、ts変数の値を100未満に設定します。例えば、ts = 0にするとトレーリングは無効になります。
このEAは新しいバーが表示されると動作します。そのため、最適化は「オープンプライスのみ(完了したバーの分析を最も早く行う方法、バーのオープニングを明示的に制御するEA専用)」のモデルに従って行うべきです。
P.S. ソースコードのEAは最適化されていません。