如何让Pine Script代码支持多时间框架并设置跨周期警报?
多时间框架Pine Script代码修改需求
我需要修改以下Pine Script代码,使其支持多时间框架运行。具体要求是:设置警报时,买入信号需先在小时时间框架生成,随后在更低级别时间框架(例如5分钟)触发。请帮忙修复这段代码。
代码如下:
amplitude = 10 channelDeviation = input(title='Channel Deviation', defval=2) showArrows = input(title='Show Arrows', defval=true) var int trend = 1 var int nextTrend = 1 var float maxLowPrice = nz(low[1], low) var float minHighPrice = nz(high[1], high) var float up = 1.0 var float down = 1.0 float atrHigh = 1.0 float atrLow = 1.0 float arrowUp = na float arrowDown = na atr2 = ta.atr(100) / 2 dev = channelDeviation * atr2 highPrice = high[math.abs(ta.highestbars(amplitude))] lowPrice = low[math.abs(ta.lowestbars(amplitude))] highma = ta.sma(high, amplitude) lowma = ta.sma(low, amplitude) if nextTrend == 1 maxLowPrice := math.max(lowPrice, maxLowPrice) if highma < maxLowPrice and close < nz(low[1], low) trend := 1 nextTrend := 0 minHighPrice := highPrice minHighPrice else minHighPrice := math.min(highPrice, minHighPrice) if lowma > minHighPrice and close > nz(high[1], high) trend := 0 nextTrend := 1 maxLowPrice := lowPrice maxLowPrice if trend == 0 if not na(trend[1]) and trend[1] != 0 up := na(down[1]) ? down : down[1] arrowUp := up - atr2 arrowUp else up := na(up[1]) ? maxLowPrice : math.max(maxLowPrice, up[1]) up atrHigh := up + dev atrLow := up - dev atrLow else if not na(trend[1]) and trend[1] != 1 down := na(up[1]) ? up : up[1] arrowDown := down + atr2 arrowDown else down := na(down[1]) ? minHighPrice : math.min(minHighPrice, down[1]) down atrHigh := down + dev atrLow := down - dev atrLow ht = trend == 0 ? up : down var color buyColor = color.blue var color sellColor = color.red htColor = trend == 1 ? buyColor : sellColor buySignal = not na(arrowUp) and trend == 1 and trend[1] == 0 sellSignal = not na(arrowDown) and trend == 0 and trend[1] == 1 plotshape(showArrows and buySignal ? atrLow : na, title='Arrow Up', style=shape.triangleup, location=location.absolute, size=size.small, color=color.new(buyColor, 0)) plotshape(showArrows and sellSignal ? atrHigh : na, title='Arrow Down', style=shape.triangledown, location=location.absolute, size=size.small, color=color.new(sellColor, 0)) alertcondition(buySignal, title='Alert: Buy', message='Buy') alertcondition(sellSignal, title='Alert: Sell', message='Sell')
内容的提问来源于stack exchange,提问作者salem A
相关产品推荐
相关产品推荐

