我试图修改Tradingview上已经可用的指示器。
这个想法是在一个“线”指标中转换一个WaveTrends,当超卖或超买条件被满足时,它会改变颜色。这些指标是另一个时间范围内的趋势。
我有两个问题,我想使用一个输入函数来更改时间框架,而不必通过更改代码来完成它。
第二个问题,你可以看到图像上的4行
condition
我绕过了我的困难,创造了2行长和2行短,但我想把它们合并成两条线,有3种不同的颜色:绿色代表超卖条件,红色代表超买条件,最后灰色在两者之间。
study("WTcheckMTF", shorttitle="WTCMTF")
n1 = input(10, "Channel Length")
n2 = input(21, "Average Length")
obLevel1 = input(60, "Over Bought Level 1")
obLevel2 = input(53, "Over Bought Level 2")
osLevel1 = input(-60, "Over Sold Level 1")
osLevel2 = input(-53, "Over Sold Level 2")
ap = hlc3
esa = ema(ap, n1)
d = ema(abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ema(ci, n2)
wt1 = tci
wt2 = sma(wt1,4)
//Mid and longer TF defining
long = input("D", "Interval used for long TF", type = resolution)
mid = input("360", "Interval used for mid TF", type = resolution)
**MidWT = security(tickerid, "360",wt2)
LongWT = security(tickerid, "720", wt2)**
//treshold MT LT
LWTLT = input(-53, "OS Threshold L")
LWTMT = input(-53, "OS Threshold M")
SWTLT = input(53, "OB Threshold L")
SWTMT = input(53, "OB Threshold M")
L1=1
M1=2
L2=3
M2=4
// Color for MT LT indicators
**lcolor1 = LongWT <= LWTLT ? lime : gray
mcolor1 = MidWT <= LWTMT ? lime : gray
lcolor2 = LongWT >= SWTLT ? red : gray
mcolor2 = MidWT >= SWTMT ? red : gray**
// plot
plot(L1, style=line,color=lcolor1,linewidth=25)
plot(M1, style=line,color=mcolor1,linewidth=25)
plot(L2, style=line,color=lcolor2,linewidth=25)
plot(M2, style=line,color=mcolor2,linewidth=25)发布于 2020-01-07 22:01:34
启用了对解决方案的输入调用。默认值应该是出现在下拉列表中的值,因此更改了"360" for "240"。
对于颜色,一行的条件现在集中在一条语句中。请注意如何在彼此之间嵌入多个三元条件。当你不习惯它们的时候,它们更难被遵循,但是它们非常方便。
当发布代码时,请记住在脚本的开头包含编译器指令,这样我们就可以知道您的脚本是为哪个版本编写的。
//@version=3
study("WTcheckMTF", shorttitle="WTCMTF")
n1 = input(10, "Channel Length")
n2 = input(21, "Average Length")
obLevel1 = input(60, "Over Bought Level 1")
obLevel2 = input(53, "Over Bought Level 2")
osLevel1 = input(-60, "Over Sold Level 1")
osLevel2 = input(-53, "Over Sold Level 2")
ap = hlc3
esa = ema(ap, n1)
d = ema(abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ema(ci, n2)
wt1 = tci
wt2 = sma(wt1,4)
//Mid and longer TF defining
long = input("D", "Interval used for long TF", type = resolution)
mid = input("240", "Interval used for mid TF", type = resolution)
MidWT = security(tickerid, mid, wt2)
LongWT = security(tickerid, long, wt2)
//treshold MT LT
LWTLT = input(-53, "OS Threshold L")
LWTMT = input(-53, "OS Threshold M")
SWTLT = input(53, "OB Threshold L")
SWTMT = input(53, "OB Threshold M")
L1=1
M1=2
L2=3
M2=4
// Color for MT LT indicators
lcolor = LongWT <= LWTLT ? lime : LongWT >= SWTLT ? red : gray
mcolor = MidWT <= LWTMT ? lime : MidWT >= SWTMT ? red : gray
// plot
plot(L1, "L1", lcolor, 25)
plot(M1, "M1", mcolor, 25)https://stackoverflow.com/questions/59632938
复制相似问题