今回はHLバンド戦略のトレード内容を仕分けていきたいと思います。
HLバンド戦略は、トレンドが発生すると、長期バンド(480)のハイバンドと中期バンド(120)の
ハイバンドが重なるという仮説から、短期バンド(24)をレートがブレイクした時、上昇しやすいと
予想しています。
その際、
①長期バンド、中期バンド、短期バンドが重なった状態でブレイク
②長期バンド、中期バンドが重なっており、短期バンドは中期バンドと重ならずブレイク
※長期バンド(緑)、中期バンド(青)、短期バンド(赤)
というパターンが考えられます。
①は全ての期間でブレイクしていることを意味するため、強いトレンドが発生している反面、
初動が遅れると予想できます。また、トレンドの終焉間近で高値、安値を掴まされる可能性が
あります。
②はトレンドの発生を発見しやすい反面、ダマシが多くなりそうです。
①のほうが安定しやすいと予想しますが、結果はどうでしょうか。
今回からはトレンドフォロー系のストラテジーの開発をしてみます。
私が運用しているストラテジーは逆張り系が多いため、ストラテジーの相関性が高くなりがちです。
まずはストラテジーのコンセプトから
1、大きなトレンドに乗って損小利大のシステムをつくりたい。
2、トレード回数は多めに(最低でも4エントリー/月)くらい。
3、ブレイクアウトを狙いたい。
4、シンプルに!
上記のコンセプトから、トレンドフォロー系というと、代表的なインディケータとしては
移動平均線があげられますが、今回はブレイクアウト、シンプルというキーワードから、
HLバンドのみを使用してストラテジーの開発にチャレンジしてみます。
ストラテジー開発の要件として
①エントリーシグナル
②エグジットシグナル
③ストップ(必要に応じてリミットも)
④ロット
⑤フィルタ
を最低限盛り込みます。
では具体的にルール化してみます。
①長期HLバンドのハイバンドと中期HLバンドのハイバンドが重なる。
②レートが短期HLバンドを上抜く。
③次の足でロングエントリー。
④HLバンドのローバンドの位置にストップ、ストップ幅の2倍の位置にリミットを置く。
⑤ロットは損失が10000円に収まるようストップ幅に応じて変化させる。
(ショートのルールは逆)
以上がルールで、説明を加えると、①のHLバンドが重なるということは、長期、中期共に
トレンドの方向が一致しているといえます。そこに短期のHLバンドをトレンド側にブレイク
することで、トレンドに乗ったブレイクアウトができるのでは?という考えです。
リミットをストップの2倍とすることで損小利大のシステムになっています。
トレード回数も多めがいいので、1時間足を使用してみます。
基本パラメータは
長期HLバンド 480(20日相当)
中期HLバンド 120(5日相当)
短期HLバンド 24(1日相当)
で検証してみます。
結果はまた後日。
私が運用しているストラテジーは逆張り系が多いため、ストラテジーの相関性が高くなりがちです。
まずはストラテジーのコンセプトから
1、大きなトレンドに乗って損小利大のシステムをつくりたい。
2、トレード回数は多めに(最低でも4エントリー/月)くらい。
3、ブレイクアウトを狙いたい。
4、シンプルに!
上記のコンセプトから、トレンドフォロー系というと、代表的なインディケータとしては
移動平均線があげられますが、今回はブレイクアウト、シンプルというキーワードから、
HLバンドのみを使用してストラテジーの開発にチャレンジしてみます。
ストラテジー開発の要件として
①エントリーシグナル
②エグジットシグナル
③ストップ(必要に応じてリミットも)
④ロット
⑤フィルタ
を最低限盛り込みます。
では具体的にルール化してみます。
①長期HLバンドのハイバンドと中期HLバンドのハイバンドが重なる。
②レートが短期HLバンドを上抜く。
③次の足でロングエントリー。
④HLバンドのローバンドの位置にストップ、ストップ幅の2倍の位置にリミットを置く。
⑤ロットは損失が10000円に収まるようストップ幅に応じて変化させる。
(ショートのルールは逆)
以上がルールで、説明を加えると、①のHLバンドが重なるということは、長期、中期共に
トレンドの方向が一致しているといえます。そこに短期のHLバンドをトレンド側にブレイク
することで、トレンドに乗ったブレイクアウトができるのでは?という考えです。
リミットをストップの2倍とすることで損小利大のシステムになっています。
トレード回数も多めがいいので、1時間足を使用してみます。
基本パラメータは
長期HLバンド 480(20日相当)
中期HLバンド 120(5日相当)
短期HLバンド 24(1日相当)
で検証してみます。
結果はまた後日。
さて、勝率によるトレード判定4回目は、判定基準に従い、トレードした際の収益曲線はどうなるか
確認してみたいと思います。
元データはこれです。
これの、緑部分のみでトレードすると、
こんな感じです。、、、、、思ってたのと違います。
もう少しなだらかな曲線をイメージしていたのですが、、、
直近では元データでは上下を繰り返しながらも、微増していますが、フィルタをかけると減少しています。
勝率が下がって調子が悪いかなと感じても、トレードをし続けるのが吉という結果になりました。
それでは、システムは停止しないまでも、直近の勝率に応じて、ロットを変化させたらどうなるか
これはいい感じです。赤丸部分のドローダウンも緩やかになっています。
<結論>
勝率の変化によるシステムの停止判断はせず、ロット調整をするべき。でした。
システムの変調を見極めて、停止判断の材料を探すのが目的でしたが、脇道に反れてしまいました。
確認してみたいと思います。
元データはこれです。
これの、緑部分のみでトレードすると、
こんな感じです。、、、、、思ってたのと違います。
もう少しなだらかな曲線をイメージしていたのですが、、、
直近では元データでは上下を繰り返しながらも、微増していますが、フィルタをかけると減少しています。
勝率が下がって調子が悪いかなと感じても、トレードをし続けるのが吉という結果になりました。
それでは、システムは停止しないまでも、直近の勝率に応じて、ロットを変化させたらどうなるか
これはいい感じです。赤丸部分のドローダウンも緩やかになっています。
<結論>
勝率の変化によるシステムの停止判断はせず、ロット調整をするべき。でした。
システムの変調を見極めて、停止判断の材料を探すのが目的でしたが、脇道に反れてしまいました。
前回、前々回と現在稼働させているストラテジーの勝率によるトレード判定を行いましたが、
今回は成績の悪いストラテジーを判定してみたらどうなるか確認してみます。
このストラテジーは前半長期間大きな損失を出していることと、波が大きいかなと考え
ポートフォリオに組み込んでいません。
しかし、勝率によるシステムの稼働、停止を盛り込むと前半の損失を出している期間がほとんど停止されているため、大きく利益を伸ばしている期間からスタートしています。
途中、大きなドローダウン中もシステムを停止させています。
しかし、その後の戻りもやはり取りこぼしています。
が、基本的には安定的に利益をあげられそうかなと思います。
次に、さらに悪い成績のストラテジー(というか上と同じストラテジーで通貨ペアを変えただけ
ですが)で確認してみます。
これはダメです。
ダメなストラテジーは全勝率の値が低いため、直近の勝率が少しよくなった程度で反応して
しまうようです。勝率によるトレード判定では、元々実力がある前提のストラテジーで
行わなければ効果は得られないようです。
実際、このフィルタをかけた際に、どのような成績になるのか、次回は検証してみたいと思います。
おそらく、利益↓、PF↑、になるのかなーなんて思っています。
今回は成績の悪いストラテジーを判定してみたらどうなるか確認してみます。
このストラテジーは前半長期間大きな損失を出していることと、波が大きいかなと考え
ポートフォリオに組み込んでいません。
しかし、勝率によるシステムの稼働、停止を盛り込むと前半の損失を出している期間がほとんど停止されているため、大きく利益を伸ばしている期間からスタートしています。
途中、大きなドローダウン中もシステムを停止させています。
しかし、その後の戻りもやはり取りこぼしています。
が、基本的には安定的に利益をあげられそうかなと思います。
次に、さらに悪い成績のストラテジー(というか上と同じストラテジーで通貨ペアを変えただけ
ですが)で確認してみます。
これはダメです。
ダメなストラテジーは全勝率の値が低いため、直近の勝率が少しよくなった程度で反応して
しまうようです。勝率によるトレード判定では、元々実力がある前提のストラテジーで
行わなければ効果は得られないようです。
実際、このフィルタをかけた際に、どのような成績になるのか、次回は検証してみたいと思います。
おそらく、利益↓、PF↑、になるのかなーなんて思っています。
前回、勝率によるトレード判定の続きです。
前回使用していたストラテジーは毎日エントリーするシステムで私が作るストラテジーの中では
トレード頻度が多いものです。
今回は、週に1回エントリーするストラテジーで、同様に良い結果が得られるか確認してみます。
青:累積損益
紫:過去の全勝率
赤:直近20トレードの勝率
緑帯:直近20トレードの勝率が過去の全勝率を上回っている期間
トレード回数が少ないため、直近の勝率パラメータは短くしました。
こちらも概ね良いのではないでしょうか。
気になるのは、後半の利益が取れている期間に長期的にシステム停止されているところです。
「確かに利益が出そうな期間」のみに反応しているように見えますね。
一つのシステムのみに使える指標ではなさそうであることが分かりました。
前回使用していたストラテジーは毎日エントリーするシステムで私が作るストラテジーの中では
トレード頻度が多いものです。
今回は、週に1回エントリーするストラテジーで、同様に良い結果が得られるか確認してみます。
青:累積損益
紫:過去の全勝率
赤:直近20トレードの勝率
緑帯:直近20トレードの勝率が過去の全勝率を上回っている期間
トレード回数が少ないため、直近の勝率パラメータは短くしました。
こちらも概ね良いのではないでしょうか。
気になるのは、後半の利益が取れている期間に長期的にシステム停止されているところです。
「確かに利益が出そうな期間」のみに反応しているように見えますね。
一つのシステムのみに使える指標ではなさそうであることが分かりました。
今回はシステムの変調を見極め、ストラテジーのポートフォリオへの投入判断をしてみたいと思います。
参考にした書籍は「使える売買システム判別法」です。
この本には変調の見極めには「T検定」を用いると書いています。詳しい内容は割愛させて
いただきますが、システムの稼働と停止を客観的数値で求められており、曖昧さが排除
されているところが、非常にいいなとおもいます。
T検定の数値が一定の数値を下回ったらシステムは過去のシステムとは別物になったと判断し、
システムを停止するという考えです。
判断基準もシンプルでいいのですが、では一度変調をきたしたと判断されたシステムの再投入は
どのように判断すればいいのでしょうか?
異常値から平常値に戻ったら再投入?検証されたことある方であれば分かると思いますが、
T検定が一定の数値を下回る期間は非常に短いです。ここからは異常値ですよ、と教えて
くれるシグナルのようなもので、異常期間を教えてくれるものではないようです。
ではどうしたらいいのか?
いろいろ検討している中、シンプル且つ有効そうな判断基準を1つ見つけました。
全トレードの勝率と、直近の勝率を確認して判断する方法です。
具体的には、直近30トレードの勝率が、全トレードの勝率を上回ったらポートフォリオに入れ、
下回ったら停止するという方法です。
グラフで表現するとこんな感じです。
青:累積損益
紫:過去の全勝率
赤:直近30トレードの勝率
緑帯:直近30トレードの勝率が過去の全勝率を上回っている期間
赤(下):最大ドローダウン
なかなか美味しいとこどりできている感じがします。
1,2の大きく利益がでているところは、しっかりポートフォリオに組み込まれていますし、
最もドローダウンの期間が激しかった3ではシステム停止されています。
おしいのは、3のドローダウン直後の戻り4も逃しているところと、直近の停止期間の多さです。
直近の勝率が大きく下回った直後に大きな利益を上げる傾向にあるため、
全勝率と直近の勝率の乖離率が一定値を越えたらポートフォリオに組み込む、
というルールにしても面白いかもしれません。
又は、システムを停止するのではなく、勝率の乖離率に応じてロットを変化させてもいいかもしれません。
今までインディケータを使用してフィルタをかけることしかしていなかったのですが、
勝率が市場とシステムの適合具合の指標となると気づけた点が今回の収穫です。
ただし、今の段階ではまだまだ生のアイデアでしかありません。
他にアイデアをお持ちの方いらっしゃいましたらご教示お願いします。
参考にした書籍は「使える売買システム判別法」です。
この本には変調の見極めには「T検定」を用いると書いています。詳しい内容は割愛させて
いただきますが、システムの稼働と停止を客観的数値で求められており、曖昧さが排除
されているところが、非常にいいなとおもいます。
T検定の数値が一定の数値を下回ったらシステムは過去のシステムとは別物になったと判断し、
システムを停止するという考えです。
判断基準もシンプルでいいのですが、では一度変調をきたしたと判断されたシステムの再投入は
どのように判断すればいいのでしょうか?
異常値から平常値に戻ったら再投入?検証されたことある方であれば分かると思いますが、
T検定が一定の数値を下回る期間は非常に短いです。ここからは異常値ですよ、と教えて
くれるシグナルのようなもので、異常期間を教えてくれるものではないようです。
ではどうしたらいいのか?
いろいろ検討している中、シンプル且つ有効そうな判断基準を1つ見つけました。
全トレードの勝率と、直近の勝率を確認して判断する方法です。
具体的には、直近30トレードの勝率が、全トレードの勝率を上回ったらポートフォリオに入れ、
下回ったら停止するという方法です。
グラフで表現するとこんな感じです。
青:累積損益
紫:過去の全勝率
赤:直近30トレードの勝率
緑帯:直近30トレードの勝率が過去の全勝率を上回っている期間
赤(下):最大ドローダウン
なかなか美味しいとこどりできている感じがします。
1,2の大きく利益がでているところは、しっかりポートフォリオに組み込まれていますし、
最もドローダウンの期間が激しかった3ではシステム停止されています。
おしいのは、3のドローダウン直後の戻り4も逃しているところと、直近の停止期間の多さです。
直近の勝率が大きく下回った直後に大きな利益を上げる傾向にあるため、
全勝率と直近の勝率の乖離率が一定値を越えたらポートフォリオに組み込む、
というルールにしても面白いかもしれません。
又は、システムを停止するのではなく、勝率の乖離率に応じてロットを変化させてもいいかもしれません。
今までインディケータを使用してフィルタをかけることしかしていなかったのですが、
勝率が市場とシステムの適合具合の指標となると気づけた点が今回の収穫です。
ただし、今の段階ではまだまだ生のアイデアでしかありません。
他にアイデアをお持ちの方いらっしゃいましたらご教示お願いします。
前回書いた、カスタムしたトレイリングストップを試しにWF分析してみました。
条件
時間足:1時間足
期間:2006/01/01-2016/01/01
ルール:上から短期EMA、中期EMA、長期EMAの順に並んだらロング
下から短期EMA、中期EMA、長期EMAの順に並んだらショート
ストップをHLバンド20に設定する
最適化するパラメータ
中期EMA:start30 stop60 step3
短期EMA:start4 stop20 step2
HLバンドを使用したトレイリングストップ:start3 stop30 step3
最適化するパラメータが多いと成績の変化の要因が分かりづらくなるため、今回は長期EMAは100で固定しました。
パターンA(0024001)は、トレイリングストップ幅を固定
パターンB(0024005)は、トレイリングストップを高値更新の度に1減らす
の成績の違いで検証してみます。
※()内の数字の羅列は管理番号ですので気にしないでください。
前回、単純に2006/01/01-2016/01/01の最適化した成績の結果では、総損益、PF共にほとんど変化が
ないということになりましたが、WF分析ではどうでしょう?
パッと見て、トレイリングストップをいじったほうが成績が良いのが分かります。
最終残高は期間中固定ロットで取引した場合の損益率です。
100万円を資金とし、期間中に何%上昇したかを示します。
0024001は2通貨ペアマイナスになっています。
0024005は1通貨ペアマイナスになっています。
全体平均も20.7%から39.6%と大幅に改善されています。
最大年率、最小年率の幅も縮小されています。
これは成績がより安定していることを示しているため良い傾向です。
今回、移動平均を使用したトレードではエントリーもエグジットも遅れがちになるという問題を
解決するため、まずはエグジット側を検討しました。
検討する際、積極的にエグジットし利益を確保したいが、伸ばせるところでは伸ばしたい、
という要件に対して、HLバンドトレイリングストップの値を高値(安値)更新の度、
小さくしていくという解決策を用意しました。
トレンドに乗りつつ、ストップ幅を縮めることでトレンドが終了した際に早めにエグジットできるのでは?
という考えです。
<結果>
WF分析の結果、移動平均線を使用したHLバンドトレイリングストップは、高値(安値)更新の度
小さくしていくと年率の向上と収益が安定しやすいことが分かりました。
条件
時間足:1時間足
期間:2006/01/01-2016/01/01
ルール:上から短期EMA、中期EMA、長期EMAの順に並んだらロング
下から短期EMA、中期EMA、長期EMAの順に並んだらショート
ストップをHLバンド20に設定する
最適化するパラメータ
中期EMA:start30 stop60 step3
短期EMA:start4 stop20 step2
HLバンドを使用したトレイリングストップ:start3 stop30 step3
最適化するパラメータが多いと成績の変化の要因が分かりづらくなるため、今回は長期EMAは100で固定しました。
パターンA(0024001)は、トレイリングストップ幅を固定
パターンB(0024005)は、トレイリングストップを高値更新の度に1減らす
の成績の違いで検証してみます。
※()内の数字の羅列は管理番号ですので気にしないでください。
前回、単純に2006/01/01-2016/01/01の最適化した成績の結果では、総損益、PF共にほとんど変化が
ないということになりましたが、WF分析ではどうでしょう?
パッと見て、トレイリングストップをいじったほうが成績が良いのが分かります。
最終残高は期間中固定ロットで取引した場合の損益率です。
100万円を資金とし、期間中に何%上昇したかを示します。
0024001は2通貨ペアマイナスになっています。
0024005は1通貨ペアマイナスになっています。
全体平均も20.7%から39.6%と大幅に改善されています。
最大年率、最小年率の幅も縮小されています。
これは成績がより安定していることを示しているため良い傾向です。
今回、移動平均を使用したトレードではエントリーもエグジットも遅れがちになるという問題を
解決するため、まずはエグジット側を検討しました。
検討する際、積極的にエグジットし利益を確保したいが、伸ばせるところでは伸ばしたい、
という要件に対して、HLバンドトレイリングストップの値を高値(安値)更新の度、
小さくしていくという解決策を用意しました。
トレンドに乗りつつ、ストップ幅を縮めることでトレンドが終了した際に早めにエグジットできるのでは?
という考えです。
<結果>
WF分析の結果、移動平均線を使用したHLバンドトレイリングストップは、高値(安値)更新の度
小さくしていくと年率の向上と収益が安定しやすいことが分かりました。
前回、移動平均線を使用したシステムで、エグジットをHLバンドを使用したトレイリングストップに頼っていましたが、
どうも遅れがちだなと感じたため、少し工夫してみました。
エグジットのルール
HLバンド、パラメータ20を初期値とし、ロングの場合は高値、ショートの場合は安値を更新する度
パラメータを1づつ減らす。
この方法だと、高値を更新する度にHLバンドの期間が短くなるため、ストップ幅を小さくすることになり、
利益がでるほど、積極的にエグジットするはずで、利益の頂点付近でエグジットしやすくなります。
更に、ベースはトレイリングストップなので、トレンドに乗った時も大きく利益を伸ばしやすいのでは?
と考えています。
結果は、、、あまり効果的とはいえませんでした。
USDJPY、EURJPYで試してみましたが、総損益、PF共にほとんど変化がありません。
確かにエッジの効 いた相場では効果がありそうですが、エグジットが早すぎて機会損失も多く生まれてしまいました。
もう少し工夫すれば、効果的なルールになるかもしれませんので、あきらめずに挑戦してみます。
どうも遅れがちだなと感じたため、少し工夫してみました。
エグジットのルール
HLバンド、パラメータ20を初期値とし、ロングの場合は高値、ショートの場合は安値を更新する度
パラメータを1づつ減らす。
この方法だと、高値を更新する度にHLバンドの期間が短くなるため、ストップ幅を小さくすることになり、
利益がでるほど、積極的にエグジットするはずで、利益の頂点付近でエグジットしやすくなります。
更に、ベースはトレイリングストップなので、トレンドに乗った時も大きく利益を伸ばしやすいのでは?
と考えています。
結果は、、、あまり効果的とはいえませんでした。
USDJPY、EURJPYで試してみましたが、総損益、PF共にほとんど変化がありません。
確かにエッジの効 いた相場では効果がありそうですが、エグジットが早すぎて機会損失も多く生まれてしまいました。
もう少し工夫すれば、効果的なルールになるかもしれませんので、あきらめずに挑戦してみます。
以前の記事で以下のような条件のシステムを検証してみました。
条件
時間足:1時間足
期間:2006/01/01-2016/01/01
ルール:上から短期EMA、中期EMA、長期EMAの順に並んだらロング
下から短期EMA、中期EMA、長期EMAの順に並んだらショート
ストップをHLバンド20に設定する
トレイリングストップもHLバンド20に設定する
シンプルなルールなのですが、それなりに機能しそうで、改良次第では順張りの良いシステムができそうです。
ところで、このルールのエグジットですが、ストップ、又はトレイリングストップとなっています。
エグジットには、積極的に利益を確保する手段と、できるだけ利を伸ばそうとする手段があります。
前者を積極的エグジット、後者を消極的エグジットとしましょう。
どちらもメリット、デメリットがあります。
積極的エグジットは、利益の頂点で利確できる可能性があるのですが、
更にエントリー方向に進んだ場合、機会損失となります。
消極的エグジットは、トレンドに乗ると大きな利益を得られる可能性がある反面、
保合い相場では往復ビンタになりかねません。
上記ルールでは後者の消極的エグジットルールになっています。
結果を見ると、やはりエグジットが遅れたことで本来利益となるトレードが損失になっていたり、薄利になっていたりします。
この場合、今まではエントリーのルールにトレンドが出ていない時はエントリーしないフィルタをかけようと
いう発想になっていましたが、今回は、エグジットのルールを操作することで解決できないか考えてみたいと思います。
具体的には、基本ルールは消極的エグジットですが、エントリー後、保合いと判断された場合は積極的エグジットに切り替える、
高値を更新する度、HLバンドのパラメータを小さくする、などです。
ルールが複雑になるのは好きではありませんが、トレンドに乗るつもりでエントリーしたトレードが、
保合いに入ってしまったのであれば、早めに認めてしまうのも重要です。
さて、MT4にどんな指示を出していったらいいのやら。。。
条件
時間足:1時間足
期間:2006/01/01-2016/01/01
ルール:上から短期EMA、中期EMA、長期EMAの順に並んだらロング
下から短期EMA、中期EMA、長期EMAの順に並んだらショート
ストップをHLバンド20に設定する
トレイリングストップもHLバンド20に設定する
シンプルなルールなのですが、それなりに機能しそうで、改良次第では順張りの良いシステムができそうです。
ところで、このルールのエグジットですが、ストップ、又はトレイリングストップとなっています。
エグジットには、積極的に利益を確保する手段と、できるだけ利を伸ばそうとする手段があります。
前者を積極的エグジット、後者を消極的エグジットとしましょう。
どちらもメリット、デメリットがあります。
積極的エグジットは、利益の頂点で利確できる可能性があるのですが、
更にエントリー方向に進んだ場合、機会損失となります。
消極的エグジットは、トレンドに乗ると大きな利益を得られる可能性がある反面、
保合い相場では往復ビンタになりかねません。
上記ルールでは後者の消極的エグジットルールになっています。
結果を見ると、やはりエグジットが遅れたことで本来利益となるトレードが損失になっていたり、薄利になっていたりします。
この場合、今まではエントリーのルールにトレンドが出ていない時はエントリーしないフィルタをかけようと
いう発想になっていましたが、今回は、エグジットのルールを操作することで解決できないか考えてみたいと思います。
具体的には、基本ルールは消極的エグジットですが、エントリー後、保合いと判断された場合は積極的エグジットに切り替える、
高値を更新する度、HLバンドのパラメータを小さくする、などです。
ルールが複雑になるのは好きではありませんが、トレンドに乗るつもりでエントリーしたトレードが、
保合いに入ってしまったのであれば、早めに認めてしまうのも重要です。
さて、MT4にどんな指示を出していったらいいのやら。。。


















