この記事ではFXの自動売買システムについて、粗悪なダマしEAがどのようにして作られるか説明したうえで、そのような勝てないEAを掴んでしまわないためにどのように見分ければいいかを解説しています
筆者自身、自分用のEAを自己開発しているだけでなく、他の方が作ったEAもたくさん利用してきました
現在は有用なEAのおかげで満足のいく利益を出させていただいておりますが
正直、過去には粗悪なEAを使って損失を出したこともあります
そのような苦い経験を踏まえて説明しますので、筆者と同じ失敗をしないためにも是非最後まで読んで良いEAに出会うきっかけにしていただければと思います
〇GemForexなら無料でEAを使い放題
本記事は筆者の個人的見解を示したものであり、投資判断等に関する助言を行うものではありません。また、本記事の内容が商品・サービス等の仕様等について保証をするものではありません。その他注意事項はページ下部に記載してございます。
ダマしEAのバックテストの実例
皆さんEAの購入を検討するときには、そのEAのバックテスト結果を必ず確認しますよね?
EAを売る側もそれを分かっていて、EA開発者の中にはバックテスト結果さえ良ければそれでいいと考える悪質な人もいます
一例を見てみましょう
下のグラフは某EAの2012年から2022年の10年間のバックテスト結果です
PF(プロフィットファクタ)は2.86、勝率は60%です
グラフも右肩上がりで良い成績に見えませんか?

実はこれ、私がこの記事のために適当に作ったダマしEAなんです
その証拠をお見せしましょう
次のグラフは同じEAの2002年から2022年の20年間のバックテスト結果です
PFは1.14、勝利は52%です
全然違うものに見えませんか?

過去10年だけのバックテスト結果だとすごく良い成績のEAのように見えますが、バックテスト期間を20年にするとかなり長期間にわたり大きなドローダウンが発生し、とても不安定なEAだということが分かります

ここで注意してほしいのは、バックテスト期間が長いから信用できる、短いから信用できないということではないということです
問題は「粗悪なEAであっても、ある特定の期間のバックテスト結果であれば、いくらでも見た目を良くすることができる」ということにあります
どんなに良いEAであっても長期間のバックテストを行うとドローダウンが続く期間が必ずでてきます
これは、相場環境やトレード手法の流行が時代によって異なるため、ある時期では有効な手法が他の時期には悪手となることが多々あるためです
従って、バックテストで成績が悪い期間があるからといって、そのEAが粗悪であるとは一概には言えません
また、これまでのバックテスト結果が良かったとしても、将来の相場環境によっては今後も同じような成果をあげる保証は全くありません
この記事で言うダマしEAとは、バックテスト結果の見た目を良くすることだけに注力し、結果としてユーザーを騙すようなEAのことを言います
悪用禁止!ダマしEAの作り方
ここからは、どうやってダマしEAを作るのかを説明します
ダマしEAの作り方を知ることで、粗悪なEAを掴んでしまうリスクを低減し、優位性のあるEAを見分ける力をつけましょう
①適当なトレード手法を用意する
例えば、「ボリンジャーバンドの-2σにタッチで買い、+2σタッチで売り」というようなトレード手法を用意したとします
本来であれば、この手法だけではまともに利益を上げることなんてできませんよね?
しかし、以下の操作によりバックテスト結果では利益を上げているように見せかけることができます

②バックテストを回して結果を分解する
まず上記の手法をそのままバックテストにかけます
バックテストの期間は販売ページでユーザーに見せたい期間にします
「過去10年のバックテストの結果、大きな利益を得られた」と書きたいなら10年分のバックテストを回します
当然このままではバックテストの結果はマイナス、使い物になりません
そこで、この使い物にならないバックテスト結果を分解していきます
詳しい方法は割愛しますが、バックテストを分解していくと、たまたま勝率や純益がプラスとなる時間帯、曜日、パラメーター等の組み合わせを見つけることができます
(例:過去10年間をみると月曜日の13時から14時だけは20勝15敗でプラスになっている)
しかし、これはバックテストで偶然プラスとなっただけでロジック的には何の意味も持ちません

