length = input(title="Length", type=integer, minval=1, defval=14)
breakoutLevel = input(title="Breakout Level", type=float, minval=0, step=0.1, defval=0.5)
_highest(length, start) =>
out = nz(high[start])
for i = start + 1 to length - 1
prev = nz(high[i])
out := out < prev ? prev : out
out
_lowest(length, start) =>
out = nz(low[start])
for i = start + 1 to length - 1
prev = nz(low[i])
out := out > prev ? prev : out
out
max = max(_highest(length, 1), close[length + 1])
min = min(_lowest(length, 1), close[length + 1])
vr = tr(true) / (max - min)
vrColor = vr >= breakoutLevel ? #ff9800 : #3c78d8
plot(vr, title="VR", color=vrColor, transp=0)
hline(breakoutLevel, title="Breakout Level", linestyle=dotted)
변환 문의드립니다. 감사합니다.
답변 1
예스스탁
예스스탁 답변
2020-03-30 14:21:49
안녕하세요
예스스탁입니다.
input : length(14),breakoutLevel(0.5);
var : maxv(0),minv(0),vr(0),vrColor(0);
maxv = max(highest(H,length)[1], close[length + 1]);
minv = min(lowest(L,length)[1], close[length + 1]);
vr = TrueRange/ (maxv - minv);
vrColor = iff(vr >= breakoutLevel,red,blue);
plot1(vr,"VR",vrColor);
PlotBaseLine1(breakoutLevel,"Breakout Level");
즐거운 하루되세요
> 로즈버드 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> length = input(title="Length", type=integer, minval=1, defval=14)
breakoutLevel = input(title="Breakout Level", type=float, minval=0, step=0.1, defval=0.5)
_highest(length, start) =>
out = nz(high[start])
for i = start + 1 to length - 1
prev = nz(high[i])
out := out < prev ? prev : out
out
_lowest(length, start) =>
out = nz(low[start])
for i = start + 1 to length - 1
prev = nz(low[i])
out := out > prev ? prev : out
out
max = max(_highest(length, 1), close[length + 1])
min = min(_lowest(length, 1), close[length + 1])
vr = tr(true) / (max - min)
vrColor = vr >= breakoutLevel ? #ff9800 : #3c78d8
plot(vr, title="VR", color=vrColor, transp=0)
hline(breakoutLevel, title="Breakout Level", linestyle=dotted)
변환 문의드립니다. 감사합니다.