平均足チャートを表示しているとき、組み込み(ビルトイン)変数 open
、high
、low
、close
の値は、実際の銘柄の値と違うことに注意。
違う値となる理由は、組み込み(ビルトイン)変数 open
、high
、low
、close
には、チャートに表示しているバー(ロウソク足)に対応する値が入るため。よって、平均足チャートのときは平均足の値が入るため、実際の銘柄の値とは異なる。
これを理解していないと、平均足チャート上に表示しているインディケーター(テクニカル指標)は、実は期待と違うものを表示している可能性がある。
平均足チャートを表示しているときに実際の銘柄の値を取得するには、下記のように security()
を使う必要がある。
//@version=4
study("get OHLC with security()")
symbl = tickerid(syminfo.prefix, syminfo.ticker)
o = security(symbl, timeframe.period, open)
h = security(symbl, timeframe.period, high)
l = security(symbl, timeframe.period, low)
c = security(symbl, timeframe.period, close)
//plot(open)
//plot(o, linewidth=2)
//plot(high)
//plot(h, linewidth=2)
//plot(low)
//plot(l, linewidth=2)
plot(close)
plot(c, linewidth=2)