無料でロボットをダウンロードする方法を見る
Telegram上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
スクリプトを気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
インディケータ

Spread Profile by Hour - MetaTrader 5のためのインディケータ

Quoc Dat Quach
Quoc Dat Quach
Software engineer with 8 years in fintech and mobile, writing MQL4/MQL5 since 2017. I build Expert Advisors, indicators, trade and risk-management panels and utilities for MT4/MT5, and I trade forex and gold on MT5 myself.
| Japanese English Русский 中文 Español Deutsch Português 한국어 Français Italiano Türkçe
ビュー:
13
評価:
(2)
パブリッシュ済み:
MQL5フリーランス このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動

「時間別スプレッドプロファイル」は、ブローカー独自のティック履歴から、各サーバー時間ごとの実際のスプレッド分布を構築し、中央値と90パーセンタイルを24本のバーで表示します。 通常のストップサイズを入力すると、各バーがその1時間においてスプレッドが1Rの何割を占めるかを示すため、1日の中でスプレッドが高くなる時間帯が一目でわかります。

spread-profile-eurusd

EURUSD、ティック数、50ポイントのストップ:1日の大半は6ポイント(ストップの12%)、21:00のロールオーバー時には34ポイント(68%)

問題点

デイトレードやスキャルピング戦略において、エッジが維持されるかどうかは、エントリーシグナルではなくスプレッドによって決まることがよくあります。取引プラットフォームには現在のスプレッドは表示されますが、1日を通してスプレッドがどのように変動するかは表示されません。取引が静かな時間帯でテストされた戦略でも、ロールオーバー時、セッション開始時、あるいはニュース発表前後では、単にスプレッドが数倍に広がるという理由だけで、同じルールでも失敗する可能性があります。

バー履歴には1バーにつき1つのスプレッド値しか保存されないため、その分布が把握できません。このインジケーターはティックそのものを読み取ります。つまり、過去N日間のすべてのビッド/アスクの気配値を、サーバー時間の時間帯ごとにグループ化します。その結果、1時間ごとの中央値と90パーセンタイルが算出され、これらをストップ価格や予想値幅と直接比較することができます。

機能

  • 過去N暦日のCopyTicksRangeから算出された、1時間ごとのスプレッドの中央値、90パーセンタイル、平均値、最大値(ポイント単位)。本日は除外されるため、セッション中にグラフの傾向がずれることはありません。
  • 2つのサンプリングモード:
    • ティック数ベース:各気配値は1回のみカウントされます。
    • 時間加重:各気配値は、有効であった時間(次の気配値が出るまで、最大60秒)に応じてカウントされます。ティックカウント方式では、動きの速い市場が過大評価されがちですが、そうした市場ではスプレッドが最も広がりやすい傾向があります。時間加重方式は、「この1時間のランダムな瞬間に、自分がどの程度のスプレッドを支払っていたか」という疑問に答えます。
  • 平日フィルター:全日、または月曜日から金曜日まで個別に選択可能です。
  • コスト表示:ストップサイズをポイント単位で入力すると、各バーにはそのストップに対するスプレッドの中央値がパーセンテージで表示されます。ヘッダーには、現在の時間のストップに対するスプレッドの中央値と90パーセンタイルが表示されます。
  • 現在の時間の1.00ロットあたりの口座通貨建てスプレッドコストの中央値。銘柄のティック値とティックサイズから算出されます。
  • 中央値に基づく最も安価な時間帯と最も高価な時間帯(それぞれ最大3つまで)。中央値が同じ時間帯はまとめて表示されるか、例えば「最も安価:6 ptの時間帯が23時間」のように要約されるため、同値のデータがランキングとして表示されることはありません。すべての時間帯で中央値が同じ場合は、ヘッダーにその旨が表示されます。
  • 現在のサーバー時間をハイライト表示し、リアルタイムのスプレッドを破線で描画します。ウィンドウが狭すぎてすべてのバーの上にラベルを表示できない場合、最も高いバーのラベルのみが残ります。
  • 1時間ごとの統計データをMQL5\FilesにCSV形式でエクスポートするオプション(UTF-8、Excelで直接開けます)。
  • タイマーステップごとに1日分のティックデータを読み込み、すぐに解放するため、金や仮想通貨(1日あたり10万ティック以上)の場合でもチャートの応答性が維持されます。 ターミナルがまだダウンロード中の日については数秒間再試行が行われ、ティック数がM1バーをカバーしていない日は、使用される前に再試行されます。 ターミナルの M1 履歴(チャートの最大バー数)より古い日については、バーとの整合性を確認することはできません。ターミナルがダウンロード中の場合、そのような日は、ティック数が変化しなくなった時点で初めて使用されます。
  • 最新の日を最初に読み込みます。 3営業日連続(または選択した曜日の3日連続)でティックが返されない場合、あるいは10日連続でティックもM1バーも存在しない場合(どの市場休業日よりも長い期間)、それらの日は短い休止の後、再度読み込まれます。それでもティックがない場合は読み込みが停止します。 ブローカーのティックストレージに欠落がある場合も同様の結果となります。ティック履歴が全くない銘柄については、約20秒以内に明確なメッセージが表示されます。また、選択された深度よりも短いティック履歴がある場合は、その開始時点までが使用されます。 長い深度で初めて読み込みを行う際、ターミナルはまだダウンロード中である可能性があります。読み込みが途中で停止した場合は、ダウンロードが完了したら再度接続してください(2回目の実行ではディスクから読み込みます)。エキスパート・ジャーナルには、計算ごとに1行の要約が表示されます。
  • チャートに表示されます:背景色はデフォルトでチャートの色に準じ、テキストやグリッドの色は暗い背景や明るい背景に合わせて調整され、レイアウトは画面のDPIに合わせて拡大・縮小されます。1つのチャート上で複数のインスタンスを実行できます。
  • 取引機能、DLL、外部ファイルは一切必要ありません。

