バックテストスコア計算方法のコンセプト

Pocket
LINEで送る

バックテストスコアの計算方法ですが、全てを理解しようとするとなかなか難しいです。

バックテストスコアの計算方法【バージョン1.0】」の記事は、4500字を超えてしまいました。

そこで要点だけを抑えたい人向けにコンセプトまとめました。

難しいことは知らなくていいけど、基本的な考え方だけ知っておきたいという方はこちらの記事を御覧ください。

要点を「バックテストスコアの計算方法【バージョン1.0】」の記事の半分以下の文字数でまとめました!

 

どうして時間が無いという方は最後のまとめだけでも目を通してもらえると幸いです。

 

基本は収益率

バックテストスコアは証拠金に対する年利が考え方の基礎となっております。

バックテストの結果から、EAの収益と稼働に必要な資金を求め、そこから年利がどの程度であるかを求めます。

この年利がバックテストスコアとなります。

仮に年利10%が期待できるEAがあったすると、バックテストスコアも10となります。

 

収益の計算方法

年利を求める上で、まずどれくらいの収益があるのかを知る必要があります。

このときバックテスト結果に表示されている純益をそのまま使うわけではありません。

いくつかの処理によって加工した値を使用します。

特に重要な処理として、バックテスト時のスプレッドに応じた調整を加えます。

 

スプレッドによる調整

バックテストにおいて、スプレッドの設定はバラバラです。

同じEAでもスプレッドは小さい値であればあるほど成績は良くなり、大きい値であればあるほど成績は悪くなります。

成績を良く見せるため、狭いスプレッドでテストしたEAが有利とならないよう調整を加えています。

スプレッドが狭いバックテストほど純益を減らし、スプレッドが広いバックテストほど純益を増やす処理を入れています。

このようにして、どんなスプレッドのバックテストでも平等に評価できるよう留意しております。

 

必要資金の計算方法

必要資金を計算する要素は2つあります。

最大ロット数と最大ドローダウンです。

 

最大ロット数が大きいほど低スコア

最大ロット数が大きいほど必要な証拠金は増えます。

そこでバックテストの個別の取引レコードを確認して、最大保有ロット数を求めます。

最大保有ロット数に応じて必要証拠金を求めていきます。

最大ロット数が大きいEAは、その分だけ純益を伸ばさないとスコアが下がってしまいます。

 

最大ドローダウンが小さいほど高スコア

EAを運用したからといって、勝ちばかり続くわけではありません。

負けて資産を減らすことも当然起こります。

もしドローダウンを起こしても破産しないよう、最大ドローダウンを基準に必要資金を計算しています。

 

バックテストの質に応じた調整

年利を計算後、バックテストの良し悪しに応じてバックテストスコアの値を調整しています。

調整に使う項目は4つです。

 

モデリング品質が悪いとダメ

モデリング品質が高いバックテストほど実際の値動きに近い検証がされており、信頼性の高いデータと判断しています。

そこでモデリング品質が低ければ低いほど、バックテストスコアも下がるよう補正をかけています。

 

取引期間が短いとダメ

取引期間が短いEAはごく短い期間に最適化されたEAである可能性があります。

例えば取引期間が1年だけのEAは、その1年だけは成績がプラスでも、その前後の期間ではマイナスであった可能性があります。

そのため取引期間が短いバックテストは、信頼性の低いデータであると判断しています。

そこでバックテスト期間が短ければ短いほど、バックテストスコアが下がるよう補正をかけています。

 

取引回数が少ないとダメ

バックテストの取引回数が多いほど、バックテスト結果は誤差が小さく信頼できるデータであると判断しています。

例えば取引回数が1回で勝率100%のEAがあったとしても、次の取引が負けたら勝率は50%に変わります。

このように取引回数が少ないと1回の取引が与える影響が大きくなり、実際の成績とバックテストの成績の誤差が大きくなります。

そこで取引数が少ないバックテストは、その分だけバックテストスコアが下がるように補正をかけています。

 

modify数が多いEAはダメ

稀に頻繁にmodify(注文変更処理)をおこなっているEAがあります。

こういったmodify処理は一般的にローソク足形成中のタイミング実行されることが多いです。

しかしMT4のバックテストはティック毎のデータは保持しておらず、一番正確なデータは1分足の四本値までです。

ローソク足形成中の個別の価格は、あくまで一定のアルゴリズムで生成された価格です。

このタイミングで取引するということは、実際の値動きでの結果とのズレが広がると判断しています。

そのため総取引数に対してmodifyの回数が多いEAは、バックテストスコアが下がるよう補正をかけています。

 

まとめ

・年利が高いほどスコアも高い

・スプレッドの違いに応じて収益に補正をかけることで平等に評価する

・モデリング品質が高いとスコアも高い

・バックテスト期間が長いほどスコアも高い

・総取引数が多いほどスコアも高い

・取引数に対してmodify数が多いとスコアが下がる

Pocket
LINEで送る

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)