Pinescript V1警报

发布于 2025-01-30 14:00:28 字数 1349 浏览 0 评论 0原文

如果区域颜色为绿色/lime =购买,并且如果red/maroon =卖出,我尝试添加警报条件,但是由于指示器在v1中,我找不到任何文档,也找不到在v1中如何很好地编程。

有人可以帮我转换为V5还是放置警报条件?谢谢

study(shorttitle = "SQZMOM_LB", title="Squeeze Momentum Indicator", overlay=false)

length = input(20, title="BB Length")
mult = input(2.0,title="BB MultFactor")
lengthKC=input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")

useTrueRange = input(true, title="Use TrueRange (KC)", type=bool)

// Calculate BB
source = close
basis = sma(source, length)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : (high - low)
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = (sqzOn == false) and (sqzOff == false)

val = linreg(source  -  avg(avg(highest(high, lengthKC), lowest(low, lengthKC)),sma(close,lengthKC)), 
            lengthKC,0)

bcolor = iff( val > 0, 
            iff( val > nz(val[1]), lime, maroon),
            iff( val < nz(val[1]), red, green))
scolor = noSqz ? blue : sqzOn ? black : gray 
plot(val, color=bcolor, style=area, linewidth=4)
plot(0, color=scolor, style=cross, linewidth=2)

I've tried to add alertcondition if area color is green/lime = buy and if red/maroon = sell, but since indicator is in v1 I can't find any doc nor know how to program very well in v1.

Could someone help me translate to v5 or put the alertconditions? thanks

study(shorttitle = "SQZMOM_LB", title="Squeeze Momentum Indicator", overlay=false)

length = input(20, title="BB Length")
mult = input(2.0,title="BB MultFactor")
lengthKC=input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")

useTrueRange = input(true, title="Use TrueRange (KC)", type=bool)

// Calculate BB
source = close
basis = sma(source, length)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : (high - low)
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = (sqzOn == false) and (sqzOff == false)

val = linreg(source  -  avg(avg(highest(high, lengthKC), lowest(low, lengthKC)),sma(close,lengthKC)), 
            lengthKC,0)

bcolor = iff( val > 0, 
            iff( val > nz(val[1]), lime, maroon),
            iff( val < nz(val[1]), red, green))
scolor = noSqz ? blue : sqzOn ? black : gray 
plot(val, color=bcolor, style=area, linewidth=4)
plot(0, color=scolor, style=cross, linewidth=2)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

悟红尘 2025-02-06 14:00:28

注意:某些颜色是不同的,因为在不同的松版本中默认颜色之间存在固有的差异。

//@version=5
indicator(shorttitle = "SQZMOM_LB", title="Squeeze Momentum Indicator", overlay=false)

length = input.int(20, title="BB Length")
mult = input.float(2.0,title="BB MultFactor")
lengthKC=input.int(20, title="KC Length")
multKC = input.float(1.5, title="KC MultFactor")

useTrueRange = input.bool(true, title="Use TrueRange (KC)")

// Calculate BB
source = close
basis = ta.sma(source, length)
dev = multKC * ta.stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = ta.sma(source, lengthKC)
_range = useTrueRange ? ta.tr : (high - low)
rangema = ta.sma(_range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = (sqzOn == false) and (sqzOff == false)

val = ta.linreg(source - math.avg(math.avg(ta.highest(high, lengthKC), ta.lowest(low, lengthKC)), ta.sma(close,lengthKC)), lengthKC,0)

bcolor = val > 0 ?
             val > nz(val[1]) ? color.lime : color.maroon :
             val < nz(val[1]) ? color.red : color.green
scolor = noSqz ? color.blue : sqzOn ? color.black : color.gray
plot(val, color=bcolor, style=plot.style_area, linewidth=4)
plot(0, color=scolor, style=plot.style_cross, linewidth=2)

Note: some colors are different because of inherent differences between default colors in different Pine versions.

//@version=5
indicator(shorttitle = "SQZMOM_LB", title="Squeeze Momentum Indicator", overlay=false)

length = input.int(20, title="BB Length")
mult = input.float(2.0,title="BB MultFactor")
lengthKC=input.int(20, title="KC Length")
multKC = input.float(1.5, title="KC MultFactor")

useTrueRange = input.bool(true, title="Use TrueRange (KC)")

// Calculate BB
source = close
basis = ta.sma(source, length)
dev = multKC * ta.stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = ta.sma(source, lengthKC)
_range = useTrueRange ? ta.tr : (high - low)
rangema = ta.sma(_range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = (sqzOn == false) and (sqzOff == false)

val = ta.linreg(source - math.avg(math.avg(ta.highest(high, lengthKC), ta.lowest(low, lengthKC)), ta.sma(close,lengthKC)), lengthKC,0)

bcolor = val > 0 ?
             val > nz(val[1]) ? color.lime : color.maroon :
             val < nz(val[1]) ? color.red : color.green
scolor = noSqz ? color.blue : sqzOn ? color.black : color.gray
plot(val, color=bcolor, style=plot.style_area, linewidth=4)
plot(0, color=scolor, style=plot.style_cross, linewidth=2)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文