【BOシグナル検証Take2】フォワードテストを実施します

前回は8月にBOシグナルの実運用を行いました。この時のBOシグナルの勝率はバックテストとフォワードテスト両方共に60%超の勝率を出すことができていたのですが実運用での1ヶ月の勝率が54%と想定より遥かに低いものとなってしまいました。損益分岐点も53%なのでギリギリ利益は出ていたのですがちょっと実運用しているなかで課題も見つかったこともあり見直す事にして9月から再度BOシグナルの検証とロジックの作り込みを行っていました。ただ順調と言うわけではなく3歩進んで2歩下がる状態だったので進捗率は悪かったですねー。

そして最近の話ですがmacOSを最新のCatalinaに変えたのですがこれが大きな間違いでした。Catalinaは32bitアプリを完全排除するということでmacOSをCatalinaにアップグレードしてしまうとそれまで使えていたアプリが使えなくなってしまったのです。その使えなくなったアプリの中にMac版MT4も含まれていてアプリを実行しても起動しなくなってしまいました。開発元のMT4かこのアプリを動かすためのWineというアプリが64bit対応していないらしく現在はこのアプリの64bit対応待ちです。というか対応してくれるのかどうかもわかりませんが。。。幸いにもバックテスト完了後の出来事だったので作業の大きな問題になることはなかったので不幸中の幸いといったところです。

BOシグナルの変更点

対応の通貨ペア

対応する通貨ペアはハイロー豪で取り扱える全17通貨ペアとなります。以前はたしかヒストリカルデータがなくバックテストが行えないNZDJPYを除外してそこから更に絞り込みを行って稼働させる予定でしたが今回は最初から全通貨ペアを稼働させることを想定した作り込みを行いました。

判定時間の追加

判定時間は1時間判定と15分判定の2種類に対応しています。前回は1時間判定のみだったのですが勝率を上げるための条件絞り込みを行っているとトレード回数が極端に少なくなってしまい運用の要件を満たせなかったので15分判定も扱えるようにしてトレード回数を補いました。もちろんしっかりと15分足でも勝率が出るようなロジックを考えての対応です。

ロジックの変更

シグナル判定ロジックも前回のロジックから大幅に変えています。ただロジックの内容に関しては企業秘密なので具体的な変更内容はここには書きません。

パラメータ調整

前回は全通貨ペア共通のパラメータしか調整できませんでしたが今回は通貨ペア毎に調整できるように作り変えました。ひとつの通貨ペアで何度もパラメータ調整とバックテストを行うといった作業を繰り返さないといけなくてこれを全17通貨ペアで行っていたので今回の改修作業の中で一番時間がかかってしまいました。

データの積み重ね

新たにシグナル判定に必要な情報を都度更新しながら運用できる仕組みを取り入れました。これは運用を継続していくと段々と古くなっていくロジック判定に使われているデータを都度更新できるようにする仕組みです。EAの再コンパイルやロジックの微調整をする事なく常に新しい情報を取り込みながら最適なシグナル判定をしてくれるので運用がとても楽になります。

バックテストの結果

テスト期間

バックテストに使用した期間は全通貨ペア共通で2012年1月3日から2019年9月30日までです。実は今回からのヒストリカルデータをこれまでのFXDDからFXTFに変更しています。なぜかというとFXDDにはなぜかNDZJPYのデータがなかったのですがFXTFには対象の通貨ペアのヒストリカルデータが全て揃っているので今回からこちらを使うことにしてみました。

テスト結果

テスト結果の内容については細かくは表記しませんが大体通貨ペア単体の勝率は65%前後と前回のロジックの勝率と大体同じですね。ただ全体的に65%以上の通貨ペアが多く総合的には若干勝率は上がっているものと思います。

今後の予定

フォワードテストの実施

フォワードテストは10月21日から末日まで実施予定です。この間は実際のトレードはせずに想定の勝率がでるかどうかの検証とバグが発生した場合の改修期間としています。

運用の開始条件

開始条件は全通貨ペア合わせて勝率60%以上、5回/日以上のシグナルかなと思っています。これを下回るようなら運用は厳しいと思いますね。

運用の開始時期

できれば11月から始めたいと思います。ただしフォワードテストの結果次第ではありますが、まあなんとか運用の開始条件をクリアしてくれるのではないかなと予想しています。

現在は自動売買もお休みしているのでBOトレードを早く再開したいなーと思っています。

この記事をシェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です