MT4の時間を日本時間にする方法とEAの設定手順

MT4のチャート時間が日本時間と違い、EAを何時に動かせばよいか迷っていませんか。結論からいうと、MT4本体の表示時刻は取引サーバー基準なので、標準設定だけで日本時間へ変更することはできません。
必要なのは、利用中のサーバーと日本の時差を確認し、PCでは表示用インジケーターを使い、EAでは日本時間をサーバー時間へ換算して入力することです。画面を見やすくする設定と、EAが判断する時刻は分けて考える必要があります。
この記事では、MT4の時間を日本時間で確認する方法から、夏時間・冬時間の計算、スマホでの見方、EAの稼働時間やバックテストへ反映する手順まで順番に解説します。
- MT4本体の時刻を日本時間へ変更できない理由
- 夏時間と冬時間を迷わず換算する方法
- PC版とスマホ版で日本時間を確認する手順
- EAとバックテストへ正しい時刻を反映する方法
MT4の時間を日本時間で確認する方法

最初に、MT4の時刻がどこから来るのかを整理しましょう。ここを理解すると、パソコンの時計を直してもチャートが変わらない理由や、日本時間表示インジケーターを入れてもEAの稼働時刻が自動では変わらない理由がわかります。
MT4本体の時刻は変更できない
MT4のチャート下部に表示される時刻は、パソコンやスマホのローカル時刻ではなく、FX会社の取引サーバーが採用している時刻です。同じ日本から接続しても、利用するFX会社や口座サーバーが変われば表示時刻が異なる場合があります。
サーバー時間はローソク足、注文履歴、EAの時間条件、ストラテジーテスターを同じ基準で扱うために使われます。WindowsやMacのタイムゾーンを日本へ合わせても、チャートの時間軸は日本時間になりません。
MQL4のTimeCurrent公式リファレンスでも、現在時刻は取引サーバーで形成され、パソコン側の時刻設定には依存しないと説明されています。MT4とEAの基本から確認したい場合は、MT4でEA自動売買を始める基礎も先に読んでおくと理解しやすいです。
夏時間と冬時間を換算する
日本標準時はGMT+9です。MT4サーバーが何時間進んでいるかをFX会社の公式案内で確認し、次の式で日本時間へ換算します。
| サーバーの例 | 日本時間への換算 | MT4が18時の例 |
|---|---|---|
| GMT+2 | 7時間を足す | 翌日1時 |
| GMT+3 | 6時間を足す | 翌日0時 |
| その他 | 9との差を足す | 公式仕様で確認 |
海外FXのMT4では、冬時間にGMT+2、夏時間にGMT+3を使う口座がよく見られます。ただし、切り替え日やサーバー仕様はFX会社ごとに異なるため、「夏は必ず6時間、冬は必ず7時間」と決めつけないでください。
足した結果が24時以上なら翌日に進めます。EAの曜日フィルターや金曜停止を設定する時は、時刻だけでなく日本とサーバーの曜日差も確認しましょう。
PC版へインジケーターを入れる
PC版MT4では、日本時間表示用のカスタムインジケーターをチャートへ追加する方法が現実的です。配布元が明確で、利用中のMT4と夏時間・冬時間の補正に対応したものを選びましょう。
MT4上部の「ファイル」から「データフォルダを開く」を選びます。
「MQL4」内の「Indicators」へインジケーターファイルを入れます。
MT4を再起動するかナビゲーターを更新し、チャートへ適用します。
- 表示された日本時間を実際の時計と見比べる
- GMTオフセットとサマータイム設定を確認する
- 不明な配布元や不要なDLL許可を避ける
- 本番口座へ入れる前にデモ環境で試す
表示が1時間ずれる時は、インジケーターの故障より先に、サマータイム設定と利用口座のGMTを見直します。チャートの日本時間が合っても、EAの入力値は別に換算する点を忘れないでください。
スマホ版で日本時間を確認する
スマホ版MT4には、PC版のように外部のカスタムインジケーターを追加できません。そのため、利用口座の時差を手計算するか、PC版MT4や日本時間の時計と並べて確認する方法が基本です。

スマホはポジションや稼働状況の監視に向いていますが、EA本体の時間条件を編集する場所ではありません。私はスマホのメモへ「口座名・現在のGMT・日本との差」を残し、夏時間の切り替え後だけ再確認する方法が扱いやすいと思います。
- MT4に表示された現在時刻
- 日本の現在時刻と曜日
- FX会社が案内するサーバー時間
MT4の日本時間をEA設定へ反映する方法

