EA販売サイトで EA を探したことで、自分なりの評価ポイントが固まってきました。
そこで、自作の EA について再評価してみることにしました。
対象となる EA は、FX をはじめたばかりでほとんど何の知識もない状態で作成したものです。
当時はプロフィットファクターと最大ドローダウンを重視していたような気がするんですが、今の基準で見るとどうなるんでしょうか?
自分でもちょっと楽しみです。
EA.1 トレンドフォローA
アルゴリズムの概要
基本はドンチャンチャネルを使用したブレイクアウトからの順張りアルゴリズムです。
また、ボラティリティやトレンドの強弱によるフィルターや、トレイリングストップ機能を実装しています。
通貨ペア: XAUUSD(GOLD)
AXIORY(スタンダード口座)
バックテスト*1 | フォワードテスト | |||
---|---|---|---|---|
スプレッド設定 | 3.0pips | 4.0pips | 5.0pips | ー |
損益グラフ*2 | ||||
テスト期間 | 01/1~16/12 (16年) | 17/1~24/7 (7.5年) | ||
プロフィットファクター | 1.65 | 1.59 | 1.53 | 1.48 |
リスクリターン率 (10年換算) | 9.58 | 6.95 | 5.15 | 6.72 |
期待利得(1Lot換算) | 24,323.89円 | 22,510.99円 | 20,503.66円 | 21,732.75円 |
期待利得(Pips)*3 | 19.5pips*4 | 18.25pips*4 | 16.89pips*4 | 18.10pips |
平均取引回数(月) | 5.54回 | 5.59回 | 5.65回 | 4.49回 |
平均ポジション保有時間 | 54時間5分 | 53時間4分 | 52時間6分 | 47時間1分 |
*2:画像を右クリックして「新しいタブで画像を開く」で拡大することができます。
*3:テスト結果の取引ごとの約定価格と手数料、スワップから計算した値です。
*4:テスト結果にスワップについての情報が含まれないためフォワードテストの平均(1.09pips)を使用しました。(手数料はゼロ)
AXIORY(スタンダード口座)の XAUUSD の平均スプレッドは「4.5pips」前後なので、おおむねバックテストの成績をフォワードテストでも再現できていると言っていいのではないでしょうか。
ただ、リスクリターン率はバックテストの時点で高くないですね。
開発当時、最大ドローダウンは気にしていたけど、損益との比率は見ていなかったと思います。
あとはスプレッドの設定でかなり変わってきますが、当時どういう値でテストしていたか記憶にないです。(なんとく「えいや!」で「3.0pips」ぐらいにしていたような…)
このあたりは反省点ですね…。
期待利得が高いのでスプレッド耐性は高いですが、リスクリターン率を考えると狭い業者のほうがよさそうです。(AXIORY というとスプレッド狭めの印象ですが、XAUUSD に関しては広いと思います)
まとめると、スプレッド狭めの業者で使えば結構優秀なんじゃないでしょうか?
なんの知識もない人間が作ったとは思えません。
XMTrading(KIWAMI極口座)
バックテスト | |||
---|---|---|---|
スプレッド設定 | 3.0pips | 4.0pips | 5.0pips |
損益グラフ*1 | |||
テスト期間 | 01/1~16/12 (16年) | ||
プロフィットファクター | 1.87 | 1.80 | 1.73 |
リスクリターン率 (10年換算) | 14.08 | 12.16 | 11.23 |
期待利得(1Lot換算) | 30,799.40円 | 28,933.94円 | 26,900.90円 |
期待利得(Pips)*2 | 20.59pips | 19.34pips | 17.98pips |
平均取引回数(月) | 5.54回 | 5.59回 | 5.65回 |
平均ポジション保有時間 | 54時間5分 | 53時間4分 | 52時間6分 |
*2:テスト結果の取引ごとの約定価格から計算した値です。(手数料とスワップはゼロ)
スワップフリー 口座との相性がよさそうなことが分かっているので、試しに XMTrading の KIWAMI極口座 でもバックテストしてみたんですが、予想以上に成績が良くなりました。
さらに、KIWAMI極口座の平均スプレッドは「2.0~2.5pips」とAXIORY(スタンダード口座)よりも約2pips狭いので、フォワードでもそれなりに期待できそうです。
EA.2 トレンドフォローB
アルゴリズムの概要
基本はボリンジャーバンドを使用したブレイクアウトからの順張りアルゴリズムです。
また、ボラティリティやトレンドの強弱によるフィルターや、トレイリングストップ機能を実装しています。
ブレイクアウトの判断に使う指標以外は「トレンドフォローA」と同じです。
通貨ペア:EURJPN
AXIORY(スタンダード口座)
バックテスト*1 | フォワードテスト | |||
---|---|---|---|---|
スプレッド設定 | 2.0pips | 3.0pips | 4.0pips | ー |
損益グラフ*2 | ||||
テスト期間 | 01/1~16/12 (16年) | 17/1~24/7 (7.5年) | ||
プロフィットファクター | 1.41 | 1.35 | 1.31 | 1.15 |
リスクリターン率 (10年換算) | 9.48 | 7.21 | 6.25 | 2.58 |
期待利得(1Lot換算) | 8,605.41円 | 7,503.00円 | 6,761.43円 | 2,680.81円 |
期待利得(Pips) | 8.61pips | 7.50pips | 6.76pips | 2.68pips |
平均取引回数(月) | 11.67回 | 11.83回 | 11.93回 | 13.24回 |
平均ポジション保有時間 | 28時間54分 | 28時間17分 | 27時間54分 | 27時間34分 |
*2:画像を右クリックして「新しいタブで画像を開く」で拡大することができます。
損益グラフの形状にはバックテストの面影がかすかに残っていますが、成績はダダ下がりです。
とても再現性があるとは言えません。
残念ですが、過剰最適化だったということでしょう…。
通貨ペア:GBPJPN
AXIORY(スタンダード口座)
バックテスト*1 | フォワードテスト | |||
---|---|---|---|---|
スプレッド設定 | 3.0pips | 4.0pips | 5.0pips | ー |
損益グラフ*2 | ||||
テスト期間 | 01/1~16/12 (16年) | 17/1~24/7 (7.5年) | ||
プロフィットファクター | 1.42 | 1.37 | 1.33 | 0.95 |
リスクリターン率 (10年換算) | 7.73 | 6.60 | 5.77 | -0.70 |
期待利得(1Lot換算) | 14990.96円 | 13513.95円 | 12014.67円 | -1,586.41円 |
期待利得(Pips) | 14.99pips | 13.51pips | 12.01pips | -1.59pips |
平均取引回数(月) | 8.45回 | 8.51回 | 8.59回 | 9.54回 |
平均ポジション保有時間 | 41時間1分 | 40時間35分 | 40時間2分 | 39時間10分 |
*2:画像を右クリックして「新しいタブで画像を開く」で拡大することができます。
もはや面影すらも残っていません。
一応、取引回数とポジション保有時間の再現性はあるけど…。
そもそもバックテストの時点でのリスクリターン率がちょっと低いです。
今だったらフォワードテストしないと思います。
EA.3 カウンタートレンド
アルゴリズムの概要
基本はボリンジャーバンドを使用したブレイクアウトからの逆張りアルゴリズムです。
また、ボラティリティやトレンドの強弱によるフィルターや、トレイリングストップ機能を実装しています。
「トレンドフォローB」の売りと買いを逆にしたものです。
通貨ペア:EURUSD
AXIORY(スタンダード口座)
バックテスト*1 | フォワードテスト | |||
---|---|---|---|---|
スプレッド設定 | 2.0pips | 3.0pips | 4.0pips | ー |
損益グラフ*2 | ||||
テスト期間 | 01/1~16/12 (16年) | 17/1~24/7 (7.5年) | ||
プロフィットファクター | 1.27 | 1.21 | 1.17 | 0.91 |
リスクリターン率 (10年換算) | 6.37 | 4.70 | 3.42 | -0.98 |
期待利得(1Lot換算) | 9841.58円 | 7897.51円 | 6220.01円 | -1,959.53円 |
期待利得(Pips)*3 | 4.88pips*4 | 3.74pips*4 | 2.48pips*4 | -1.82pips |
平均取引回数(月) | 10.86回 | 10.88回 | 10.95回 | 13.18回 |
平均ポジション保有時間 | 48時間51分 | 48時15間分 | 47時間10分 | 48時間2分 |
*2:画像を右クリックして「新しいタブで画像を開く」で拡大することができます。
*3:テスト結果の取引ごとの約定価格と手数料、スワップから計算した値です。
*4:テスト結果にスワップについての情報が含まれないためフォワードテストの平均(0.49pips)を使用しました。(手数料はゼロ)
これも無残な結果ですね。
そもそもバックテストの時点で成績がパッとしません。
今だったら絶対フォワードテストまで行かないと思います。
まとめ
↓の記事でフォワードテスト結果を検証する中で「トレンドフォローA(XAUUSD)」以外は使えないという判断には至っていました。
ただ、今回の再評価によって、そもそも4個中2個はフォワードテストする価値すらなかったことが分かってしまいました。
知識のない状態ではじめて作ったものだったとはいえ、ちょっとショックです。
あとは、全体的にリスクリターン率が低かったことも分かりました。
最大ドローダウンは気にしていたんですが、金額の大小しか見ていなかった気がします。
まあ、いろいろ反省点が見つかったので、再評価した甲斐はあったと思います。
あとは、この反省点を活かすことができれば…。