AI EA スクール
0記事中 0記事 読了
カリキュラム 第5章 バックテスト ストラテジーテスターの使い方
5-2

ストラテジーテスターの使い方

読み終わるまでの目安 約25分

この記事でできるようになること

  • MT4の「ストラテジーテスター」を開き、各設定項目の意味が分かる
  • サンプルEA(MA_Cross_Sample)を、決めた条件でバックテストできる
  • テストの進み具合と終了を自分で確認できる

準備するもの

  • 前の記事でヒストリカルデータを準備したMT4
  • コンパイル済みのサンプルEA(MA_Cross_Sample.ex4 がナビゲーターに表示されている状態)

手順

手順1 ストラテジーテスターを開く

ストラテジーテスターとは、EAを過去データで動かして成績を計算する、MT4に最初から付いている機能です。

  1. MT4上部のメニューから「表示」→「ストラテジーテスター」を選びます。ショートカットは [Ctrl]+[R] です。
  2. 画面の下側に、横長のパネルが出てきます。これがストラテジーテスターです。

パネルの上端をマウスでドラッグすると高さを変えられるので、見やすい大きさに広げておきましょう。

ここに画面写真を入れてくださいMT4下部にストラテジーテスターのパネルが表示された全体画面。設定項目に①〜⑦の番号を振る5-2-01.png

ここからは、パネル左側の設定項目を上から順に見ていきます。

手順2 テストするEAを選ぶ

  1. 一番上の欄で「エキスパートアドバイザ」が選ばれていることを確認します(「インディケータ」になっていたら切り替えます)。
  2. その右のドロップダウンを開き、「MA_Cross_Sample」を選びます。

ドロップダウンに出てこないときは、コンパイルに失敗しているか、保存場所が違います。第4章の「MT4にEAを表示させる」を見直してください。

ここに画面写真を入れてくださいストラテジーテスターのEA選択ドロップダウンを開き、MA_Cross_Sampleを選んでいる状態5-2-02.png

手順3 通貨ペアを選ぶ

「通貨ペア」の欄で「USDJPY」を選びます。前の記事でヒストリカルデータを準備した通貨ペアと同じものにしてください。データを準備していない通貨ペアを選ぶと、テストが正しく動きません。

手順4 時間足を選ぶ

「期間」の欄で「H1」を選びます。要確認H1は1時間足のことで、M1=1分足、M5=5分足、H4=4時間足、D1=日足という表記です。

サンプルEAは「1時間足で移動平均線のクロスを見る」設計なので、ここはH1です。時間足を変えるとEAの動き方そのものが変わるので、まずは設計どおりの時間足でテストします。

ここに画面写真を入れてください通貨ペアがUSDJPY、期間がH1に設定された状態。2つの欄を強調5-2-03.png

手順5 モデルを「全ティック」にする

「モデル」の欄は、MT4が値動きをどこまで細かく再現するかの設定です。3つの選択肢があります。

モデル 内容 速さ 正確さ
全ティック 1分足データから細かい値動きを再現する 遅い 高い
コントロールポイント 途中の値動きをざっくり補う
始値のみ 各ローソク足の始値だけで判定する 速い 低い

本スクールでは「全ティック」を選びます。時間はかかりますが、一番現実に近い結果になるためです。「始値のみ」は速い代わりに、利確や損切りのタイミングが実際とずれるため、成績が大きく違ってきます。

ここに画面写真を入れてくださいモデルのドロップダウンを開き、「全ティック」を選んでいる状態5-2-04.png

手順6 テスト期間を指定する

  1. 「期間を指定」のチェックボックスをオンにします。要確認
  2. 「開始日」と「終了日」を入力します。例として、開始日を「2023.01.01」、終了日を「2025.12.31」とします。

期間は長いほど、いろいろな相場の状態(上がり続けた時期、下がり続けた時期、動かない時期)を含むことになり、結果の信頼度が上がります。最初は2〜3年ほどを目安にしてください。あくまで目安であり、準備したデータの範囲内であれば自由に変えて構いません。

チェックを入れないと、MT4にあるデータ全期間でテストされます。それでも問題はありませんが、あとで「同じ条件でもう一度」と比較するときに期間がはっきりしている方が便利なので、指定しておくことをおすすめします。

ここに画面写真を入れてください「期間を指定」にチェックを入れ、開始日と終了日を入力した状態5-2-05.png

手順7 スプレッドを設定する

スプレッドとは、買値と売値の差のことで、実質的な取引コストです(第1章で説明しました)。

「スプレッド」の欄は、「現在値」か数値を選べます。「現在値」にすると、テストを始めた瞬間のスプレッドが使われますが、深夜や休日はスプレッドが極端に広がっていることがあり、テストのたびに結果が変わってしまいます。