③いいとこ取りする
バックテスト結果がプラスとなるトレードのみを抽出していきます
プラスとなる時間帯、曜日等でのみトレード行うようにトレード時間帯、曜日帯に制限をかけたプログラムに修正します
(例:月曜日の13時から14時にのみ、ボリバンの-2σにタッチで買い、+2σタッチで売りのトレードを行う)
時間や曜日を制限しているEAでも優良なEAはたくさんあります
以下のような確固たる方向性があって組まれたロジックならばむしろその点では優位性があると言ってもいいでしょう(EA全体として優位性があるかは別ですが)
・仲値アノマリー系(東京仲値前後の特徴的な動きに特化したロジック)
・早朝スキャ系(早朝のボラティリティが小さい時間帯を狙ったロジック)
・市場時間限定系(オセアニア時間、東京時間、ロンドン時間、NY時間など対象通貨の取引が活発になる時間帯に限定したロジック)
・週末週明け除外系(金曜日や月曜早朝のトレードを控えるロジック)
など
④パラメーターを過剰最適化する
MT4のバックテストには「最適化」という機能があります
この機能を使用すると、パラメーターを少しずつ変化させてロジックを分析することが可能です
例えば、「ボリバンの-2σにタッチで買い、+2σタッチで売り」としていたパラメーターを「-2.1σタッチの場合、-2.2σタッチ場合……、+2.1σタッチの場合、+2.2σタッチの場合‥‥‥」とMT4で自動的に場合分けして計算してくれます
本来は最適化結果から異常値を排除したり、傾向を見したりしてロジックの分析、改良を行うのですが、ダマしEAを作る際には何も考えずに最適化結果が一番良かったパラメーターに設定します
異常値だろうが非現実的な数値だろうがバックテスト結果が一番良くなればそれで良いという考えです
これを過剰最適化(カーブフィッティング)と言うこともあります

⑤たくさんダマしロジックを作って足し算する
①~④までで一つのダマしロジックが完成ですが、一つ問題があります
それは、全体的にマイナスとなる粗悪なロジックからプラスになる部分だけを抽出するため、トレード回数が極端に少なくなることです
そのため、ここからはトレードの水増しを行います
やり方としては、他の手法(平均移動線やRSIなど)でも上記①~④と同じことを繰り返し、見かけ上はプラスとなるロジックを作っていきます。そして、片っ端からプログラムの中にどんどん足していきます
EA全体としてある程度のトレード回数になったら完了です
これで、ロジック的には何の意味もなさないが、ある期間のバックテストだけ好調な成績を上げるダマしEAの完成です
勝てないEAの見分け方
上記の方法によって特定の期間のバックテストで好成績を上げるEAを簡単に作ることができてしまいます
しかし、このEAには何の優位性もないことがご理解いただけたかと思います
このようなダマしEAを使ってしまうと確実に負けます
そして残念ながら、そのようなEAが数多く世に出回っているのが現実です
ダマしEAを見極める力を身につけて大切なお金を守り、資産を上手に増やしていきましょう
次のページではダマしEAの見分け方を詳しく解説しています。是非続けてお読みください
・本記事は筆者の個人的見解を示したものです
・本サイトに掲載の全ての記事は、投資判断等に関する助言を行うものではありません
・投資を行う際は自己の判断により、自己責任で行ってください
・記事内で紹介されている企業等の意見を代表するものではありません
・本記事の内容は、商品・サービス等の仕様等について保証をするものではありません
・本記事で紹介している商品・サービスの詳細につきましては、各企業等へご確認願います
・本記事の内容は作成日または更新日現在のものです。作成日または更新日以後に、紹介している商品・サービスの内容が変更されている場合がございます
・本記事の内容及び見解は作成日または更新日当時のものであり、その内容および商品・サービスの仕様等についていかなる保証をするものでもありません
・本記事にはIB、アドセンス等のリンクが含まれます
当ブログではFXを運用する上で役立つ情報を多数紹介しています!
ぜひ、他の記事もお読みください!