バックテストを効率的に!通貨ペアや開始日~終了日などを変えながら連続でテストをまわせます。
こちらはMT4用の有料版です。
まずは無料版をお試しください。無料版は連続テスト数に最大2回までの制限があります。
気に入っていただけましたら有料版をご検討ください。
MT4バックテストサポートツール【Excel版】とは?
MetaTrader4のバックテストを効率化するツールです。
通貨ペアやテストの開始日~終了日などのパターンを変えながら自動で連続してテストをまわせます。


使用場面(使用例)
例えば2種類のEAをUSDJPY、EURUSD、EURJPYの3通貨ペアでそれぞれバックテストしたい場合、通常ではまずは1つ目のEAでUSDJPYでテストを実行して、終わったらEURUSDを設定してテストを、それが終わったらまた設定して・・・と2EA×3通貨ペアで6回バックテストの設定と実行を繰り返すことになりますが、
このツールは最初に2種類のEAと3通貨ペアの設定をしておくことで、テストを自動で連続実行することができます。
寝る前にセットして朝起きたら終わっている!という使い方ができます!
使い方に多少のクセがありますが、Excelファイルを編集するだけで簡単に連続バックテストできます。
バックテストで設定可能な項目
・EA
・EAのパラメータファイル
・通貨ペア
・期間(チャートの周期 M1、H1など)
・モデル
・スプレッド
・再計算(有効/無効)
・最適化(有効/無効)
・期間指定(有効/無効)、テストの開始日、テストの終了日
・テストレポートのファイル名
・テスト終了後のMT終了(有効/無効)
・ビジュアルモード(有効/無効)
とりあえず動かしてみたい場合
「param_com」シートのオレンジ色網掛け項目(2箇所)の情報を入力して、「使い方」シートの「バッチファイル作成」ボタンをクリック。
作成されたバッチファイルをダブルクリックで実行!
使い方
起動
「MT4バックテストサポートツール.xls」をExcelで開きます。
※マクロに関するポップアップが表示された場合は「マクロを有効にする」を選択してください。

テスト情報入力:「param_com」シートの設定
オレンジ網掛けの項目を設定していきます。

①インストールフォルダPATH
説明MT4の terminal.exe があるPATHを指定します。外為ファイネスト社提供のMT4であれば次の入力例のようになります。
入力例C:\Program Files (x86)\MT4 Gaitame Finest Company Limited
②データフォルダPATH
説明MT4のメニューから ファイル→データフォルダを開く で表示されるフォルダのPATHを指定します。
入力例C:\Users\takonegia\AppData\Roaming\MetaQuotes\Terminal\34B08C83A5AAE27A4079DE708E60511E
テスト情報入力:「param_launch」シートの設定
オレンジ網掛けの項目を設定します。1行1テストの設定になります。3連続でテストする場合は3行の設定を記載することになります。


