アルゴリズム検討 #1

FXのシステムトレードの検討【第一回】です。

アルゴリズムを考え、プログラムを作って、検証する。という流れを思いついた順にやると出口が見えずモヤモヤするので、自分の考えを記事に起こして見たいと思います。

案出しなので、読み物だと思ってください。将来、勝てるシステムトレードのアルゴができたらまとめ記事を書きたいと思います。

ポジションを持ち始めるアルゴ

ポジションを取っていない状況下で、”このタイミングで売り買いすれば利益がでる”と判断し、売り or 買い のポジションを新規で持つ為のアルゴリズム。

下記の2つのフェーズに分ける。

  • タイミング
  • フィルタ

「タイミング」は、ゴールデンクロス+デッドクロスや、レンジブレイクなど。
「フィルタ」は、SMAの傾きがX以上や、RSIが何%以上など。

毎Tickから、「タイミング」に合致したとき、「フィルタ」を満たしたときにポジションを取る。

タイミング

タイミングのアルゴの候補は、下記3つ。

  • 全Tick
  • 材料同士のクロス
  • ブレイクアウト

全Tick

「フィルタ」での判断だけに任せるのであれば、全Tick売り、全Tick買いの、ある意味条件なしのタイミング発生アルゴでよい。
この「ポジションを持ち始めるアルゴ」ではなく、「ポジションを閉じるアルゴ」でこのタイミングアルゴを使うかも。

材料同士のクロス

よくある、移動平均のゴールデンクロス+デッドクロスがこれで、材料は期間の異なる移動平均のクロス。

この考えをもう少し拡張すれば、RSIが70%の上から、下に抜けたら売りというのも、RSIと70のクロスと考えれる。

ブレイクアウト

レンジ(チャネル)をブレイクしたらその方向に一定のトレンドが発生すると思って、ポジションを取る。

まず、良い説明のサイトは下記。

ブレイクアウト手法は3つある。

  • ドンチャンレンジ・ブレイクアウト(DRB)
  • イニシャルレンジ・ブレイクアウト(IR)
  • オープニングレンジブレイクアウト(ORB)

ドンチャンレンジ・ブレイクアウト(DRB)

一番わかり易く、よく説明されているブレイクアウト。
ある期間の最高値を超えたら買い、売りはその逆。
クローズもブレイクアウトでやれる。
エントリーを期間Xとして、クローズを期間Yとする。
X=Yならドテン売買で、Y<Xなら感度の高いクローズ条件になる。

イニシャルレンジ・ブレイクアウト(IR)

非常に特殊ケースのブレイク。
寄り付きから一定期間のレンジ(高値から安値)をブレイクしたらその方向に順張り。
派生系としては、日本時間とかNY時間とかをオープニングと捉えることも。

オープニングレンジブレイクアウト(ORB)

少し曖昧な定義で、カスタマイズでパターンが作れるブレイク。
ある「計算した幅」だけ値動きしたら売買。

計算の幅は

  • チャネル(過去の特定期間の最高値と最安値の差)のX%
  • レンジ(高値-安値)
  • レンジの平均

など。レンジの定義は微妙だけど、日足とか。

フィルタのアルゴ

手法があるわけではないが、下記2つかな。

  • 指標の数値によるフィルタ
  • 別のアルゴのタイミングによるフィルタ

指標の数値によるフィルタ

一般的に知られているSMAやEMA、RSIやRCIの数値によるフィルタ。
RSIが50以上とか。

別のアルゴのタイミングによるフィルタ

ブレイクアウトの直近数本のうちに、RSIの50%とクロスなど。
この場合は、ブレイクアウトのダマシを減らすために、別のアルゴでのタイミングでフィルタをかけるなど。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする