バー数を取得 Bars 関数

関数

時系列とインジケータへのアクセス関数

Bars 関数

この関数は、指定した通貨ペアの指定した時間軸と期間中のバー数を取得します。

データ型と構成・戻り値

この関数には 2つの型があります。

int Bars(①, ②);         // 履歴にある全バー数を計数
int Bars(①, ②, ③, ④); // 指定した期間のバー数を計数

戻り値は、期間を設定している場合は その期間の時間軸のバー数、それ以外は その時間軸のバーの総数を返します。

取得するバー数は、履歴に保存されているものが計数されます。保存されている各時間軸のバーの履歴は MT4のメニューバーの「ツール」→「ヒストリーセンター」から確認できます。

引数 [4]

Bars関数は 2個 または 4個の引数で構成されます。

番号引数名データ型単位初期値説明
symbol_namestring対象とする通貨ペア名。
timeframeenum時間軸。ENUM_TIMEFRAMES 列挙値から選択。
start_timedatetime開始日時。最初の要素に対応するバーの日時。
stop_timedatetime終了日時。最後の要素に対応するバーの日時。

使用例

Bars関数によるバーの計数

Bars関数を使ってヒストリーセンター中にある指定した時間軸の全バー数と指定期間中のバー数を計数します。

今回の対象通貨ペアは「USDJPY」で、期間は 2023/01/30~2023/02/10、1時間軸のバーの計数です。

コード

// Bars関数によるバーの計数
#property strict
void OnInit() {

datetime st = D'2023.01.30 00:00:00'; // 開始日時
datetime et = D'2023.02.10 23:59:59'; // 終了日時

Print("ヒストリー中の全バー数:", Bars(Symbol(), PERIOD_H1));
Print("指定期間中のバー数:",     Bars(Symbol(), PERIOD_H1, st, et));
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

結果

タイトルとURLをコピーしました