利益を生む戦略をランダム探索で見つける 【USDJPY 15分足 売り 1on1】

2021/06/20

先行研究
バックテスト検証 ランダムインディケータ

ランダム探索とは

インディケータの遺伝子表現により完全にランダムな組み合わせのシステムトレード戦略を大量に生成し、バックテストを実行して利益の出る戦略を探索します。

前回は買いエントリー(Long)の場合でランダム探索を行いましたので、今回は売りエントリー(Short)で行ってみます。

探索条件

探索条件は下記とします。

  • 通貨 USDJPY 15分足
  • 期間 2020/01~2021/03の15ヶ月間
  • 手法 売りエントリー
  • レバレッジ 5倍

対象期間のUSDJPY相場は下記の通りです。

usdjpy相場

用いるインディケータは下記の通りです。

  1. ゴールデンクロス(goldenCross)
  2. デッドクロス(dedCross)
  3. MACD(macd)
  4. ボリンジャーバンド(bolingerBand)
  5. エンベロープ(envelop)
  6. 期間最高値(highest)
  7. 期間最安値(lowest)
  8. RSI(rsi)
  9. 時間STOP(simpleTimeStop)※イグジットのみ

エントリー/イグジット共に1つのインディケータによるシグナルとします。

つまり下記のような構造です。

インディケーターのランダム決定

全体の傾向

10000通りの組み合わせでバックテストを実行しました。

そのうち月間平均利益がプラスとなったものは2768組(27.6%)で、同条件のLongの場合(32.6%)より減少しました。

ではこの平均利益がプラスとなった2768組を深掘りしていきます。

エントリーインディケータの傾向

それぞれのインディケータごとの利益の分布です。上にいくほど利益の出た戦略となります。

エントリーインディケーターの利益分布

エントリーでは売りエントリーということもあり、期間最高値更新によるエントリーはあまり良い手法ではないようでした。逆に期間最安値の更新やデッドクロスの発生という下降トレンドシグナルと言われる2つのインディケータの組み合わせが多く登場している印象です。

ただその一方、ゴールデンクロスでも良い手法がありました。これは逆張りとしてシグナルを使用していると考えられます。

RSIは利益がプラスとなった組み合わせ数が少ないものの突出した戦略があり、これが全体の1位でした。

では、上位300位までの戦略で各インディケータが何回登場したか確認してみます。

エントリーインディケーターのトップ300

やはり期間最安値とデッドクロスがTop300には多いです。

ただ、ゴールデンクロスを逆張りとして用いる戦略も多かったようです。この辺りも後ほど確認していきます。

イグジットインディケータの傾向

イグジットのインディケータごとの利益の分布です。

期間最高値が伸び、期間最安値が減っているなど、エントリーとは逆の結果となっている傾向があります。

イグジットインディケーターの利益分布

こちらでもTop300の結果を確認しましょう。

イグジットインディケーターのトップ300

やはり期間最高値とゴールデンクロスが多い結果となりました。ただ、比較的(期間最安値以外の)どの手法でも一定の組み合わせがランクインしていました。

期間最高値は最高値を更新しない限り発生しないシグナルですので、価格が下がり続ける時はそのまま持ち続け、価格が上がった時は損切りを行います。いわばトレイリングストップです。

1ヶ月ごとの平均利益で評価していましたが、対象の15ヶ月間運用した場合の資産変動でTop300の手法を評価していきます。

15ヶ月運用利益

月間利益が高い手法は連続運用した場合でも利益が高いのか確認します。

右に行くほど15ヶ月運用した際の利益が大きいことを
上に行くほど月間平均利益が大きいことを示しています。

平均利益と最終資産の分布図

右肩上がりの分布となっていることから月間平均利益が高ければ運用利益も高い、つまり

月間平均利益と運用最終利益が比例していることが分かります。そのため月間平均利益を使用した評価は間違っていないことが確認できました。

次に運用最終利益と最大ドローダウンの関係も確認してみましょう。

右に行くほど15ヶ月運用した際の利益が大きいことを
上に行くほど最大ドローダウン%が大きいことを示しています。

最大ドローダウンと最終資産の分布図

先ほどよりはあまり強い相関はありませんが、左肩下がりの傾向は見られます。

