
MQL4MQL5 日時
TimeToStruct()
- できること
- datetime を年・月・日・時・分・曜日に分解する
- 対応
- MQL4・MQL5
TimeToStruct() とは
datetime 型の時刻を、年・月・日・時・分・秒・曜日・年初からの日数に分けて MqlDateTime 構造体に入れる関数です。MQL5 には Hour()・DayOfWeek() がないため、時刻の各部分を取り出すときはこの関数を使います。
TimeToStruct() の書式と引数
bool TimeToStruct(datetime dt, MqlDateTime &dt_struct)| 引数 | 型 | 省略時 | 説明 |
|---|---|---|---|
dt | datetime | 必須 | 分解する時刻。 |
dt_struct | MqlDateTime & | 必須 | 結果を受け取る構造体。year、mon、day、hour、min、sec、day_of_week(0=日曜)、day_of_year が入ります。 |
戻り値
成功したら true を返します。
TimeToStruct() の使い方(コード例)
MQL4・MQL5 共通
MqlDateTime t;
TimeToStruct(iTime(_Symbol, PERIOD_CURRENT, 1), t);
string youbi[] = {"日", "月", "火", "水", "木", "金", "土"};
Print(t.year, "年", t.mon, "月", t.day, "日 ", t.hour, "時 ", youbi[t.day_of_week], "曜日");OnTick()・OnStart() などの関数の中に書いて使う例です。MetaEditor でコンパイルできることを確認済みです。
MQL4 と MQL5 の違い
MQL4 の Hour()・TimeHour()・TimeDayOfWeek() などの代わりに使えます。MQL4 でも使えるので、両方で動くコードにしたいときに便利です。












