見出し画像

Pine Script™ (v5) の覚書 - 7 : request.security_lower_tfを使ってマルチタイムフレーム(MTF)移動平均線を描いてみる(3)

前回までの話


request.security_lower_tf()の返り値(arrayの取り扱い)

下位足は複数本

例えば、0:00〜1:00のデータを
・1時間足として描画すると1本のローソク(開始時間0:00)
・15分足として描画すると4本のローソク(開始時間00分,15分,30分,45分)
となる。(図1)
したがって、現在の時間軸に相当する下位足は複数あるため、request.security_lower_tf()では下位足のそれぞれのデータをarray型として返してくる

図1 下位足のデータ数

例えば、1時間足表示の場合、ローソク足の開始時間は、
A. 1時間足では
  mytime=time
B. 下位足(15分足)
  mytime=request.security_lower_tf(syminfo.tickerid,"15",time)
でそれぞれ取り出せるが、
A.の場合は、mytimeはint型
B.の場合は、mytimeはarray<int>型
となる。

このため、request.security.lower_tf()の返り値を処理するためには、配列に対する処理が必要になる。本稿では、複数の下位足データから代表する値を一つ作成する。

ここで使うarray関数とその引数

array.max(id)→配列の最大要素を返す
array.min(id)→配列の最小要素を返す
array.avg(id)→配列の要素の平均値を返す