MetaTrader EA / 便利ツールツールや技術メモ

【MT4/MT5】MetaTrader Backtest Kicker【自動バックテスト】

MetaTraderのバックテストを効率的に!通貨ペアや開始日~終了日などを変えながら連続でテストをまわせます。MT4とMT5の両バージョンに対応!ポータブルモード起動にも対応!

Click here to view the English page.

新しいバージョン(1.5.0.0 / 2023.12.21)をリリースしました。「EAファイル拡張子なしで起動」機能を追加しました。ストラテジーテスター画面で指定した内容がバックテストレポートに反映されない場合は、このオプションを試してください。

MetaTrader Backtest Kicker
スポンサーリンク / Sponsored links

MetaTrader Backtest Kicker(バックテストキッカー)とは?

MetaTraderのバックテスト(ストラテジーテスター)を効率化するツールです。

通貨ペアやテストの開始日~終了日などのパターンを変えながら自動で連続してストラテジーテスターを実行できます。

レポートとかグラフを大量に取得したいニーズに応えてみました。
最適化は結果しか見れないので・・・

MetaTrader Backtest Kickerの画面
  • MetaTrader 4とMetaTrader 5の両方に対応
  • 通貨ペアなどを変更して自動で連続してバックテスト(ストラテジーテスター)を実行
  • ストラテジーテスターの設定項目にはひと通り対応
  • MetaTraderのポータブルモード起動も可能
  • フォルダやファイルのPath情報の入力チェック機能あり
  • テスト情報の保存機能あり

MT4でもMT5でも使えるよ!

使用例

例えば2種類のEAをUSDJPY、EURUSD、EURJPYの3通貨ペアでそれぞれバックテストしたい場合、通常は以下のように行います。

  1. まず1つ目のEAでUSDJPYをテスト実行!
  2. 終わったのを確認
  3. EURUSDに変えてテスト実行!
  4. 終わったのを確認
  5. EURJPYでテスト実行!
  6. 終わったのを確認
  7. EAを変更して、USDJPYでテスト実行!
  8. 終わったのを確認
  9. EURUSDでテスト実行!
  10. 終わったのを確認
  11. EURJPYでテスト実行!
  12. 終わったのを確認

…書いただけでちょっと面倒でした。笑

このツールは最初に2種類のEAと3通貨ペアの設定をしておくことで、テストを自動で連続実行することができます。

寝る前にセットして朝起きたら終わっている!という使い方ができます!

設定画面はMetaTraderのストラテジーテスターとほぼ同じにして、操作しやすくしてみました。

バックテストで設定可能な項目

MetaTraderのストラテジーテスターで設定可能な項目は基本的にひと通り設定できます。

バックテストで設定可能な項目MT4MT5
複数のテストパターン指定
レポートのフォルダ、ファイル名の指定
EA
EAのパラメータファイル
銘柄/通貨ペア
期間(チャートの周期 M1、H1など)
日付(テスト期間の指定:テストの開始日、テストの終了日)
フォワードテスト
遅延
モデル
スプレッド
ProfitInPips
入金(デポジット)、デポジットの通貨コード
レバレッジ
オプティマイズ/最適化
オプティマイズ基準
ビジュアルモード
ポータブルモード
全てのテストが終了したらPCをシャットダウン
オプティマイズ(最適化)キャッシュファイルのバックアップ
EAファイル拡張子なしで起動

ダウンロード

有料版と無料版の2種類があります。まずは無料版をお試しください。気に入っていただけましたら有料版をご検討ください。

※無料版は連続テスト数に最大2回までの制限があります。それ以外は有料版と同じです。

本製品のダウンロード先

次のリンク先(GogoJungleサイト)からダウンロードできます。

Excel版もあります(別製品の紹介)

テスト情報などをExcelで設定してテストを実行する「バックテストサポートツール【Excel版】」もあります。

Excel画面からテスト情報を設定しますのでExcel操作に慣れている方にはおすすめです。ただし、入力項目の相関制御や入力値のチェックなどの細かな機能はありませんのでやや玄人向けです。

