「MT4でのバックテストを正しく行う方法 -ヒストリカルデータインストール編-」
では、正しいヒストリカルデータを生成する方法を解説致しました。
ヒストリカルデータの生成が出来ましたら、いよいよバックテストです。
バックテストで対象EAの特徴が分かります。
今回は、バックテストの取り方及び、バックテスト結果の見るべきポイントについて解説致します!
バックテストの実施
MT4上部メニュー[表示]→[ストラテジーテスター]で、画面下部にスラテジーテスターのウインドウが表示されます。
下記のウインドウとなります。
こちらのウインドウで各種設定をしていきます。
エキスパートアドバイザー
この部分ではEAを選択します。
バックテストを行いたいEAを選択してください。
ここで対象のEAが出てこなければ、MT4にEAがインストールされていないという事になりますので、以下のマニュアルを確認の上、もう一度設定してみて下さい。
今のMT4では、「エキスパートアドバイザー」の他に「インジケーター」も選択できる様になっています。
”ビジュアルモード”で、インジケーターの挙動を確認できるものですね。
▼ビジュアルモードとは
過去相場がリアルタイムで動いているかの様に、再生する機能。
EAの挙動を調べながらバックテストする事ができる。
通貨ペア
通貨ペアには、対象EAの指定通貨ペアを選びましょう。
モデル
ここは全ティック(エブリティック)に設定するのが順当とされています。
エブリティックは全てのティックを使いテストするので、最も信頼性の高いテストであるとされています。
ちなみに、”ティックデータ”というのは、1分足以下のデータです。
MT4では基本的に、ティックデータは”疑似ティック”であり、仮想的なデータとなるんですね。
ここに信頼性はないという事になります。
つまり、ティック単位で動くEAなどは、正しい検証のやりようがなく、再現性が低いとされています。
ですが、ここはやはり「エブリティック」で検証するべきとされています。
「コントロールポイント」は下位足でのテストで、「始値のみ」はその名の通り、始値だけでテストします。
「コントロールポイント」と「始値のみ」はテストが早いのですが、より信頼性が高いのはやはり「エブリティック」です。
ですので、例外を除いてバックテストはなるべく「エブリティック」で行う様にしましょう。
テスト期間
「期間を指定」にチェックを入れると、「開始日」と「終了日」が設定できます。
右の▼からカレンダーで指定できますし、数字をクリックすれば直接入力も可能です。
ビジュアルモード
既に触れた、「ビジュアルモード」を再度解説します。
「ビジュアルモード」の所にチェックを入れると、実際にEAのトレードを見ることができます。
どんな手法でトレードするEAなのか、ざっくり知ることができますので、便利な機能ですね^^
ただし、これをやるには、ストラテジーテスターのウィンドウを縦に少し広げないと非表示の状態のままですので注意です。
ウインドウの上の面と時間軸表示の所にカーソルを当てると、広げられます。
EAパラメーターの設定
バックテストを行う前に、対象EAのパラメーターを確認しておきましょう。
ストラテジーテスターウインドウの右、「エキスパートの設定」をクリックします。
初期投資資金を決める
「エキスパート設定」をクリックすると、パラメーター設定ウインドウが表示されます。
「テスト設定」タブをクリックし、まずはバックテストの初期投資額の設定を行いましょう。
初期設定では下図の様に、”10000ドル”で設定されています。
通貨の単位ですが、ここは日本円も選択できればいいのですが、残念ながら、ドル・ユーロ・ポンド・スイスフランの単位からの選択となります。
初期投資額は基本的に、1万ドルで設定する事が多いようですが、FX-ONの出品EAなどを見ていると、10万ドルスタートの設定でテストしているのも見受けられますね。
単純に10万ドルスタートの方が、金額ベースで大きく見せられるので、その様な形態をとっているものと思われます。
同じ利回りでも、
- 利益2万ドル
- 利益20万ドル
では印象が変わって来ますよね??
市販EAのバックテストを閲覧する際、上記の様な心理マジックも考慮に入れてみる様にしましょう。
EAパラメーター設定
お次に、EAのパラメーター設定についてです。
下図の様に、「パラメーターの入力」タブで対象EAのテストするパラメーターを調整できます。
ここで、テストしたいEAのセッティングを行いましょう。
多くのEAでは、パラメーターをカスタマイズする必要がない様に、最適なセッティングで設定されている事が多いですね。
バックテストの実施
いよいよバックテストの実施です。
通貨ペア、各種パラメータ設定が終わったら右下の[スタート]をクリックしましょう。
バックテストが始まります。
緑のメーターが進み、ヒストリカルデータがまず読み込まれます。
ヒストリカルの読み込みが終わると、EAの解析が開始されます。
バックテスト期間を長く取れば取るほど、解析完了までに時間がかかります。
テスト中、損益グラフを見ておくのがお薦めな理由
解析中、下部「グラフ」タブを押すと、テスト中ながらに損益グラフを確認する事ができます。
ここでお勧めなのは、
解析中、損益グラフは表示させてテスト中のグラフを見ておく事
です。
何故かと言いますと、
長期に及ぶテストの場合、テスト結果としての収支グラフは遠くから眺める形での判断となるため、
深めのドローダウンが起こっているゾーンでも大したことない様に思えたりするからです。
基本的に販売されているEAは右肩上がりのバックテスト結果を拝めるものですが、例えば、
3カ月間ドローダウンを起こしている所も10年間テストの結果を見る限りはそんなに深いドローダウンには見えないもの
です。
しかし現実として、3カ月もドローダウンしていると精神的に参りますよね?
そういった、「深めのドローダウンにおいての不安」もなるだけバックテストにて体感しておいた方がいいでしょう。
3カ月間のドローダウンも、バックテスト的に想定内とされているEAであれば耐えなくてはいけません。
ドローダウンも想定内とするためのバックテストでもあるので、長めのドローダウンにより一時的に右肩下がりになっている時、
「いかに不安を感じるのか」
を疑似体験しておく事が大切です。
バックテスト結果をチェックする
バックテストが完了したら結果を見てみましょう。
ウインドウ下部、「レポート」タブで解析結果を見る事が出来ますが、「レポートを保存」する事により、より詳細にテスト結果を”ストラテジーレポート”として閲覧する事が出来ますので、そちらで分析結果を解析しましょう。
「レポート」をクリックすると上図の様にテスト結果が表示されます。
その結果表示のどこかで右クリックすると、【コピー、レポートの保存】と出てくるので、「レポートの保存」を押します。
すると、下図の様に、収支グラフと共にストラテジーレポートを閲覧する事ができます。
※インターネットブラウザ上でHTMLファイルとして閲覧する形
バックテスト結果はこの様にレポートにして見せてくれます。
色んな項目がありますが、項目名と内容を解説していますのでご参考にどうぞ^^
|
項目名 |
内容 |
1 |
テストバー数(Bars in test) |
テストしたバーの数 |
2 |
モデルティック数(Ticks modelled) |
テストで利用したティック数 |
3 |
モデリング品質(Modelling quality) |
90%で正常。n/aはエラーです。少ないエラーが生じている際、89.9%になる事もある。 |
4 |
不整合チャートエラー(Mismatched charts errors) |
チャートエラー数 |
5 |
初期投資額(Initial deposit) |
初期投資額 |
6 |
純益(Total net profit) |
総純損益(総利益-総損失) |
7 |
総利益(Gross profit) |
利益の総合 |
8 |
総損失(Gross loss) |
損失の総合 |
9 |
プロフィットファクター(Profit factor) |
プロフィットファクター(総利益/総損失) |
10 |
期待利得(Expected payoff) |
期待損益(総純損益/総トレード数) ”期待値”ともいう。 |
11 |
絶対ドローダウン(Absolute drawdown) |
初期投資額からのドローダウン |
12 |
最大ドローダウン(Maximal drawdown) |
最大ドローダウン、最高利益からの落ち込み比率。%よりも金額ベースでの把握がよい。 |
13 |
相対ドローダウン(Relative drawdown) |
相対ドローダウン、その時の資金に対する最大の落ち込み比率。 |
14 |
総取引数(Total trades) |
総トレード数 |
15 |
売りポジション(勝率%) |
売りトレード数(勝率) |
16 |
買いポジション(勝率%) |
買いトレード数(勝率) |
17 |
勝率(%)(Profit trades)(% of total) |
勝ちトレード数(率) |
18 |
負率(%)(Loss trades)(% of total) |
負けトレード数(率) |
19 |
最大勝トレード(Largest profit trade) |
1トレード当り最大利益 |
20 |
最大負トレード(Largest loss trade) |
1トレード当り最大損失 |
21 |
平均勝トレード(Average profit trade) |
1トレード当り平均利益 |
22 |
平均負トレード(Average loss trade) |
1トレード当り平均損失 |
23 |
最大連勝(金額)Maximal consecutive wins (profit in money) |
最大連続勝ちトレード数(利益) |
24 |
最大連敗(金額)Maximal consecutive losses (loss in money) |
最大連続負けトレード数(損失) |
25 |
最大連勝(トレード数) Maximal consecutive profit (count of wins) |
最大連続利益(勝ちトレード数) |
26 |
最大連敗(トレード数) Maximal consecutive loss (count of losses) |
最大連続損失(負けトレード数)フォワードでバックテスト以上の連敗をしたら要注意 |
27 |
平均連勝 Average consecutive wins |
平均連続勝ちトレード数 |
28 |
平均連敗 Average consecutive losses |
平均連続負けトレード数 |
|
|
|
並べると実に色々と項目がありますが、バックテストに慣れてきたら抵抗なく見られるようになります^^
ストラテジーレポートで特に見るべき点
バックテストレポートでは特に見るべき項目があります。
それは、
- 総取引回数
- 平均利益
- 平均損失
- 総利益額
- 勝率
- PF
ですね。
「特に」と言いながらもたくさんありますね(笑)
根拠を説明いたします。
総取引回数
ここが重要な根拠は以下の記事で解説しています。
最も説得力のある解答が得られる事と思いますので、ご覧くださいませ。
平均利益と平均損失
平均利益と平均損失の数字で、EAの特徴が分かります。
平均利益/平均損失で「損益レシオ」が求められますが、
2.0以上など、高い損益レシオのEAは、コツコツ負けてドカンと勝つ傾向にあり、低勝率という特徴を持ちます。
逆に1.0以下など低い損益レシオのEAは、コツコツ勝ってドカンと負けるが高勝率という特徴があります。
評価的にどちらが良いという事はありませんが、
「低すぎない損益レシオで勝率が高め」
という特徴を持つEAが利益の再現性が高く、且つ万人に扱いやすい傾向がある様に思えます。
総利益額
ここはEA性能の基準となります。
フォワードテストでどれほどの再現性を発揮するのかの判断も必要となりますね。
フォワードテストの実績がバックテストと著しく乖離している場合は要注意です。
勝率
勝率が高いEAが良いEAとは限りません。
ここで誤った判断をしてしまう初心者さんが多いと思いますので、注意して頂きたいと思います。
勝率が高いEAは取引回数に乏しく、バックテストの再現性が低いものが多い現実にあります。
勝率が低いEAの方が主に再現性が高いと言われています。
PF(プロフィットファクター)
総利益/総損失で求められる指標です。
ここが大きければ嬉しいのですが、実は、
PFが高いからと言って必ず高く評価されるべきものでもない
のです。
高いPFが前提で設計されているEAは、「コツコツドカン負け型」が多く、ドローダウンを起こした際に成績を回復するのに時間がかかるという難点があります。
「想定外」に著しく弱いのが高PFEAであると言っても過言ではないでしょう。
まとめ
バックテストノウハウ編、いかがでしたでしょうか??
正しいバックテストを実施し、正しくストラテジーレポートを分析して、EAの善し悪しを判断できる目を養いましょう。
システムトレーダーとして必要な見方は、裁量トレードのスタイルにおいても役に立ちます。
裁量トレードは”感覚のトレード”に陥る事が多く、成績の分析もまた感覚で済ませている人が多いと見受けられます。
トレーダーとして、パフォーマンス分析は必須ですので、EA解析を通じてそのセンスを磨いて頂ければと思っております。
最後までお読み頂き、ありがとうございました!
終了後の Back Test チャートに現れる インディケーターを表示させない、又は 表示させるインディケーターを、指定する方法方法をお教え下さいませんか。
以上 宜しくお願いします。