記事「MQL5での取引戦略の自動化(第42回):セッションベースのオープニングレンジブレイクアウト(ORB)システム」についてのディスカッション

 

新しい記事「MQL5での取引戦略の自動化(第42回):セッションベースのオープニングレンジブレイクアウト(ORB)システム」はパブリッシュされました:

MQL5で完全にカスタマイズ可能なセッションベースのオープニングレンジブレイクアウト(ORB)システムを作成します。このシステムでは、任意のセッション開始時刻とレンジの期間を設定でき、指定したオープニング期間の高値と安値を自動計算し、かつ動きの方向に沿った確定ブレイクアウトのみを取引します。

オープニングレンジブレイクアウト(ORB)は、典型的なデイトレード向けモメンタム戦略で、取引セッションの開始時に形成される初期の方向性バイアスを利用します。「オープニングレンジ」とは、市場が開いた直後の最初の数分間(通常5~60分)に形成される高値と安値を指します。その後、価格がレンジの高値を明確に上抜けた場合(強気ブレイクアウト)やレンジの安値を下抜けた場合(弱気ブレイクアウト)に、ブレイク方向に沿ってエントリーします。この戦略の前提はシンプルですが強力です。オープニングレンジは、前日のニュースや注文フローを市場が消化する過程で、買い手と売り手の戦いを反映することが多く、明確なブレイクアウトはどちらかの勢力が市場の主導権を握ったことを示します。この場合、ブレイク方向に持続的なトレンドが発生することがよくあります。システム自体は比較的簡単です。以下に想定される各セットアップの例を示します。

ORB戦略セットアップ

本記事では、任意の銘柄と任意のセッション(ニューヨーク、ロンドン、アジア、あるいはカスタムオープニング)で機能する、セッションに完全対応した柔軟なORBシステムを作成します。  ユーザーは正確な開始時刻を設定できます。たとえば、NYSEでは09:30、ロンドンでは08:00などです。また、レンジ期間を分単位で定義することも可能です。 システムは、選択した時間枠内でその期間の高値と安値を自動計算します。必要に応じて、複数バーの確定確認を有効にして、ブレイクアウトの正当性を検証することも可能です。

アルゴリズムは、1セッションあたり方向ごとに1回のみ取引を実行します。ストップロスおよびテイクプロフィットの計算は、レンジサイズに基づく動的方式と固定値の静的方式の2種類を提供し、リスクリワード比率もカスタマイズ可能です。 利益が一定水準に達した後に発動するポイントベースのトレーリングストップも利用できます。さらに、このシステムは豊富なチャート可視化機能を備えています。これには、塗りつぶし済みのレンジ矩形、セッション開始と終了の垂直マーカー、高値と安値のレベル表示、エントリー矢印などが含まれます。

可視化は、ここまで読んでお気づきの通り、戦略の理解を明確にするために非常に重要です。


作者: Allan Munene Mutiiria

 
こんにちは、アランとあなたの継続的な貢献のおかげで、うまくあなたよりもまとめた、私はあなたが開始時間を 自動化するためのソリューションを持っているか疑問に思っていた? 一般的に、私はブローカーの時間変更を使用していますが、私はNZにいるので、それは常に私にとって正確ではありません私のブローカーはAUにあり、austaliasオフセットや東京オフセットとニューヨークオフセットがある時間のような要因があります。私はこれを動作させるためにトラブルを持っていた、任意の提案は高く評価されます。 チャットgptは私に各国サマータイム日付をチェックするsciptを与える、より雄弁なソリューションがあるかどうか疑問に思っていた
 
linfo2 開始時間を 自動化するためのソリューションを持っているか疑問に思っていた? 一般的に、私はブローカーの時間変更を使用していますが、私はNZにいるので、それは常に私にとって正確ではありません私のブローカーはAUにあり、austaliasオフセットや東京オフセットとニューヨークオフセットがある時間のような要因があります。私はこれを動作させるのに苦労している、任意の提案を高く評価。 チャットgptは私に各国サマータイム日付をチェックするsciptを与えるが、より雄弁なソリューションがあるかどうか疑問に思っていた

こんにちは。親切なフィードバックありがとう。ブローカーの時刻の代わりに現地時刻を使用することで、コード内で時刻を定義することができます。例をご覧ください。

現地時間:

TimeLocal()

取引サーバーを使用して、コンピュータの設定に従って直接時間を使用することもできます:

TimeTradeServer()

GMT時間:

TimeGMT()

また、以下のように専用の日時を定義することもできます:

datetime my_time = D'2025.11.27 11:07'
MqlDateTime my_struct_time;

最適な方法をお選びください。ありがとうございました。

 
linfo2 開始時間を 自動化するためのソリューションを持っているか疑問に思っていた? 一般的に、私はブローカーの時間変更を使用していますが、私はNZにいるので、それは常に私にとって正確ではありません私のブローカーはAUにあり、austaliasオフセットや東京オフセットとニューヨークオフセットがある時間のような要因があります。私はこれを動作させるのに苦労している、任意の提案を高く評価した。 チャットgptは私に各国サマータイム日付をチェックするsciptを与える、より雄弁なソリューションがあるかどうか疑問に思っていた

あなたの問題は十分に明確ではありません。しかし、Local TimezonesとLocal Session Hours ライブラリを試すか、もっとシンプルなTimeServerDaylightSavingsを 試すことができます。時間調整なしでは、通常サマータイムやタイムゾーンの切り替えの影響を受ける履歴でストラテジーを確実にテストすることはできません。または、おそらく オンラインでタイムゾーンの変更を検出するためにブローカーのデイライト(サマータイム)スケジュールを決定 したいのでしょう

残念ながら、組み込みのMQL5 APIは、既製の、より雄弁なソリューションを提供していません。

Local Timezones and Local Session Hours
Local Timezones and Local Session Hours
  • 2024.02.28
  • www.mql5.com
Class to access to the local time for the specified location, as well as time zone information and the local trading session hours.