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

OnTimer ― 設定した間隔ごとに呼ばれる|MQL4/MQL5リファレンス

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

OnTimer設定した間隔ごとに呼ばれる

値動きとは関係なく、EventSetTimerで決めた秒数ごとに呼ばれる。値動きが止まっている時間帯でも定期的に何かをしたいときに使う。

1書式

void OnTimer();

書式はMQL4・MQL5で同じ。呼ばれるためには先にEventSetTimerが必要。

2引数

無し。

3戻り値

戻り値は無し(void)。

4使用例

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

void OnTimer()
{
   double equity = AccountEquity();
   double balance = AccountBalance();
   if(balance > 0 && equity / balance < 0.5)
      SendNotification("証拠金維持率が50%を切りました");
}

void OnDeinit(const int reason) { EventKillTimer(); }

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

6よくある罠

⚠ 実務で踏んだもの
  • EventSetTimerを呼び忘れると、OnTimerを書いても一度も呼ばれない。OnInitで呼び忘れていないか確認する。
  • 値動きが止まっている時間帯(早朝・週末)でも呼ばれ続ける。重い処理を書くと、相場が動いていない間もサーバー・端末に負荷がかかる。

7関連する関数

REI-FX&BO OFFICIAL LINE

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

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

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

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