50歳手前の糖尿病メタボおっちゃんの色々悪あがき日記

老後の健康とお金のため・仕事をサボるため、あくせく悪あがきして生きています♪

とりあえず使えるようになる!メタトレーダー5でバックテスト~(7)バックテスト。

 今回で最終回です。
 ストラテジーテスターの操作を覚えていただき、バックテストの実体験をしていただきます。
 前回完成させたエキスパートの実力が評価されます。果たして、結果は・・・。

 

 

今回のステップ

・MT5を使おう<基礎編>
 □.MT5をインストールする。
    ↓
 □.何もしないEAを作り、動作させる。
    ↓
 □.何か適当なメッセージをログ出力してみる。
    ↓
 □.過去一定期の四本値を取得してみる。
    ↓
 □.単純な売買ルール「山越えで売り・谷越えで買い」を実装する。
    ↓
 □.オーダーを実装する。
    ↓
 □.バックテスト。

 

バックテストの種類

 ストラテジーテスターに表示されているバックテストで使用するのは、ハッキリ言って、この3つです。

種類 内容

f:id:edger_arkw:20200517092529p:plain

<単一>
文字通り、エキスパートを単一テスト実行します。
単一設定動作のため、外部変数は変更できません。
※用途…エキスパートの動作テスト

f:id:edger_arkw:20200517092910p:plain

<可視化>
エキスパートを単一実行し、取引履歴を表示します。
こちらも単一設定動作のため、外部変数は変更できません。
※用途…個々の取引を追跡調査したい場合

f:id:edger_arkw:20200517093006p:plain

<遺伝的最適化>
外部変数の値を変更し、どの値が最適値なのか結果表示します。
※用途…バックテストでメインに使用します。

他のはとりあえず、わからなくて大丈夫ですwww

 

遺伝的最適化

  実際にやってみましょう。

 

 まずは「設定」タグを選択します。
 十分なテストになるよう、テストデータ量を準備します。

種類 内容
銘柄 お好きなものを
時間足 M1(=1分足)
日付 期間指定で5年間ほど
フォワードテスト キャンセル ←なんの機能かわからないですwww
延滞 遅延ゼロ、理想的な実行
モデル 始値のみ
入金 100万円。JPYは手打ちで入力。

 

f:id:edger_arkw:20200517173232p:plain

設定


 続いて「パラメータ」です。


 このエキスパートは2つの外部変数、「山」「谷」を判定するための「Kikan」と、価格に動きがなく横ばいになったとき(山と谷の差が一定以下)一旦発注を停止するための「MinBand」があります。


 まずは、なんとなく直感でパラメータを設定します。
 一旦「Kikan」は、1時間(60min)~24時間(1440min)の範囲で、1時間(60min)毎の増分にしてみます。
 もう一方の「MinBand」は、10Pips~100Pipsの範囲で、10Pips毎の増分にしてみます。

 

 「変数名」のチェックボックスにチェックを入れ、それぞれの「スタート」「ステップ」「ストップ」を入力します。

f:id:edger_arkw:20200517163914p:plain

パラメータ

 それでは右下の[スタート]を押してください。
 バックテストの進捗や結果は「スタートオプティマイズ結果」タグを押すと表示されます。
 右下に残りの「テスト済パターン/全パターン」「経過時間/残り時間(結構いいかげん)が表示されています。

f:id:edger_arkw:20200517164932p:plain

オフプティマイズ結果

 終了すると成績に良かったものから順に表示されます。

f:id:edger_arkw:20200517173624p:plain

テスト終了

 早いー、早すぎるー

 今回のテスト内容ですと、「Kikan」が24パターン「MinBand」が10パターンなので、総パターンは240となり、240×5年となります。
 当方のマシンでは、12分弱で終了しました。12(分)×60(秒)÷240=3、つまり5年分のバックテスト一回を、たった3秒で終わらせています。
 1パターン5年分だと、MT4の場合いったい何時間かかるやら。
 すごいぞ、MT5
 

 おっと、内容を見ますとムムム。今回のテストでは残念ながら損益がプラスの設定はありませんでした。
 結果を分析してみましょう。

 まず「取引数」ですが、成績上位はやたらと少ない。「取引数」のラベルをクリックし「取引数」の多い順に並べると、最大値は27,293です。

 取引しなかったので、結果ケガが少なくて結果資金を減らさずに済んだ卑怯者の設定が成績上位になったようです。
 「Kikan」と「取引数」が正比例の関係ぽいので、今度は期間をメチャクチャ長~ぁ~~くしてみましょうか?
 1440(min=1日)~43,200(min=1ヶ月)、240置き(240min=4時間)としてみます。

 「MinBand」は、特に優位性のある設定もなく方向性も見えません。一旦チェックを外し、上位トップの平均点80に固定してみます。

