三四本ローソク足のブレイクアウト反転戦略
概要
三四本線ブレイクアウト反転戦略は、上昇勢いが強い3本または4本のローソク足を識別し、その後の数本の小幅なローソク足がサポートまたはレジスタンスを形成した後、反転ローソク足が発生した際に逆張り取引を行う戦略であり、逆張り戦略に分類されます。
戦略の原理
本戦略の主要な識別ロジックは以下の通りです。
-
増幅したローソク足(Gap Bar)の識別:平均ATRの1.5倍を突破し、実体部分が0.65以上であること。このローソク足は強い上昇・下落の勢いを持つと判断されます。
-
出来高減少・整理のローソク足(Collecting Bar)の識別:Gap Barに続く1~2本の小幅な値動きのローソク足で、高値または安値がGap Barに近いもの。これらのローソク足はトレンドの減速と揉み合いを表し、サポートまたはレジスタンスを形成します。
-
反転シグナルローソク足の識別:整理ローソク足の後、実体が先行する数本のローソク足の高値または安値をブレイクするローソク足が出現した場合、それを反転シグナルとみなし、実体の方向に基づいてロングまたはショートの判断を行い、そのローソク足で建玉します。
-
ストップロスと利確:ストップロスはGap Barの安値以下または高値以上に設定。利確はストップロス地点に設定した損益比率を乗じて算出します。
優位性分析
本戦略には以下の主要な優位性があります。
-
ローソク足そのものの特徴を利用してトレンドと反転ポイントを判断するため、インジケーターに依存せず、「インジケーター内蔵」を実現。
-
Gap BarとCollecting Barの選定条件が厳格で、真のトレンドと揉み合いを効果的に識別可能。
-
反転シグナルの判断を実体に基づいて行うため、偽シグナルの確率を低減。
-
わずか3~4本のローソク足の組み合わせで1回の取引を完了でき、時間周期が短く、高頻度。
-
利確・ストップロスの設定が明確で、ドローダウンとリスクリワード比率の管理が容易。
リスク分析
本戦略には以下のリスクも存在します。
-
パラメータ設定の質に依存するため、設定が緩すぎると偽シグナルや損失取引の機会が増加。
-
高頻度の偽ブレイクアウトの影響を受けやすく、すべての偽シグナルを効果的にフィルタリングできない。
-
逆張りが不十分な場合に調整が入りやすく、ストップロスが効かないリスク(ロック状態)が存在。
-
ストップロスの範囲が比較的大きく、個別のロック機会によって大きな損失が発生する可能性あり。
これらのリスクを低減するために、以下の点を最適化できます。
-
パラメータを最適化し、Gap BarとCollecting Barの識別精度を向上。
-
フィルターを追加し、反転ローソク足が再度確認された後に建玉。
-
ストップロスアルゴリズムを最適化し、価格に近づけて損失をより管理しやすくする。
最適化の方向性
本戦略には以下の主要な最適化の方向性があります。
-
複合フィルターの追加:偽ブレイクアウトの影響を回避。例えば出来高指標を追加し、出来高が拡大した場合のみ取引シグナルを考慮。
-
移動平均線との組み合わせ:価格が重要な移動平均線(20日線、60日線など)をブレイクした場合のみ取引シグナルを考慮。
-
複数時間枠による確認:複数の時間枠が同時にシグナルを出した場合のみ建玉。
-
利確条件の最適化:市場のボラティリティとリスク選好に応じてリスクリワード比率を動的に調整。
-
市場の多空状態判断システムとの組み合わせ:トレンド相場の環境でのみ本戦略を適用。
これらの最適化により、戦略の安定性と収益確率をさらに向上させることができます。
まとめ
三四本線ブレイクアウト反転戦略は、質の高いトレンドの潜在区間と反転シグナルを識別して取引を行います。取引周期が短く、頻度が高いため、豊富な超過収益が期待できます。同時に一定のリスクも存在するため、リスク低減と安定性向上のための継続的な最適化が必要です。総じて、本戦略は相場の輪郭そのものの特徴を効果的に利用してトレンドと反転ポイントを判断しており、さらなる研究と応用に値します。
/*backtest
start: 2023-12-10 00:00:00
end: 2023-12-17 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="Three (3)-Bar and Four (4)-Bar Plays Strategy", shorttitle="Three (3)-Bar and Four (4)-Bar Plays Strategy", overlay=true, calc_on_every_tick=true, currency=currency.USD, default_qty_value=1.0,initial_capital=30000.00,default_qty_type=strategy.percent_of_equity)
frommonth = input(defval = 1, minval = 01, maxval = 12, title = "From Month")- 1

