MARKET
9/25 8:27 時点|ドル円158.78▼-7 pips|ドル円 予想レンジ158.41 〜 159.23|ドル円 上の節目158.90▲|ドル円 下の節目157.80▼|ユーロドル1.1378▼-2 pips|ユーロドル 予想レンジ1.1351 〜 1.1408|ユーロドル 上の節目1.1403▲|ユーロドル 下の節目1.1359▼|きょうの指標重要指標なし|

OnDeinit ― 外れる直前に呼ばれる、後片付け処理|MQL4/MQL5リファレンス

MQLリファレンス›関数イベントハンドラOnDeinit
(‘both’, ‘MQL4 / MQL5 両対応’)イベントハンドラ後片付け

OnDeinit外れる直前に呼ばれる、後片付け処理

EA・インジケーターがチャートから外れる直前に呼ばれる。タイマーの停止・自分で描いたオブジェクトの削除など、後片付けをここに書く。

1書式

void OnDeinit(
   const int reason   // 外れた理由
);

書式はMQL4・MQL5で同じ。MQL4は同じ理由をUninitializeReason()でも取得できる。

2引数

引数 内容
reason 外れた理由。REASON_REMOVE(手動で外した)・REASON_CHARTCLOSE(チャートを閉じた)・REASON_PARAMETERS(パラメータ変更)等

3戻り値

戻り値は無し(void)。

4使用例

int OnInit() { EventSetTimer(60); return(INIT_SUCCEEDED); }
void OnTick() {}

void OnDeinit(const int reason)
{
   EventKillTimer();
   ObjectsDeleteAll(0, "mypanel_");
   Print("終了理由: ", reason);
}

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

6よくある罠

⚠ 実務で踏んだもの
  • reasonがREASON_PARAMETERSのときは、パラメータ変更による再起動であり、この直後にまたOnInitから始まる。「完全に終了する」場合と混同すると、保持しておきたい状態を誤って消してしまう。
  • OnDeinitの中で新しく描画オブジェクトを作っても、ほぼ意味が無い。このあとすぐチャートから消える(あるいは既に消えかけている)タイミングのため。

7関連する関数

MORNING BRIEF平日 毎朝7時までに更新

今日はどこを見ればいいか。

ドル円とユーロドルの主要ライン・予想高値安値を、平日の朝に図1枚にまとめています。

朝刊を見る→
9/25 8:27 時点ドル円158.78▼-7 pipsドル円 予想レンジ158.41 〜 159.23ドル円 上の節目158.90▲ドル円 下の節目157.80▼ユーロドル1.1378▼-2 pipsユーロドル 予想レンジ1.1351 〜 1.1408ユーロドル 上の節目1.1403▲ユーロドル 下の節目1.1359▼きょうの指標重要指標なし
REI-FX&BO OFFICIAL LINE

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

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

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

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