さらに最大ドローダウンが16%を超えてくると最終利益が伸び悩んでいます。16%以上では+60,000円を超えてくる戦略はありませんでした。

システムトレードではドローダウンが少ない安定した手法を運用することが重要です。

では最後に最終運用利益のTop3の戦略を確認します。

Top3を確認

1位 RSI → RSI

エントリー 6期間RSIで3%以下になった時
イグジット 28期間RSIで60%を下回った瞬間

平均月間利益:4,215円
最大月間損失:-4.080円

これを15ヶ月運用していた場合、下記のようになります。
オレンジの線が資産変動、青い線がその時の相場です。

1位の資産変動図

最終資産:100,000円→178,439円
最大ドローダウン%:13.2%
総取引回数:185回

確かに一年強で+80,000円ほど資産が増えていますが、この資産変動グラフを見ると2020/11からドローダウンに見舞われています。

2位 ゴールデンクロス → ゴールデンクロス

エントリー 34期間単純移動平均と75期間単純移動平均のゴールデンクロス
イグジット 46期間加重移動平均と96期間単純移動平均のゴールデンクロス

平均月間利益:3,968円
最大月間損失:-4,571円

2位の資産変動図

最終資産:100,000円→176,776円
最大ドローダウン%:12.0%
総取引回数:128回

ゴールデンクロス同士のシグナルによる手法です。エントリーのゴールデンクロスは逆張り的な形で、イグジットのゴールデンクロスは価格が上がる兆候として捉え、その時にイグジットする形で用いているようです。

ただこの手法も2020/12からの円安によりドローダウンに見舞われていますし、2020/03あたりの大勝ちに依存しているようにも見受けられます。

3位 エンベロープ → デッドクロス

エントリー 50期間単純移動平均の値 – 0.11したエンベロープ線を上に抜いた時
イグジット 1期間加重移動平均の値と55期間指数平滑移動平均のデッドクロス

平均月間利益:4,042円
最大月間損失:-5,191円

3位の資産変動図

最終資産:100,000円→176,653円
最大ドローダウン%:9.3%
全取引回数:267回

コロナショックの際に大勝ちしたことが大きな要因ですが、それ以降も着実に資産を伸ばした戦略でした。

エントリーではエンベロープ線を上に抜いた時ですのでこれは逆張りとして使っています。

イグジットでのデッドクロスで用いた1期間の移動平均はその時の終値そのものですので、終値の値が55期間の移動平均線を下に抜いた時デッドクロス発生としています。そのタイミングでイグジット(=買いイグジット)しているので、これは逆張り的なイグジットです。

良い戦略

上位3つの手法以外に良いと思われる戦略がありましたので紹介します。

MACD → 期間最高値

エントリー 36期間加重移動平均と61期間指数平滑移動平均の差が -0.01を下に抜いた時
イグジット 45期間最高値を更新した時

この手法は6位でしたが資産変動が安定して右上がりで綺麗な伸びを見せていました。

ドローダウンの少ない資産変動

最終資産:100,000円→163,863円
最大ドローダウン%:6.1%
全取引回数:120回

最大ドローダウンが6%と低く、着実な右肩上がりを見せています。2020/03のようなショック相場でも勝つときは大きく勝ち、負ける時は小さく負けています。

イグジットが期間最高値を使用していますのでトレイリングストップのおかげで損切りと利確がうまく機能していることも要因と考えられます。

上位3位のものはコロナショックでの大勝ちやドローダウンが目立つものがありました。バックテストを回す際は一回の大勝ちに依存している手法ではないかチェックすることが大事です。

なだらかで安定した伸びを見せている手法の方が今後も利益を伸ばす可能性が高いためです。逆に大きな勝ちが発生しないような相場が続くと、うまくいかない可能性もあります。

資産変動のグラフは必ず確認しましょう。

まとめ

完全にランダムなインディケータを組み合わせて利益の出る手法の探索を行ったところ、いくつかの良い手法が発見できました。

15ヶ月間の連続運用の場合の結果も合わせて確認することで、ドローダウンの有無や資産変動グラフの形状などの情報の確認も有益です。

また前回と同じように買いイグジットには期間最高値が有効であるということが確認できました。

strのプロフィール画像

str