(‘both’, ‘MQL4 / MQL5 両対応’)実行制御
目次
GetTickCount端末が起動してからの経過時間を測る(ミリ秒)
端末が起動してからの経過時間をミリ秒で返す。処理にかかった時間を測る、一定間隔ごとに何かをする、といった用途に使う。
1書式
ulong GetTickCount();
MQL4では戻り値がint(約24.8日で一周する)だが、MQL5ではulongに拡張され、実用上一周を気にしなくてよくなった。
2引数
無し。
3戻り値
端末起動からの経過ミリ秒。
4使用例
ulong t0 = GetTickCount();
// 何か重い処理
Print("処理時間: ", GetTickCount() - t0, "ms");
MetaEditorでコンパイル0エラー・0警告を確認済み。
5MQL4→MQL5の違い
🔁 差分
MQL4は戻り値がintで、約24.8日で0に巻き戻る(オーバーフロー)。MQL5はulongになり、実用上気にしなくてよい大きさになった。
6よくある罠
⚠ 実務で踏んだもの
- MQL4で連続稼働が長いEAは、巻き戻りを考慮しないと経過時間の計算が一時的におかしくなる。差分の計算だけなら符号なし演算の性質上たいてい問題ないが、絶対値の比較には注意。