チャートを日本時間で読めるようになったら、次はEAへ入力する時刻を決めます。日本時間で考えた開始・停止時刻を、そのままEAへ入れてよいとは限りません。EAの仕様書で「サーバー時間」「ローカル時間」「GMT」のどれを基準にするか確認しましょう。
EAの稼働時間を換算する
EAがサーバー時間を参照する場合は、日本時間の希望時刻から時差を引きます。たとえば、日本時間9時から15時だけ稼働させたいケースをGMT+2とGMT+3で比べると次のようになります。
| 日本時間の条件 | GMT+2の入力例 | GMT+3の入力例 |
|---|---|---|
| 9時に開始 | 2時 | 3時 |
| 15時に停止 | 8時 | 9時 |
| 22時に開始 | 15時 | 16時 |
この表は一般的なGMT+2・GMT+3口座の計算例です。EAの「StartHour」「EndHour」などが日本時間対応済みなら再換算は不要なので、必ず仕様を確認してください。二重に換算すると、正しい設定からさらに6〜7時間ずれてしまいます。
日またぎと指標停止を確認する
日本時間の深夜に発表される経済指標は、サーバー側では前日の夕方として扱われる場合があります。時刻だけを変換して曜日をそのままにすると、EAの停止条件が1日ずれるため注意が必要です。
日本時間で指標日時を確認し、サーバー時間へ換算し、曜日と日付を確認してから停止・再開時刻をEAへ入力します。
特に金曜深夜、月曜早朝、夏時間の切り替え週は、日付の境界と取引時間が重なります。EAを再開する時刻まで決めておかないと、停止後に動かし忘れることもあります。
経済指標ごとの停止幅や再開条件は、EAを経済指標前に止める判断と停止ルールで詳しく整理しています。時間換算と合わせて運用表へ落とし込むと、スマホ通知だけに頼らず判断できます。
バックテスト条件を揃える
バックテストでも、EAが参照するのはテストデータ上のサーバー時間です。TimeCurrentはストラテジーテスター内でヒストリカルデータに沿って再現されるため、本番だけ日本時間で考え、テストだけ別の時刻条件にすると比較できません。
- テストデータのGMTと利用口座のGMTを確認する
- 夏時間と冬時間をまたぐ期間を分けて比較する
- 開始・停止時刻と曜日条件を記録する
- 日足の区切りと週明けの短い足を確認する
成績表の数値が良くても、狙った日本時間帯に取引していなければ本番で再現しにくくなります。特にロンドン時間やニューヨーク時間だけを狙うEAは、時差を1時間間違えるだけで相場環境が変わります。
テストの準備から結果確認まで見直したい場合は、MT4のEA設定とバックテストの正しい手順も参考にしてください。同じGMT、スプレッド、稼働時間を揃えてからロジックを比較するのが基本です。
時間条件をノーコードでEA化する
MQL4で時間条件を直接書く場合は、サーバー時刻の取得、GMT差、夏時間、曜日、日またぎをコードで管理します。一方、画面上でルールを組み立てる方法なら、開始時刻・停止時刻・曜日条件を分けて確認できるため、MQL初心者でも条件漏れを見つけやすくなります。
| 作り方 | 向いている人 | 時間設定の注意 |
|---|---|---|
| MQL4で実装 | コードを保守できる人 | 時差分岐を自分で設計 |
| ノーコードで作成 | 条件を画面で整理したい人 | 換算後の時刻を入力 |
どちらの方法でも、最初は「指定時間だけ新規エントリーを許可する」という小さなルールからデモ口座で試すのがおすすめです。狙った時刻にオン・オフが切り替わると確認してから、指標停止や週末停止を追加しましょう。
EAを自作したいなら
NoCode EA Studioなら、MQLの知識なしでMT4・MT5対応の自動売買ロジックをブラウザ上で作成できます。
MT4の日本時間設定まとめ
MT4本体の時計を日本時間へ変えるのではなく、表示用の対策とEA用の換算を分けるのが結論です。PC版は日本時間表示インジケーター、スマホ版は時差確認、EAはサーバー時間へ換算した値を使います。
- 利用口座のGMTを公式案内で確認する
- 日本時間は9とGMTオフセットの差で換算する
- 夏時間の切り替え後に表示とEA入力を見直す
- 本番前にデモ口座とバックテストで動作を確かめる
私なら、口座ごとに「現在のGMT」「日本時間との差」「EAへ入れる開始・停止時刻」の3点だけを残します。情報を増やしすぎず、夏時間の切り替え時に同じ表を更新する方が運用ミスを減らしやすいです。
