Bars

指定した通貨ペア・時間軸のヒストリカルデータ内のバー数を返します。
関数呼び出しには2つのバリアントがあります。

Bars

関数書式(ヒストリカルデータの全てのバーを要求する):

int  Bars(
    string             symbol,          // 通貨ペア
    ENUM_TIMEFRAMES   timeframe       // 時間軸
);

関数書式(ヒストリカルデータの指定して期間のバーを要求する):

int  Bars(
    string             symbol,          // 通貨ペア
    ENUM_TIMEFRAMES   timeframe       // 時間軸
    datetime           start_time,      // 開始日時
    datetime           stop_time,       // 終了日時
);
  • 引数
引数名初期値I/O詳細
symbol-In-通貨ペア名。
NULL指定は現在の通貨ペアを意味します。
timeframe-In時間軸。
ENUM_TIMEFRAMES列挙の値を指定します。
start_time-In開始日時。
最初の要素に対応するバー日時。
stop_time-In終了日時。
最後の要素に対応するバー日時。
  • 戻り値

start_timeとstop_timeの引数が指定されている場合、指定された期間内のバーの数を返します。
それ以外の場合、バーの合計数を返します。

  • 備考

引数で指定した時間軸のヒストリカルデータが、この関数の呼び出し時間までにデータが生成されない場合、または関数呼び出し時点でヒストリカルデータが取引サーバーと同期されていない場合、戻り値は0を返します。

  • サンプルソース
void OnInit() {

    datetime get_start = D'2020.01.03 12:00:00'; // 取得開始日時
    datetime get_end   = D'2020.01.05 12:00:00'; // 取得終了日時
    int      get_bar   = 0;

    get_bar = Bars(          // バー取得
                  Symbol(), // 通貨ペア
                  Period(), // 時間軸
                  get_start, // 開始日時
                  get_bar    // 終了日時
                 );

    printf( "取得バー数%d ,取得期間 %s ~ %s",
        get_bar ,
        TimeToStr(get_start),
        TimeToStr(get_end)
    );

}

Twitterでフォローしよう

おすすめの記事