Supply Demand Zones Base Impulse ATR MT4
- インディケータ
- バージョン: 1.1
需要・供給ゾーンを手で引くと、毎回少しずつ違ってしまいませんか。この MetaTrader 4 用の無料インジケーターは、下に全文を書いた1つの固定の規則でゾーンを描きます。どのゾーンも、ご自分で確かめられます。
考え方:実体が ATR の X 倍以上ある「強いローソク足」の直前には、実体の小さな足が1〜10本の「ベース」として残ります。陽線の強い足がベースの上で引ければ需要ゾーン、陰線の強い足がベースの下で引ければ供給ゾーンです。本インジケーターはこの範囲を表示するだけです。売買のシグナルは出さず、注文もせず、ゾーンで価格が反応するという意味もありません。
計算方法
1. ローソク足の True Range = max(高値, 前の足の終値) − min(安値, 前の足の終値)。
2. ATR = 強い足の直前 N 本の True Range の単純平均(強い足そのものは含めません)。
3. 強い足 = |終値 − 始値| が X × ATR 以上。
4. ベース = 強い足のすぐ前から過去へ、実体が Y × ATR 以下の足が続く部分(最大本数まで)。すぐ前の足が小さくなければゾーンはできません。
5. 上下の境 = ベースの足の高値と安値(「Bodies only」を選んだときは始値・終値だけ)。
6. 向き:陽線の強い足が上の境より上で引ける = 需要、陰線の強い足が下の境より下で引ける = 供給。
7. 次の足から:遠い側の境を終値で越える(需要は下、供給は上)とブレイク済。近い側の境に届いた足は接触として数えます。数えるのは1回の訪問につき1回です(その前の足が外にいたとき)。
判定はすべて確定した足で行います。ゾーンができた後は、価格の範囲と始まりの時刻は動かず、状態(未接触、接触○回、ブレイク済)だけが変わります。
機能
- 「需要 未接触」「供給 接触3回」「供給 ブレイク済」などのラベル(英語表示では "Demand fresh" など)。マウスを重ねると、2つの価格、ベースの本数、ベースの始まりの時刻が出ます。
- 未接触と接触ありで色を分けます。ブレイク済は非表示か灰色の枠かを選べます。
- 2つのゾーンが重なると、古い方は塗りのまま、新しい方は枠だけになります。
- 上位足のゾーン:チャートより長い時間足を1つ選べます(初期設定はオフ)。太い枠で描き、ラベルに時間足が付きます(例:「D1 需要 接触1回」)。
- 価格が外から未接触のゾーンに入ったときのアラート(1ゾーン1回、初期設定はオフ):ポップアップ、音、プッシュ。
- 明るい背景・暗い背景に合わせたラベルの自動の色。日本語か英語の表示。
主な設定(MT4 の画面の並び)
ATR period 14 | 強い足の X 1.5 | ベースの足の Y 0.5(X より小さく) | ベースの最大本数 3 | Zone edges:ヒゲ込み | Bars to scan 5000 | 片側ごとのゾーン数 5 | 1000 本より古いゾーンを消す(0 = 消さない) | ブレイク済:非表示 | 片側ごとのブレイク済の数 3 | 右へ 10 本延ばす | ラベル オン、大きさ 8 | 色:需要・未接触、需要・接触あり、供給・未接触、供給・接触あり、ブレイク済、ラベル(None = 自動) | 上位足:current(= オフ) | 上位足の片側ごとの数 3 | 未接触のゾーンに入ったときのアラート:オフ | ポップアップ オン、音 オフ、プッシュ オフ | 言語:Auto
画面に書かれた範囲の外の値を入れると、インジケーターは読み込まれません。
EA 用のバッファー
非表示のバッファー6本:0 需要の上、1 需要の下、2 需要の接触回数、3 供給の上、4 供給の下、5 供給の接触回数。確定した各足には、その足の終わりの時点で一番新しい、破られていないゾーン(需要・供給それぞれ)が入ります。shift 0 は shift 1 と同じ値です。ゾーンが無い(または期限より古い)ときは EMPTY_VALUE。入るのはチャートの時間足のゾーンだけで、上位足のゾーンは入りません。
iCustom では、26個の入力を画面の順に渡し、そのあとにバッファー番号と shift を渡します。
ATR period、X、Y、ベースの最大本数、Zone edges(0 ヒゲ込み/1 実体のみ)、Bars to scan、片側ごとのゾーン数、古さの期限、ブレイク済(0 非表示/1 表示)、片側ごとのブレイク済の数、延長の本数、ラベル表示、文字の大きさ、6つの色、上位足、上位足の片側ごとの数、入ったときのアラート、ポップアップ、音、プッシュ、言語(0 自動/1 英語/2 日本語)。
iCustom で呼ばれたときは、描画もタイマーもアラートも使わず、バッファーを埋めるだけです。
注意と限界
- 作りかけの足がゾーンに入っても、その足が確定するまでラベルは「未接触」のままです。接触は確定のときに数えます。
- アラートそのものはティックごとに、直前の確定足の時点のゾーンと比べて判定します。そのため、ラベルが変わる前にアラートが来ることがあります。読み込んだ直後の最初の価格は記録するだけで、アラートは出しません。
- 計算するのは最新の「Bars to scan」本だけです。MT4 がチャートを読み込み直すと(履歴の追加、再接続、入力の変更)最初から数え直すので、いちばん古いゾーンが違う結果になることがあります。最近のゾーンは変わりません。
- 入力の値や業者の価格が違えば、ゾーンも違います。静かなもみ合いでは小さなゾーンが多くでき、強いトレンドではゾーンがすぐ破られることがよくあります。
- 「未接触」や接触回数は過去の記録で、確率ではありません。
- 同じチャートの2つ目は枠だけを描くので、1つ目の塗りを消しません。
- ストラテジーテスター:ビジュアルモードではチャートと同じようにゾーンを描きます。テスターの中ではアラートを出しません。上位足のゾーンを使うと、テスターの操作ログに端末自身の「history cache」のメッセージが出ることがありますが、インジケーターのエラーではありません。表示数をとても大きくすると、テスターが遅くなります。
- チャートのオブジェクトは「SDZ#」、一時的なグローバル変数は「SDZ_」で始まり、外すと片付けます。チャートの設定は変えません。
動作環境とサポート
- MetaTrader 4 専用です(MT5 版は別の商品で、こちらも無料)。銘柄・時間足は問いません。テンプレートでも、再起動後も動きます。
- DLL、インターネット接続、ファイルは使いません。
- 導入、設定、不具合については MQL5 のメッセージでお問い合わせください。相場の予想や売買の助言はサポートの範囲外です。
- 本インジケーターはチャート分析の補助ツールです。投資の成果を保証するものではなく、過去のチャートの動きは将来を保証しません。
