良いEAと悪いEAの見分け方(バックテスト編)
概要
この記事では,良いEAと悪いEAの見分け方をバックテストの観点から解説します。
EAに興味あり&開発未経験(初心者)の方へ向けた記事となります。
良いEAと悪いEA?
昨日までの記事では,FXの概要~自動売買EAの始め方までを解説してきました。
そして,以下の記事では「自動売買EAはピンキリなので,良いものを選びましょう。わからない方は我々のAMANOGAWAをご覧ください」と書きました。
FX自動売買EAの動かし方 - Sasahiko’s diary
では,良いEAと悪いEAはどのように見分けるのでしょうか?
まず第1段階として,バックテストで見分けましょう。
バックテストとは?
バックテストとは過去のデータに対して自動売買EAを適用し,その有用さをチェックするものです。例えば,2020年-2021年のデータを使用し,「もし該当時期にそのEAを使っていたら,利益(損失)がどのくらいだったのか」を見ることができます。
→多くのEA開発者はバックテストの結果を公開していますので,チェックしましょう。
ただ世の中にはバックテストを悪用して,ゴミEAを最強EAかのように偽る人がいます。
騙されないように気を付けましょう。
バックテストで騙されるって?
ゴミEA(実際に回してみたら全然勝てないようなEA)をあたかも最強EAかのように偽り,有料で販売or使用させることがあります。
しかし,バックテストの悪用は知識がないと非常にわかりにくいため,EA開発経験者でなければ騙されても仕方ないと思います。
そこで,EA開発未経験者の皆様が騙されないように,バックテストで騙されないための知識を公開いたします。
バックテストで注目すべき3つのポイント
バックテストの結果を見るときに注目すべきは以下の3点です。
1.使用モデル
2.スプレッド
3.最大ドローダウン
バックテストを実施した際,詳細結果を保存することができます。(以下)
詳細結果には上記3点が記載されています。
では,3つのポイントを1つ1つ見ていきましょう。
1.使用モデル
使用モデルが全ティックでないものは信用してはならない。
使用モデルとは,「過去のデータをどれくらい細かく見るか」を表しています。
この使用モデルには「始値のみ」「コントロールポイント」「全ティック」の3種類があります。
コントロールポイント:使用時間足よりも1つ小さい足の始値のみをデータとして使用(4時間足を使用の場合,1時間足の始値をデータとして使用)
全ティック:可能な限り細かい時間をデータとして使用
「全ティック」が実際の取引環境と最も近いモデルといわれています。(もっとも細かいから当然ですが…)
また,「コントロールポイント」や「始値のみ」を使用するとバックテスト上の利益が大きくなる傾向があります。
(我々も開発初期では知らずにコントロールポイントを使用し,ぬか喜びをしてました笑)
2.スプレッド
スプレッドを適正に設定していないもの(公開していないもの)は信用してはならない。
スプレッドとは,買値と売値がどれくらい離れているのかを表します。
バックテストの場合,スプレッドを自由に変えることができます。
(スプレッドはデータ履歴にないため,自身で固定値を設定)
スプレッドは取引通貨や取引会社により大きく異なるため注意が必要です。
スプレッドの値が現実的に設定されているのかは要注意です。
AMANOGAWAの例
我々の開発したAMANOGAWAはXM TradingでGOLDを取引しています。
GOLDの平均スプレッドは40弱なので,バックテストでは40で設定しています。
3.最大ドローダウン
最大ドローダウンが大きいEAを信用してはならない。
最大ドローダウンとは「一時的に最大資産から落ち込んだ下落率の最大値」のことです。
→つまり,「一番やばいときにはどれくらい負けてたの?」という指標です。
この最大ドローダウンが極端に大きいEAは自分の証拠金に対してリスクをとりすぎていると言えます。
最大ドローダウンについては議論がさまざまありますが,我々は40-50%あたりが上限なのではないかと思います。
また,バックテストは証拠金が自由に設定できるため,この値を大きくすると最大ドローダウンは小さく表示されます。
つまり,現実的な証拠金に対して,最大ドローダウンがいくらだったのかをチェックする必要があります。
まとめ
EAの良し悪しはバックテストに注目
ポイントは「全ティック」「現実的なスプレッド」「許容範囲の最大ドローダウン」をチェックすること
上記が非開示or非現実であれば,信用しないのが吉
twitter : 笹彦 fx自動売買EA開発者 (@trader_brothers) | Twitter
Instagram : https://www.instagram.com/fxtrader_sasahiko/