MQL4の日時の演算方法

2024年10月1日

執筆者

佐川直弘(株式会社トリロジー取締役)

日時の演算

日時に対して時間を足す、引く方法

MQL4では、通常の四則演算子(`+`、`-`)を使用して、日時に対して時間を足したり引いたりすることができます。日時型(datetime)は、Unixタイムスタンプ(1970年1月1日00:00:00 UTCからの経過秒数)で表されているため、秒単位での計算が可能です。
例えば、1時間を足すには3600秒を足し、1時間を引くには3600秒を引きます。

使用例とサンプルコード

以下のサンプルコードは、現在のサーバー時間に対して1時間を足したり引いたりする方法を示しています。

サンプルコード
void OnStart()
{
  // 現在のサーバー時間を取得
  datetime currentTime = TimeCurrent();

  // 1時間(3600秒)を足す
  datetime futureTime = currentTime + 3600;
  Print(“現在の時間: “, TimeToString(currentTime, TIME_DATE | TIME_MINUTES));
  Print(“1時間後の時間: “, TimeToString(futureTime, TIME_DATE | TIME_MINUTES));

  // 1時間(3600秒)を引く
  datetime pastTime = currentTime – 3600;
  Print(“1時間前の時間: “, TimeToString(pastTime, TIME_DATE | TIME_MINUTES));
}

このコードを実行すると、ターミナルウィンドウに現在のサーバー時間、1時間後の時間、1時間前の時間がそれぞれ表示されます。

サンプルコードの実行結果

  • 現在の時間: 2024.06.30 12:45
  • 1時間後の時間: 2024.06.30 13:45
  • 1時間前の時間: 2024.06.30 11:45

このように、MQL4では簡単に日時に対して時間を足したり引いたりすることができます。これを活用することで、トレード戦略を時間に基づいて柔軟に制御することが可能になります。

MQL4

Posted by 佐川直弘