入力

入力 デフォルト 説明
履歴の深さ、暦日(当日を除く) 20 読み込むための、今日より前の暦日数(1~365)。週末も日数にカウントされるため、20暦日は14~17営業日に相当します。
サンプリング ティック数 ティック数または時間加重(「機能」を参照)。
平日フィルター すべての曜日 プロファイルを特定の曜日に限定します。20 暦日には特定の曜日が 2 回または 3 回しか含まれないため、履歴の深さも同様に増やしてください。
ヒストグラムの範囲(ポイント)(スプレッドが広いほどオーバーフローが発生しやすくなります) 5000 これより広いスプレッドはオーバーフロー・ビンに振り分けられます。オーバーフロー・ビンに含まれる統計値は「>5000」として表示されます。
1時間ごとに表示される最小ティック数 100 このティック数に満たない時間は「-」と表示されます(例:日足ブレイク)。
ストップサイズ(ポイント)(0 = オフ) 0 標準的なストップサイズです。0 に設定すると、パーセンテージ表示がオフになり、代わりにポイント単位の中央値が表示されます。
100% スケール時のウィンドウの高さ、px(0 = サイズ変更可能) 240 インジケーターウィンドウの固定高さ。画面のDPIに合わせてスケーリングされます。0に設定すると、ウィンドウのサイズを自由に変更できます。
背景(なし = チャートの背景) なし 「なし」の場合、チャートの背景が使用されます。
中央値バー 青 中央値バーの色。
90パーセンタイルの上限(なし = バーの色が薄くなる) なし 「なし」の場合、バーの色は淡い色になります。
現在の時間 オレンジ 現在のサーバー時間のハイライト色。
ライブスプレッドライン 赤 ライブスプレッドラインの色。
テキスト(なし = 自動) なし 「なし」を選択すると、背景が暗い場合でも明るい場合でも読みやすい色が選択されます。
グリッド(なし = 自動) なし 「なし」を選択すると、背景に合わせてグリッドの色が選択されます。
フォントサイズ、pt 9 基本フォントサイズ。
1時間ごとの統計データを MQL5\Files に保存 (CSV) false 各計算後に、MQL5\Files\SpreadProfile_<symbol>_<yyyymmdd>.csv を書き込みます。

読み方

各バーは、サーバー時間における 1 日の 1 時間を表しています。実線部分は中央値のスプレッドです。つまり、相場の半数、あるいは時間加重モードでは時間の半数において、スプレッドはこの値以下でした。薄い線は 90 パーセンタイルに達しており、10 回の相場のうち 1 回はこれより幅が広かったことを示しています。 破線はリアルタイムのスプレッドを示し、ハイライトされた列は現在のサーバー時間です。以下の例は、20暦日(うち17日間はティックデータあり)にわたってデモ口座で取得したスクリーンショットからのものです。

  • EURUSD、ティックカウント、50ポイントのストップ:24時間のうち23時間で中央値は6ポイントです。 サーバー時間の21:00、つまり日次ロールオーバーの時点では、スプレッドは34ポイントで、90パーセンタイルは58です。スプレッドの中央値は、1日の大半で1Rの12%を占めていますが、その1時間では68%を占めています。
  • GBPUSD、時間加重平均:23時間のうち7ポイント、21:00時点の中央値は46、90パーセンタイルは94。 ティックカウントモードでは、同じ時間帯の値は54と100となります。これは、ロールオーバー前後の最も取引が活発な時間帯が、スプレッドも最も広がるためです。
  • XAUUSD、ティック数、1500ポイントのストップ:データがあるすべての時間帯で中央値は182ポイント(ストップの12%、1ロットあたり18.20米ドル)であるため、ヘッダーには同値の順位付けではなくこの数値が記載されている。 21:00の1日ごとの区切りにはティックがなく、「-」と表示されています。

