【发布时间】:2022-08-14 10:09:27
【问题描述】:
我正在制作一个显示摆动低点和高点的指标(3 条形图,其中摆动高点的每一侧都有较低的蜡烛,摆动低点的每一侧都有较高的蜡烛)
我做到了,但我想在它被破坏时发出警报。正如您从代码中看到的那样,实际的高点或低点是在摆动形成后产生的。我通过添加 (offset-2) 正确显示摆动。但警报会在实际摆动高/低时触发。
问:如何获得第二个之前的蜡烛高/低?
//@version=5
indicator(title=\'Fractals Alerts\', shorttitle=\'Fractals Alerts\', overlay=true)
n = input.int(title=\'Periods\', defval=2, minval=2)
//High(n-1) < High(n)
//High(n + 1) < High(n)
upFractal = high[n - 1] < high[n] and high[n + 1] < high[n]
//Low(n-1) > Low(n)
//Low(n + 1) > Low(n)
dnFractal = low[n - 1] > low[n] and low[n + 1] > low[n]
//make a shape
plotshape(upFractal, \"High Broken\", shape.xcross, location.abovebar, offset=-2, color=color.new(color.red, 0))
plotshape(dnFractal, \"Low Broken\", shape.xcross, location.belowbar, offset=-2, color=color.new(color.red, 0))
//get value high/low from fractals
upfractalhigh = ta.valuewhen(upFractal, high, 0)
upfractalbroke = (close > upfractalhigh)
//ignore//plotshape(frhitr, \"Fractal High\", shape.cross, location.abovebar, color=color.new(color.green, 0))
//set condition
dnfractallow = ta.valuewhen(dnFractal, low, 0)
dnfractalbroke = (close < dnfractallow)
//Alerts
alertcondition(upfractalbroke, \"high brake\", \"High Broken\")
alertcondition(dnfractalbroke, \"low brake\", \"Low Broken\")
标签: pine-script trading pinescript-v5 tradingview-api