システムトレード開発日記 -2ページ目

システムトレード開発日記

ブログの説明を入力します。

<日足>
今年に入ってからの下降トレンドから、7月に入って保合い、やや底を切り上げてきている。
直近では7/21につけた高値107.49に注目したい。
このラインを抜ければ、上昇トレンドとなる可能性がある。
ロングを意識してエントリーしたいが、107.49付近で反転する可能性もあり注意が必要

<4時間足>
アメリカ大統領選の影響で直近大荒れ。
99.5-107.5のレンジ内にあると判断。107.5で抑えられるようであればショート、超えればロング。



<1時間足>
106.95で何度か頭を抑えられている。
ここを抜けたら、107.5までは上昇する可能性あり。
下げてきた場合のショートのタイミングはつかみづらい。



<結果>
今週は106.95の壁は破れなかった。

HLBandPlusの改善も途中ですが、本日から裁量トレードも少し取り入れようと思います。
システムトレードでエントリー、エグジットを繰り返していると、「ここでロングするのかー(/_;)/~~」という
場面に多く出くわします。
ヘッジを効かせるという意味と、裁量から新たなシステムのアイデアが生まれないかという期待から
しばらく続けてみたいなと思っています。
しかし、今までずっとシステムトレード一本できていたため、どのようにエントリー、エグジットのポイントを
つかんでいいのか迷ってしまいます。
まずは、正しいトレンドラインをひけるよう勉強するとこからかな。
あと、他の方のブログを参考にさせてもらおう。

やること沢山です。。。
さて、今回はHLBandPlusの無駄なエントリーの多さに注目し、うまいことトレンドにのっている
時だけエントリーできないか、フィルタをかけて検証してみます。
とは言え、トレンド判定がうまくできればこんなに苦労しない訳ですから、今回はあまり気張らず
ゆる~い感じで検証してみます。

というわけで、まずはあまり深く考えずに、移動平均線より上でシグナルがでた場合と、下でシグナルが
でた場合の結果を見てみます。

①ロング:EMA120より上でシグナル(ショートは逆)
純益 151766.00
プロフィットファクタ 1.39
最大ドローダウン 34210.00 (0.03%)
総取引数 765
勝率(%) 285 (37.25%)
最大連敗(金額) 12 (-14630.00)


②ロング:EMA120より下でシグナル(ショートは逆)
純益 66951.00
プロフィットファクタ 1.40
最大ドローダウン 35551.00 (0.04%)
総取引数 284
勝率(%) 97 (34.15%)
最大連敗(金額) 15 (-13109.00)



やはり①のほうが安定感ありますね。PFはあまり差がありませんが、取引回数が大きく違います。
勝率は②のほうがやや悪いですね。
これは、保合いからのブレイクを狙うシステムになっているからだと推測します。

次にレートが過去N時間移動平均線に触れていないことを確認しエントリーした場合を観てみます。

まずはN=20
純益 103107.00
プロフィットファクタ 1.39
最大ドローダウン 29240.00 (0.03%)
総取引数 498
勝率(%) 187 (37.55%)
最大連敗(金額) 13 (-12157.00)



うーん、いまいちです。レンジではレートはEMAに触れやすいという前提で過去N時間触れていない
ことをフィルタにしたつもりだったのですが、、、

今日のところは、EMA120より上でシグナルがでたらロング、
下でシグナルがでたらショートにしたほうが、若干安定する。


という結果ですね。この結果ではまだまだですね。
トレンドとレンジの判定に使われるインディケータとしてADXがありますが、
できるだけ少ないインディケータで取引することも目標としているため、今のところ考えないようにします。

次に、
2、一時的な戻りでストップにひっかかる
3、保合い期間でもエントリーしてしまう
の問題ですが、その前にHLBandPlusの特性を確認してみます。

1、長期、中期移動平均線でトレンドを判定する。
2、トレンド方向に短期HLBandがブレイクしたらエントリーする。
3、HLBand24を下回ったら(ショートの場合は上回ったら)エグジット

注目したいのはHLBandをトレイリングストップの値にしてエグジットしているところです。
相場はトレンド方向にブレイクすると、そのまま一気に伸びるという前提でこのシステムを開発
しています。ということは、ブレイク後戻したら早い段階でダマシと判定し損切するのが吉ではないか?と推測します。
試しに、ストップをHLBand3の位置に置き、トレイリングストップはそのままHLBand24にしてみました。



上が前回の資産曲線、下が損切を早くした資産曲線
PF1.39→1.38に落ちましたが、損切を早めた結果、エントリー数が増え
利益は183217円→271157円
になっています。
システムトレーダーとしてはPFを重視したいところですが、
①システムの性能上(ストップを短くするのは)合理的
②ドローダウンも減っている
ということから、見逃せない改善ですね。
一つ問題なのが、勝率が28%、最大18連敗になってしまうこと。
これは精神的に辛い。
ということで、無駄なエントリーを減らすため、次回は
「3、保合い期間でもエントリーしてしまう」問題を解決していきましょう。
(「2、一時的な戻りでストップにひっかかる」問題は後回しです)

前回HLBandPlusの成績が思わしくない記事を書きました。
このシステムは極力シンプルに分かり易くするため、長期、中期、短期のHLBandのみを使用し
全ての期間でブレイクアウトが確認されたらエントリーするというシステムです。

このグラフはGBPJPY1hの2006-2016の成績で、全体的に上昇傾向にありますが、
半年から1年程度、横這い又は落ち込んでから上昇するという傾向にあります。
現在が落ち込んでいる最中と考えれば、想定内ということになります。が、実際運用してみると、
この落ち込み期間が精神的にきついことは確かです。
そこで、システム改善のため、悪影響となっている原因の追究と解決をしていきたいと思います。

