MT4は開発されているEAの数が豊富であることが特徴の1つとして挙げられます。EA開発者は世界中にいてウェブ上で膨大な種類のEAが配布されています。
この記事では、EAを利用して取引したい方に向けて、EAのダウンロードや設定方法、チャートへの反映方法、バックテストの方法など解説しています。
海外FX業者XMTradingの公式HPでは、EAの導入や検証の方法、シグナルの利用方法など、多様な解説動画を提供しています。「動画で簡単な使い方を知りたい」という方は参考にしてみてください。
EAとは?メリット・デメリットを簡単に紹介
EAはExpert Advisor(エキスパートアドバイザー)の略で、トレーダーの代わりに自動で取引を行うプログラムのことです。
主にMT4やMT5向けに作成されたプログラムのことを指し、世界中で多くのEAが開発されています。
チャンスを逃さずに取引可能
EAは予め設定してあるロジックに基づいて自動で取引を行うので、忙しくてエントリータイミングを逃すという事がありません。
FX市場は平日24時間動いており、いつチャンスが訪れるか分かりませんが、EAなら仕事中や睡眠中に訪れたチャンスも逃すことなくトレードできます。
感情に左右されずに取引可能
EAは予め設定されたロジックに基づいて自動的に取引が行われるので、感情に左右されずに取引できます。
自分でトレードをしていると状況によっては多少感情が左右されて普段通りの判断ができない場面もありますが、EAならロジックに基づいた取引のみできるので、常に冷静に取引を行えます。
知識や経験不足を補ってくれる
EAは、予め開発者が注文や決済の条件を設定しており、自分の知識量や経験に関係なく取引できます。
もちろん自分で色々な知識を学び、経験を積むことは重要ですが、EAを利用すれば初心者の段階でよく分からずにトレードして損失を重ねるという可能性が減ります。
種類が豊富すぎて、理想のEAを探すのは難しい
一口にEAと言っても何も設定しなくて良いものから細かい設定が必要なもの、完全自動売買のものや決済のみ手動のものなど様々です。
中々自分の理想のEAと出会えない可能性もあり、自分に合ったものを探すにはそれなりの労力や判断力が必要になります。
FX業者によってはEAを利用できない
海外FX業者の中には、EAを禁止している業者や特定の口座タイプのみEAを利用できるという業者もあります。
全てのFX業者で利用できるわけではないので、まず普段利用しているFX業者がEAの運用が可能かどうか確認する必要があります。
EAをダウンロードしてMT4に設定・導入する方法
まずはEAを入手して、MT4に設定・導入させてみましょう。
MQL5コミュニティでEAを入手して設定する方法
MT4の開発元であるMetaQuotes社運営のウェブサイト「MQL5コミュニティ」では、無料でEAを配布しています。
有料EAを利用したい場合はメンバー登録や入金が必要ですが、無料EAのみ利用したい場合は登録なしでダウンロードできます。
MQL5コミュニティへのメンバー登録方法
最初にMQL5コミュニティのメンバー登録方法を解説します。
有料EAを利用するつもりがない方はMQL5からEAをダウンロードする方法までスキップして下さい。
まずは「MQL5コミュニティ」に進み、画面右上にある【新規登録】をクリックして下さい。
必要情報を入力して規約に同意し、【登録する】をクリックします。
- ログインID:
3~32文字以内で設定。半角英数字とドット(.)、ダッシュ(´)、アンダーライン(_)のみ使用可能。 - メールアドレス:
パスワード等の通知が届くので、普段から利用しているメールアドレスを入力。 - チェックボックス:
「プライバシーとデータ保護に関する方針」と「利用規約」をよく確認し、問題が無ければチェック。
入力内容に間違いが無ければ、入力したメールアドレスにログインIDとパスワードが送信されます。メールの保護やパスワードのメモを取るなどして、パスワードを忘れないように注意しましょう。
MQL5へログインして入金する
メンバー登録が完了したら、有料EA購入前にMQL5へログインして入金する必要があります。
まずはMQL5コミュニティの画面右上の【ログイン】をクリックしてください。
「サインイン」の画面に入るので、ログインIDとパスワードを入力し、【ログイン】をクリックします。
画面右上のログインIDの部分にカーソルを合わせると、メニューが表示されるので「アカウントへの入金」をクリックしてください。
入金画面に入るので、希望する支払い方法をクリックします。
入金方法毎に案内が異なるので、画面の案内に従って入金処理を進めてください。
MQL5からEAをダウンロードする方法
MQL5への入金が完了したら、EAのダウンロードをしましょう。なお、EAの探し方やダウンロードの流れは無料・有料とも同じです。
ダウンロードするEAの検索
MQL5コミュニティ画面上部のメニューの「マーケット」をクリックしてください。
画面左側のメニュー「MetaTrader 4」内の「エキスパート」をクリックし、MT4用のEAだけを表示させます。
MT4用のEAが一覧表示されるので、好きなものを選択してください。左上のタブから無料のものだけ表示させたり、右上の検索窓から検索をかける事も可能です。
気になるEAを見つけたら、クリックして個別ページへ進み、詳細を確認しましょう。
個別ページの「概要」タブからEAの詳細や設定マニュアルが確認できます。
EAのダウンロード
EA個別ページの左側に「ダウンロード」ボタンがあるので、そちらをクリックします。
- 有料EAの場合は「購入する:〇〇USD」という箇所をクリックして、ダウンロード前に購入手続きをする必要があります。
MT4がインストール済みか確認されるので、既にMT4を所有している場合は、「はい、私はMetaTrader 4を持っています」をクリックしてください。
以下のような確認画面が表示された場合は「MetaTraderを開く」をクリックして下さい。
自動でMT4が立ち上がり、ナビゲーターウィンドウ内の「エキスパートアドバイザ」にダウンロードしたEAの名前が追加されればダウンロード完了です。
MT4へのEAダウンロードが完了したら、チャートにEAを反映させましょう(→解説箇所へスキップ
MT4のマーケットからEAを入試して設定する方法
MT4画面下部のマーケットメニューでは、MQL5コミュニティのサイト内で提供されているEAのダウンロードができます。
全て英語で表示されており、英語が苦手な方には概要の理解等難しいですが、MQL5コミュニティよりも手軽にダウンロード可能です。
MT4の画面下部にある、ターミナルウィンドウ内の「マーケット」タブをクリックしてください。
ダウンロード可能な製品一覧が表示されるので、「Experts」タブをクリックして、EAだけを表示させてください。
MQL5コミュニティのサイト同様、絞り込み機能(③)から無料のものだけを表示させたり、検索窓(④)を利用して検索することも可能です。
各EAの個別ページへ行き、【ダウンロード】をクリックすると、MT4へのダウンロードが開始されます。
- 【購入】と表示されている場合は有料EAになるので、ダウンロード前に購入手続きが必要です。
ナビゲーターウィンドウ内の「エキスパートアドバイザ」にダウンロードしたEAの名前が追加されればダウンロード完了です。
MT4へのEAダウンロードが完了したら、チャートにEAを反映させましょう(→解説箇所へスキップ)。
EA配布サイトなどEAを入手して設定する方法
MQL5コミュニティでダウンロードしたEAは、ダウンロードするだけで自動的にMT4に導入されますが、外部サイトで入手したEAは、MT4の導入も行う必要があります。
ダウンロードしたEAのファイルについて
EA配布サイトからEAをダウンロードすると、ファイル名の末尾が「.ex4」となっているファイルがPCに追加されます。
この「.ex4」がEAのファイルとなっていて、これをMT4に導入します。
※アイコンの絵柄はPC環境によって変化しますので、異なっていても問題ありません。
基本的には「.ex4」をMT4に導入すれば良いのですが、EAによっては異なるタイプのファイルが追加される事があります。
以下に異なるタイプのファイルから、よくあるものをまとめます。
- ソースファイル
- 末尾が「.mq4」となっているファイル。プログラムのコードが書かれているファイルで、これをもとに「.ex4」が生成されます。もし「.ex4」が無い場合は、代わりにこの「.mq4」をMT4に導入します。「.ex4」があれば基本的には利用しないので、放置しても問題ありません。
- DLLファイル
- 末尾が「.dll」となっているファイル。EAによっては実行に不可欠なファイルで、このファイルがある場合はEAとは別にMT4に導入する必要があります。EAによってファイルを入れる場所が違う可能性があるので、EA付属のマニュアルに従って導入して下さい。
- インジケーターファイル
- EAによってはインジケーターが付属している場合があり、EAとは別に導入する必要があります。ファイルを入れる場所は「ファイル」→「データフォルダを開く」→「MQL4」→「Indicators」の中になります。インジケーターファイルはEA同様、末尾が「.ex4」や「.mq4」となっています。
- 圧縮ファイル
- 末尾が「.zip」となっているファイル。
「右クリック」→「すべて展開」→「展開」の順でクリックすると解凍されます。
MT4にEAを設定・導入する方法
では、ダウンロードしたEAのファイル(「.ex4」か「.mq4」)をMT4に導入してみましょう。
- EAの名前が表示されない場合は、更新がうまくいっていないか、EAを入れるフォルダを間違えている可能性があります。
EAをMT4のチャートへ設定・反映させる方法
ここからはいよいよEAをMT4で稼働させます。
その前に「バックテストの方法が知りたい」という方は→MT4でバックテストをする方法までスキップして下さい。
MT4のEA基本設定
では、ここからはMT4に導入したEAをチャートに設定・反映させる方法を解説します。
まずは、MT4でEAが利用できるようにするため、基本設定を行います。
「自動売買を許可する」「DLLの使用を許可する」にチェックが入っているか確認し、チェックが外れている場合はチェックを入れて下さい。
出所のわからない怪しいEAを利用する場合には、「DLLの使用を許可する」のチェックは外しておきましょう。
「自動売買を許可する」にチェックを入れると、以下の項目にもチェックを入れる事ができるようになります。
- 口座が変更されたら自動売買をストップする
- プロファイルが変更されたら自動売買をストップする
- チャートの通貨ペアまたは時間足が変更されたら自動売買をストップする
これらは安全装置のようなもので、EAの停止条件を任意で設定できます。
EAのマニュアルで設定方法を指定されている場合は、そちらを優先してください。
「自動売買を許可する」にチェックが入っていると、ツールバーの「自動売買」アイコンの一部が変化します。
以降はこの「自動売買」をクリックして、EAのON/OFFを切り替える事が可能です。
EAをMT4のチャートへ設定・反映させる方法
では、いよいよ取引チャートにEAを張り付けます。
EAに対応するチャートを表示させ、EAを設定・反映させましょう。
EAに対応するチャートを表示させる
まずはEAを設定・反映させるチャートをMT4に表示させます。
EAに対応している銘柄・時間足になっているか確認して下さい。
対応する銘柄や時間足は、EAのマニュアルに記載があるはずです。
記載が無い場合は開発元に問い合わせをしてみましょう。
MQL5コミュニティのEAをダウンロードした場合は、EA個別ページの「概要」タブに書かれていることが多いです。
ほとんどが英語で書かれているので、Google翻訳などを利用するのがおすすめです。
指定されている銘柄と時間足になっていないと、EAがパフォーマンスを発揮できない場合や、そもそも稼働してくれない場合があります。
まずはどの銘柄・時間足に対応しているのかをしっかり確認しましょう。
上記の画像のようにややこしい書き方になっている場合や、記載されたリンク先に進まないと分からない場合もあるので注意しましょう。
EAをチャートに設定・反映させる
全般タブの設定
「自動売買を許可する」にチェックが入っているか確認して下さい。
その他の項目に関しては、EAのマニュアルに従います。
EA側で特に指定が無い場合は任意で設定しましょう。
- ポジション
- 発注するポジションを、ロングかショートに限定する事が可能です。
- アラームを有効化
- チェックを入れるとEAに設定された条件でアラームがなります。
- 一回鳴ったらアラームを無効化
- チェックを入れると、二度目以降のアラームは鳴らなくなります。
- DLLの使用を許可する
- DLLファイルが付属しているEAやWindowsに装備されているDLLファイルを使用するEAの場合はチェックをいれましょう。
- 外部エキスパートの使用を許可する
- 付属するインジケーターなど、他のファイルを使用する必要があるEAの場合はチェックを入れます。
- シグナル設定の変更を許可する
- コピートレードをする時のシグナル関連の項目です。EA側で指定が無い場合は、チェックを入れなくても特に問題ないでしょう。
パラメーターの入力
ここではEAの詳細を設定できます。
具体的には、注文数量や損切値などを変更して、設定の微調整を行います。
パラメーターの内容はEAによって異なるので、EAのマニュアルを参考に設定するようにして下さい。
MQL5コミュニティでは、EAの「概要」でパラメータ項目の説明が書かれていることが多いです。
パラメーターの説明が「概要」に無い場合は、指定リンクへ進むように指示されるパターンもあります。
まずは概要欄全文を翻訳して、すべてチェックしてみて下さい。
また、よくあるパラメーター項目に関しては、あまり説明が無い場合もあります。
以下によくある項目をまとめるので、参考にしてみて下さい。
- Magic:マジックナンバーと呼ばれる識別番号
複数のEAを同一の口座で稼働させる場合などに、誤作動を防ぐために設定します。 - comment:取引履歴のコメント欄に表示されるもの
取引履歴でどのEAがどの注文を行ったか、判別するために設定します。 - Spread:スプレッドの許容値
設定した値よりスプレッドが大きい時は発注しません。 - Slippage:スリッページの許容値
設定した値より大きなスリッページが発生した場合は発注しません。 - lots:発注する際の注文数量
- TakeProfit:利益確定値
保有ポジションの利益が設定した値(pips)になった時点で決済します。 - StopLoss:損失確定値
保有ポジションの損失が設定した値(pips)になった時点で決済します。
各名称はEAによって微妙に異なっている場合があります(TakeProfitがTPなど)。
不明な項目に関しては、EAの開発者に問い合わせを行って下さい。
ここで紹介したものは、よくある項目の一般的な使われ方で、すべてのEAに当てはまる訳ではありません。
あくまで参考程度に留めておいてください。
EAの稼働を開始する
ここまでの設定が完了したら、「OK」をクリックして下さい。
以上でチャートへのEA反映・設定は完了です。
チャート右上の部分に追加されたEAの名前と「笑顔のマーク」が出ていれば成功です。
ツールバーの「自動売買」をクリックして、EAを停止状態にしていると、「笑顔のマーク」が「困惑のマーク」になります。
「笑顔のマーク」が表示されているのに、EAが停止している場合があります。
よくある理由としては、以下のものが挙げられます。
- 追加ファイルの設定ミス
- EAの注文頻度が低い
- 相場が動いていない
- 指定された設定になっていない(パラメータや銘柄、時間足など)
DLLファイルなどの追加ファイルを入れる場所を間違っていたり、設定画面でDLLや外部エキスパートの使用を許可していなかった場合、笑顔のマークのままEAが停止する事があります。
まずは設定の確認をするか、EAの導入をもう一度はじめから行ってみて下さい。
また、相場がEAの想定通りに動いていなかったり、そもそもEAの注文頻度が低い場合もあります。
指定された設定以外では動かないEAなどもあるので、EAのマニュアルをよく読み、そのEAが稼働する状況であるか確認してみましょう。
EAのエラーを確認する方法
EAを使用していると、エラーが出る事があります。
内容は様々ですが、中には重大なエラーである場合もあるので、マメにチェックするようにしましょう。
ターミナルウィンドウ内の「エキスパート」タブをクリックすると、EAの動作履歴が表示されます。
エラーの確認をする範囲を指定する方法
日時を指定してEAの動作履歴を確認することも出来ます。
すると確認する動作状況の範囲が指定できるようになります。
参照する日時の「開始日時」と「終了日時」を選択して、「リクエスト」をクリックして下さい。
エラーの種類と解決方法
「エキスパート」タブではEAの動作状況がすべて表示されていますが、各項目の左側にあるマークから、その履歴の重要性がわかります。
「赤い丸」と「赤い三角」のマークはエラーを示しています。中には重大なエラーである場合もあるので、すぐに対処するようにしましょう。
「黄色い三角」と「小さな灰色の丸」のマークは、注文などEAの動作履歴を示しているだけなので、特に気にする必要はありません。
エラーが発生した原因は、単純なミスが原因であることも多いです。
以下の内容を確認してみましょう。
- FX業者のサーバーに問題が発生しては
いないか - Wi-Fiなどのインターネット接続状況に問題がないか
- EAの設定に問題が無いか
- DLLなどの追加ファイルの追加場所や、使用許可設定をしているか
- 表示しているチャートに間違いが無いか(その口座タイプに対応した銘柄か、EAが対応する時間足かなど)
- 現在有効な口座であるか
- 有効な取引時間であるか
- 証拠金は十分であるか
以上の項目をチェックし、それでもエラーが解消しない場合は、以下の方法で解決します。
- Google検索してみる
- EA開発者に問い合わせ
検索や問い合わせをする際は、表示されたエラーのテキスト部分をコピペします。
エラーテキストのコピーも、ターミナルウィンドウの「エキスパート」タブから行います。
「エラーテキスト上で右クリック」→「コピー」とクリックすると、表示されたメッセージをコピーできます。
あとはコピーしたテキストをそのまま検索したり、問い合わせメールに貼り付けて使用して下さい。
MT4でバックテストをする方法
「ダウンロードしたEAが本当に優秀なのか?」は、実際に利用する前に把握しておきたいところです。
そのEAを利用するかどうかの判断材料のひとつとして、バックテストを行うのをおすすめします。
バックテストとは、入手したEAを稼働させた場合にどんな結果になるのか、過去のチャートデータを利用して取引のシミュレーションを行う事です。
バックテストはあくまで過去のデータを利用して行うものなので、実際にEAを稼働した時も同じ結果になるとは限りません。
しかし、そのEAを利用する上での大きな判断材料にはなります。
MT4にヒストリカルデータをダウンロードする方法
バックテストをするために、まずはヒストリカルデータ(過去の為替レートや値動きが記されたデータ)をMT4にダウンロードします。
詳しくは後述しますが、ヒストリカルデータをダウンロードする事でMT4の動作が重くなるので、対処法として「テスト用の別のMT4を用意する」か「バックテスト後に設定を戻す」必要があります。
FX業者によっては、1、2年程度の短い期間のヒストリカルデータはすでに入っている場合があります(2、3ヶ月分だけというパターンもあるようですが)。
「とりあえず短い期間でのバックテストで十分」という方は、ヒストリカルデータをダウンロードせずにバックテストに進みましょう(→解説箇所へスキップ)。
しかし、できれば5年、10年という長い期間でバックテストをした方が安心です。
個人的には、リーマンショックのあった2008年頃のデータは気になるところです。
長い期間でしっかりとテストを行いたいなら、面倒でもヒストリカルデータをダウンロードするようにしましょう。
チャート、ヒストリー内の最大バー数の設定をする
まずは、「ヒストリー内の最大バー数」と「チャートの最大バー数」の設定を変更しましょう。
- ヒストリー内の最大バー数:
ヒストリカルデータに保存されるローソク足の最大本数。
各銘柄・時間足でこの本数を上限にデータが保存されます。 - チャートの最大バー数:
チャートを開いた時に読み込まれるローソク足の最大本数。
仮に「10」にした場合はチャート上には10本のローソク足しか表示されず、それより以前のチャートには戻れません。
EAのバックテストを行う際は、少しでもローソク足が多い方が良いので、これらを最大値に設定する必要があります。
ただし、その場合MT4がかなり重くなります。
約定力にも影響が出てしまうので、出来ればバックテスト専用のMT4を用意しておきたいところです。
バックテスト専用のMT4をインストールする際の注意点
取引用とバックテスト用のMT4を別々でインストールする場合、同じ業者のMT4をインストールするのが理想的ではあります。
しかし、そのままインストールを行っても、古いMT4に新しいMT4が上書きされるだけで終わってしまいます(その際、インストールしたEAや各種設定などがリセットされてしまう場合もあります)。
古いMT4とは別に新しいMT4をインストールするには、インストール時に設定を変更する必要があります。
ただし、実はそれでもMT4が上書きされてしまう場合もあります(PCの利用環境やFX業者によって異なる可能性もありますが)。
もしこの方法でMT4をインストールする場合は、その点を留意して行って下さい。
この方法の詳細
PCでMT4の追加の許可を求められるので「はい」をクリックし、セットアップ画面に入ります。
セットアップ画面に入ったら、「設定」をクリックして下さい。
名称を加えたら、あとは「次へ」をクリックして通常通りインストールを進めましょう。
インストールが完了すると、新たにMT4がPCに追加されます。
上記の方法以外で新しいMT4を用意する場合は、以下の方法がオススメです。
- VPSを利用している場合:VPSに取引用のMT4をインストールし、バックテスト用のMT4をPCにインストールする。
- VPSを利用していない場合:他の業者のデモ口座を開設し、バックテスト用のMT4にする。
「ヒストリー内の最大バー数」と「チャートの最大バー数」の設定を変更する
では、「ヒストリー内の最大バー数」と「チャートの最大バー数」の設定を変更していきましょう。
すると「ヒストリー内の最大バー数」と「チャートの最大バー数」が変更できるようになります。
それぞれのデフォルト値は「ヒストリー内の最大バー数=512000」と「チャートの最大バー数=65000」となっています。
この数値を最大値に変更します。
ここに入力できる数字の最大値は「2147483647」なのですが、入力が面倒です。
それより大きな数値を入力すれば自動的に「2147483647」になるので、とりあえずそれぞれに「9」を可能な限り(10桁以上)入力して「OK」をクリックします。
これで「2147483647」になっているはずですが、念のためもう一度「ツール」→「オプション」→「チャート」とクリックして同じ画面に入り、「ヒストリー内の最大バー数」と「チャートの最大バー数」がそれぞれ「2147483647」になっているのを確認して下さい。
以上で「チャート、ヒストリー内の最大バー数の設定」は完了です。
古いヒストリカルデータを削除する
新しいヒストリカルデータを入れる前に、既にMT4に入っているヒストリカルデータを削除します。
この時チャートが開いたままだと、ヒストリカルデータを削除してもまたデータが作られてしまうので、まずは表示中のチャートを全て閉じます。
各チャートの右上にある「×」ボタンをクリックすると、チャートを閉じる事ができます。
すると数種類のファイルがありますが、「USDJPY60.hst」のように、末尾が「.hst」となっているファイルがヒストリカルデータになります。
あとでダウンロードする銘柄(ここではUSDJPY)のヒストリカルデータを削除して下さい。
ヒストリーセンターからヒストリカルデータをダウンロードする
ダウンロードする銘柄のヒストリカルデータを削除したら、ヒストリーセンターからデータをダウンロードします。
各銘柄が選択できるようになるので、「ヒストリカルデータをダウンロードする銘柄(ここではUSDJPY)」をクリックして、「ダウンロード」をクリックして下さい。
ここではXMのUSDJPYをダウンロードするので、「Forex 3」の横の「+」をクリックし、「USDJPY」をクリックしています。
すると以下の画像のような画面に切り替わり、ダウンロードが開始されます。
画面下部の緑色の部分がダウンロードの進行状況を示しています。
所要時間は環境によって変わりますが、筆者の場合は10分ほどで完了しました。
以上でヒストリカルデータのインストールは完了です。
MT4ストラテジーテスターウィンドウの表示方法
バックテストを行う際には、MT4に「ストラテジーテスターウィンドウ」を表示させる必要があります。
すると画面下部にストラテジーテスターウィンドウが表示されます。
初期の状態では見えていない項目がある可能性があります(特に「ビジュアルモード」の項目)。
「拡大・縮小ライン」をドラッグ&ドロップして、少し拡大してあげましょう。
EA・条件を設定してバックテストを開始する
ではストラテジーテスターウィンドウで、バックテストの各条件を設定していきましょう。
バックテストするEAを設定する
- エキスパートアドバイザ:
最初の項目ではバックテストするのがEAなのかインジケーターなのかを選択します。
今回はEAのバックテストをするので、「エキスパートアドバイザ」を選択。 - test.ex4:
バックテストするEAを選択します。
この項目をクリックすると導入したEAの一覧が表示されるので、バックテストするEAをダブルクリックして選択して下さい。
通貨ペアやスプレッドなど取引条件を
設定する
- 通貨ペア
- バックテストする通貨ペアの選択。(ここではUSDJPY)
- 期間
- 時間足の選択。(ここでは1H=1時間足)
- モデル
-
バックテストの精度と速度の選択。
- 全ティック = 精度:高 速度:遅
- コントロールポイント = 精度:中 速度:中
- 始値のみ = 精度:低 速度:速
- スプレッド
- バックテストのスプレッドを指定。
指定する値が選択肢に無い場合は、「現在値」または「指定中の値」をダブルクリックする事で直接数値を入力できます。実際に取引をするFX業者/口座タイプの、平均スプレッド以上の値を指定するのがオススメです。数値はポイント単位になるので、指定するスプレッドが仮に「2.0pips」なら「20」と入力しましょう。
期間の指定と最適化のチェック
- 期間を指定:
バックテストする期間を指定する場合はチェックを入れます。
チェックを外した場合はダウンロードした全ヒストリカルデータでバックテストを行うため、必要以上に時間がかかってしまいます。 - 開始日:
バックテストをする期間の開始日を選択します。
「期間を指定」にチェックを入れると変更可能。 - 終了日:
バックテストをする期間の終了日を選択します。
「期間を指定」にチェックを入れると変更可能。 - 最適化:
パラメータ設定の最適化を行う際に利用するものなので、今回はチェックを外します。
設定次第ではバックテスト終了まで数時間~1日かかってしまうので、うっかりチェックしないように気を付けましょう。
ビジュアルモードのチェックを入れる/外す
「ビジュアルモード」にチェックを入れると、バックテスト中にビジュアルモードを利用できます。
「ビジュアルモード」の横に並んでいる項目はビジュアルモードを利用中に使うものなので、ここでは何もしなくて大丈夫です。
ビジュアルモードとは、バックテストをする期間の値動きをチャート上に再現しつつ、EAがどのように発注するのかを見る事ができる機能です。
再現ビデオを早送りしたような感じで、スピードの調節や一時停止/再生、任意の日付へのスキップも可能です。
ビジュアルモードは、バックテストの結果だけを知りたい場合は必要ありませんが、具体的にどうEAが稼働しているのかを目で確認したい時に利用します。
ビジュアルモード中に利用できる機能は以下の通りです。
- 速度調節スイッチ:
「1~32」までのレベルで、チャートが進む速度を調節できます。
縦長の四角部分を左右にドラッグ&ドロップすると、速度レベルを微調整できます。
31までは遅すぎて、32は早すぎるので注意して下さい。 - 一時停止/再生ボタン:
「||」となっている時にクリックすると、ビジュアルモードを一時停止できます。
一時停止中は「>>」となり、クリックするとビジュアルモードが再生されます。 - スキップボタン:
クリックすると、このボタンの右側にある項目で指定した日付までスキップする事が可能です。
その他、バックテストの設定や確認をする
- エキスパート設定:
パラメータの変更や、初期投資金の金額や基軸通貨の変更が可能です。 - 通貨ペアのプロパティ:
設定中の通貨ペアの詳細や取引条件が確認できます。 - チャートを開く:
設定中のチャートを開く機能です。
なぜか機能しない事もあるので、チャートは手動で開いた方が早いかもしれません。 - エキスパート編集:
Meta Editorを起動し、設定中のEAを編集する事が可能です。
こちらも機能しない事があるので、なるべく他の方法で編集した方が良いかもしれません。
バックテストをスタートする
所要時間は設定内容やPC環境によってまちまちですが、今回は7分程で完了しました。
EAのバックテスト結果を確認する
バックテストが完了したら、早速結果を確認してみましょう。
ここからは、バックテスト結果の各タブの詳細を解説します。
「結果」タブからEAが行った全ての取引を確認
- ♯:行われた注文/決済の順番
(同一ポジションでも、新規注文/決済等は別でカウント) - 時間: 約定した時間
- 取引種別 ※: 行った注文の種類
- 注文番号:保有したポジションの順番
(新規注文/決済等は別でも、同一のポジションなら同じ番号) - 数量: 注文したLOT数
- 価格: 約定時の価格
- 決済逆指値(S/L): 設定中の損切価格
- 決済指値(T/P): 設定中の利確価格
- 損益: ポジション決済時に発生した損益
- 残高: ポジション決済時点での証拠金の残高
- buy = 買いエントリー
- sell = 売りエントリー
- modify = 指値・逆指値の変更
- close = 成行決済
- t/p = 指値到達による利確
- s/l = 逆指値到達による損切り
「グラフ」タブから証拠金の増減グラフを確認
「グラフ」タブでは、EAが行った取引で証拠金がどのように増減したのか、グラフで確認する事ができます。
横軸は「結果」タブで振られた注文番号、縦軸は証拠金の金額になります。
資金管理機能があるEAでは、下部にLOT数の増減を示したグラフが追加されます。
「レポート」タブからバックテストの詳細な成績を確認
- テストバー数:バックテストに利用したロウソク足の本数
- モデルティック数:バックテストに利用したティック数
- モデリング品質:バックテストの精度(基本的に90%が最大値)
- 不整合チャートエラー:エラーのあった時間足の数(基本的に0であるべき)
- 初期証拠金:バックテスト開始時の証拠金
- スプレッド:設定したスプレッドの値
- 純益:合計損益(総利益-総損失)
- 総利益:利益の合計
- 総損失:損失の合計
- プロフィットファクタ:利益率(総利益÷総損失。最低でも1.0以上であるべき)
- 期待利得:指値到達による利確
- 絶対ドローダウン:初期証拠金から最も下がった時の金額
- 最大ドローダウン:バックテスト中の最も大きな損失金額(括弧内は証拠金に対する割合)
- 相対ドローダウン:バックテスト中の最も大きな損失割合(括弧内その時の金額)
- 総取引数:バックテスト中に保有したポジションの総数
- 売りポジション(勝率%):バックテスト中に保有した売りポジションの総数(括弧内はその勝率)
- 買いポジション(勝率%):バックテスト中に保有した買いポジションの総数(括弧内はその勝率)
- 勝率(%):勝ちトレードの総数(括弧内が勝率)
- 負率(%):負けトレードの総数(括弧内が負率)
- 最大 勝トレード:売りエントリー
- 最大 敗トレード:指値・逆指値の変更
- 平均 勝トレード:最も利益の大きかった勝ちトレードの金額
- 平均 敗トレード:最も損失の大きかった負けトレードの金額
- 最大 連勝(金額):最大連勝数(括弧内は連勝中の合計利益)
- 最大 連敗(金額):最大連敗数(括弧内は連敗中の合計損失)
- 最大 連勝(トレード数):連勝した際に獲得した合計利益の最大額(括弧内はその連勝数)
- 最大 連敗(トレード数):連敗した際に発生した合計損失の最大額(括弧内はその連敗数)
- 平均 連勝:連勝数の平均
- 平均 連敗:連敗数の平均
レポートで特に注目したい3つの項目
レポートではたくさんのデータがあってありがたいのですが、最初はどこを見れば良いのか、かえって困惑しますよね。
では、特に注目して見たい部分を紹介します。
①不整合チャートエラー、モデリング品質
この項目はバックテスト結果の精度や、ヒストリカルデータの信頼性を示しています。
「不整合チャートエラーが1つ以上ある」または「モデリング品質が89%以下」という場合は、ヒストリカルデータを見直す必要があります。
- 不整合チャートエラー:同一日時の30分足と1時間足の始値が一致しないなど、データの齟齬(=不整合)の数を示しています。原則として「0」であるのが理想です。
- モデリング品質:バックテストでどれだけリアルな値動きを再現できているかを示しています。
最大値は基本的に「90%(1分足のみ25%)」で、この値が「最大値では無い」または「n/a」が表示された場合は、そのバックテスト結果が信頼できないものと判断できます。 - モデリング品質の下部にあるバー:モデリング品質の精度を視覚的に表したものです。上記の画像ではモデリング品質が90%であるため、ほとんどが緑色で表示されています。
②プロフィットファクタ
勝率や純益なども気になりますが、とりあえずはこの「プロフィットファクタ(利益率)」を見てみましょう。
端的に言うと「1.0以上=利益が出せるEA」「1.0未満=利益が出せないEA」と判断できます。
また、プロフィットファクタが高いEAなら、レバレッジを上げる事で総利益も上がる事になるため、純益や総利益の大きさよりも重視したい部分となります。
③最大/相対ドローダウン
フラッシュクラッシュが発生した際などに大きく損失を出すようでは意味がありません。
少しでもドローダウンの値が低いEAを選びたい所ですが、ドローダウンの割合(%)は初期証拠金と注文LOT数次第で変化する事に注意して下さい。
(初期証拠金を大きくして、取引LOT数を少なくすると、ドローダウンの割合が下がる)。
ちなみに、ここで除外した絶対ドローダウンはバックテストの開始時期によって変化するので、必ずしも重要な数値とは限りません。
私の場合は「まず①不整合チャートエラー、モデリング品質でバックテストが問題なく行われたか確認し、②プロフィットファクタや③最大/相対ドローダウンでそのEAの実力を判断する」という感覚で見ています。
もちろん、その後で全体を見て総合的に判断するのも大切です。
不整合チャートエラー、モデリング品質に問題がある(=ヒストリカルデータに問題が発生している)場合は、どんなに成績が良くても結果の信頼性が低いため、実運用ができないでしょう。
まずはヒストリカルデータの問題を解決し、もう一度バックテストをする必要があります。
ヒストリカルデータに問題がある理由としては、以下のものが考えられます。
- ヒストリカルデータを正しくダウンロード出来ていない
(古いヒストリカルデータの削除が出来ていないなど) - ヒストリカルデータそのものに問題がある
ヒストリカルデータの削除漏れがある場合や、チャートを閉じずに削除を行った場合などに、データが重複して「不整合チャートエラー」が発生する可能性があります。
まずは全チャートを閉じて、古いヒストリカルデータを確実に削除し、もう一度ダウンロードしてみましょう。
それでも改善されない場合は、ヒストリカルデータそのものに問題がある可能性があります。
ヒストリカルデータを無料・有料で配布しているサイトがあるので、探してダウンロードしてみましょう(⇒FXDDの無料1分足データなど)。
バックテスト結果の保存
レポートタブ上で右クリックし、「レポートの保存」をクリックすると、「結果」「グラフ」「レポート」タブの内容をまとめたレポートがPCに保存できます。
「操作履歴」タブで注文・エラーの確認
「操作履歴」タブからは、EAが行った操作の履歴を確認できます。
ポジションの注文や決済などは「結果」タブからも見ることができますが、こちらでは発生したエラーの詳細やタイミングを見ることができます。
あまりにエラーの多いEAというのも信頼できません。
前述したエラー確認方法はここでも利用できるので、エラーの原因や解決方法を探ってみて下さい。
MT4のEA設定に関するよくある質問(FAQ)
そもそもEAとは何ですか?
EA(Expert Advisor/エキスパートアドバイザー)とは、FX取引ソフトの「MetaTrader」で起動させることができる自動売買用プログラムのことです。
XM公式HPにEAの解説ページはありますか?
XM公式HPのMT4の使い方の解説ページで、EAの導入や検証に関する解説動画を見れます。
EAはどこで入手できますか?
EAはMQL5コミュニティやEA配布サイトで入手が可能です。
MT4のエキスパートアドバイザにEAが表示されません。
更新がうまくいっていない可能性があるので、MT4を一度終了させ、再起動してみましょう。
それでも表示されない場合は、EAを入れる場所を間違えている可能性があるので、「Experts」内にEAが追加されているか確認してみましょう。
MT4へのEA設定後にやること2つ
最後にEA導入後にやった方が良いフォワードテストやVPSの利用について簡単にまとめたので参考にしてください。
バックテストが終わったらフォワードテストを試す
「フォワードテスト」とは、デモ口座を利用して実際にEAを稼働させるテストのことです。
バックテストは去のデータをもとにチャートを再現しますが、フォワードテストなら実際のチャートの動きに合わせてEAが稼働するので、より精度の高いテストが可能です。
リアル環境でのEA稼働前にVPSの利用を検討する
MT4を閉じるとEAも停止してしまう為、EAを利用するなら24時間PCを稼働させておく必要があります。
しかし、自宅のPCを24時間常時起動させておくのはデメリットが多く現実的ではありません。
- 電気代などのコストがかかる
- EA稼働中はPCの再起動ができない
- PCにかかる負荷が大きい
- 不意の停電が起こる可能性がある
そこでおすすめなのがVPSです。VPSはバーチャルプライベートサーバーの略で、Web上の仮想のデスクトップ空間のことです。
VPSを利用すれば仮想サーバー上でMT4を常時起動できるので、自宅のPCの電源を落としてもEAが停止する心配はありません。
多くの業者が無料VPSを提供
一口にVPSと言っても何が良いか分からないと思います。そこでまず利用におすすめなのが各海外FX業者が提供している無料VPSサービスです。
各業者毎に条件は様々ですが、条件を達成すれば業者が提携しているVPS業者を無料で利用可能で、業者によっては簡単な条件で利用できる業者もあるので、自分が利用しているFX業者に無料VPSサービスがないか確認してみましょう。
FX-EAラボ様では自動売買におすすめの国内VPSを紹介しているので、国内VPSを利用したい方は参考にしてみてください。
MT4による「自動取引」に関心を持っている初心者です。
MT4のデフォルトウィンドウには、4つの通貨ペアが表示されます。代表的なEUR/USD,USD/JPN,EUR/JPN,AUD/JPNの通貨ペアを選択して「自動取引」を走らせた場合、そもそも「自動取引」がどのような設定で
行われているかが「皆目」分かりません。
EAの併用による「自動取引」では、バックテスト後の「設定」を反映させることができるので、「やや安心」しますが、このやり方は「一つの通貨ペア」にしか適用できないようです。(確かではありませんが)
通貨ペアは「腐るほど」表示されるのに、「自動取引」のみでは、何がどうなっているのか「定かでない」のは不思議です。どうなっているのでしょう?
思うに、MT4は本来インジケーターを使って「裁量取引」する為のツールで、「自動取引」は「オマケ」なのではないでしょうか。いかがでしょう。