相場の迷いとも言える十字線。同時足とも言いますね。
この十字線が発生、そしてその十字線を実体でブレイクしたときにサインがでるインジケーターを作りました。
作ってて思いましたがかなりマニアックなインジケーターです。
もしかしたら同時足などを基準にスキャルピングなどしている人がいれば参考になるかなと。
十字線同時足ブレイクインジケーター
コチラが十字線ブレイクインジケーターの実際の画面です。
まず十字線(同時足)が出現したときに○印が付きます。
そしてその十字線の高値と安値を判定し、上下どちらかに実体を残してブレイクするとサインが表示されます。
十字線ブレイクインジ設定画面
コチラが設定画面。
「Tolerance for Cross Body」の設定について:
これは十字線と認識する「実体の大きさ」の設定です。値が小さいほど(例:0.05)実体が非常に小さい典型的な十字線だけを検出します。値が大きいほど(例:0.2)実体がやや大きめのローソク足も十字線として検出するようになります。迷ったらデフォルトの0.1から始めてみて、検出が少なすぎるなら少し上げてみるといいでしょう。
「Tolerance for Cross Range」の設定について:
これは十字線の「中心位置」の許容範囲です。完璧に中央に位置する十字線だけでなく、少し上下にずれていても検出できるようにする設定です。0.3だと上下30%の範囲内なら十字線として認識します。値を小さくすると(例:0.1)より中央に近い十字線だけを検出するようになります。
十字線ブレイクアラート画面
コチラがアラート画面。
「Breakout Alert (Both)」について:
このアラートは上下どちらの方向でも十字線のブレイクが発生したら通知します。「どちらかの方向に動きがあれば知りたい」という場合に使います。
「Breakout Alert (Up)」について:
上向きブレイクアウト(十字線の高値を上に抜けた場合)だけを通知します。買いエントリーのチャンスを狙っている時に便利です。
「Breakout Alert (Down)」について:
下向きブレイクアウト(十字線の安値を下に抜けた場合)だけを通知します。売りエントリーのチャンスや下落相場での警告として使えます。
十字線ブレイクインジケーターコード
//@version=6 indicator('Cross Detection with Breakout Signal', overlay = true) // パラメータの設定 toleranceBody = input.float(0.1, title = 'Tolerance for Cross Body') toleranceRange = input.float(0.3, title = 'Tolerance for Cross Range') // 条件の設定 bodySize = math.abs(close - open) upperBodyLimit = low + (high - low) * (0.5 + toleranceRange) lowerBodyLimit = low + (high - low) * (0.5 - toleranceRange) isCross = bodySize <= (high - low) * toleranceBody and close >= lowerBodyLimit and close <= upperBodyLimit // 十字線の高値と安値を保存 var float crossHigh = na var float crossLow = na // ブレイクアウトシグナルのための変数 var bool breakoutSignalUp = false var bool breakoutSignalDown = false // 十字線が検出された場合、高値と安値を更新 if isCross crossHigh := float(high) crossLow := float(low) crossLow else // 実体が高値または安値を超えた場合、サインを表示 if not na(crossHigh) and not na(crossLow) // 上向きブレイクアウト - 実体(close)が十字線の高値を超えた場合 if close > crossHigh breakoutSignalUp := true // サインを表示した後、高値と安値をリセット crossHigh := na crossLow := na crossLow // 下向きブレイクアウト - 実体(close)が十字線の安値を下回った場合 else if close < crossLow breakoutSignalDown := true // サインを表示した後、高値と安値をリセット crossHigh := na crossLow := na crossLow // 同時線を表示 plotshape(series = isCross, location = location.belowbar, color = color.purple, style = shape.labelup, title = 'Cross Detected') // 条件に基づく矢印表示 plotshape(series = isCross, title = 'Cross Arrow', location = location.belowbar, color = color.purple, style = shape.arrowup, size = size.small) // 上向きブレイクアウトシグナルの表示 plotshape(series = breakoutSignalUp, title = 'Breakout Signal Up', location = location.belowbar, color = color.blue, style = shape.triangleup, size = size.small) // 下向きブレイクアウトシグナルの表示 plotshape(series = breakoutSignalDown, title = 'Breakout Signal Down', location = location.abovebar, color = color.red, style = shape.triangledown, size = size.small) // アラート - 1. 上下両方のブレイクアウト alertcondition(breakoutSignalUp or breakoutSignalDown, title = 'Breakout Alert (Both)', message = 'Breakout Signal detected on {SYMINFO_TICKERID} ({SYMINFO_TIMEFRAME})') // アラート - 2. 上向きブレイクアウトのみ alertcondition(breakoutSignalUp, title = 'Breakout Alert (Up)', message = 'Upward Breakout Signal on {SYMINFO_TICKERID} ({SYMINFO_TIMEFRAME})') // アラート - 3. 下向きブレイクアウトのみ alertcondition(breakoutSignalDown, title = 'Breakout Alert (Down)', message = 'Downward Breakout Signal on {SYMINFO_TICKERID} ({SYMINFO_TIMEFRAME})') // ブレイクアウトシグナルをリセット breakoutSignalUp := false breakoutSignalDown := falseこ
コチラがコードです。
手法紹介
このインジケーターは、一旦の迷い→方向が出た。を可視化したものです。
もちろん十字線や同時足が「迷い」ではなく、単に出来高少なくて動いていなかっただけというパターンもあります。
そして、1分足などかなり小さい足だとほとんど意味をなさないと思います。
大きな足でサインが出たら「もしかしたら一時的なトレンドの方向性でたかも?」ぐらいの感じです。
ローソク足を主体にしたインジケーターですが、トレンド方向を示すもの。
なので200EMAなど、MAto組み合わせた順張り手法が向いていると思います。
200EMAより上に抜け、その後200EMA付近まで戻ってきた。そして十字線(迷い)がでてサインが出た→そのまま順張り。
こんな感じが分かりやすいかなと。
もし単体で使うなら、大きな足でサインが出た→その後十字線付近まで戻ってきたら順張りで押し目狙い。こんな感じも想像できますね。
かなりマニアックなものなので、お使いの手法に噛み合ったら使ってください。
コメント