その前に、このシステムの良いところは以下2点
1、シンプルな構成
2、設定できるパラメータが少ないため、カーブフィッティングしづらい
※HLBandは長期、中期、短期とあるが、パラメータは480(20日)、120(5日)、24(1日)で固定、
ストップも24で固定していて、設定できるパラメータはテイクプロフィットのみ。

良いところは残しつつ改善する必要があります。
改善点
1、エントリーが遅れる
2、一時的な戻りでストップにひっかかる
3、保合い期間でもエントリーしてしまう。

まず、1の問題から、エントリーを早めるため、長期、中期HLBandをなくし、
EMA480、120、24を使用し、トレンドを判定する。
(移動平均のトレンド判定が早いかというと、そうは思いませんが、それ以上にHLBandのブレイクは
遅いということです。)
HLBand24をブレイクしたらエントリー
このやり方だと

こんな感じの成績になります。パッと見改善前のほうがなだらかで良い感じがしますが、
総取引数は622回で、改善前の倍程度になっています。PFも1.4と悪くありません。

次に、EMA480を削除しより速いエントリーをしてみると、


資産曲線は少しよくなった感じがします。総取引数も1055回になります。
総利益も134316円→162113円に改善。PFは1.29にに落ち込みましたが、取引数が増えれば、
当然PFは下がります。

次に、EMA480は残し、EMA24を削除すると、


資産曲線はあまり変わった感じがしません。データを見てみると、総取引数900回、
総利益183217円、PF1.39と上2つより良い成績となります。

長期、中期のトレンドは移動平均で判定し、短期HLBandのブレイクをシグナルにするとよさそうです。

HLバンドを長期、中期、短期の3期間を指標としてエントリー、エグジットのタイミングを計った
システムをGBPJPY1hで運用しています。
最近のハッキリしたダウントレンドにも関わらず、どうも成績が思わしくないです。
3つの指標が一致した時にエントリーするため、タイミングが遅れがちであることと、
ストップを短期24に設定しており、一時的に逆方向に行った時にひっかかっています。
明確にトレンドがでていると判断できる場合はストップの幅を広げるなど配慮が必要かなと感じます。
「明確なトレンド」の判断基準と、システムにどう取り入れていくかを検討していきます。
前回の続きです。
今回は、成績のよかったUSDJPY、EURJPY、GBPJPYの最適化前後の成績を比べてみました。(左が戦略①、右が戦略②)

USDJPY

1-1   1-2

EURJPY

2-1   2-2

GBPJPY

3-1   3-2

最適化の基準は損益額の大きさにしました。最適化ではどれもテイクプロフィットの値が
大きくなっていたため、勝率が下がって乱高下が激しくなるのではと思いましたが、
予想に反して収益曲線はなだらかでした。
これは短期HLバンドでトレイリングストップをかけていたからだと思います。
もう1つ嬉しかったのは最適化前後の結果に大きな変化がなかったこと、収益曲線もほぼ
同一形状であったことです。
これは、パラメータの変化で収益に大きな影響がないことを証明しているため、堅牢性が
高いと予想できます。
次回はWF分析にかけてみたいと思います。






今回はテイクプロフィットについて検証してみます。
前回までは損小利大ということで、テイクプロフィットはストップの2倍の値に設定しましたが、
適正な値はどこにあるのか確認してみます。
下はテイクプロフィットをストップの1倍から0.1刻みに5倍までした最適化の結果です。
左が戦略①、右が戦略②になります。

USDJPY

1-1   2-1

EURJPY

1-2   2-2

GBPJPY

1-3   2-3

AUDJPY

1-4   2-4

EURUSD

1-5   2-5

GBPUSD

1-6   2-6

AUDUSD

1-7   2-7

EURGBP

1-8   2-8

EURAUD

1-9   2-9

この結果を見ると、倍率を上げていくと成績がよくなる傾向にあると言えます。
倍率を上げていくと、1トレードあたりの保持期間が長くなり、トレード回数が減ります。
また、テイクプロフィットに到達しづらくなるため、勝率が下がる傾向にあるのではないかと
予想ができます。
そして、エグジットは上限値を決めるよりも、トレイリングストップで追いかけていったほうが
よいということになります。
勝率については、2倍のときでも35%~40%程度であったため、これ以上下がるのは、
実際にトレードしている際に耐えられるかが心配です。
次回は試しに、最適化の結果を反映させたパラメータの成績を見てみます。







前回の記事で
①長期、中期、短期バンドが重なり、ブレイクする強いトレンドが出た時のエントリー
②長期、中期バンドが重なり、短期は重ならずブレイクするトレンド発生時のエントリー
の2パターンに仕分けた結果です。

1

2

3

4

5

6

7

8

9

ほとんどの通貨ペアは①、②共に似たような結果となりましたが、PF、勝率共に①のほうが
高い傾向にあります。
また、GBPUSDは①は右肩上がり、②は右肩下がりと、極端な差がでました。この通貨ペアは
短期的にはもみ合うことが多いが、一度トレンドが発生すると長期に渡って継続しやすい
ということでしょうか?
また、AUDUSDは逆に①は右肩下がり、②は右肩上がりとなっています。これは、長期的には
レンジになりやすく、短期的にレンジ内で動いた結果と言えるでしょう。
ここまでハッキリしていると、戦略がたてやすくていいですね。
次回は、ストップとテイクプロフィットについて検討してみます。