バックテスト時のスプレッドを自在に変更する。(再考…

以前に、MetaTraderでのバックテストで、スプレッドを任意の値に設定する方法。という記事を書きました。大多数の MT4 業者が変動スプレッド制に移行してしまった今となっては、週末に適切なスプレッドでバックテストできることはとても重要なことだと思っています。
(実際には、平常時よりスプレッドを広めに設定してバックテストを行うと、リアルトレードに近い結果が得られる場合があります。自作EAが、どの程度のスプレッドまで耐えられるのか?を確認する用途にも使えます。



そして、最近、とある人から以下のコメントを頂きました。

いつも有益な記事ありがとうございます。
この記事の方法でスプレット固定でのバックテストをしました。
タイミングによりテスト結果が異なるという現象から開放されありがたく思っています。


ただこの方法では同時に1通貨しか設定は出来ないのでしょうか?
複数通貨で連続して検証するときに便利な方法があれば教えて頂ければと思います。

言われてみれば、これはもっともな話なので、今日は複数通貨に一括設定する方法を紹介します。



やり方


1. こちらから、SpreadChanger.exe をダウンロードして下さい。



2. MT4 を起動し、データセンタに繋がった状態でバックテストを1度行ってください。
  (これは必要なヒストリカルデータをダウンロードするのが目的です。データが入手済みであれば不要です。)
3. MT4 の設定で、ツール -> オプション -> サーバ の「プロキシサーバを有効にする」にチェックを入れてください。
  (次回 MT4 起動時にログインさせないようにする為です。普通の環境の人はプロキシサーバを使っていないはずなので、ここにチェックをいれるとデータセンタに接続できなくなるのです。)

↑これ以外の方法として、パスワード欄を空欄にするだけでも良いし、LANケーブルを抜いてしまうのでもOKです。




4. MT4 を終了し、SpreadChanger.exe を起動します。
5. { MT4のインストール先 }\history\{ サーバ名 } フォルダ内の symbols.sel を SpreadChanger の画面内にドロップします。


6. Spread の値を調整し、Update ボタンを押します。
↓ symbols.sel が更新されて、スプレッド値と通貨ペア数が表示されます。


7. この状態で、MT4 を起動し、ログインしない状態でバックテストを行うと、 symbols.sel 内の全てのペアが調整済の同一のスプレッドでテストが行えます。




この手法であれば、SpreadChanger は起動したまま、「 MT4を終了->再設定->MT4を起動 」 を繰り返すことで自由自在に変更出来ると思いますが、如何でしょうか?


(ぶっちゃけ、このツールを使うと前作の SpreadGenerator が 如何に不便でダメなツールであるか?が実感できます。 SpreadGenerator を使っているトレーダーさんを見つけたら、「まだそんな時代遅れなモノを使っているの?!前時代的〜。バッカみたい。」と言ってあげてください。><;