MT4 バックテスト結果を見える化するインジケーター(Mi_BackTestViewer)

EAのバックテスト結果を見える化するインジケーター(Mi_BacktestViewer)を作りました。

MT4のバックテストは、プロフィットファクターや勝率など、EAの各種成績を調べるには非常に便利ですが、どうしてそのような成績になったのかという原因を調べることはなかなか困難です。

このインジケーターは、バックテスト結果をチャートに取り込んで見える化します。EAがどのようなトレードをしているのかをチャート上でじっくりとチェックすることができます。

システムトレード派の方に使っていただきたいインジケータです。

2020年9月13日バージョンアップ(v05)

バージョンアップしました。ボタンの文字表記の位置ずれ修正です。

どんなインジケーター?

Mi_BacktestViewerは、バックテスト結果のcsvファイルをチャートにインポートして表示するインジケーターです。1分49秒でこのインジの全貌が分かる動画を用意しました(下)。

このインジケーターは、簡単に言うと、「EAのバックテストの結果を通常チャートにコピペして見やすく表示する」というものです。

バックテストのcsvファイルについて

本インジケーターの使用前にバックテストのcsvファイルを事前に作成しておく必要があります。csvファイルの準備方法は後述します。

次に機能をもう少し詳しく説明します。

機能・特徴

このインジケーターは以下のような機能・特徴を持っています。

①バックテストの結果をチャートに表示

Mi_BacktestViewerの動作画面

↑バックテストの結果をチャート上に分かりやすく表示します。メインチャートに1件1件のトレード履歴が表示され、サブチャートには損益の推移が表示されます。

EAがどのような相場でどのようなトレードをしているのかが一目瞭然になります。

②必要な情報はチャート上に視覚化

Lot数、損益、獲得pips

↑分析に必要な情報(Lot数、損益金額、獲得pips数)を一つ一つのトレード履歴に表示します。

③操作はパネルのボタンを押すだけ

操作パネル

↑表示するcsvファイルの選択や、ハイライト表示、矢印、Lot数の表示などは全てパネルボタンをクリックするだけで切替えることができます。

④複数のバックテストを比較できる

バックテストを比較

↑複数のバックテストの結果を一つのチャート内に表示できます(最大5ファイル)。いくつかのEAのバックテストを表示させれば、EAごとのトレードタイミングや傾向の違いが見えてきます。またバックテストのパラメーター変更による影響などを比較する時にも便利です。

こんな時に役立ちます

また、残高の推移も同じチャート内に表示できるので、パッとみてどんな相場で勝っているか・負けているかが直感的に分かります。

このインジケーターのポイントをまとめるとこんな感じです。

得意な相場・苦手な相場を一目でチェック
トレード履歴と損益推移を一つのチャート内で確認できるので、そのEAがどんな相場が得意で逆にどんな相場が苦手なのかを直感的に知ることができます。
タイミングを細かくチェック
EAのエントリータイミングやイグジットタイミング、ロット数、損益などを、時間足や表示情報を切り替えながらじっくりとチェックすることができます。バックテストのcsvファイルを残しておけば、いつでもテスト結果を再確認することができます。
EAの選定やポートフォリオの検討に
複数のEAのバックテストを比較して運用するEAを選定したり、エントリータイミングなどが異なるEA同士でポートフォリオを組んでリスクヘッジするなどの検討に役立ちます。

システムトレードをする方はもちろんのこと、自分でEAを作る方にも役に立つインジケーターです。

使い方(csvファイルの準備)

Mi_BacktestViewerを使うには事前にバックテスト結果のcsvファイルが必要です。以下にcsvファイルの作成手順を説明します。

EAのバックテストを行う

まずは任意のEAのバックテストをいつも通りに行ってください。バックテスト時の設定項目(通貨ペア・期間・時間足・初期証拠金など)に制限はありません。ビジュアルモードはオフでもOKです。

バックテストを行う

結果をソートしてコピー

バックテストが終わったら、テスターウィンドウの「結果」タブを開きます。

「注文番号」をクリックして昇順(△)にソートしてから、データ上で「右クリック」→「すべてコピー」します。

注文番号でソートして全てコピー

ご注意

ソートしないと、注文結果のラインが表示されない場合があります。忘れずに注文番号で昇順ソートしてからデータをコピーしてください。

エクセルに貼り付けてcsv形式で保存

