勝てるEAであることを100%で保証することは、どのような手段を用いても出来ません。
しかし、100%に近づけるための努力は可能です。
ポイントは、バックテスト結果を描画する Strategy Tester Report を正しく評価することです。
勝てるEAは、Strategy Tester Report をごまかす必要がありません。
一方、Strategy Tester Report をごまかしている場合は、勝てるEAではありません。
これまで、ダメEAを排除する方法を示してきました。
参考記事 ⇒ ダメEAを排除する
勝てるEAの選び方とは、基本的にダメEAを排除する方法の逆を行うことになります。
勝てるEAを選ぶ確率をあげるためには次の8点を確認することが重要です。
1. 長期間のバックテストが示してあることを確認する。
2005年~現在までのバックテストが必要です。
(通貨ペアによっては、2007年~現在でもOK)
これは勝てるEAを選ぶための最低条件です。
2007年 サブプライムショック
2008年 リーマンショック
2009年 閑散相場
2011年 日銀の介入
2011年 – 2015年 ユーロスイスのぺッグ
2012年 アベノミクス
をバックテストに含める必要があります。
イレギュラーな相場の検証がないEAは使う前から勝てないことがわかっています。
2. バックテストにおけるスプレッドが十分に広いこと。
たまに、極狭スプレッドの好成績で勝てるEAだと宣伝しているパターンがあります。
MT4のスプレッド設定の単位は ” point ” なので、5桁ブローカーなら、1 pips = 10 point になります。
よって、スプレッド = 1pips でバックテストを行いたい場合は、MT4 には 10 と入力しなければなりません。
以下、5桁ブローカーのMT4を使ってバックテストを行う場合の、スプレッド設定を提示します。
勝てるEAかどうかの見極めは、最低この程度のスプレッドでバックテストを行う必要があります。
AUDJPY = 25 point (2.5 pips)
AUDUSD = 20 point (2.0 pips)
CADJPY = 40 point (4.0 pips)
CHFJPY = 40 point (4.0 pips)
EURAUD = 20 point (2.0 pips)
EURGBP = 20 point (2.0 pips)
EURJPY = 20 point (2.0 pips)
EURUSD = 15 point (1.5 pips)
GBPJPY = 40 point (4.0 pips)
GBPUSD = 18 point (1.8 pips)
NZDJPY = 40 point (4.0 pips)
NZDUSD = 25 point (2.5 pips)
USDJPY = 12 point (1.2 pips)
仮に、スプレッドが、GBPJPY = 10 point (1 pips) でバックテストを行い、1000トレードで2000pipsの利益が出たとしても、
スプレッドを 4 pips に広げれば、途端に 1000 pips の損失に転落します。
このようなEAは、開発者に悪意があるかどうかは別にして、投資家を欺いていることになります。
勝てるEAを選ぶ際、極狭スプレッドでバックテストが行われているEAは、まず、疑う必要があります。
3. バックテストにおけるトレード回数が十分にあることを確認する。
時間足ごとで、最低必要なトレード回数は次の通りです。
日足 = 平均 50 トレード / 年(10年間のバックテストなら、500 トレードが必要)
4時間足 = 平均 200 トレード / 年(10年間のバックテストなら、2000 トレードが必要)
1時間足 = 平均 400 トレード / 年(10年間のバックテストなら、4000 トレードが必要)
5分足 = 平均 800 トレード / 年 (10年間のバックテストなら、8000 トレードが必要)
トレード回数の多さは、偶然を必然に変えます。
すなわち、10トレードのバックテストで勝っていても、偶然である可能性が高く、実力は?です。
一方、10000トレードのバックテストで勝っておれば、偶然である可能性は低く、実力アリです。
これは例えば、プロ野球で5試合に登板して、4勝1敗の投手の実力は?ですが、
500試合に登板して、400勝100敗の投手の実力が確かであることと同じです。
勝てるEAを選ぶためには、バックテストで十分なトレード回数を確保し、偶然性を排除することが重要です。
参考記事 ⇒ トレード回数の重要性
4. バックテストにおける勝ちトレード数と負けトレード数が十分にあることを確認する。
仮にバックテストで1000トレードがあったとしても、1000勝0敗のEAの是非は、非です。
理由は負けトレードの検証が出来ていないからです。
未来、確実に到来する1度の負けで、口座は吹き飛ぶ可能性があります。
勝てるEAとは、勝ちトレードと負けトレードが十分に検証されています。
勝ちトレードと負けトレードのバランスを考慮したEA評価については、
当社(株式会社トリロジー)のEA開発における根幹を担いますので、別資料で紹介します。
ご興味のある方は、次の資料を入手いただけますと幸いです。
参考資料 ⇒ 自動売買ソフト(EA)の評価方法について Upper class
5. Equity curve の形状が美しく、違和感がないことを確認する。
ここで、美しいという判定や違和感という判定には経験を必要とし、また、主観も入ります。
経験の浅いトレーダーは判定がブレる可能性はあります。
一方、直感的に視覚から判断できるので、慣れればEAの取捨選択がスピードアップします。
勝てるEAの Equity curve は、美しく、違和感を感じません。
参考記事と参考資料を次に示します。
参考記事 ⇒ 自動売買ソフトの真実
参考資料 ⇒ 自動売買ソフト(EA)の評価方法について Beginners’ class
6. バックテストが示す結果から、統計学的に勝てる EA であることを確認する。
この判定は上級者向けになります。
しかし、確率(正しくは信頼水準)が算出できるため、勝てるEAかどうかの判定が明確になります。
その判定には、Profit factor(プロフィットファクター)と Expected Payoff(平均損益)を用いるとわかりやすいです。
証明すべきは、
Profit factor > 1 である確率(正しくは信頼水準(%))
Expected Payoff > 0 である確率(正しくは信頼水準(%))
です。
Profit factor は、 総利益 / 総損失 で算出されます。
よって、
利益 = Profit factor > 1
イーブン = Profit factor = 1
損失 = Profit factor < 1
であるため、Profit factor > 1 である確率(正しくは信頼水準(%))を算出することで勝てるEAかどうかを判定します。
Expected Payoff は、(総利益 – 総損失) / 総トレード回数 で算出されます。
よって、
利益 = Expected Payoff > 0
イーブン = Expected Payoff = 0
損失 = Expected Payoff < 0
であるため、Expected Payoff > 0 である確率(正しくは信頼水準(%))を算出することで勝てるEAかどうかを判定します。
7. ウォークフォワードテスト、リアルフォワードテストが実施されていることを確認する。
過去の相場に対して、カリカリにチューニングされている EA は多くあります。
いわゆるオーバーフィッティング(過剰最適化)というやつです。
このような EA は、ウォークフォワードテスト、リアルフォワードテストに耐えることはできません。
要するに勝てるEAではありません。
ちなみに、リアルフォワードで1年程度の検証があれば良いですが、開発段階で1年間のリアルフォワードでテストをすることはあまりありませんので、ウォークフォワードテストで代替すれば良いと思います。
2005年~2014年の10年間のバックテストにより EA を開発し、2015年~現在のウォークフォワードテストを行うことを推奨します。
バックテストとウォークフォワードテストを比べて、トレーディングロジックの優位性と再現性を確認できれば、2005年~現在のバックテストからパラメータの更なるチューニングをすることになります。
勝てるEAの開発過程には、このような作業が必要になります。
8. パラメータの決定方法から、開発過程の妥当性を確認する。
EA開発者にパラメータの決定方法を質問しても、ほとんどの開発者は答えてくれないでしょう。
企業秘密とか何とか理由をつけて、、、
ほとんどのEA開発者は妥当な開発過程を経たEA開発を行っていません。
過去チャートとエントリーを見て、エントリーして欲しくないときはフィルターを入れたり、パラメータを調節したりして、エントリーしないようにしている開発者は多いです。
フィルターにより、負けトレードを削除するわけです。
ほとんどのEA開発者はこのような手法を使っていますが、正しい行為と言えません。
これは、過去チャートのカーブにトレーディングロジックやパラメータをフィットさせる行為なのでカーブフィッティングであり、
過度なカーブフィッティングはオーバーフィッティング(過剰最適化)となります。
このような過程を経て開発されたEAは、勝てるEAではありません。
勝てるEAでは、チャートを見て、フィルターを入れたりパラメータの調節をしたりするのではなく、
チャートは見ずに、パラメータを順番に振っていって、最も勝てる可能性の高いパラメータが決定されます。
チャートを見るのは、ロジックどおりのトレードが行われていることを確認するためであり、
トレーディングロジックやパラメータの調整のためではありません。
この手法は、当社(株式会社トリロジー)のEA開発における根幹を担いますので、別資料で紹介します。
ご興味のある方は、次の資料を入手いただけますと幸いです。
参考資料 ⇒ 自動売買ソフト(EA)の評価方法について Upper class
最後に
この記事では、勝てるEAを選ぶ上で重要なポイントを説明しました。
しかしながら、これらが全てではありません。
これらを中心に、更なる分析をする必要があります。
勝てるEAを選ぶためには、” 目利き力 ” の習得が必要です。
目利き力の習得は勝てる裁量トレーダーになるよりは簡単だと思います。
投資家の皆様が勝てるEAを選ぶための目利き力を習得できるよう、私どものセミナーでも解説していきます。
株式会社トリロジーは、勝てるEAの開発を常に目指しています。
私どもは、投資家の皆様への継続支援を通じて、金融立国に貢献いたします。
■□ SponcerdLink ■□