f:id:edger_arkw:20200517180352p:plain

2回目の設定

う~ん、遅いっ。ちっとも終わりません。

 今度はやたら時間がかかっていますね。
 「Kikan」をメチャクチャに伸ばしたせいで、四足値の取得に時間がかかっているのかな?さすがにヤリスギました。
 一旦中断しましょう、中断は右下の[ストップ]を押します。

 時間足を「M1」から「M10」に変更しましょう。1分置きから10分置きのチャートになりますので、「Kikan」も1/10で済むはずです。
 早速変更してみましょう。まずは「設定」は以下の通り。

f:id:edger_arkw:20200517183435p:plain

2回目の設定

f:id:edger_arkw:20200517183635p:plain

2回めのパラメータ

 これで10倍の速さで終わるはずです、2回め実行してみましょう。

f:id:edger_arkw:20200517184009p:plain

2回め結果

 あっというまに結果がでましたが、またしても全滅です。


 ただ、上位成績の「Kikan」が3168~3456(22日~24日)に集束しています。
 為替市場は土日休場しているので、このあたりの数字は、1ヶ月を意味しているのかもしれません。
 

 ~ という感じで、パラメーターを変更して最適な値を求める作業を繰り返します

 

可視化

 「可視化」を選択すると、取引内容をチャートや履歴で確認できます。
 今回のエキスパートの負けっぷりを観察してみましょう。

 

 ストラテジーテスター「概要」から「可視化」をクリックします。

f:id:edger_arkw:20200517190131p:plain

オプティマイズ無効化とビジュアルモード

 「設定」を開くと「オプティマイズ」欄が「無効化」に、「チャート、指標、取引
を表示するビジュアルモード」にチェックが、勝手にされております。

 また、パラメータ画面を開くと

f:id:edger_arkw:20200517190439p:plain

パラメータ 入力禁止

 「変数名」のチェックボックスがグレーアウト、「スタート」以降の値欄は入力禁止になっています。
 「値」のみが変更可能です。

 [スタート]を押すと、ターミナル画面に類似した「Strategy Tester Visualization」という画面が表示されます。

f:id:edger_arkw:20200517191350p:plain

Strategy Tester Visiualization

  この画面、ゆっくり時間経過しております。時間経過を早めるには、ツールバーにある以下のコントロールで速度調整します。
 最速にすると、肉眼では追えないほどの凶悪なスピードになります。

f:id:edger_arkw:20200517191910p:plain

アクセラレータ

 時間経過を早める前に、「ローソク足」への変更や「ズームアウト」して見やすいチャートにセッティングするのをお忘れずに。
 

f:id:edger_arkw:20200517192003p:plain

チャート種類と倍率表示

 画面下部「ツールボックス」の「履歴」をクリックする、取引履歴が表示されます。

f:id:edger_arkw:20200517193342p:plain

履歴

  これで、どんな内容の発注がいつ行われ、結果どうだったのかを、一覧で確認することができるかと思いきや、MT4にあった発注の個体番号であるTicket番号が表示されていない。
 これでは、例えば損切りしている注文があり、いつ注文したんかいな?と分析したくても困難です。
 ぎゃふん

 ~ バックテストの説明は以上となります。

負け

 残念ながら、今回の売買戦略では利益をあげることは難しそうということが、エキスパートのバックテストで判明しました。

 

おめでとう♪

 以上で、おそらく世界一敷居が低い「MT5」入門は終了です。

 ここまで来れた貴方は、間違いなく「とりあえずMT5が使える人」認定です。
 今後は、移動平均線ボリンジャーバンドなどのテクニカル指標を導入するもよし、損切り利食いを計算して行うようにするもよし、資金管理を徹底しリスクを最小にし利益を最大にするロット計算をするもよし、その他なんでもよし、今回の講座をステップとしてご活躍されることをお祈りします。
 最後に、金トロフィーを授与いたします。
 ありがとうございました。

f:id:edger_arkw:20200517201636p:plain