エクセルで新規ファイルを作成し、②でコピーした結果をA1セルに貼り付けます。

エクセルに貼り付け

「名前を付けて保存」します。ファイル名は「result.csv」、ファイルの種類は「CSV(カンマ区切り)」にします。

csv形式で保存

補足

csv形式で保存できればExcelでなくてもOKです。

csvファイルをMT4のデータフォルダに移動

作成したresult.csvを移動します。

  1. MT4の「ファイル」→「データフォルダを開く」でデータフォルダを開く
  2. 「MQL4」フォルダ→「Files」フォルダと進み、「Files」フォルダの中にresult.csvを保存

csvファイルを移動

チャートを開いてBacktestViewerを適用

新規チャートを開き、BacktestViewerを適用してください。適用時にresult.csvがチャートに読み込まれ、チャート上にバックテストの結果が表示されます。

Mi_BacktestViewerの動作画面

チャートに適用した後は、時間軸をいろいろ変えて、EAがエントリーしたタイミングを細かく見るなどしてじっくり検証してください。

設定項目

設定項目は下図の通りです。インポートするcsvファイル名はこの設定パラメーターにて指定してください。csvファイルごとにラインの色や太さなどのスタイルを変更できます。また、必要に応じてボタンの位置も変更できます。

設定パラメータ

ダウンロード

このインジケーターは下記より入手できます。

Trial

Mi_BacktestViewer【試用版】
試用版はUSDJPYで使えます(無料)

ダウンロード

Standard

Mi_BacktestViewer【標準版】
標準版は通貨ペアの制限なし(ゴゴジャンで販売中)

ゴゴジャンで見るバックテストの結果を通常チャートに取り込んで表示するインジケーター | GogoJungle

インジケータのインストール方法が分からない人は「MT4にインジケーターを入れる方法(初心者向け)」を参照してください。

バージョンアップ履歴

更新日 Ver. 概要
2020年9月13日 v05 ボタンの文字表記の位置ずれを修正
2020年9月6日 v04 複数ファイルのインポートに対応
Lot数、損益金額、獲得pipsの表示を追加
矢印マークのデザイン変更
サブチャートの表示内容を累計損益に変更
配色ボタンを廃止し、ハイライトボタンを新設
ボタン等のUIを刷新
取扱説明書を新設
2019年11月16日 v03 トレード結果のラインがうまく表示されないケースがあり、この不具合を解消
2019年6月23日 v02 コードの整理
2018年9月8日 v01 リリース

まとめ

一言で言えば、このインジケーターはバックテストの結果を、通常チャートにインポートして分かりやすく表示するものです。

私は、ロジックの分からないEAを使う場合には、まずこのインジケーターでEAのトレードをチェックをしています。そのEAが得意な相場や苦手な相場をあらかじめ知っていないと、恐ろしくてシステムトレードはできません。逆に言えば、EAの特徴が分かっていればEAの調子が悪くなった場合に稼働を続けるのか休止するのかといった判断などもしやすくなります。

また、自分でEAを作った時に「想定通りに動作しているか」とか「どんなチャートで負けているか」をチェックする時に使うこともよくあります。

システムトレードをやっている方、これからやりたいと思っている方に使っていただきたいインジケーターです。

コメント

この記事へのコメント(2 件)

  • さんより

    購入を考えておりまして、試しに無料版を試してみましたが、
    手順通りにやってもサブウィンドウ内には何も表示されません。
    何か注意点などございますでしょうか?
    2020.09.29 18:22:39.489 Custom indicator Mi_BacktestViewer_v05_trial USDJPY,M15: loaded successfully
    と読み込みには成功しておりますし、
    通貨ペアはUSDJPY、File1の箇所もリネームしたりして試しましたがダメでした。

  • 管理人ですさんより

    牧さんへ
    コメントありがとうございます。
    メインウィンドウにトレード結果が表示されていて、サブウィンドウに損益グラフが表示されないということでしょうか?
    そうであれば、csvファイルの読み込み自体は実行されていますので、ファイル名は正しく指定されています。
    あと考えられる要因はcsvファイルのデータがおかしいか、プログラム自体の不具合あたりです。

    csvデータを調べれば原因が分かると思うのですが、csvファイルを下記アドレスへ送っていただくことはできませんでしょうか?(あっとの部分は@に置き換えてください。)
    minagachi.com.mngあっとgmail.com
    お手数おかけしますがどうぞ宜しくお願い致します。