【MQL4勉強プログラミング】時間軸のPeriodSeconds()関数とは?時間軸の秒数を取得!

ザフナーラボブログ

PeriodSeconds()関数は、指定した時間軸の秒数を取得するために使用します。

PeriodSeconds()関数は、以下のように定義されています。

int PeriodSeconds(
ENUM_TIMEFRAMES period=PERIOD_CURRENT
);

引数の意味は、以下のとおりです。

  • ENUM_TIMEFRAMES period
    以下の表に従って、秒数を取得したい時間軸を指定します。

    timeframeの種類

    種 類
    定 数
    内 容
    PERIOD_CURRENT
    現在の時間足
    PERIOD_M1
    1分足
    PERIOD_M5
    5分足
    PERIOD_M15
    15
    15分足
    PERIOD_M30
    30
    30分足
    PERIOD_H1
    60
    1時間足
    PERIOD_H4
    240
    4時間足
    PERIOD_D1
    1440
    日 足
    PERIOD_W1
    10080
    週 足
    PERIOD_MN1
    43200
    月 足

    当該引数を指定しない場合は、プログラムが実行されているチャートの時間軸の秒数が返されます。

戻り値

引数に指定した時間軸の秒数が返されます。

具体例

各時間軸の秒数を、「ターミナルウィンドウ」のエキスパートタブに表示したい場合は、以下のように記述します。


int start()
{
 Print(“M1:”,PeriodSeconds(PERIOD_M1),”sec”);
 //「M1:60sec」と表示される

 Print(“M5:”,PeriodSeconds(PERIOD_M5),”sec”);
 //「M5:300sec」と表示される

 Print(“M15:”,PeriodSeconds(PERIOD_M15),”sec”);
 //「M15:900sec」と表示される

 Print(“M30:”,PeriodSeconds(PERIOD_M30),”sec”);
 //「M30:1800sec」と表示される

 Print(“H1:”,PeriodSeconds(PERIOD_H1),”sec”);
 //「H1:3600sec」と表示される

 Print(“H4:”,PeriodSeconds(PERIOD_H4),”sec”);
 //「H4:14400sec」と表示される

 Print(“D1:”,PeriodSeconds(PERIOD_D1),”sec”);
 //「D1:86400sec」と表示される

 Print(“W1:”,PeriodSeconds(PERIOD_W1),”sec”);
 //「W1:604800sec」と表示される

 Print(“MN1:”,PeriodSeconds(PERIOD_MN1),”sec”);
 //「MN1:2592000sec」と表示される

 return(0);
}
  • Print()関数の詳細については「こちら」を参照してください。