バックテスト・最適化を自動で連続実行してくれるツールをリリースしました

以前、「複数通貨ペア・複数時間足のバックテスト(と最適化)を自動で行うTips」という記事を書きましたが、もっと手軽に実行出来るようにアプリ化してみました。

このアプリを使えば、複数のMT4を並列で連続実行する事が可能になります。

CPUパワーに余裕があるPCなら、手作業で1パターンずつバックテストしていくよりも格段に効率良くテストできます。

BackTestAutoTool1.jpg

詳しくはこちら

スポンサーサイト

MT4のインストールドライブの容量を増やすTips

バックテストや最適化を繰り返していると、HDDの容量が少なくなっていきます。

大容量のHDDを搭載しているPCでしたら問題無いのですが、いつも容量不足に悩んでいるという方へのTipsを紹介します。

①MT4の[ファイル]-[データフォルダを開く]

②[tester]配下の[caches]フォルダ内のファイルを全て削除。

③[tester]配下の[logs]フォルダ内のファイルを全て削除。

④[tester]配下の[logs]フォルダ内のファイルを全て削除。

以上で、かなりのHDD容量が空くのではないかと思います。


定期的に上記の操作を行う事で、HDDの容量不足が解消されるのではないでしょうか。

「TrendLineEntryEA」を使って50Pips

昨日はドル円で典型的なブレイクアウトが発生していました。

TrendLineEntryEA」を使った自動売買では、下記のように利益がゲットできていたようです。

USDJPYM5ブレイクアウト
USDJPYM5ブレイクアウト

USDJPYM15ブレイクアウト
USDJPYM15ブレイクアウト


いつもこのような素直なブレイクアウトが発生する訳ではありませんが、確率的には悪くない手法ですね。


管理人が運営しているEA作成代行サイト「シストレパートナーズ」では、「TrendLineEntryEA」が好評発売中です。

複数通貨ペア・複数時間足のバックテスト(と最適化)を自動で行うTips

1回のバックテストに掛かる時間が長いEAでは、複数の通貨ペアのバックテストを行いたい場合には、その都度手動で通貨ペアを変更してあげなければならず、非常に面倒ですね。

そんな時に、便利なちょっとした小技を紹介します。

MT4はコマンドラインから様々なパラメータを付与して実行する事が出来ます。

この機能を利用して、面倒なバックテストを自動で連続して実行させてしまえば良いのです。


手順は下記の通り。


①バックテストの内容を記述した設定ファイルを作成します。(今回は[C:\config.txt]とします)

例えば、「Moving Average」というEAのバックテストを自動で行いたい場合には、

TestExpert=Moving Average
TestExpertParameters=MovingAverage.set
TestSymbol=USDJPY
TestPeriod=H1
TestModel=0
TestRecalculate=false
TestOptimization=false
TestDateEnable=true
TestFromDate=2018.01.01
TestToDate=2018.01.20
TestReport=MovingAverageReport
TestReplaceReport=true
TestShutdownTerminal=true

というようにします。

因みに上記では、

パラメータファイルを「MovingAverage.set」に指定
通貨ペアはUSDJPY
時間足はH1
データモデルは「全ティック」
期間は2018.01.01-2018.01.20
結果ファイルの名前は「MovingAverageReport」

というような内容を指定しています。

これをテキストファイルに保存しておきます。


②MT4を起動する為のバッチファイルを作成します。(今回は[C:\BacktestStart.bat]とします)

①で作成した設定ファイルを参照しながらMT4を起動させる為に、下記のようなバッチファイルを作成します。

"C:\Program Files\MetaTrader 4\terminal.exe" "C:\config.txt"

※MT4がインストールされているパスは、適宜変更して下さい。


③②で作成したバッチファイルを実行します。

MT4が自動起動して該当のEAのバックテストを開始してくれます。

バックテストが完了すると、指定された名前の結果ファイルを自動で作成し、MT4が終了します。(結果ファイルは[C:\Program Files\MetaTrader 4]に作成されるはずです)



このように、設定ファイルとバッチファイルの組み合わせる事によってバックテストを自動化する事が出来ます。

一度に複数の通貨ペアのバックテストを行いたい場合には、それぞれの設定ファイルを用意して、バッチファイルの中に複数行を作成してあげれば出来ますね。

こんな感じです。

"C:\Program Files\MetaTrader 4\terminal.exe" "C:\config(USDJPY).txt"
"C:\Program Files\MetaTrader 4\terminal.exe" "C:\config(EURUSD).txt"
"C:\Program Files\MetaTrader 4\terminal.exe" "C:\config(GBPJPY).txt"




後は、夜寝る前等にバッチファイルを実行してほったらかしにしておくだけで、翌日の朝には全てのバックテストが全て完了!!という訳です。


最適化(オプティマイズ)結果の有効性を確認するTips

EAの性能を最大まで引き出す為の最適化ですが、その結果が果たして未来の相場で有効なのか?

すごく不安になる事はありませんか?

そのような時に有効な検証方法をご紹介します。

私自身は「バックフォワードテスト」と呼んでいるのですが、ストラテジーテスターで最適化とフォワードテストの両方を行う事で、最適化の有効性を確認する事が出来ます。

実際のやり方ですが、例えば[2017/10/01]~[2017/10/31]の期間で最適化を行います。

その後、その最適化によって導き出されたパラメータセットで[2017/11/01]~[2017/11/30]のバックテストを行うのです。

そして、そのバックテスト結果を検証する事で、最適化の有効性が実証できた事になります。

もし、バックテスト結果が芳しくない場合には、最適化の期間を見直すか、EAのロジックの再検証が必要になるかも知れません。

上記の一連の作業によって、デモ口座もしくはライブ口座でのフォワードテストにより近い条件でのEAの性能評価にもなりますね。

アクセスカウンター
プロフィール

大和

Author:大和
フリーランスのプログラマーです。

EA作成代行承ります
最新記事
カテゴリ
広告
最新コメント
最新トラックバック
月別アーカイブ
リンク
メールフォーム

名前:
メール:
件名:
本文:

ランキング参加中
応援よろしくお願いします。
検索フォーム
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード