(‘both’, ‘MQL4 / MQL5 両対応’)実行制御
MQLInfoInteger実行中のプログラム自身の情報を調べる
いま動いているプログラム自身が、テスター上なのか実チャート上なのか、最適化中かどうかなど、実行環境の情報を調べる。テスター専用の分岐を作るときによく使う。
1書式
long MQLInfoInteger( ENUM_MQL_INFO_INTEGER prop_id );
書式はMQL4・MQL5で同じ(MQL4ではIsTesting()等、項目ごとの別関数も残っている)。
2引数
| 引数 | 内容 |
|---|---|
| prop_id | MQL_TESTER・MQL_OPTIMIZATION・MQL_VISUAL_MODE等 |
3戻り値
調べた項目の値(多くは真偽)。
4使用例
if(MQLInfoInteger(MQL_TESTER))
Print("いまテスター上で動いている");
MetaEditorでコンパイル0エラー・0警告を確認済み。
6よくある罠
⚠ 実務で踏んだもの
MQL_TESTERはビジュアルモードかどうかを問わず、テスター上ならすべてtrueになる。ビジュアルモードだけを区別したいときはMQL_VISUAL_MODEを別途調べる必要がある。