バックテスト結果には多くの情報が記載されています。
これらを上手く読み解くことで使えるEAを見抜くことができます。
本記事では、MT4のバックテストのレポートの見方と、EAの最大パフォーマンスが発揮できるパラメータ設定を探し出す「最適化」の手順についても解説しています。
\期間限定!新規口座開設で20,000円分の証拠金が貰える! /
バックテストレポートの見方
バックテストの方法については以下記事で詳しく解説しています。
バックテストレポートの各項目について解説します。
特に注目すべき項目については赤字にしてあるので参考にしてください。
期間
バックテストの期間と時間足です。
あまり短い期間になると信用度は落ちます。
モデル
バックテストの方法です。
精度の高さは「全ティック>始値のみ>コントロールポイント」の順になります。
パラメーター
バックテストした際のパラメーターの設定値です。
テストバー数
バックテストした際のチャートバーの数です。
モデルティック数
バックテストした際のティック(値動き)数です。
モデリング品質
バックテストの精度を表しています。最大90%です。
不整合チャートエラー
バックテストした際の各時間足の価格データ間の不整合です。
不整合があるバックテスト結果は信頼度が下がります。
0以外のバックテスト結果についてはあまり信用しない方がいいでしょう。
初期証拠金
運用を始めるために用意する証拠金です。
初期証拠金はバックテスト時に金額や通貨の種類を変更できます。
しかし、自分が用意できないような証拠金でのバックテストデータなら当然参考になりません。
また初期証拠金を増やせば最大ドローダウン、相対ドローダウン共に%は下げることができます。数字のトリックというには大袈裟かもしれませんが、優秀なEAに見せることは可能なので確認しておきましょう。
総利益・総損失
総利益は「利益が出た取引の合計金額」です。
総損失は「損失が出た取引の合計金額」です。
純益
バックテストした際の最終的な利益です。
純益の計算方法
純益=総利益-総損失
プロフィットファクター
プロフィットファクターは総利益が総損失の何倍なのかを示す数値です。
プロフィットファクター = 純利益 ÷ 純損失
プロフィットファクターが1.0以上のものはトータルで勝っていて、1.0以下のものは負けていることになります。
使えるEAのプロフィットファクターの目安は「1.25」以上と言われています。
ただし、高すぎるプロフィットファクターには注意が必要です。
プロフィットファクターが「2.0」以上の値は「取引数が少ない」か「カーブフィッティング」の可能性が高いです。
バックテスト結果の中でも特に重要な項目になります。
期待利得
1トレードあたりにどれくらいの損益が期待できるのかを表した値です。
期待損益 = 総純損益 ÷ 総トレード数
ドローダウン
ドローダウンとは「下落率」で、過去の最大資産から一時的に資産がどれくらい減ったかを表します。
ドローダウンの種類
- 絶対ドローダウン:「初期資産」からの最大「下落額」
- 最大ドローダウン:最も資産が増えた時から最も「下落額」が大きかった時の金額(と比率)
- 相対ドローダウン:最も資産が増えた時から最も「下落率」が大きかった時の比率(と金額)
最大ドローダウンと相対ドローダウンは「下落額」と「下落率」なので必ずしも同じ時のドローダウンではありません。
また絶対ドローダウンは「初期資産」からの下落額なので、バックテストの開始時期によって大きく変わってくるため、あまり重要な要素ではありません。
この中で注目したいのは相対ドローダウンの下落率です。
同じ資金で利益も同じ場合、ドローダウンは小さければ小さいほど資産に余力がありリスクも小さくなります。
目安としては相対ドローダウンが20%以下のEAが優秀です。
最大ドローダウンの下落額についても、どのくらいの証拠金なら耐えられるかの目安になるため目を通しておきたい箇所です。あくまでこの期間の下落額なので、実際に利用する場合は多めに想定しておいた方が良いでしょう。
総取引数
バックテストした際の総取引数です。
取引数が増えれば増える程、バックテストは正確な数字が出ます。
総取引数が少ない場合、プロフィットファクターなどの重要な項目の正確性も低くなるので注意が必要です。
十分な取引数についてはEAのトレードスタイルにもよりますが、半年間以上の稼働で1000回以上の取引数は欲しいところです。
売りポジション(勝率%)・買いポジション(勝率%)
それぞれ売り取引回数と勝率、買い取引回数と勝率です。
勝率(%)・負率(%)
勝ち取引の割合と負け取引の割合です。
必ずしも勝率が高いから優秀というわけではないので、参考程度でよいでしょう。
最大勝ちトレード・敗けトレード
1回の取引で勝った最大額と、負けた時の最大額です。
平均勝ちトレード・敗けトレード
1回の取引で勝った平均額と、負けた時の平均額です。
最大連勝トレード・連敗トレード(金額/トレード数)
最大連勝(連敗)した時の合計額とトレード数です。
平均連勝・平均連敗
連勝した時の平均連勝数と、連敗した時の平均連敗数です。
\業界最高峰のボーナスを逃さずゲット! /
バックテストの最適化の手順
EAの最大のパフォーマンスを発揮できるように、様々なパラメーターを調整することを「最適化」と呼びます。
本来、一つ一つのパラメーターを変更して検証すると膨大な時間がかかります。そこでバックテストの最適化機能を利用します。
1. 最適化にチェックを入れ、エキスパート設定を開きます。
2. 「テスト設定」タブの最適化パラメータを「Balance」、遺伝的アルゴリズムにチェックが入っているか確認します。
最適化パラメーター
- Balance → 残高
- Profit Factor → プロフィットファクター(純利益÷純損失)
- Expected Payoff → 期待損益(総純損益÷総トレード数)
- Maximal Drawdown → 最大ドローダウン
- Drawdown Percent → 最大ドローダウン率
- Custom → カスタム
「最適化パラメーター」はEAを評価する基準です。一般的にBalanceを使用します。
「遺伝的アルゴリズム」にチェックを入れることで、膨大なパラメーターの組み合わせから自動的に有効な組み合わせを抽出して最適化を行います。
これによりバックテスト時間を減らすことができます。
3. 「パラメータの入力」タブから最適化したい変数にチェックを入れ、「スタート」、「ステップ」、「ストップ」のパラメータをダブルクリックし、値を入力します。
パラメータの入力
- 変数 → 項目名
- 値 → 基本値(変更せず)
- スタート → 開始値
- ステップ → 加算していく値
- ストップ → 終了値
「変数」の項目はEAによって変わります。
今回は「MACD Sample」という標準搭載のEAの「MACD OpenLevel」をスタートを1、ステップを0.1、ストップを6.0にしてみます。
この場合だと1→1.1→1.2→1.3……5.9→6.0といった感じのパターンを検証する事になります。
4. 最適化にチェックが入っていることを確認してスタートをクリックします。
※今回は素早く検証が終わるように期間を短めにとっています。
5. バックテストが完了したら「最適化結果」タブから結果を確認できます。
今回は「損益」順に最適化の結果が並んでいます。他の項目順で見たい場合は各項目タブをクリックすることで並び替えることができます。
これから更に色々パラメーターを変えていき「最適化結果」を確認しながら、パフォーマンスの高いパラメーターの組み合わせを見つけていくことになります。
最適化は中級者以上の人向け
最適化は「中級者以上」の人向けのもので、職人芸とも言われる部分です。また最適化機能を利用したとしてもテスト期間が長いと相当な時間がかかります。
ダウンロードしたEAには最適なパラメータを登録したsetファイルがついていることもあるので、これらを利用してもよいでしょう。.setファイルは「パラメーターの入力」画面で読み込むことができます。
また最適化において気をつけたいポイントとして「カーブフィッティング」があります。
「カーブフィッティング」とは過去の相場に合うように過剰に最適化することです。バックテストの結果が異常に優れているものはカーブフィッティングになっている可能性があるので注意が必要です。
これらを見極めるためにも、フォワードテスト(デモ口座やリアル口座などで実際に運用する事)の結果が重要になってきます。
バックテストとフォワードテスト、併せて見ることで更にEAの真価を見極めることができます。