Set File Builder【EAパラメーター編集アプリ】もあります(別製品の紹介)

大量のEAパラメーターファイル(Setファイル)をスプレッドシート画面(Excelのような画面)で編集できるようにしたツールです。少しづつ値を変えたSetファイルの量産が簡単にできます。

とりあえず動かしてみる(テスト設定~テスト実行までの基本操作)

MetaTraderバージョンの選択

  • ストラテジーテスターを実行するMetaTraderのバージョンを選択
    画像はMT5でテストするケースです。MT4でテストする場合は「MetaTrader 4 ストラテジーテスター モード」を選択してください。
MetaTraderバージョン選択画面

MetaTrader情報の設定

  • 「インストールフォルダ」にターミナルが格納されているフォルダのPathを入力
    MetaTrader 4の場合はterminal.exeのフォルダ、MetaTrader 5の場合はterminal64.exeのフォルダです。
  • 「データフォルダ」は「インストールフォルダ」を設定すると自動的に設定されます。
インストールフォルダ、データフォルダのPath設定画面

インストールフォルダのPathとは?

Terminalが格納されているフォルダです。MetaTrader 4の場合はterminal.exeのフォルダ、MetaTrader 5の場合はterminal64.exeのフォルダです。

MetaTraderのインストールフォルダ

データフォルダのPathとは?

MetaTraderのファイルメニュ -> データフォルダを開く で開けるフォルダの場所です。

MetaTraderのデータフォルダの場所を確認する方法

テスト情報の設定

  • テスト情報を入力
    とりあえず動かしてみたい場合は、「エキスパート」にEAを設定します。初期設定では全期間でテストしてしまいますので適当な期間を設定します。
MT5用のテスト設定画面
MT4用のテスト設定画面

テストの実行

  • 「バックテスト実行」ボタンを押す
    MetaTraderを起動している場合は、ボタンを押す前にMetaTraderを終了してください。
テスト実行画面

レポートの確認

  • 作成されたレポートファイルを確認する
    「レポートフォルダ」のチェックをオンにしなかった場合は、データフォルダ配下のmt-backtest-kicker\report_[YYYYMMDDHHMMSS]フォルダにレポートが出力されます。[YYYYMMDDHHMMSS]は年月日時分秒になります。
ストラテジーテスターのレポート

詳細な使い方

メニュー項目

ファイル メニュー

  • 設定ファイルを開く
    保存されているBacktest Kickerの設定ファイルを開きます。
  • 名前をつけて設定ファイルを保存
    Backtest Kickerの設定ファイルを名前をつけて保存します。設定ファイルには画面から設定した全ての項目値を保存します。
  • 全設定を削除(初期化)
    設定されている全ての情報を削除して初回起動時の状態に戻します。
  • 閉じる
    Backtest Kickerを終了します。
ファイル メニュー

モード メニュー

  • MetaTrader 4 ストラテジーテスター モード
    MT4用のテストモードに切り替えます。
  • MetaTrader 5 ストラテジーテスター モード
    MT5用のテストモードに切り替えます。

モードを切り替えると現在設定されているテスト情報は削除されます。テスト情報を保存しておく場合は ファイル -> 名前をつけて設定ファイルを保存 からテスト情報を保存してください。

モード メニュー

ツール メニュー

  • MetaTraderを起動
    「インストールフォルダ」で指定したMetaTraderを起動します。
  • データフォルダを開く
    「データフォルダ」で指定したフォルダを開きます。
  • MetaTrader起動パラメータ
    • ポータブルモード
      チェック済にするとMetaTrader起動時にポータブルモード “/portable” の引数を指定してストラテジーテスターを実行します。
    • EAファイル拡張子なしで起動
      チェック済にするとエキスパート(EA)ファイル名から拡張子(.ex4/.ex5)を削除してバックテストを起動します。
      ストラテジーテスター画面で指定した内容がバックテストレポートに反映されない場合は、このオプションを試してください。
  • スプレッドシートで編集
    スプレッドシート画面でテスト設定を編集します。Excelのような表形式で編集できます。
