MARKET
MT4ツールを、数字で作る。— Team REI|平日の朝に「相場分析」を更新しています|

UninitializeReason ― EAが外れた理由を調べる(MQL4)|MQL4/MQL5リファレンス

MQLリファレンス›関数実行制御・診断UninitializeReason
(‘mt4’, ‘MQL4’)実行制御要書き換え(MQL5)

UninitializeReasonEAが外れた理由を調べる(MQL4)

OnDeinitが呼ばれた理由(チャートを閉じた・パラメータを変えた・端末を終了した等)を調べる。理由によって後始末の処理を変えたいときに使う。

1書式

int UninitializeReason();

MQL5ではOnDeinit(const int reason)の引数として直接渡される形に変わる。

2引数

無し。

3戻り値

REASON_REMOVE・REASON_CHARTCLOSE・REASON_PARAMETERS等の定数。

4使用例

void OnDeinit(const int reason)
{
   if(UninitializeReason() == REASON_PARAMETERS)
      Print("パラメータ変更による再起動。保存済み設定は維持する");
   else
      Print("それ以外の理由で終了: ", reason);
}

MetaEditorでコンパイル0エラー・0警告を確認済み。

5MQL4→MQL5の違い

🔁 差分

MQL5ではUninitializeReason()という関数自体が無く、OnDeinit(const int reason)の引数reasonに直接同じ値が渡される。呼び出し方が関数からパラメータへ変わるだけで、値の意味は同じ。

7関連する関数

REI-FX&BO OFFICIAL LINE

ツールのダウンロードパスワードは
公式LINEで、すぐ届きます。

友だち追加の自動返信でパスワードをお送りします。
新しいツールの公開や、検証でわかったことも先にお知らせします。

全ツールのパスワード新作ツールをいち早く配信は月1〜2回だけ
LINEで友だち追加 パスワードを受け取る ›

追加後にひとことメッセージをいただけると、ツールづくりの参考にします。