FXボーグ | テクニカル実験室

テクニカル分析を使った自動売買プログラムの開発に挑戦!

スポンサーリンク

順張りシステムにHFDフィルターを追加しバックテスト。

HFDインジケーターを少しイジッてこんな風に色付けを行ったのですが、フラクタル次元の変動が意外と単調でこのままでもフィルターとして使えそうな感じです。f:id:fxborg:20170829205840p:plain(USDJPY IsoKineticチャート)

  • 下段・・・HFDインジケーター(64,256,512,0.998)
  • 緑ライン・・・フラクタル次元が低下中
  • 赤ライン・・・フラクタル次元が増加中
  • 紫ライン・・・1.5次元の規準線
  • 灰色の背景・・・フラクタル性の崩壊

とりあえず、この前のカスケード・トレンドシステムにHFDフィルターを追加してバックテストを行ってみました。

片方向でのバックテスト

カスケード・トレンドシステムはステップMA風のインジケーターを使用した順張りシステムです。こういった順張りシステムに期待するのは「順風の時には大きく稼ぎ、逆風の時には損失を抑える」というようなことですが、片方向のエントリーだけに制限してバックテストを行うとこのあたりが評価しやすくなります。

例えば2007年からのドル円の動きはこんな感じですが、

f:id:fxborg:20170829235632p:plain

これをロング側の収益グラフと比較すると各時期のパフォーマンスが把握しやすくなります。

f:id:fxborg:20170830002929p:plain

同様にショート側の収益グラフはこんな感じです。

f:id:fxborg:20170830004831p:plain

ロング、ショートのそれぞれのトレードが利を伸ばし損を抑えるようになっていれば、合計した際にマイナス分が相殺されます。

f:id:fxborg:20170830005821p:plain

HFDフィルターの追加

こんな風にチャートとよく連動していて、パフォーマンスの良いパラメーターを選んだ上で、HFDフィルターを追加してみると・・・

f:id:fxborg:20170830064934p:plain

ドローダウンが減少しパフォーマンスも向上しました。

・・・バックテストの結果を基にパラメーターをイジるのはカーブフィッティングであり改善して当然なのですが、HFDインジケーターの性質を理解するためにちょっと行ってみました。

最後に

今回はHFDフィルターをカスケード・トレンドシステム組み込んで簡易なバックテストを行いました。HFDインジケーターはDLLを使用しているのですが、やはり最適化の速度がかなり遅くなってしまいました。もう少し計算結果をキャッシュするなどの改良が必要そうです。

それからチャートとのパフォーマンスを比べたりする時は、ロングとショートのトレードが混ざった収益グラフでは分りづらいので、売買方向ごとに分けた方が簡単です。

また、堅牢なシステムのセオリーでは売買方向によってルールを変えるのはNGとされているのですが、通貨ごとにブルとベアのプレイヤーが存在してて、それぞれ特徴・パワーも異なっていること考えると、同じ通貨でも方向性が異なればプライスアクションに違いがあっても自然なように思います。(株では一般的)

もちろん特徴などは変化するものなので、どちらでも利益が出せるシステムが堅牢なのは言うまでもないことですが、EAなどを闇雲に作って思うようなパフォーマンスが出ないと悩む時などは方向別に分析してみると良いかもしれません。