①起動構成ファイル名
※初期値として入力済ですので個別に設定する必要はありません。
説明作成する起動構成ファイル名を指定する項目です。テストごとに読み込まれるファイルになります。※ファイル名は一意にする必要があります。同名のファイルは上書きされます。※起動構成ファイル名を変更したい場合のみこの項目を編集します。
入力例1_startparam.ini
②テスト数の終端フラグ(C列の■■■)
説明説明C列に「■■■」を記入すると、この行の1行前までを最終行として認識します。例えば、C7セルに「■■■」と入力した場合、4行目(最初の行)~6行目までの計3行に入力されたデータをもとに3連続テスト用のバッチファイルが作成されます。
入力例■■■
③テスト設定項目の終端フラグ(1行目の■■■)
※初期値として入力済ですので個別に設定する必要はありません。説明1行目に「■■■」を記入すると、この列の1列前までを最終列として認識します。例えば、R1セルに「■■■」と入力した場合、C列(最初の列)~Q列までの計15列に入力されたデータをもとにテスト用のバッチファイルが作成されます。※MT4の起動構成ファイルに設定可能な項目は15個で、初期値としてR1セルに「■■■」を入力済ですので、この項目を編集する必要はありません。
入力例■■■
④TestExpert(EA)
説明テストの目的で起動するエキスパートの名前です。このパラメータが指定されていない場合には、テストは開始されません。
入力例MACD SampleMoving Average
⑤TestExpertParameters(EAのパラメータファイル)
説明パラメータを含むファイル(\testerディレクトリ)の名前です。このファイルは、テスト用エキスパートの「プロパティ」ウィンドウで「入力」タブの「保存」ボタンを押すことにより作成されます。通常は、デフォルトのパラメータと異なるパラメータを保存するときに使われます。テスト用エキスパートの「テスティング」及び「最適化」タブ内のその他のパラメータ(及びこのパラメータが指定されていない場合には「入力」タブ内のパラメータ)については、最後のテスト後に\tester\[エキスパート名].iniファイルに自動保存された値が入力されます。ファイルはtesterディレクトリ配下に格納する必要があります。このディレクトリからの相対PATHで設定します。
入力例MT4BackTest\myopt.set(入力値なし)
⑥TestSymbol(通貨ペア)
説明エキスパートのテストで使用する通貨ペアの名前です。このパラメータが指定されていない場合には、テスターで最後に使用された値が使われます。
入力例USDJPY
⑦TestPeriod(期間)
説明チャートの周期(1分、5分、15分、30分、1時間、4時間、1日、1週間、月)です。このパラメータが指定されていないときは、1時間を使用します。
入力例M1
⑧TestModel(モデル)
説明テスティングモデルの種類(「レートごと」、「コントロールポイント」、「オープン価格のみ」)によって、0、1、または2のいずれかとなります。このパラメータが指定されていないときは、0(Every tick)を使用します。0:EveryTick, 1:ControlPoint, 2:OpenOnly
入力例0
⑨TestSpread(スプレッド)
説明スプレッド現在値:Current, 数値指定可能:0~
入力例Current5
⑩TestRecalculate(再計算)説明
「再計算」フラグを有効/無効にします。「true」または「false」のいずれかの値をとります。このパラメータが指定されていない場合は、「false」の値が使われます。
入力例false
⑪TestOptimization(最適化)
説明最適化を有効/無効にします。「true」または「false」のいずれかの値をとります。このパラメータが指定されていない場合は、「false」の値が使われます。
入力例false
⑫TestDateEnable(期間指定)
説明「日付を使用」フラグを有効/無効にします。「true」または「false」のいずれかの値をとります。このパラメータが指定されていない場合は、「false」の値が使われます。※期間指定する場合は「true」にする必要があります。Falseにすると全期間で計算されます。
入力例True
⑬TestFromDate(テストの開始日)
説明テストを開始する日付です。YYYY.MM.DDの形式になります。このパラメータが指定されていない場合には、この日付は1970.01.01となります。
入力例2021.01.01
⑭TestToDate(テストの終了日)
説明説明テストを終了する日付です。YYYY.MM.DDの形式になります。このパラメータが指定されていない場合には、この日付は1970.01.01となります。
入力例2021.01.10
⑮TestReport(テストレポートのファイル名)
説明テストレポートファイルの名前です。このファイルはクライアントターミナルのディレクトリ内に作成されます。ファイル名の中で拡張子が指定されていない場合には、「.htm」が自動的に付加されます。このパラメータが指定されていない場合には、テストレポートは作成されません。
入力例1_backtestrepot
⑯TestReplaceReport(テストレポートのファイル名が重複した場合の動作)
説明レポートファイルの反復記録を有効/無効にします。「true」または「false」のいずれかの値をとります。「false」の値を指定した場合で、同じ名前のレポートファイルが既に存在するときは、ファイル名の後に角括弧で括った数字が付加されます。例えば、「MovingAverageReport[1].htm」となります。このパラメータが指定されていない場合は、「false」の値が使われます。
入力例false
⑰TestShutdownTerminal(テスト終了後のMT終了)
説明テスト終了後のターミナルのシャットダウンを有効/無効にします。「true」または「false」のいずれかの値をとります。このパラメータが指定されていない場合は、「false」の値が使われます。ユーザが「停止」ボタンを押した場合には、制御がユーザに移るため、このパラメータの値は「false」にフラッシュされます。
入力例true
⑱TestVisualEnable(ビジュアルモード)
説明ビジュアル テスト モードを有効 (true) または無効 (false) にします。 パラメータが指定されていない場合、現在の設定が使用されます。
入力例false
バッチファイルの作成
「使い方」シートの「バッチファイル作成」ボタンを押し、バックテスト実行用のバッチファイルの作成場所を指定します。作成が完了すると次のようにバッチファイルと起動構成ファイルが作成されます。起動構成ファイルはテスト数分作成されます。
※作成されたバッチファイルや起動構成ファイルは移動しないでください。バッチファイルの中身は絶対PATHで記載されているため、作成されたファイルを別のフォルダに移動するとうまく動作しません。
※バッチファイル作成時に同名のファイルがあると上書きされます。

バックテストの実行
作成されたバッチファイル「BackTestKicker.bat」をダブルクリックで実行します。
コマンドプロンプトでバックテストの実行可否を質問されますので、実行する場合は「y」を入力してエンターキーを押します。辞める場合は「n」を入力してエンターです。
MetaTraderが自動的に起動して終了を繰り返します。コマンドプロンプトに「完了しました」と表示されれば完了です。何かキーを押せば終了します。
終了の際にレポートやログの格納フォルダが開きます。
※MetaTraderを終了した状態で、バッチファイルを実行してください。
バックテスト結果の確認
次の場所にレポートやログファイルが格納されています。
格納先MT4のデータフォルダ\tester\logs\backtest_[YYYYMMDDHHMMSS]※「データフォルダ」とは「param_com」シートで指定した「データフォルダPATH」の場所です。※[YYYYMMDDHHMMSS]は年月日時分秒です。
レポート「param_com」シートの「TestReport」項目で指定した値でファイル名が作成されています。ログ[実行番号]_[YYYYMMDDHHMMSS].log という形式で作成されます。※バッチファイル実行前に既存ログファイルが存在していた場合はtester\logs_bkupフォルダに退避されます。※[実行番号]はバックテストを実行した順の番号です。
動作環境
Windows 10 日本語、Excel、MetaTrader 4
※Excelはバージョン2003と2019で動作確認しています。
留意事項
本ソフトウェアの使用によって生じたいかなる損害等について作者は一切の責任を負いません。自己責任でご利用ください。
インジケーターの入手先
下記の画像をクリックすると入手先へ移動します。(^^♪
コメント