GitHub で見る

セッション時間帯ブレイクアウト戦略のダイアグラム

ブレイクアウトは、相手となる参加者がいる間だけ取る価値があります。このダイアグラムは20本のローソク足のレンジを測り、確定したローソク足がその外側で引けたところでポジションを取りますが、そのローソク足が一日のうちの決められた時間帯に属していなければ、いっさい動きません。エントリーから先はすべて、パーセント指定のストップロスと利益確定に委ねられます。

戦略の概要

  • 5分足のローソク足系列ひとつがダイアグラム全体を動かし、確定したローソク足だけが配信されるため、すべての判断はもう変化しないバーの上で下されます。
  • いずれも期間20で確定値のみを用いる Highest と Lowest が、直近レンジの上端と下端を保持します。
  • 1つ前の値 (Previous value) が、それぞれの端をローソク足1本分ずらします。このずらしこそがレンジをブレイクアウト水準に変えるもので、判定される当のローソク足が、超えるべき境界の一部になることを許しません。
  • コンバーター (Converter) が現在のローソク足の終値を読み取り、2つの比較ブロック (Comparison) がそれを、ずらした2つの境界と突き合わせます。
  • 稼働時間 (Working time) はローソク足ごとに1つの問い — このローソク足は取引時間帯に属するか — に答え、比較と同じタイミングで単純な true か false を返します。
  • 2つの論理条件 (Logical condition) がブレイクアウトと時間帯を結び付けるため、時間帯の外での水準突破は何も生まず、ダイアグラムはその日の残りを何もせずに過ごします。
  • どちらのエントリーも固定数量の成行注文で、いずれも Open position 条件を備えているため、注文はノーポジションの状態からのみ送られ、既存のポジションへの積み増しやドテンには決してなりません。
  • ポジション保護 (Position protection) がエントリーの約定とローソク足の終値を受け取り、そこから先はその建玉を引き受け、決められたパーセントの利益または損失で決済します。

エントリーとエグジットの条件

  • ロングエントリー: 確定したローソク足が、1本前を基準に取った期間20の高値を上抜けて引け、そのローソク足が取引時間帯に属している場合です。ポジション変更 (Position modify) が注文数量を成行で買います。Open position 条件により、ポジションがない間だけ注文が通ります。
  • ショートエントリー: 確定したローソク足が、1本前を基準に取った期間20の安値を下抜けて引け、同じ時間帯条件を満たす場合です。Position modify が注文数量を成行で売ります。こちらもノーポジションの状態からのみです。
  • エグジット: ダイアグラムに決済シグナルはありません。ポジションが建った時点から Position protection がそれを引き受けます。エントリーの約定を基準に値幅を測り、ローソク足の終値を追い、1.5% の利益または 0.5% の損失で決済します。リスクの3倍の目標です。時間帯が支配するのはエントリーだけなので、時間帯の終わり際に建ったポジションは、2つの境界のどちらかに達するまで、時間帯の終了後も生き続けます。その間に逆方向のブレイクアウトが起きても無視されます。Open position 条件が、ノーポジションからでないエントリーをすべて遮るからです。

パラメーター

パラメーター 既定値 説明
Candles 00:05:00 ローソク足系列の時間軸。ダイアグラムに届くのは確定したローソク足だけです。
Breakout High Length 20 1本分のずらしを適用する前に、上側の境界を測る対象となるローソク足の本数。
Breakout Low Length 20 下側の境界を測る対象となるローソク足の本数。両方の端が同じレンジを表すよう、上側の期間と等しく保ってください。
Session From 12:00:00 取引時間帯の開始時刻。これより前に始まったローソク足はエントリーを発生させられません。
Session Until 21:00:00 取引時間帯の終了時刻。これより後に始まったローソク足はエントリーを発生させられません。すでに建っているポジションには影響しません。
Order Volume 1 2つの成行エントリーが送る固定数量。
Take Profit, % 1.5 利益確定までの距離。エントリー価格に対するパーセント。
Stop Loss, % 0.5 損切りまでの距離。エントリー価格に対するパーセント。

ダイアグラムの詳細

  • レンジを測る2つの指標はいずれも確定値のみ・最終値のみを用いるため、途中経過の値が境界を動かすことはなく、最初の20本ではシグナルはまったく出ません。
  • 1本分のずらしは、価格ではなく指標の出力に対して適用されます。1ステップ戻した指標値は、現在のローソク足がまだ存在しなかった時点の境界そのものであり、ブレイクアウトはまさにそれを基準に測らなければなりません。
  • Working time は、渡された値が持つタイムスタンプを読みます。ローソク足は自身の開始時刻を持つため、時間帯の内側で始まったローソク足が時間帯の内側とみなされます。
  • 両エントリーの約定は、Position protection に届く前に1本のストリームにまとめられるため、1つの保護ブロックが買いと売りの双方を等しくカバーします。
  • Position protection には価格としてローソク足の終値が与えられるため、ストップと利益確定は、エントリー判断が行われたのと同じ確定ローソク足の価格を基準に測られ、ローソク足1本につき1回チェックされます。

使い方

.json ファイルを Designer に読み込み、バックテスターで過去データを使って実行し、実運用の前にパラメーターやブロック自体を自分の銘柄に合わせて調整してください。