そこで本スクールでは、数値を直接入力します。例として「20」と入力してください。この数字の単位は「ポイント」で、HFMのように小数点以下3桁(ドル円)で表示する業者では、10ポイント = 1pips です。つまり「20」は2.0pipsに相当します。HFMのドル円の平均的なスプレッドより少し広めの値なので、実際より厳しめの条件でテストすることになります。要確認

「少し厳しめ」にしておくと、実際に運用したときに「テストより悪くなった」というがっかりを減らせます。

ここに画面写真を入れてくださいスプレッドの欄に「20」と入力した状態5-2-06.png

手順8 エキスパート設定(初期証拠金とinput変数)

パネル右側の「エキスパート設定」ボタンを押すと、EA固有の設定ダイアログが開きます。

「テスト設定」タブ

  • 「初期証拠金」: テスト開始時の口座残高です。例として「1000000」(100万円)とします。通貨は「JPY」を選びます。要確認
    • 金額は実際に運用する予定の額に近い方が、あとで「ドローダウン◯%」の感覚がつかみやすくなります。ここでの金額は計算上の数字であり、実際のお金が動くわけではありません。
  • 「ポジション」: 「ロング&ショート」のままにします。買いも売りも両方テストする、という意味です。要確認
  • 「最適化」に関する項目は、今は触りません(第6章で使います)。
ここに画面写真を入れてくださいエキスパート設定ダイアログの「テスト設定」タブ。初期証拠金と通貨の欄を強調5-2-07.png

「パラメータの入力」タブ

ここに、サンプルEAのコードで input と書かれていた変数が並びます。要確認プログラミングの話に聞こえますが、要するに「EAの調整つまみ」です。コードを触らずにここの数字を変えるだけで、EAの動きを変えられます。

変数名 意味 初期値
FastMAPeriod 短期移動平均線の期間 20
SlowMAPeriod 長期移動平均線の期間 50
TakeProfitPips 利確の幅(pips) 50
StopLossPips 損切りの幅(pips) 30
Lots 1回の取引のロット数 0.1
MagicNumber EAが自分の注文を見分ける番号 12345
Slippage 許容するスリッページ(ポイント) 3

最初のテストでは、すべて初期値のままで構いません。「値」の列だけが今回使う設定で、「スタート」「ステップ」「ストップ」の列は最適化用なので無視してOKです。確認したら「OK」でダイアログを閉じます。

ここに画面写真を入れてくださいエキスパート設定ダイアログの「パラメータの入力」タブ。FastMAPeriodなど7つの変数が並んだ状態5-2-08.png

手順9 スタートして進行バーを見る

  1. 「ビジュアルモード」のチェックはオフにしておきます。オンにするとチャート上で売買が再生されて面白いのですが、テストが非常に遅くなります。
  2. パネル右下の「スタート」ボタンを押します。
  3. パネル下部に緑色の進行バーが伸び始めます。右端まで到達したら終了です。

「全ティック」で3年分をテストすると、PCの性能によって数十秒〜数分かかります。終わると「スタート」ボタンの表示が元に戻り、パネル下部に「結果」「グラフ」「レポート」などのタブが使えるようになります。

ここに画面写真を入れてください「スタート」を押した直後、進行バーが途中まで進んでいる状態5-2-09.png

終わったら「操作履歴」タブを一度開いてみてください。要確認テスト中のログが並んでいて、最後の方に赤字のエラーが無ければ、テストは正常に完了しています。

結果の読み方は、次の記事で説明します。

つまずきポイント

  • 「スタート」を押してもすぐ終わってしまう・取引が0件: 期間の指定がデータの無い範囲になっていないか、通貨ペアがデータを準備したものと一致しているかを確認してください。また、「操作履歴」タブに「not enough money」のようなエラーがあれば、初期証拠金に対してロット数が大きすぎます。要確認
  • 進行バーが動かない・固まったように見える: 全ティックは時間がかかります。数分は待ってみてください。どうしても待てないときは「ストップ」で中断し、期間を1年に短くして試すと様子がつかめます。
  • EAがドロップダウンに出ない: MetaEditorでコンパイルした後、MT4のナビゲーターで右クリック→「更新」をしてください。それでも出ない場合は、保存先が MQL4/Experts フォルダになっているか確認します。
  • ビジュアルモードをオンにしたままで、とても遅い: オフにしてやり直してください。オンにしたときのチャートは閉じて構いません。
  • 前回の設定が残っていて、どの条件でテストしたか分からなくなった: テストのたびに「通貨ペア・時間足・期間・スプレッド・初期証拠金・パラメータ」をメモに残す習慣をつけると、後の章で比較するときに役立ちます。

次の記事

5-3 バックテスト結果の見方 で、出てきた数字とグラフを「どの順番で・どう見るか」を説明します。