CopyTime

この関数は、指定された数量の指定されたシンボルと期間のペアのバーのオープン時間のtime_array履歴データを取得します。要素の順序は現在から過去への順序であることに注意してください。つまり、開始位置0は現在のバーを意味します。

CopyTime

要求されたデータ数がターゲット配列の長さより少ない(または多い)場合、関数はメモリを再割り当てしようとするため、まだ未知の量のデータをコピーするとき動的配列をターゲット配列として使用することをお勧めします要求されたデータは完全に適合します。

コピーする必要のあるデータの量がわかっている場合、過剰なメモリの割り当てを防ぐために、静的に割り当てられたバッファに行う方が良いでしょう。

ターゲット配列のプロパティに関係なく-as_series = trueまたはas_series = false。データはコピーされ、最も古い要素がアレイに割り当てられた物理メモリの先頭に配置されます。関数呼び出しには3つのバリアントがあります。

最初の位置と必要な要素の数で呼び出す

int  CopyTime(
   string           symbol_name,     // symbol name
   ENUM_TIMEFRAMES  timeframe,       // period
   int              start_pos,       // start position
   int              count,           // data count to copy
   datetime         time_array[]     // target array to copy open times
   );

開始日と必要な要素の数までに呼び出します

int  CopyTime(
   string           symbol_name,     // symbol name
   ENUM_TIMEFRAMES  timeframe,       // period
   datetime         start_time,      // start date and time
   int              count,           // data count to copy
   datetime         time_array[]     // target array to copy  open times
   );

必要な時間間隔の開始日と終了日までに呼び出します

int  CopyTime(
   string           symbol_name,     // symbol name
   ENUM_TIMEFRAMES  timeframe,       // period
   datetime         start_time,      // start date and time
   datetime         stop_time,       // stop date and time
   datetime         time_array[]     // target array to copy open times
   );

パラメーター

symbol_name

[in]シンボル名。

時間枠

[in]期間。

start_pos

[入力]コピーする最初の要素の開始位置。

カウント

[in]コピーするデータ数。

始まる時間

[入力]コピーする最初の要素の開始時間。

停止時間

[in]コピーする最後の要素に対応するバー時間。

time_array []

[out] 日時型の配列。

戻り値

コピーされたデータ数を返します。エラーの場合は-1を返します。

注意

要求されたデータの間隔全体がサーバー上の使用可能なデータを超えている場合、関数は-1を返します。TERMINAL_MAXBARS(チャート上のバーの最大数)外のデータが要求された場合、関数は-1を返します。

要求された時系列がまだ構築されていない場合、またはサーバーからダウンロードする必要がある場合、関数はすぐに-1を返します。

開始日と必要な要素の数でデータを要求する場合、指定された日付よりも小さい(早い)または等しい日付のデータのみが返されます。つまり、値が返されるバーのオープン時間(ボリューム、スプレッド、インディケーターバッファーの値、オープン、ハイ、ロー、クローズまたはオープンタイムの価格)は常に指定された時間以下です。

指定された日付範囲のデータを要求すると、この間隔のデータのみが返されます。間隔が設定され、数秒までカウントされます。つまり、値が返されるバーのオープン時間(ボリューム、スプレッド、インディケーターバッファーの値、オープン、ハイ、ロー、クローズ、またはオープンタイムの価格)は常に要求された間隔内にあります。

このように、現在の日は土曜日は、指定週間のタイムフレームにデータをコピーしようとする試みである場合に=がLast_Tuesdayのstart_time STOP_TIME = Last_Friday 週間の時間枠のオープン時間は、常に日曜日であるため、関数は、0を返しますが、1週間バーはありません指定された間隔に該当しません。

現在の未完了のバーに対応する値を返す必要がある場合は、start_pos = 0およびcount = 1を指定する最初の形式の呼び出しを使用できます

セクションオブジェクトバインディングのメソッドで履歴データをリクエストする詳細な例を参照してください。そのセクションで利用可能なスクリプトは、最後の1000バーでインジケーターiFractalsの値を取得する方法と、チャートで最後の10個のアップフラクタルと10個のダウンフラクタルを表示する方法を示します。同様の手法は、欠損データがあり、通常次のスタイルを使用して描画されるすべてのインジケーターに使用できます。

  • DRAW_SECTION、
  • DRAW_ARROW、
  • DRAW_ZIGZAG、
  • DRAW_COLOR_SECTION、
  • DRAW_COLOR_ARROW、
  • DRAW_COLOR_ZIGZAG。

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">