GBP/USDのスプレッド推移(時間加重平均)

GBPUSD、時間加重、ストップ未設定:23時間で7ポイント、中央値46、21:00時点の90パーセンタイルは94

spread-profile-xauusd

XAUUSD、ティック数、1500ポイントのストップ:データがある1時間ごとに182ポイント、21:00の日次区切りにはティックなし

実用的な解釈:システムの取引時間帯において、中央値のスプレッドがストップ幅の大部分を占める場合は、その時間帯をスキップするか、ストップ幅を広げるか、あるいは予想される値動きでそのコストをカバーできることを確認してください。90パーセンタイルは、稀ではあるものの、悪い約定がどのようなものかを示しています。

注意事項と制限事項

  • ティック履歴の深度は、ブローカーやターミナルがすでにダウンロード済みのデータ量によって異なります。長期間にわたる最初の実行には時間がかかる場合があります。これは、ターミナルがサーバーからティックデータをダウンロードするためです。ティック履歴が選択した深度より前に終了している場合、ヘッダーには「no ticks before」と表示され、使用された最も古い日付が示されます。 例えば、テストサーバーでは、ティック履歴は2026年1月1日から始まっていますが、M1バーはそれより数年さかのぼっています。
  • すべての時間はサーバー時間です。ブローカーのサーバーのタイムゾーンや夏時間・冬時間のルールによっては、日次ロールオーバーなどのイベントが、夏時間と冬時間の間でサーバー時間1時間分ずれることがあります。このような切り替え期間にまたがる履歴ウィンドウでは、イベントが隣接する2つの時間にまたがって表示されます。
  • デモ口座と実取引口座、および異なる口座タイプ(スタンダード、ロウ、ゼロ)では、同じ銘柄であってもスプレッドが大きく異なる場合があります。実際に取引を行う口座でスプレッドを確認してください。
  • スプレッド履歴は将来のスプレッドを保証するものではありません。ニュース、祝日、流動性が低い期間などでは、ここに示されている90パーセンタイルを大幅に上回るスプレッドが発生する可能性があります。
  • 1ロットあたりのコストは現在のティック値に基づいており、クロス通貨ペアの場合、為替レートに応じて変動します。
  • プロファイルは、サーバーの日が更新されるたびに、また入力値、銘柄、または時間枠が変更されるたびに再計算されます。
  • テストマシンでは、XAUUSDの20日分(430万ティック)の読み込みに約1~3秒、 90日分(1,900万ティック)は約8秒、EURUSDの365日分(ティックを含む232日間で940万ティック)は約30秒で読み込まれました。これには、ティック履歴の開始日以前の日付に関する2回目の読み取り時間も含まれており、ティックデータがディスク上に保存された後の処理時間です。 実際の所要時間は、ご利用のブローカーのティック密度や、ティックデータがすでにディスク上に存在するかどうかによって異なります。

MetaQuotes Ltdによって英語から翻訳されました。
元のコード: https://www.mql5.com/en/code/77815

iFVG Indicator With Signals iFVG Indicator With Signals

iFVGインジケーター(シグナル付き)

ZoneUS30 — US30における反転と有利なスワップ ZoneUS30 — US30における反転と有利なスワップ

ZoneUS30は、価格の上昇局面後の売りチャンスに焦点を当てた、シンプルなUS30向けエキスパートアドバイザーです。 この戦略は、平均回帰の概念とキャリートレードのアイデアを組み合わせたものです。ショートポジションでオーバーナイトスワップがプラスとなる場合、このEAは価格の調整による利益と、ポジションを長期にわたり保有することによる利益の両方を享受できます。 US30向けに設計されており、実験および教育目的での使用を想定しています。逆張り取引には、特にロットサイズが大きい場合、大きなリスクが伴います。

Symbol Spec Auditor Symbol Spec Auditor

ポジションサイズや取引コスト(ポイント価値、スプレッドコスト、証拠金、スワップ、約定ルール)を決定する契約仕様の詳細を口座通貨で表示し、ロットサイズのルールを無断で破るブローカーの設定について警告し、マーケットウォッチのすべての銘柄に関する監査結果をCSV形式でエクスポートするチャートパネルです。

Accelerator Oscillator (AC) Accelerator Oscillator (AC)

アクセルレーション/デセレレーションインジケーター(AC)は現在の市場を動かす力の加速と減速を測ります。