ツール メニュー

Language メニュー

  • English
    英語表記に切り替えます。
  • Japanese
    日本語表記に切り替えます。
Language メニュー

MetaTrader情報設定

テストを実行するMetaTraderに関する情報を指定します。

  • インストールフォルダ
    ターミナルが格納されているフォルダのPathを指定します。「選択」ボタンを押すとフォルダ選択ダイアログを開きます。
    MetaTrader 4の場合はterminal.exeのフォルダ、MetaTrader 5の場合はterminal64.exeのフォルダです。
  • データフォルダ
    「データフォルダ」は「インストールフォルダ」を設定すると自動的に設定されます。
    自分で設定する場合はチェックボックスを有効にして、データフォルダのPathを指定します。「選択」ボタンを押すとフォルダ選択ダイアログを開きます。
    MetaTraderのファイルメニュー -> データフォルダを開く で開くフォルダのPathです。
  • レポートフォルダ
    レポートファイルの出力先フォルダを指定できます。指定する場合はチェックボックスをチェック済にしてデータフォルダ配下のフォルダを指定します。「選択」ボタンを押すとフォルダ選択ダイアログを開きます。
    チェックボックスのチェックを外した場合は、データフォルダ配下のmt-backtest-kicker\report_[YYYYMMDDHHMMSS]フォルダにレポートが出力されます。[YYYYMMDDHHMMSS]は年月日時分秒になります。
MetaTrader情報設定の画面

テストパターン選択

テストの実行順や新しいテストの追加などを行えます。テストを連続実行するには、実行回数分のテスト設定を行う必要があります。

  • ↑上へ
    選択中のテストを上へ移動します。テストの実行順を入れ替える際に使用します。
  • ↓下へ
    選択中のテストを下へ移動します。テストの実行順を入れ替える際に使用します。
  • 追加
    新しいテストを追加します。
  • コピー(複製)
    選択中のテストをコピーしてテストを追加します。同条件で通貨ペアを変更して実行したい場合などに便利です。
  • 削除
    選択中のテストを削除します。
テストパターン選択の画面

テスト設定

MetaTraderのストラテジーテスター画面と同じようにテスト条件を設定できます。パラメータファイルなどの項目を指定しない場合はストラテジーテスターで設定されている情報を使用してテストされます。

  • テスト/レポートファイル名
    レポートのファイル名になります。同じ名前がある場合、レポートファイルは上書きされず末尾に括弧数字付きのファイル名になります。
  • その他
    MetaTraderのストラテジーテスター画面と同じです。
MT5テスト設定の画面
MT4テスト設定の画面

バックテスト実行

  • バックテスト実行
    バックテストを実行します。MetaTraderが起動し、ストラテジーテスターが実行されます。
    実行時にフォルダやファイルの存在チェックをしますので不備があればダイアログが表示されます。
バックテスト実行ボタン

バックテスト実行中の画面

  • 現在実行中のテスト完了後に中止
    現在実行中のテストが完了するまで待ってからバックテストを終了します。
  • すぐに中止(MetaTraderプロセスを強制終了)
    現在実行中のテストを中止(MetaTraderのプロセスを強制終了)してすぐにバックテストを終了します。
  • 全てのテストが終了したらPCをシャットダウンする
    チェックボックスをチェックすると、全てのバックテスト終了後にPCをシャットダウンします。
バックテスト実行中の画面

テスト設定スプレッドシート画面

スプレッドシート画面でテスト設定を編集します。Excelのような表形式でテスト設定を編集できます。設定可能な項目はメイン画面のテスト設定項目と同じです。

テスト設定スプレッドシート画面

列ヘッダーにマウスカーソルを合わせるとツールチップが表示されます。項目の意味や使用可能な値を確認できます。

ツールチップ

