タグ: MetaTrader 4

  • MT4とMT5の違い|インジケーターを使う前に見ること

    MT4とMT5は名前が似ているため、インジケーターも同じ感覚で使えると思いやすいところがあります。ところが、実際にはフォルダ構造、ファイル形式、対応するMQL言語、ストラテジーテスター、時間足、標準機能に違いがあります。

    この記事では、MetaTrader 4公式サイト、MetaTrader 5公式ヘルプ、MQL4・MQL5公式ドキュメントをもとに、インジケーターを使う前に見たいMT4とMT5の違いを整理します。どちらが上かを決める記事ではなく、手元のインジケーターをどの環境で扱うべきかを見るための記事です。

    先に短く言うと
    • MT4用のインジケーターとMT5用のインジケーターは、基本的に別物として見ます。
    • MT4のカスタムインジケーターは MQL4\Indicators、MT5のカスタムインジケーターは /MQL5/Indicators を中心に見ます。
    • MT5公式の比較表では、標準テクニカル指標、時間足、ストラテジーテスターなどでMT4との違いが示されています。
    • 既存のMT4インジを使いたいだけならMT4、MQL5やMT5の検証機能を前提にしたいならMT5、といったように目的で分けて見ることが大切です。

    MT4とMT5は同じシリーズでも別の環境として見る

    MT4とMT5はどちらもMetaQuotes系の取引プラットフォームですが、インジケーターを扱う時は同じものとして見ない方が安全です。画面の雰囲気やメニュー名が似ていても、内部のファイル構造や対応するプログラム言語が違います。

    特に注意したいのは、「MT4で使っていたインジケーターをMT5へそのまま入れる」という考え方です。MT4側はMQL4、MT5側はMQL5を前提にしており、保存フォルダや実行ファイルも分かれます。まずは、手元のファイルがMT4用なのかMT5用なのかを見てください。

    公式情報で見るポイント

    MQL4公式リファレンスでは、カスタムインジケーターは取引を自動実行するものではなく分析機能を実装するためのもので、terminal_directory\MQL4\Indicators に保存されると説明されています。MT5公式ヘルプでも、カスタムインジケーターは価格動向を分析するためのもので、/MQL5/Indicators に保存されると説明されています。

    インジケーターのファイルと置き場所を分けて見る

    インジケーターを使う前に、まずファイルの種類と置き場所を分けます。MT4では MQL4 配下、MT5では MQL5 配下を見るのが基本です。似た名前のフォルダに入れても、違う端末や違うバージョンを見ているとナビゲーターに出ない原因になります。

    MT4のインジケーターなら .mq4.ex4、MT5のインジケーターなら .mq5.ex5 が関係します。配布元の説明に「MT4用」「MT5用」と書かれている場合は、その指定を優先してください。

    MT4 MQL4\Indicatorsを見る

    MT4用カスタムインジケーターを入れる時に見る場所です。既存のMT4インジを使いたい場合はこちらを中心に見ます。

    MT5 MQL5/Indicatorsを見る

    MT5用カスタムインジケーターを入れる時に見る場所です。MT5用として配布されたファイルを扱います。

    注意点 説明書の対応環境を見る

    ファイル名だけで判断せず、配布元の説明、対応プラットフォーム、必要な追加ファイルを分けて見ます。

    標準機能の数だけで選ばない

    MetaTrader 5公式の比較表では、MT5は標準テクニカル指標38、MT4は30、時間足はMT5が21、MT4が9と示されています。また、ストラテジーテスターについてもMT5はマルチスレッド、マルチカレンシー、リアルティック、MT4はシングルスレッドとして比較されています。

    ただし、標準機能の数が多いからといって、手元のインジケーターがそのまま使いやすくなるわけではありません。既存のMT4インジ、配布されているツール、ブローカー環境、検証したい内容を合わせて見る必要があります。

    標準指標 内蔵機能の違いを見る

    MT5公式比較では標準テクニカル指標数に違いがあります。標準機能だけで足りるかを見る材料になります。

    時間足 見たい時間軸を確認する

    MT5公式比較では時間足数にも違いがあります。普段見る時間軸が対応しているかを見ます。

    テスター 検証環境を分ける

    インジやEAの検証を見る場合は、MT4とMT5でストラテジーテスターの前提が違う点も見ます。

    MT4を選びやすい場面

    MT4を選びやすいのは、すでに使いたいMT4用インジケーターが決まっている場合です。販売ページや配布元の説明がMT4用になっている場合、無理にMT5へ寄せるより、指定された環境で動作条件を見た方が確認しやすくなります。

    また、過去に作ったテンプレート、パラメータ、チャート設定、検証メモがMT4中心の場合も、いきなりMT5へ移すと比較が難しくなることがあります。まずは既存環境で何を使っているかを棚卸ししてください。

    MT4寄りで見たいケース
    • 使いたいインジケーターがMT4用として配布されている
    • 既存のテンプレートや設定がMT4中心になっている
    • GogoジャンなどでMT4用ツールを確認している
    • MQL4のソースやEX4ファイルを扱う予定がある
    • 既存記事のMT4設定手順と合わせて見たい

    MT5を選びやすい場面

    MT5を選びやすいのは、最初からMT5用のインジケーターを使う場合や、MQL5で自作・修正・検証を考える場合です。MT5公式ヘルプでは、MQL5でEA、カスタムインジケーター、スクリプト、関数ライブラリを作成できると説明されています。

    また、MT5のストラテジーテスターや時間足、標準機能を前提に見たい場合も、MT5側で環境を整えた方が扱いやすくなります。ただし、MT4用ファイルをそのまま移す前提ではなく、MT5用のファイルや手順を確認することが大切です。

    MT5寄りで見たいケース
    • 使いたいインジケーターがMT5用として配布されている
    • MQL5で自作インジやEAを考えている
    • MT5の時間足や標準機能を使いたい
    • MT5のストラテジーテスターを前提に検証したい
    • 今後のツール管理をMT5側に寄せたい

    MQL4とMQL5の違いも見ておく

    インジケーターを自作したり、ソースファイルを修正したりする場合は、MT4とMT5の画面だけでなく、MQL4とMQL5の違いも見ます。MQL5公式の移行ドキュメントでは、MQL4のカスタムインジケーター描画型は6種類、MQL5では18種類になり、描画表現の考え方も大きく変わったと説明されています。

    つまり、MT4用のソースをMT5へ移す場合は、単純なフォルダ移動では済まないことがあります。コンパイル、関数、イベント処理、描画、バッファなど、プログラム側の差を見なければなりません。このあたりは、次の記事でMQL4とMQL5の違いとして分けて扱います。

    移行を考える時の注意

    MT4からMT5へ移す時は、チャート画面の見た目だけで判断しないでください。ファイル形式、MQL言語、フォルダ、必要なコンパイル、配布元の対応環境を分けて見る必要があります。

    インジケーター利用前の見方

    MT4とMT5のどちらを使うかは、なんとなく新しい方を選ぶという話ではありません。すでに使いたいインジケーターがあるのか、これから自作するのか、検証したいのか、通知やテンプレートまで含めて管理したいのかで見方が変わります。

    次の順番で見ると、環境選びで迷いにくくなります。まずファイルの対応環境を見て、次に置き場所を確認し、最後に検証や自作の予定を見ます。

    1
    ファイルの対応環境を見る 配布元の説明で、MT4用かMT5用かを見ます。ファイル拡張子だけで決めず、説明書も確認します。
    2
    フォルダを分けて見る MT4ならMQL4、MT5ならMQL5を起点にします。別端末や別バージョンのフォルダへ入れないようにします。
    3
    今後の使い方を見る 既存インジを使うだけか、自作・検証・移行まで考えるかで、選ぶ環境が変わります。

    使う前のチェックリスト

    MT4とMT5の違いを見る時は、機能表だけでなく、自分が扱うファイルと作業内容を起点にしてください。インジケーターは、対応環境を間違えると表示されない、コンパイルできない、設定が移せないといった問題につながります。

    インジケーター利用前に見ること
    • 使いたいインジケーターはMT4用かMT5用か
    • ファイルは .mq4 / .ex4 か、.mq5 / .ex5
    • 配布元の説明に対応プラットフォームが書かれているか
    • MT4なら MQL4\Indicators、MT5なら MQL5\Indicators を見ているか
    • テンプレートやプリセットも同じ環境で使う予定か
    • 自作や修正をするならMQL4とMQL5の違いを見ているか
    • テスターや検証機能まで使う予定があるか

    導入前メモ

    MT4とMT5は、どちらが優れているかだけで選ぶより、使いたいインジケーターがどちらに対応しているかを先に見る方が現実的です。

    ファイル、フォルダ、MQL言語、検証環境が違うため、MT4用の感覚をそのままMT5へ持ち込むと、表示されない原因を追いにくくなります。

    用語集であわせて見たい言葉

    関連して読みたい記事

    まとめ

    MT4とMT5は、見た目が似ていてもインジケーター利用では別の環境として見ます。MT4用インジケーターはMQL4と MQL4\Indicators、MT5用インジケーターはMQL5と MQL5\Indicators を起点にしてください。

    MT5には標準指標、時間足、ストラテジーテスターなどでMT4と違う点があります。ただし、標準機能の数だけで選ぶのではなく、使いたいファイル、配布元の対応環境、自作や検証の予定を合わせて見ることが大切です。

    既存のMT4インジを使うならMT4側の手順を固める。MT5用のインジやMQL5、自作、検証を見たいならMT5側で環境を整える。このように目的で分けると、導入前のつまずきを減らしやすくなります。

    参考文献
    • MetaTrader 4公式サイト「MetaTrader 4 Platform for Forex Trading and Technical Analysis」https://www.metatrader4.com/en
    • MetaTrader 5公式サイト「Comparison of MetaTrader 5 and MetaTrader 4」https://www.metatrader5.com/en/trading-platform/comparison-mt5-mt4
    • MQL4 Documentation「MQL4 Reference」https://docs.mql4.com/
    • MetaTrader 5 Help「How to Create an Expert Advisor or an Indicator」https://www.metatrader5.com/en/terminal/help/algotrading/autotrading
    • MetaTrader 5 Help「Files and Folders」https://www.metatrader5.com/en/terminal/help/start_advanced/structure
    • MQL5 Reference「Moving from MQL4」https://www.mql5.com/en/docs/migration
  • MT4プッシュ通知のMetaQuotes IDとは|スマホ通知前に見ること

    MT4のプッシュ通知をスマホで受け取りたい時に、よく出てくるのが MetaQuotes ID です。メール通知のようにSMTPを入力するのではなく、スマホ側のMetaTraderアプリに割り当てられたIDを、PC版MT4の通知設定へ入れて使います。

    この記事では、MetaTrader 4公式ヘルプとMQL4公式ドキュメントをもとに、MetaQuotes IDとは何か、どこで見るのか、PC版MT4のNotificationsタブへどう入れるのか、AlertのNotificationやMQL4の SendNotification() とどう関係するのかを分けて見ます。

    先に短く言うと
    • MetaQuotes IDは、スマホのモバイル端末に割り当てられる識別子です。
    • MT4公式ヘルプでは、スマホアプリの Settings - Messages でMetaQuotes IDを確認できると説明されています。
    • PC版MT4では、OptionsのNotificationsタブでPush notificationsを有効にし、MetaQuotes IDを入力して使います。
    • MQL4の SendNotification() は、Notificationsタブで指定されたMetaQuotes IDのモバイル端末へ通知を送る関数です。

    MetaQuotes IDはスマホ通知の送り先を示すID

    MetaQuotes IDは、PC版MT4からスマホのMetaTraderアプリへプッシュ通知を送る時の送り先として使われます。メールアドレスや電話番号ではなく、モバイル端末側に割り当てられたIDをPC版MT4へ入力する形です。

    MetaTrader 4公式ヘルプでは、MetaQuotes IDはモバイル端末へインストールされた時に割り当てられる一意の識別子と説明されています。つまり、PC版MT4側で適当に作るものではなく、スマホ側のMetaTraderアプリで確認してから入力します。

    公式情報で見るポイント

    MT4公式ヘルプでは、MetaQuotes IDを確認するにはモバイル端末を開き、Settings - Messages へ進むと説明されています。まずスマホ側でIDを確認し、それをPC版MT4のNotificationsタブへ入力する流れで見ます。

    MetaQuotes IDはスマホ側で確認する

    プッシュ通知の設定で最初につまずきやすいのは、MetaQuotes IDをPC版MT4の中で探してしまうことです。IDは通知を受け取るスマホ側のMetaTraderアプリで確認します。

    スマホアプリを入れ直した場合や、別のスマホへ移した場合は、MetaQuotes IDが以前と同じとは限りません。通知が急に届かなくなった時は、古いIDのままPC版MT4に残っていないかも見てください。

    1
    スマホのMetaTraderアプリを開く 通知を受け取りたいスマホ側でアプリを開きます。複数端末がある場合は、受け取りたい端末を先に決めます。
    2
    Messagesまたはメッセージ画面を見る 公式ヘルプでは Settings - Messages でMetaQuotes IDを確認すると説明されています。アプリの表示言語によって表記は少し変わることがあります。
    3
    IDをPC版MT4へ入力する PC版MT4のNotificationsタブへ、スマホ側で確認したMetaQuotes IDを入力します。手入力の場合は文字の抜けや余計な空白に注意します。

    PC版MT4ではNotificationsタブを見る

    PC版MT4側では、オプション画面のNotificationsタブでプッシュ通知を設定します。公式ヘルプでは、Enable Push notifications を有効にするとクライアント端末から通知を送れるようになると説明されています。

    また、公式ヘルプでは、MetaQuotes IDはカンマ区切りで複数入力でき、最大4つまで指定できると説明されています。複数スマホやタブレットに同時送信したい場合は便利ですが、最初の確認では1つだけ入力してTestする方が原因を分けやすくなります。

    Enable Push notifications 送信を許可する項目

    PC版MT4からスマホへ通知を送るための基本設定です。まずここが有効かを見ます。

    MetaQuotes ID 通知の送り先

    スマホアプリ側で確認したIDを入力します。複数IDを入れる場合はカンマ区切りで見ます。

    Test 送信確認

    設定後にTestを使い、スマホへ通知が届くかを見ます。届かない場合はIDとスマホ側の通知許可を分けて見ます。

    AlertのNotificationとMetaQuotes IDの関係

    MT4のAlertでは、Actionに Notification を選ぶことでモバイル端末へプッシュ通知を送る形にできます。公式ヘルプでは、プッシュ通知を送るには端末設定でMetaQuotes IDを指定する必要があると説明されています。

    Alert EditorのSourceには、Actionによって指定する内容が変わります。Notificationの場合は、Sourceにプッシュメッセージの本文を指定し、最大メッセージ長は255文字と説明されています。

    Sound PC側で音を鳴らす

    PC版MT4で音声ファイルを再生するアラートです。スマホ通知とは役割が違います。

    Email メール設定を使う

    EmailタブのSMTP設定を使います。MetaQuotes IDではなくメール送信設定を見ます。

    Notification スマホへプッシュ通知

    NotificationsタブのMetaQuotes IDを使います。スマホ側のアプリと通知許可も関係します。

    インジケーターやEAではSendNotificationを見る

    カスタムインジケーターやEAがプッシュ通知を送る場合、MQL4の SendNotification() が使われることがあります。MQL4公式ドキュメントでは、この関数はNotificationsタブで指定されたMetaQuotes IDのモバイル端末へプッシュ通知を送ると説明されています。

    つまり、ツール側にプッシュ通知機能があっても、PC版MT4のNotificationsタブでMetaQuotes IDが入っていなければ通知先を見失います。逆に、Test通知は届くのにインジケーター通知だけ届かない場合は、ツール側の通知設定、条件成立、関数の呼び出し頻度を分けて見ます。

    SendNotificationを見る時の注意

    MQL4公式ドキュメントでは、SendNotification() のメッセージ長は255文字以内で、Strategy Testerでは動作しないと説明されています。また、呼び出し頻度にも制限があります。バックテスト中に通知が来ないからといって、すぐに設定ミスとは判断しないでください。

    MetaQuotes IDが合っていても届かない時に見ること

    MetaQuotes IDを入力していても、通知が届かないことがあります。その場合は、IDだけでなく、PC版MT4の通知許可、Test結果、スマホ側の通知許可、アプリの状態、ツール側の通知条件を分けて見ます。

    特に、PC版MT4のTest通知が届くかどうかは切り分けに使いやすい項目です。Test通知が届かない場合は、ID、Notificationsタブ、スマホ側の通知許可を先に見ます。Test通知は届くのに特定のインジケーター通知だけ届かない場合は、インジケーター側の設定や発動条件を見る流れになります。

    Testも届かない 基本設定を見直す

    MetaQuotes ID、Enable Push notifications、スマホ側の通知許可、アプリのMessages画面を見ます。

    Testは届く ツール側を見る

    インジケーターやEAの通知設定、条件成立、SendNotificationの使われ方を分けて見ます。

    途中から届かない 端末変更やアプリ再インストールを見る

    スマホ変更やアプリ入れ直しでMetaQuotes IDが変わっていないかを確認します。

    通知を使う前のチェックリスト

    プッシュ通知は、PC版MT4、スマホアプリ、通知を出すAlertやインジケーターがつながって初めて使えます。どこか一つだけを見ても原因が見えにくいので、順番に分けて見てください。

    作業前に押さえること
    • スマホのMetaTraderアプリでMetaQuotes IDを確認したか
    • PC版MT4のNotificationsタブでPush notificationsを有効にしたか
    • MetaQuotes IDを余計な空白や文字抜けなく入力したか
    • 複数IDを入れる場合、カンマ区切りになっているか
    • Test通知がスマホへ届くか
    • スマホ側でアプリ通知が許可されているか
    • AlertのActionがNotificationになっているか
    • インジケーターやEA側でプッシュ通知が有効になっているか
    • バックテスト中の通知確認と実運用中の通知確認を混同していないか

    ラボメモ

    MetaQuotes IDで迷う時は、PC版MT4ではなくスマホ側のMetaTraderアプリを起点にすると原因を分けやすくなります。

    Test通知が届くかどうかで、基本設定の問題なのか、インジケーターやEA側の問題なのかを切り分けて見てください。

    用語集であわせて見たい言葉

    関連して読みたい記事

    まとめ

    MetaQuotes IDは、MT4のプッシュ通知をスマホへ送る時に使う送り先のIDです。PC版MT4の中で作るものではなく、スマホのMetaTraderアプリ側で確認し、PC版MT4のNotificationsタブへ入力して使います。

    PC版MT4ではPush notificationsを有効にし、MetaQuotes IDを入力してTest通知を送ります。Alertでスマホ通知を使う場合はActionをNotificationにし、インジケーターやEAが通知を送る場合は SendNotification() とツール側の通知設定も見ます。

    通知が届かない時は、MetaQuotes IDだけを疑うのではなく、Test通知、スマホ側の通知許可、アプリ再インストール、ツール側の通知条件を分けて見てください。

    参考文献
    • MetaTrader 4 Help「Notifications」https://www.metatrader4.com/en/trading-platform/help/setup/settings_notifications
    • MetaTrader 4 Help「Alerts」https://www.metatrader4.com/en/trading-platform/help/overview/terminal/terminal_alerts
    • MQL4 Documentation「SendNotification」https://docs.mql4.com/common/sendnotification
    • MQL4 Documentation「Client Terminal Properties」https://docs.mql4.com/constants/environment_state/terminalstatus
  • MT4メール通知のSMTP設定でつまずく時に見ること

    MT4のメール通知でつまずく時は、アラート条件よりもSMTP設定で止まっていることがあります。SMTPサーバー、ポート、ログイン、パスワード、From、Toのどれかがずれていると、Testでは失敗したり、EAやインジケーターからのメールが送れなかったりします。

    この記事では、MetaTrader 4公式ヘルプとMQL4公式ドキュメントをもとに、MT4メール通知のSMTP設定で見る項目を分けます。メールサービス側の仕様は変わることがあるため、実際のSMTPサーバー名、ポート番号、認証方法は、利用しているメールサービスの公式情報で最新条件を確認してください。

    先に短く言うと
    • MT4のメール通知は、ToolsのOptionsにあるEmailタブで設定します。
    • MetaTrader 4公式ヘルプでは、Enableを有効にし、SMTP Server、SMTP Login、SMTP Password、From、Toを入力すると説明されています。
    • SMTP Serverは、サーバーのアドレスとポート番号を smtp.example.com:25 のような形式で入れる項目です。
    • MQL4の SendMail() は、Emailタブに指定された宛先へメールを送る関数です。Strategy Testerでは動作しないと説明されています。

    SMTP設定はメールを送るための出口を見る場所

    SMTPは、MT4からメールを送るために使う送信側の設定です。MT4のアラートやEAが「メールを送る」処理をしても、Emailタブの設定が合っていなければ、実際のメール送信で止まります。

    メール通知でつまずく時は、まず価格アラートやEAの条件ではなく、MT4がメール送信に使う出口が通っているかを見ます。ここで見るのが、SMTP Server、SMTP Login、SMTP Password、From、To、Testです。

    SMTP Server 送信サーバーとポート

    メールを送るためのサーバー名とポート番号を指定します。メールサービスごとに条件が違います。

    Login / Password 認証情報

    送信サーバーを使うためのログイン情報です。通常のメールパスワードと別の認証が必要な場合もあります。

    From / To 送信元と送信先

    MT4がどのメールアドレスから、どの宛先へ送るかを見る項目です。複数指定には注意が必要です。

    Emailタブで見る項目を分ける

    MetaTrader 4公式ヘルプでは、Emailタブは電子メールボックスを設定する場所で、この設定はEAのコマンドや発動したAlertからメッセージを送る時に使われると説明されています。

    同じ公式ヘルプでは、メール設定を始めるには Enable を有効にし、SMTP Server、SMTP Login、SMTP Password、From、Toを入力すると説明されています。設定をまとめて見るのではなく、項目ごとに意味を分けると、どこでつまずいているかを追いやすくなります。

    公式情報で見るポイント

    MetaTrader 4公式ヘルプでは、SMTP ServerはSMTPサーバーのアドレスと利用ポートを入力する項目で、[server web address] : [port number] の形式で記録すると説明されています。例として smtp.your_email_provider.com:25 のような形式が示されています。

    SMTP Serverはサーバー名とポート番号をセットで見る

    SMTP Server欄では、メールサービスの送信サーバー名だけでなく、ポート番号も見ます。サーバー名が合っていても、ポート番号が違うとTestで失敗することがあります。

    また、利用するメールサービスによって、暗号化方式、認証方法、外部アプリからの送信条件が異なる場合があります。MT4側だけで判断せず、メールサービス側の公式ヘルプで、SMTPサーバー名、ポート番号、認証方法を確認してください。

    SMTP Serverで見ること
    • SMTPサーバー名がメールサービス公式の情報と一致しているか
    • ポート番号まで入力しているか
    • smtp.example.com:587 のように、サーバー名とポートをセットで見ているか
    • 古い設定例や個人ブログの設定値をそのまま使っていないか
    • 利用しているメールアカウントで外部アプリからのSMTP送信が許可されているか

    LoginとPasswordはメールサービス側の条件も見る

    MetaTrader 4公式ヘルプでは、SMTP Loginは認証に使うログイン、SMTP Passwordは認証に使うパスワードと説明されています。通常はメールアドレスやメールボックスの認証情報を使います。

    ただし、近年のメールサービスでは、通常のログインパスワードとは別に、アプリ用パスワードや追加の認証設定が必要になる場合があります。これはMT4の問題というより、メールサービス側のセキュリティ仕様です。使っているメールサービスの公式情報で、外部メールソフトやSMTP送信に必要な認証方法を見てください。

    パスワード欄で止まりやすい点

    ブラウザでメールにログインできることと、MT4からSMTPで送信できることは同じではありません。メール通知だけが通らない場合は、SMTP送信用の認証条件を別に見てください。

    FromとToは1件ずつ分けて見る

    MetaTrader 4公式ヘルプでは、Fromはメッセージの送信元アドレス、Toは送信先アドレスと説明されています。FromにはSMTPに使うメールサーバー上の名前とメールアドレスを入れる項目です。

    同じ公式ヘルプでは、FromとToの各フィールドには1つのメールアドレスだけ指定でき、複数のメールアドレスを区切り付きまたは区切りなしで入れても受け付けられないと注意されています。複数宛先へ送りたい場合でも、まずは1件だけでTestを通す方が原因を追いやすくなります。

    From 送信元

    どのメールアドレスから送るかを指定します。SMTP Loginと関係する場合があります。

    To 送信先

    通知を受け取りたいメールアドレスを指定します。まずは1件だけで確認します。

    複数宛先 最初は避ける

    公式ヘルプでは、FromとToはそれぞれ1つのメールアドレスだけ指定できると説明されています。

    Testで失敗した時はJournalも見る

    MetaTrader 4公式ヘルプでは、Testは指定した設定でテストメッセージを送信し、設定が動作するかを確認するものと説明されています。テストに成功した場合は、OKを押して設定を反映します。

    テストに失敗した場合、公式ヘルプではすべての設定を確認し、端末を再起動してから再度テストメッセージを送ることが推奨されています。画面上の失敗表示だけで判断せず、Journalに出るメッセージも合わせて見ると、認証、サーバー、接続、入力ミスのどれに近いかを分けやすくなります。

    1
    Enableを入れる Emailタブでメール通知を使う状態にします。ここが無効だと設定を入力しても使えません。
    2
    SMTP Serverを入れる サーバー名とポート番号を、メールサービス公式の形式に合わせて入力します。
    3
    LoginとPasswordを見る SMTP送信に使う認証情報を入力します。必要に応じてアプリ用パスワードなどの条件も見ます。
    4
    FromとToを1件ずつ入れる まずは複数宛先にせず、送信元と送信先を1件ずつにしてTestします。
    5
    TestとJournalを見る Testの結果とJournalを見ます。成功したらOKで保存します。

    SendMailを使うEAやインジはEmailタブに依存する

    MQL4公式ドキュメントでは、SendMail() はEmailタブの設定画面で指定されたアドレスへメールを送る関数と説明されています。つまり、EAやインジケーター側でメール送信処理があっても、MT4のEmailタブが未設定または無効なら送信できません。

    同じドキュメントでは、送信が設定で禁止されている場合やメールアドレスが省略されている場合があり、エラー情報は GetLastError() で確認すると説明されています。また、SendMail() はStrategy Testerでは動作しないとされています。

    EA側 メール送信条件を見る

    EAやインジケーターの入力設定で、メール通知を有効にしているかを見ます。

    MT4側 Emailタブを見る

    SendMailはEmailタブの設定を使います。Enable、SMTP、From、Toを見ます。

    検証側 Strategy Testerでは分ける

    公式ドキュメントでは、SendMailはStrategy Testerでは動作しないと説明されています。

    メールが届かない全体問題とは分けて見る

    SMTP設定でつまずく時と、メール通知が届かない時は重なる部分があります。ただし、届かない原因は、SMTP設定だけではありません。アラート条件、EA側の通知設定、MT4の起動状態、回線、迷惑メールフォルダ、メールサービス側の制限なども関係します。

    この記事では、SMTP設定の見方に絞っています。メール通知が届かない原因を広く見たい場合は、既存記事の「MT4のアラートメールが届かない時に見る設定」とあわせて確認してください。

    SMTP設定で見るチェックリスト
    • EmailタブのEnableが有効になっているか
    • SMTP Serverにサーバー名とポート番号を入れているか
    • SMTP Loginがメールサービス側の条件と合っているか
    • SMTP PasswordがSMTP送信用の条件と合っているか
    • FromとToを1件ずつ指定しているか
    • Testで送信できるか
    • 失敗時にJournalを見たか
    • EAやインジケーター側のメール通知設定が有効か
    • Strategy Tester上でメール送信を確認しようとしていないか

    ラボメモ

    MT4のSMTP設定で迷う時は、まずMT4側の入力欄と、メールサービス側の送信条件を分けて見ると原因を追いやすくなります。

    古い設定例をそのまま使うより、現在使っているメールサービスの公式情報でSMTPサーバー、ポート、認証方法を見直してください。

    用語集であわせて見たい言葉

    関連して読みたい記事

    まとめ

    MT4メール通知のSMTP設定でつまずく時は、EmailタブのEnable、SMTP Server、SMTP Login、SMTP Password、From、Toを分けて見ます。特にSMTP Serverは、サーバー名だけでなくポート番号まで含めて確認します。

    Testで失敗する場合は、入力ミスだけでなく、メールサービス側のSMTP送信条件、認証方法、外部アプリ利用条件も見てください。成功したらOKで保存し、失敗した場合はJournalも合わせて確認します。

    EAやインジケーターの SendMail() は、MT4のEmailタブ設定に依存します。Strategy Testerでは動作しない点も分けて見ておくと、検証中にメールが来ない理由を誤解しにくくなります。

    参考文献
    • MetaTrader 4 Help「Email」https://www.metatrader4.com/en/trading-platform/help/setup/setup_email
    • MQL4 Documentation「SendMail」https://docs.mql4.com/common/sendmail
    • MQL4 Documentation「Runtime Errors」https://docs.mql4.com/constants/errorswarnings/errorcodes
  • MT4のアラート音を変更したい時に見る設定

    MT4のアラート音は、初期状態のままだと聞き分けにくかったり、他の通知音と混ざったりすることがあります。価格アラート、インジケーターの通知、EAの通知を同じ音で受けていると、何が反応したのか分かりにくくなる場面もあります。

    この記事では、MetaTrader 4公式ヘルプとMQL4公式ドキュメントをもとに、MT4のアラート音を変更する時に見る場所、Alertの SoundSource、音声ファイルの種類、Sounds フォルダ、インジケーターやEA側で音が指定されている場合の見方を分けて見ます。

    先に短く言うと
    • MT4のAlertでは、Actionに Sound を選ぶと音声ファイルを再生できます。
    • MetaTrader 4公式ヘルプでは、AlertのSourceには音声ファイルとして *.wav*.mp3*.wma を指定できると説明されています。
    • MQL4の PlaySound() を使う場合、公式ドキュメントでは音声ファイルは terminal_directory\Sounds またはそのサブフォルダに置き、WAVファイルを使うと説明されています。
    • インジケーターやEAが独自に音声ファイル名を指定している場合、MT4側の一般設定だけでは変わらないことがあります。

    まずどのアラート音を変えたいのか分ける

    MT4のアラート音といっても、いくつか種類があります。価格に対して設定したAlertの音、インジケーターが出す音、EAが出す音、接続やエラーなどの端末イベント音を同じものとして見ると、設定場所を間違えやすくなります。

    まずは、自分が変えたい音がどれなのかを分けてください。価格アラートの音を変えたいのか、インジケーターのサイン音を変えたいのか、EAが鳴らす音を変えたいのかで、見る場所が変わります。

    価格アラート AlertのSoundを見る

    ターミナルのAlertsで設定する通知です。Action、Source、Testなどを見ながら音声ファイルを指定します。

    インジケーター パラメータやファイル指定を見る

    インジケーター側に音声ファイル名や通知設定がある場合があります。MT4全体の設定とは別に見ます。

    EA EA側の通知条件を見る

    EAが独自に音を鳴らす場合、入力パラメータやMQL4側の指定が関係することがあります。

    Alertの音はActionとSourceを見る

    MetaTrader 4公式ヘルプでは、AlertのActionとして Sound を選ぶと音声ファイルを再生できると説明されています。Alertの設定画面では、Actionに何をするか、Sourceに何を使うかを指定します。

    音を変更したい場合は、AlertのActionが Sound になっているか、Sourceに目的の音声ファイルが入っているかを見ます。公式ヘルプでは、Source欄には音声ファイルとして *.wav*.mp3*.wma を指定できると説明されています。

    公式情報で見るポイント

    MetaTrader 4公式ヘルプでは、Alertの Test ボタンで選択したアラートの動作を確認でき、変更を反映するには OK を押す必要があると説明されています。音を選んだだけで閉じてしまうのではなく、テストと保存を分けて見てください。

    価格アラート音を変える時の流れ

    価格アラートの音を変える場合は、ターミナルのAlertsから対象のアラートを開きます。すでに作成済みのアラートを編集する場合と、新しくアラートを作る場合で画面の入り方は違いますが、見る項目は近いです。

    ここでは、音声ファイルを変更する時に見る流れを分けます。実際の画面名や右クリックメニューは、利用しているMT4の言語設定やブローカー版によって表記が少し違うことがあります。

    1
    対象のAlertを開く ターミナルのAlertsから、変更したいアラートを開きます。まずは価格条件や有効状態も一緒に見ます。
    2
    ActionをSoundにする 音を鳴らすアラートにしたい場合は、Actionが Sound になっているかを見ます。
    3
    Sourceで音声ファイルを選ぶ 鳴らしたい音声ファイルをSourceに指定します。ファイル形式や置き場所は、アラートの種類によって分けて見ます。
    4
    Testで確認してOKで保存する 音が鳴るかをTestで見たうえで、変更を反映するためにOKで保存します。

    WAVファイルとSoundsフォルダの扱いを見る

    MT4のアラート音を変える時に混乱しやすいのが、価格アラートのSource指定と、MQL4プログラム側の PlaySound() 指定です。価格アラートのSourceでは複数の音声形式が説明されていますが、MQL4の PlaySound() では扱いが異なります。

    MQL4公式ドキュメントでは、PlaySound() で再生する音声ファイルは terminal_directory\Sounds またはそのサブフォルダに置く必要があり、再生されるのはWAVファイルと説明されています。インジケーターやEAが PlaySound() を使っている場合は、WAVファイルとSoundsフォルダを分けて見ます。

    AlertのSource 価格アラート側の指定

    公式ヘルプでは、Sourceに音声ファイルを指定できると説明されています。Alert設定画面でTestできるかを見ます。

    PlaySound() MQL4プログラム側の指定

    公式ドキュメントでは、音声ファイルは terminal_directory\Sounds 配下に置き、WAVファイルを使うと説明されています。

    Custom Indicator / EA ツール側の指定

    インジケーターやEAの入力設定に音声ファイル名がある場合は、そこで指定を変えられることがあります。

    独自の音を使う時は既存ファイルを消さずに試す

    独自の音声ファイルを使いたい場合、最初から既存の音声ファイルを上書きするより、別名で追加して試す方が確認しやすくなります。たとえば既存の alert.wav を置き換えるのではなく、別名のWAVファイルを用意し、Sourceやツール側の設定で指定できるかを見る流れです。

    既存ファイルを上書きすると、元の状態へ戻したい時に手間が増えます。ブローカー版MT4やインストール方法によって、Soundsフォルダの位置が分かりにくい場合もあるため、まずは既存の音声ファイルがある場所を確認してから作業してください。

    音声ファイルを入れる時の注意

    長すぎる音や大きすぎる音は、複数のアラートが続いた時に聞き分けにくくなることがあります。通知音は、相場判断を代わりに行うものではなく、条件に気づくための補助として扱ってください。

    インジケーターの音はMT4側だけでは変わらないことがある

    インジケーターやEAが鳴らす音は、MT4のAlert設定だけでは変わらないことがあります。ツール側で SoundFileAlertSoundUseSound のような入力項目が用意されている場合は、その設定を見ます。

    一方で、インジケーターやEAの内部で音声ファイル名が固定されている場合、入力画面から変更できないこともあります。その場合は、配布元の説明、同梱ファイル、パラメータ項目、ソースファイルの有無を分けて見る必要があります。

    インジやEA側で見ること
    • 入力パラメータに音声ファイル名を指定する項目があるか
    • UseAlertUseSoundSoundFile などの項目があるか
    • 同梱ファイルにWAVファイルが含まれているか
    • 説明書でSoundsフォルダへの配置が指定されていないか
    • MT4側のAlertではなく、ツール側の通知として鳴っていないか

    音が鳴らない問題とは分けて見る

    アラート音を変更したい場合と、そもそも音が鳴らない場合は、見るポイントが少し違います。音が鳴らない時は、MT4の設定だけでなく、PC側の音量、スピーカー、ミュート、アラートの有効状態、ファイルの場所、Test結果なども見ます。

    この記事では音の変更を中心に見ています。音が鳴らない原因を広く見たい場合は、既存記事の「MT4アラートが鳴らない時に見ること」とあわせて読むと、原因を分けやすくなります。

    変更したい 音声ファイルを変える

    AlertのSource、WAVファイル、Soundsフォルダ、ツール側の音声指定を見ます。

    鳴らない 出力条件を見る

    アラートが有効か、PC音量、Test、ファイルの場所、MT4が起動しているかを見ます。

    聞き分けたい 用途ごとに音を分ける

    価格アラート、インジケーター、EAで音を分けると、何が反応したのかを見やすくなります。

    アラート音を変更する前のチェックリスト

    音声ファイルを差し替える前に、変更対象を分けておくと作業が戻りやすくなります。価格アラートなのか、インジケーターなのか、EAなのかを先に分けてください。

    作業前に押さえること
    • 変更したい音が、価格アラート・インジケーター・EAのどれかを分けたか
    • AlertのActionが Sound になっているか
    • Sourceに目的の音声ファイルが指定されているか
    • Testで選んだ音を確認したか
    • 変更後にOKで保存したか
    • インジケーターやEA側に音声設定項目があるか
    • PlaySound() を使う場合、WAVファイルとSoundsフォルダを見ているか
    • 既存の音声ファイルを上書きせず、戻せる状態で試しているか

    ラボメモ

    MT4のアラート音を変える時は、まず「どの通知が鳴っているのか」を分けると迷いにくくなります。

    価格アラート、インジケーター、EAでは、同じ音に聞こえても設定場所が違う場合があります。音声ファイルを入れ替える前に、AlertのSourceとツール側の設定を別々に見てください。

    用語集であわせて見たい言葉

    関連して読みたい記事

    まとめ

    MT4のアラート音を変更したい時は、まず価格アラート、インジケーター、EAのどの音を変えたいのかを分けます。価格アラートであれば、AlertのActionを Sound にし、Sourceに音声ファイルを指定し、Testで確認してからOKで保存します。

    インジケーターやEAが音を鳴らしている場合は、MT4側のAlert設定だけでなく、ツール側の入力パラメータや音声ファイル名も見ます。MQL4の PlaySound() を使う場合は、WAVファイルと terminal_directory\Sounds 配下の扱いも分けて見てください。

    アラート音は、相場を判断するためのものではなく、条件に気づくための補助です。音を変えること自体よりも、どの通知が何を知らせているのかを分けておくことが大切です。

    参考文献
    • MetaTrader 4 Help「Alerts」https://www.metatrader4.com/en/trading-platform/help/overview/terminal/terminal_alerts
    • MQL4 Documentation「PlaySound」https://docs.mql4.com/common/playsound
    • MQL4 Book「Sound Files」https://book.mql4.com/appendix/sounds