需給ゾーンとEMAトレーリングストップに基づく取引戦略
概要
この戦略は、需給ゾーン、指数移動平均(EMA)、および平均真実レンジ(ATR)の指数型移動ストップを利用して取引シグナルを判断します。ユーザーはEMAパラメータ設定や売買シグナルの表示・非表示を調整できます。戦略は、高値更新(HH)、安値更新(LL)、高値切り下げ(LH)、安値切り上げ(HL)といった需給ゾーンをマークします。3本目のローソク足でシグナルを確認した後に取引指令を発します。このスクリプトはバックテストに適しています。
戦略の原理
指標計算
EMA指数移動平均:
- EMAは一定期間(デフォルト200)の終値から計算されます。
- EMAの計算式:\[EMA=(Price_t \times \alpha)+(EMA_{t-1}×(1−\alpha))\]、ここで\(\alpha=\frac{2}{length+1}\)です。
ATR平均真実レンジ:
- ATRは市場の変動度合いを測る指標で、価格の真実レンジに基づいて計算されます。
- 真実レンジは以下の3つの最大値です:
- 現在の高値から現在の安値を引いた値
- 現在の高値から前回の終値を引いた絶対値
- 現在の安値から前回の終値を引いた絶対値
- ATRの一般的な計算期間は14です。
これらの計算は、EMAによるトレンド判断と、市場変動に基づくATR移動ストップの設定に使用されます。この戦略は、終値、EMA、ATRの値の関係に基づいて売買シグナルを提供することを目的としています。
需給ゾーンの判断
戦略では、「HH」(高値更新)、「LL」(安値更新)、「HL」(安値切り上げ)、「LH」(高値切り下げ)といった用語を使用して、異なる価格行動パターンを識別します。これらはトレンド分析によく用いられます。
-
高値更新(HH):現在の価格の最高値が前回の最高値を上回っており、上昇モメンタムの可能性を示します。
-
安値更新(LL):現在の価格の最安値が前回の最安値を下回っており、下落モメンタムの可能性を示します。
-
安値切り上げ(HL):現在の価格の最安値が前回の最安値を上回っており、上昇トレンド継続の可能性を示します。
-
高値切り下げ(LH):現在の価格の最高値が前回の最高値を下回っており、下落トレンド継続の可能性を示します。
これらのパターンは、他のテクニカル指標と組み合わせて、トレンドの転換や継続の可能性を判断するために使用されます。この戦略は、これらのパターンを利用してエントリーやエグジットのタイミングを特定します。
エントリーとストップロス・エグジット
エントリーシグナル:3本目のローソク足の終値が前日の高値/安値を上回った/下回った場合に、買い/売りシグナルが発生します。
ストップロス方式:ATR値の一定倍(デフォルト2倍)をトレイリングストップの水準として使用します。
戦略の利点
- トレンド、反転、ボラティリティなど複数の要素を組み合わせて市場を総合的に判断し、偽のブレイクアウトを回避します。
- 需給ゾーンを利用して重要なサポート・レジスタンスを特定します。
- ATRストップシステムが市場の変動に動的に追従します。
- EMAとATRのパラメータをカスタマイズ可能です。
- シンプルなエントリールールで実装が容易です。
リスクと最適化
- 誤判定のリスクがあるため、EMAの期間を適切に最適化する必要があります。
- ATRの倍率が大きすぎると、高値掴みや底値売りのリスクがあります。
- 他の要素と組み合わせてエントリーシグナルをフィルタリングすることも検討できます。
- トレンドスナイプを主とし、需給ゾーンを補助とする戦略を試すことも可能です。
まとめ
この戦略は、トレンド、反転、ボラティリティなど複数のテクニカル指標や価格形態を総合的に活用し、バックテストで良好なパフォーマンスを示しています。しかし、実戦市場は複雑で変動が激しいため、最適化やエントリーシグナルの適切なフィルタリングは依然として必要です。この戦略はベースとなる戦略であり、これを拡張して他の要素やモデルと組み合わせることができます。
/*backtest
start: 2023-12-18 00:00:00
end: 2024-01-17 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Supply and Demand Zones with EMA and Trailing Stop", shorttitle="SD Zones", overlay=true)
showBuySignals = input(true, title="Show Buy Signals", group="Signals")- 1

