Rhinoの足跡。
どうもー、miccoです^^
ご無沙汰の更新となってしまいましたね。
更新しようしようとは思いながらも育児に追われ後回しになっていました。
おかげさまで息子は4歳に、娘は1歳と10カ月になりました。息子は自転車に乗れるようになり、娘は既に小悪魔的な甘え方を習得してしまいました。笑
子供たちの成長を見るのはとても嬉しいのですが、ほんのちょっとどこかで寂しさの様なものを感じています。
さて今回は、公開してしばらく経った自作EAの経過を振り返っていきます。
ちょっとその前にご報告。
今年の6月から4カ月間、総勢 94名が EAを使って収支を競うEAトレード大会「おたまじゃくしカップ」に、自作EAの Rhino、Cradle、未発表のbadassを引っ提げて参戦していました。
[blogcard url=”https://huroufx.com/2020/11/01/%e7%ac%ac2%e5%9b%9e%e3%81%8a%e3%81%9f%e3%81%be%e3%81%98%e3%82%83%e3%81%8f%e3%81%97%e3%82%ab%e3%83%83%e3%83%97%e7%b5%90%e6%9e%9c%e7%99%ba%e8%a1%a8/”]
結果は、
3位 でゴールできましたーーー!!!
報告が遅くなり今更感がありますが、とりあえずブログに残しておきます。笑
それでは、そのおたまじゃくしカップで活躍した自作EAのフォワード計測を振り返っていきます。
Check
振り返る。
483日
Rhino のフォワード計測を開始してから先週の2020/12/20で1年4カ月が経過しました。日数で言うと483日です。
フォワード計測開始当初は OANDAをフォワード計測のメインブローカーとしていましたが、5/9にサーバー変更のお知らせと共に強制移動させられトレード履歴が途切れてしまいました。
そのため、今回はトレード履歴が途切れず一続きになっている ForexExchangeでのフォワード成績を参考にしました。
他のブローカーでのフォワード状況は「フォワード置き場」でご確認いただけます。
プロフィットモード
まずは、プロフィットモードから見てみましょう。
0.1 Lot固定で、手動での稼働ON/OFFは一切行っていません。パラメータ設定についてもデフォルト設定のままの稼働です。フォワード開始時の初期証拠金は1,000,000円ですが、0.1 Lotでの運用あれば 100,000円でも運用できるローリスク設計です。今回は参考までに初期証拠金を100,000円で稼働開始した場合の損益曲線を掲載しました。
損益曲線で見る
初期証拠金 100,000円で稼働開始した場合を想定した損益曲線を表示しています。
Rhino は2019/08/25 からフォワード計測を開始しました。
フォワード開始から今年の3月まではコンスタントに利益を積んでおり、Rhinoの当初のコンセプトどおり推移しているといった感じでしょうか。
この辺りから“コロナ相場”と思われる値動きが目立ち始め、3月中旬まではその勢いに乗って大きく利を伸ばせた様に見えます。
しかし、その後の 4/14をピークに、約2カ月の間ことごとく振り回され、それまでに積んだ利益の約半分を吐き出してしまいました。
損益曲線のちょうど真ん中あたりですね。
そこからは 6/4を底に、勝ち負けを繰り返しながらジワジワと増えています。そして、約5カ月が経過した 11/6にドローダウンから回復し、最高益を更新しました。
現在は年末の閑散相場ということもあり、その 11/6の最高点から少しずつ利益を削っているような状況です。
数字で見る
では、成績を数字で見るとどうでしょうか。
それが次の画像です。
フォワード開始から現在までの1年4カ月を数字で見るとこの様な成績です。
ところで、数字を細かく見る前にここで気になった事があります。
バックテストではどうだったのか?
Rhinoは Dukascopyのティックデータを基にロジックの開発をしています。
ブローカーによって値動きが違うので、同じEAを使ってもバックテストとフォワードの成績に乖離が発生している可能性も十分に考えられます。
バックテストで見る
というわけで、さっそくTick Data Suiteを使って、スプレッド等の詳細設定はTDSのデフォルトのままで、フォワード計測の期間と同期間を変動スプレッドでバックテストしてみました。
ティックデータはDukascopyです。
その結果が次の画像です。
フォワードと同期間のバックテストの損益曲線とフォワード計測の曲線がとても似ていますね。
良い感じです。
それでは、フォワードの成績と比較してみましょう。
…と進みたいところですが、その前に、「過去10年間のバックテストの成績と比較してみるとどうなのか?」という好奇心が湧いてきました。
ということで、フォワード計測を開始した 2019/08/25の前日までの過去10年間を、期間以外は先ほどと同条件でバックテストしてみました。
その結果が次の画像です。
過去10年間のバックテストの結果はこんな感じでした。
フォワードとバックテストを比較してみる
・1年4カ月のフォワード結果
・フォワード期間と同期間のバックテスト
・EAのスペックの参考にする過去10年間バックテスト
これらの主だった項目を表にして比較してみます。
項目 | 10年間BT | 同期間BT | フォワード |
取引回数 | (Ave.) 199 回 | 204 回 | 198 回 |
勝率 | 50.90 % | 40.20 % | 42.42 % |
MAXDD | 306.5 pips | 200.2 pips | 201.8 pips |
PF | 1.36 | 1.42 | 1.35 |
RF | 13.47 | 2.63 | 2.56 |
RR | 1.33 | 2.10 | 1.87 |
過去10年間のバックテストの取引回数については、月平均の取引回数を出して、フォワード期間と同期間の 1年4カ月(16カ月)を掛けて算出しました。
計算式で表すと 1495回÷120カ月×16カ月≒199回 ですね。
取引回数については同等の結果となっている事がわかります。
勝率については、過去10年間と比較してフォワード期間の方が同期間 BTもフォワードも落ちてはいます。しかし、その分 RR(リスクリワード)の成績が上がっているので結果としては概ね同等という判断です。
MAXDD(最大ドローダウン)については pipsで比較しました。この1年4カ月のフォワード期間のドローダウンは過去10年間に起こった最大ドローダウンの範囲内の様です。また、フォワードの成績と同期間BTの最大ドローダウンの数値もほぼ同等でしたので、ここに乖離は無かったと言えます。
PF(プロフィットファクター)については同等ですね。
RF(リカバリーファクター)については、経過年数が長いとどうしても数値が上がってしまうので10年間と1年4カ月の数値を単純に比較はできないのですが、フォワードと同期間のバックテストの結果とフォワードの成績の RFの数値が同等なところを見ると、バックテストとフォワードの乖離は無いと判断してもいいと考えます。
勝率モード
次に、勝率モードもプロフィットモード同じように見てみましょう。
損益曲線で見る
勝率モードもプロフィットモード同時期にフォワード計測を開始しました。
勝率モードの損益曲線は以下のとおりです。
プロフィットモードと似た形状ですね。大まかな流れはプロフィットモードの項をご覧ください。
差があると言えば、プロフィットモードより勝率モードの方が利益率が低いですね。
Rhino はプロフィットモード(トレイリングストップ機能OFF)の状態を想定してロジックの開発をしました。勝率が低いので頻繁に負けますが、勝つとき大きく勝つトレードで最終的に利益を残すのがコンセプトです。ですが、こういったトレードスタイルはメンタル的にややしんどさがあるのも事実です。
そこで、ロジックを変えずに勝率を上げるためにトレイリングストップ機能を付けることにしました。それが勝率モードです。
勝率モードはトレイリングストップ機能を使い、ポジションの含み益が設定値以上になると数pips の逆行で利確し、それによって勝率が上がっています。
しかし、勝率が上がる代償として、大きく稼げるチャンスを放棄することになるので、この様なプロフィットモードと勝率モードの利益率の差は当然の結果と言えます。
両モードを並べて比較するとよくわかります。
損益曲線の形状は似ていますが、少しずつ利益率の差が広がり、最終的には 2倍近くの差が生まれています。
よく見ていただくとおわかりいただけると思いますが、プロフィットモードが大きく利益を得ている場面で勝率モードは小さく利確しています。その積み重ねでこれだけの差になっているという事です。
同ロジックで、勝率の高い方よりも勝率の低い方が最終的に利益を多く残しています。メンタル的な安心感を採るか、不安ながらも利益を獲るか。おもしろいですね。
今後もこの差は広がり続けるでしょう。
数字で見る
勝率モードのフォワード成績をみてみます。
こんな感じです。
プロフィットモードと同様に後で表で比較します。
バックテストで見る
フォワード計測期間と同期間のバックテストと、フォワード開始前日までの過去10年間のバックテストをしてみました。
条件はプロフィットモードと同様です。
まずは、フォワード計測期間と同期間のバックテストです。
こちらもフォワードの損益曲線に近い形状ではないでしょうか。
次に、フォワード開始前日までの過去10年間のバックテストです。
こんな感じです。
利益率は低いながらも安定はしている損益曲線ですね。
フォワードとバックテストを比較してみる
それでは、これらを表で比較してみます。
項目 | 10年間BT | 同期間BT | フォワード |
取引回数 | (Ave.) 211 回 | 223 回 | 209 回 |
勝率 | 62.26 % | 51.12 % | 47.36 % |
MAXDD | 251.8 pips | 194.4 pips | 197.8 pips |
PF | 1.40 | 1.20 | 1.19 |
RF | 14.66 | 1.28 | 1.32 |
RR | 0.84 | 1.15 | 1.35 |
取引回数はほぼ同等ですね。
勝率についてはプロフィットモードと同じく、過去10年間のバックテストよりもフォワード成績およびそれと同期間のバックテストの方が勝率は低くなっています。しかし、RRが上がってる分同等と考えます。
最大ドローダウンに関しても、フォワード成績と同期間のバックテストは過去10年間の最大ドローダウンの範囲内です。また、フォワード成績と同期間のバックテストの最大ドローダウンも同等なのでこちらも乖離は無かったと判断できます。
PFについては、フォワード期間の方が過去10年間よりも下がっており、直近が伸び悩んでいる様子がうかがえます。
RFについては、PFも同様ですが、フォワードの成績と同期間バックテストの数値が同等なことからフォワードとバックテストとの乖離は無いことがわかります。
ついでに。
Rhinoの過去10年間のバックテスト結果とフォワード計測結果を、ひとつの損益曲線に乗せて視覚的に見てみます。
まずは、プロフィットモードを見てみましょう。
次に、勝率モードです。
このグラフはpips単位での過去10年間とフォワード計測の損益曲線です。
青色の曲線が過去10年間( 2009/09/01~2019/08/24)のバックテストの結果で、オレンジ色の曲線がフォワード開始前日から直近(2019/08/25~2020/12/20)までのフォワード結果です。
赤色の破線は、過去10年間のトレード結果の近似曲線です。
損益曲線の右下に「y=〇〇〇x」という文字がありますが、これは期待値(pips)です。プロフィットモードが 3.1pipsで、勝率モードが 2.2pipsです。MT4のバックテストで得られる期待利得とはまた違ったもので、このロジックを長期的に稼働した際に1トレードから得られる期待pipsになります。
Rhino は今年の4月中旬から約2カ月間のドローダウンを喰らい、その後低迷している様にも見えましたが、プロフィットモードも勝率モードも、過去10年間のトレード結果の近似曲線から大きく外れることなく、ある程度沿った結果になっている事がわかります。
損益曲線全体を視覚的に見ても、オレンジ色の部分が概ね過去からの流れに沿っていますね。
このことから、今年の3月中旬までの好成績が、Rhinoが本来持つスペックよりオーバーワークしていたと考えられ、その後既定路線に戻ってきた様に見えます。1トレード1トレードで一喜一憂しているとどうしても負けが込んでいる様に感じてしまいますが、現状としては問題なくワークしていると判断できます。
Rhinoの今後を考えてみる
ここまで Rhinoのプロフィットモードおよび勝率モードのフォワード成績と、フォワード期間と同期間のバックテスト、それとフォワード開始前日までの過去10年間のバックテストを比較してきました。
なぜこれらを比較してきたかと言うと、
「今後も Rhinoを継続して稼働してもいいのかどうか?」
という事を探りたかったからです。
いくら長期間のバックテストの結果が良いからといって、また、カーブフィッティングにならない様に配慮してロジックを開発したとしても、一定期間のフォワードの成績を見ない事には、バックテストに再現性があるかどうかは判断できないですよね。
今回その点について検証してきた結果、Rhinoは1年4カ月間の長期フォワードを参考に見ても、バックテストとフォワードとの乖離はほとんど無いという事がわかりました。
このことから、
「現段階でRhinoは過去10年間のバックテストの結果について、再現性にある程度の信憑性を持ってもいい」
と考えます。
よって、今後も自信を持って稼働していきます。
では^^