Pine script 关于获取上一个蜡烛OHLC的Pine脚本帮助
我的代码试图在一张15分钟的图表上得出以下结论Pine script 关于获取上一个蜡烛OHLC的Pine脚本帮助,pine-script,Pine Script,我的代码试图在一张15分钟的图表上得出以下结论 第二个15分钟的蜡烛应该是一个内部的酒吧 第三支15分钟蜡烛应该打破第一支15分钟蜡烛的高度 上述情况持续时间较长。 为了测试策略,我编写了以下代码 //@version=4 strategy(title="15minbreak") CdlHigh=0.0 CdlLow=0.0 if(hour(time)==09 and minute(time) == 45) CdlHigh := high CdlLow :
//@version=4
strategy(title="15minbreak")
CdlHigh=0.0
CdlLow=0.0
if(hour(time)==09 and minute(time) == 45)
CdlHigh := high
CdlLow := low
isInside = ((CdlHigh[1] < CdlHigh[0]) and (CdlLow[1] > CdlLow[0])) // 2nd cdl is inside bar
nextCdlBreak = CdlHigh > CdlHigh[0] // 3rd cdl has given a breakout.
goLong = (isInside and nextCdlBreak)
closeLong = (low < CdlLow[0])
strategy.entry("Long",strategy.long,100,when = goLong)
strategy.close("Long",when = closeLong)
/@version=4
策略(title=“15入侵”)
CdlHigh=0.0
CdlLow=0.0
如果(小时(时间)==09分钟(时间)==45)
CdlHigh:=高
CdlLow:=低
isInside=((CdlHigh[1]CdlLow[0])//第二个cdl在条内
nextCdlBreak=CdlHigh>CdlHigh[0]//第三个cdl已发出断开信号。
goLong=(isInside和nextCdlBreak)
closeLong=(低
但是当我运行代码时,我什么也看不到。
我不确定我在这里遗漏了什么。请求帮助。您正在将9:45烛光的高度指定给CdlHigh,然后对生成最后一个值的变量使用历史引用运算符
[]
。请尝试打开数据窗口并查看变量:
plotchar(CdlHigh,'cdlhigh','')
plotchar(CdlHigh[1],'cdlhigh','')
对于调试,我们可以首先将时间转换为一个变量并绘制它,以查看它是否工作:
second_candle = hour(time)==09 and minute(time) == 45
plotshape(second_candle, style=shape.circle, color=color.black, size=size.small)
现在,您已经验证了它是否正确地选择了蜡烛,您可以通过添加条件继续调试。根据我查找的定义,内部栏表示前面的栏具有较高的上限和较低的下限。您可以将条件组合成一个变量,或使用单独的变量,如下所示:
//@version=4
strategy(title="15minbreak", overlay=true)
second_candle = hour(time)==09 and minute(time) == 45
inside_bar = high[1] > high and low[1] < low
special_candle = inside_bar and second_candle
plotshape(special_candle, style=shape.circle, color=color.black, size=size.small)
这应该足以生成一个进入条件。很难判断出你想要的退出条件是什么,因为你使用了一个用于存储第二个蜡烛高的变量的历史引用。如果是这样,你需要用var
关键字初始化一个变量,并在第二个蜡烛高时存储该值_candle的计算结果为true,或者可能使用valuewhen
函数
var float exit_low = na
if second_candle
exit_low := low
谢谢你的回复。我会尝试并更新。至于退出条件。我基本上是说,只要第三个15分钟烛光的低点被打破,交易就会结束。这可以在白天的任何时候发生
var float exit_low = na
if second_candle
exit_low := low