ファイル メニュー

  • CSVファイルをインポート / CSVファイルをエクスポート
    CSV形式のファイルを読み込み/書き出します。書き出したファイルをExcelやメモ帳などで編集し、そのファイルを再び読み込むことで簡単にBacktest Kickerに編集結果を取り込むことができます。
  • 保存して閉じる
    編集内容を反映してスプレッドシート画面を閉じます。反映前に「検証」機能が実行され、エラーがあれば通知されます。
  • 保存せずに閉じる
    編集内容を反映せずにスプレッドシート画面を閉じます。
ファイル メニュー

編集 メニュー

  • セルコピー
    選択中のセルをクリップボードにコピーします。
  • セル貼り付け
    クリップボードのデータをセルに貼り付けます。※文字列にカンマ等の記号や特殊文字を含む場合は正常に貼り付けできない場合があります。
  • 上へ / 下へ
    選択中の行を上 / 下へ移動します。
  • 追加
    新しい行を追加します。
  • 複製
    選択中の行をコピーして行を追加します。
  • 削除
    選択中の行を削除します。
  • 一括置換
    一括置換画面を開きます。選択中の列の値を一括置換します。
  • 検証
    入力値の検証と自動修正をします。
編集 メニュー

一括置換画面

  • 対象の列
    一括置換の対象列を選択します。初期値はスプレッドシート画面で選択中の列です。
  • 置換後の文字列
    置換後の文字列を入力します。
  • すべて置換
    一括置換を実行します。
  • キャンセル
    置換せずに一括置換画面を閉じます。
一括置換画面

複数のMetaTraderで並行バックテスト

複数口座で並行してバックテストを実行したい場合は次のようにします。

  1. Backtest Kickerのフォルダをコピー&ペーストして、それぞれのフォルダのmt-backtest-kicker.exeを実行すると複数起動します。
  2. それぞれのBacktest Kickerで別々のMetaTraderを指定してバックテストを実行します。

※同一のMetaTrader(同じフォルダにインストールされているMetaTrader)を複数起動して並行バックテストすることはMetaTraderの制約で実行できません。同じMetaTraderを使用したい場合は、MetaTraderのインストールフォルダごとコピー&ペーストして、ポータブルモードで起動することで似たようなことはできます。

FAQ

ストラテジーテスター画面で指定した内容がバックテストレポートに反映されません

ストラテジーテスター画面で指定した内容がバックテストレポートに反映されない場合は、「EAファイル拡張子なしで起動」機能を試してください。この機能を有効にするには、Backtest Kickerの「ツール」→「MetaTrader起動パラメータ」→「EAファイル拡張子なしで起動」をチェック済にしてください。

通常、MetaTraderのストラテジーテスター画面で指定した内容は「EA名.ini」というファイルに保存されます。Backtest KickerでMT4の初期証拠金やその通貨の値を直接指定することはできませんが、ストラテジーテスター画面で事前にそれらを指定することで、その設定を使ってBacktest Kickerからバックテストすることができます。

例えば、EA「Moving Average.ex4」のiniファイルは「Moving Average.ex4.ini」もしくは「Moving Average.ini」(.ex4なし)になるようです。Backtest KickerからEA「Moving Average.ex4」をキックした場合、iniファイルは「Moving Average.ex4.ini」が読み込まれるようです。しかし、MetaTraderによって「Moving Average.ini」(.ex4なし)のファイル名で保存されていた場合は読み込むことができません。

そこでBacktest Kickerからバックテストする場合でも「Moving Average.ini」(.ex4なし)を読み込めるようにEA「Moving Average」(.ex4なし)としてキックする機能を設けました。EA「Moving Average」(.ex4なし)としてバックテストをキックすれば「Moving Average.ini」(.ex4なし)が読み込まれるようです。

Backtest KickerでTick Data Suiteは使えますか?

稼働確認してみたところ使えるようです。MT4のストラテジーテスター画面で「ティックデータを使う」にチェックしておけば、Backtest Kickerからバックテストした場合でも、Tick Data Suiteで準備したデータを利用してバックテストされるようです。稼働確認に使用したバージョンは、MT4: 4.00 build 1380, Tick Data Suite: 2.3.7.0 です。

