両方向レンジブレイクアウト戦略
概要
本戦略は、双方向の価格レンジブレイクアウトに基づく定量取引戦略です。Pivot高値・安値を価格の主要なサポート・レジスタンスラインとして使用し、価格がPivot高値をブレイクしたときにロング、Pivot安値をブレイクしたときにショートする、双方向の取引を実現します。
戦略の原理
本戦略の核となるロジックは、双方向の価格の重要ポイントのブレイクアウトに基づいています。具体的には、以下の手順で構成されます。
-
指定期間のPivot高値・安値を計算します。ここでは
ta.pivothigh()とta.pivotlow()関数を使用し、直近2日間の最高値を高値、直近1日間の最安値を安値として算出します。 -
価格が上記で計算された重要な高値をブレイクした場合、ロングでエントリーします。価格が重要な安値をブレイクした場合、ショートでエントリーします。
-
ストップロス注文で損失を限定します。ロングの場合は、高値+最小価格変動単位をストップロス価格とし、ショートの場合は、安値-最小価格変動単位をストップロス価格とします。
-
重要な高値・安値をチャート上に描画し、直感的な判断を可能にします。
これにより、価格がレンジ相場で変動している際に、重要なポイントをブレイクしたタイミングで迅速にエントリーし、素早くストップロスを執行することで利益を獲得します。価格が新高値や新安値を更新し続ける場合、戦略は複数回の累積利益を達成できます。
優位性分析
この双方向ブレイクアウト戦略には、主に以下のような優位性があります。
-
シンプルで理解しやすく、実装が容易です。Pivot高値・安値のブレイクのみでエントリー判断を行うため、非常にシンプルです。
-
ストップロスの設定が容易です。ロング・ショートそれぞれに高値・安値+最小変動距離をストップロスラインとすることで、迅速に損切りを行い、リスクを効果的にコントロールできます。
-
双方向の取引が可能です。相場が上昇・下降のいずれの方向であっても、トレンドに沿って取引し、利益を積み重ねることができます。
-
レンジ相場に適しています。価格が頻繁に上昇・下降する場合、戦略は頻繁にエントリーして利益を得ることができます。
リスク分析
上記の利点がある一方で、以下のようなリスクにも注意が必要です。
-
重要ポイントの設定が不適切だと損失が拡大する可能性があります。重要な高値・安値の設定が適切でない場合、極端な状況では高値追いや安値売りをしてしまうことがあります。
-
レンジ相場が終了すると損失が発生し始める可能性があります。価格が一方向のブレイクアウトを開始し、レンジ相場ではなくなった場合、本戦略では利益を上げにくくなります。
-
ブレイクアウトが短期的なフェイク(偽の突破)である可能性があります。短期的なフェイクブレイクが発生した場合、誤った取引が発生するリスクがあります。
総じて、本戦略はレンジ相場での使用に適しています。投資家は相場の状況を判断し、トレンド相場での使用を避ける必要があります。また、重要ポイントの設定ミスやフェイクブレイクによる損失に注意する必要があります。
最適化の方向性
上記のリスクを考慮すると、本戦略の最適化の余地は主に以下の点にあります。
-
重要な高値・安値パラメータのスマートな選択。機械学習などの手法を用いて、システムが自動的に適切な重要ポイントパラメータを最適化できるようにします。
-
トレンド判断の組み込み。戦略にトレンド判断のロジックを追加し、レンジ相場では本戦略を使用し、一方向トレンド相場では戦略を停止することで、損失を減らします。
-
ストップロス戦略の強化。トレーリングストップやレンジブレイクアウトストップなど、より精緻なストップロス戦略を設計し、リスクをさらにコントロールします。
まとめ
本戦略は、シンプルで実用的な双方向ブレイクアウト戦略です。価格の重要ポイントのブレイクアウトでエントリーし、ストップロスを設定してリスクを管理します。レンジ相場に適しており、双方向の取引で利益を得ることができます。ただし、一定のリスクも存在するため、投資家は慎重に使用する必要があります。最適化の余地は、パラメータのスマートな選択、トレンド判断の組み込み、より精緻なストップロス戦略の設計などにあります。
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('Monthly Returns with Benchmark', overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=25, commission_type=strategy.commission.percent, commission_value=0.1)
////////////- 1

