【MQL4】アラート・サウンド・メール通知をするプログラミングコード

専業トレーダーは別ですが、ほとんどの人は、仕事とトレードを兼業する形になります。

チャートを監視できない時間が多い兼業トレーダーの場合、監視してないときに限って、トレードしてたら勝ってた。

ということが多くないですか?

トレードスタイルにもよりますが、エントリー条件を満たすことって、そんなに頻繁にありません。

その待ちに待ったチャンスを逃して、それが大きな利益になってた。

なんてことがあると、負けた訳でもないのに、逃した大きな利益を取り返そうと、無理なトレードをしちゃいます。

良くある負けパターンですね。

チャンスを逃さないために、

チャートを監視できないときも、チャンスで通知したい。
エントリー条件を満たしたら、通知するように、自分でプログラミングしたい。

今回は「アラート」「サウンド」「メール」による通知をプログラミングする方法をご紹介します。

スポンサーリンク

アラート通知「Alert関数」

アラート通知とは、ポップアップ通知のことですね。

アラート「メッセージ」と同時に「通知音」も鳴るので、パソコンの音声を有効にしていれば見逃しません。

void Alert(
    argument,     // 始めの値
    ...           // 他の値(最大64個まで)
);

アラート通知に表示する値(メッセージ)を引数で渡します。

カンマ「,」で区切って、複数の値を引数に指定でき、アラート通知では。複数の値を連結して、1つのメッセージとして表示されます。

改行したい場合は、改行文字「\n」又は「\r」を使用すれば可能です。

コード例)

//MAをデッドクロス
Alert ( Symbol() + " M" + IntegerToString(Period()) + " MA DownCross Sign" );

上記コードを「GBPJPY」「5分足」で実行した場合、

「GBPJPY M5 MA DownCross Sign」

という、アラートメッセージ(ポップアップメッセージ)が通知されます。

サウンド通知「PlaySound関数」

サウンド通知は、その名の通り、音声による通知です。

引数で指定した「音声ファイル」を再生します。

bool  PlaySound(

   string  filename   //音声ファイル名

);

コード例)

PlaySound("alert.wav");

再生する音声ファイルは、MT4の「Sounds」フォルダ配下にある「wav」形式の音声ファイルに限られます。

僕の環境では、「Program Files (x86)」の「MT4インストール」フォルダ配下に「Sounds」フォルダがありますが、MT4のバージョンによって違うかも知れません。

C:\Program Files (x86)(MT4インストールフォルダ)\Sounds

ちなみに、ここに自前の音声ファイルをコピーすれば、再生可能です。

メール通知「SendMail関数」

MT4で設定したメールアドレス宛に、Eメールを送信します。

bool SendMail(
    string subject,         // 件名
    string some_text        // 本文
);

宛先のメールアドレスは、MT4のメニューから「ツール」→「オプション」→「E-メール」タブで設定します。

コード例)

//MAをデッドクロス
string title = "MA DownCross " + Symbol() + " M" + IntegerToString(Period());
string text  = "MT4Time [" + TimeToString(TimeCurrent()) + "]\nBid [" + DoubleToString(Bid) + "]";

SendMail( title, text );

上記コードを「GBPJPY」「5分足」で実行した場合、

メール件名:
MA DownCross GBPJPY M5
メール本文:
MT4Time [2022.08.01 09:18]
Bid [154.49700000]

というような内容のEメールが送信されます。

以上、良く使われる3つの通知方法をご紹介しました。

MQL4の通知を上手く活用し、常時チャートが監視できない場合もチャンスを逃さないようにしましょう。

他にも、通知する方法がありますので、また別な機会にご紹介させて頂きます。

タイトルとURLをコピーしました