Backtest KickerからTick Data Suiteのデータを使う方法

  1. MT4を起動し、MT4のストラテジーテスター画面で「ティックデータを使う」にチェックする。必要に応じて「ティックデータ設定」でTick Data Suiteの設定を行う。
  2. MT4を終了する。
  3. Backtest Kickerからバックテストする。(MT4が最後に起動された状態=ストラテジーテスターの「ティックデータを使う」が有効な状態で起動され、Tick Data Suiteのデータを使ってバックテストされます)

※補足:Backtest KickerからTick Data Suiteの設定を変更することはできません。予めMT4のストラテジーテスター画面でTick Data Suiteの設定を行う必要があります。

動作環境

次の環境で動作確認していますが、Windows 7や11など、他のバージョンで挙動がおかしい等あれば知らせて頂けると泣いて喜びます。

  • Windows 10 英語版、日本語版
  • MetaTrader 4
  • MetaTrader 5

留意事項

本ソフトウェアの使用によって生じたいかなる損害等について作者は一切の責任を負いません。自己責任でご利用ください。

バージョン履歴

Version 1.5.0.0 / 2023.12.21

  • 「EAファイル拡張子なしで起動」機能を追加しました。ストラテジーテスター画面で指定した内容がバックテストレポートに反映されない場合は、このオプションを試してください。有効にするには、Backtest Kickerの「ツール」→「MetaTrader起動パラメータ」→「EAファイル拡張子なしで起動」をチェック済にしてください。

※Backtest Kicker Version 1.5.0.0は、Version 1.4.0.0以前の設定ファイル(settings-mbk.dat)と互換性がありません。

古いバージョンのBacktest Kickerから新しいバージョンへテスト設定データを移行する方法

  1. 旧バージョンからCSVファイルで出力
    古いバージョンのBacktest Kickerから「ツール」→「スプレッドシートで編集」→「テスト設定スプレッドシート」画面の「ファイル」→「CSVファイルをエクスポート」を使ってCSVファイルに出力します。
  2. 新バージョンからCSVファイルの取り込み
    新しいバージョンのBacktest Kickerから「テスト設定スプレッドシート」画面の「ファイル」→「CSVファイルをインポート」を使用してCSVファイルを取り込みます。

Version 1.4.0.0 / 2023.04.02

  • テスト終了後にPCをシャットダウンするオプションを追加しました。テスト実行中の「バックテスト実行状況」画面にシャットダウン用チェックボックスがあります。
  • MT5テスト設定 – オプティマイズ(最適化)で作成されるオプティマイズ結果のキャッシュファイル(.optファイル)をコピーしてレポートフォルダに保存(退避)するようにしました。オプティマイズ結果は30日間アクセスがなければMetaTraderによって自動的に削除されますが、キャッシュファイルを退避しておくことで過去のオプティマイズ結果をMetaTraderから再び参照することが可能になります。MetaTraderにキャッシュファイルを読み込むには、ストラテジーテスターの「オプティマイズ結果」タブ→右クリックメニューの「最適化キャッシュファイルをインポートする」から保存(退避)したキャッシュファイルを指定することで読み込めます。

Version 1.3.0.0 / 2023.01.18

  • MT5テスト設定 – オプティマイズ基準に複雑な基準の最大値を追加しました。

Version 1.2.0.0 / 2022.10.9

  • 「テスト設定スプレッドシート画面」を追加しました。Excelのような表形式でテスト設定を編集できるようになりました。CSV形式のファイル入出力に対応しました。

Version 1.1.0.0 / 2022.8.14

  • MT4テスト設定 – 期間項目にH4(4時間足)を追加しました。
  • インストールフォルダを設定すると自動的にデータフォルダの値を設定するようにしました。

※Backtest Kicker Version 1.1.0.0は過去のバージョンの設定ファイルと互換性がありません。

Version 1.0.0.1 / 2022.6.3

  • MT5テスト設定 – レバレッジ項目の値が反映されないことがある問題を修正しました。

コメント / Comments

タイトルとURLをコピーしました