使用pine脚本绘制具有非标准打开时间的自定义蜡烛



[Pine script]我想画自定义的蜡烛,有自定义的开放时间,其中开放时间为00:07,00:22,00:37,00:52等,而不是典型的00:00,00:15,00:30,00:45,01:00等。

A15m烛台图可以用1m烛台数据绘制。在这种情况下,可以重新采样1m数据,但是重新采样是参照00:00进行的。这意味着绘制的烛台图上有开放时间为00:00、00:15、00:30、00:45、01:00等的蜡烛。但在我的情况下,我想通过采样1m数据来绘制定制蜡烛,作为蜡烛棒,具有开放时间,如00:07,00:22,00:37,00:52,…等。plotbar()或plotcandle()没有这样的选项。有没有一种方法可以像上面那样画出来?

请帮. .

您可以使用plotcandle()函数绘制自定义蜡烛,并使用一些逻辑来计算OHLC值。

下面是plotcandle()函数的逻辑示例,您可以在1分钟的时间范围内使用:

//@version=5
indicator("My script")
newBar = (time - (7 * 60 * 1000)) % (15 * 60 * 1000) == 0       // check if a bar time minus 7 minutes is divded by 15 minutes (all in milliseconds)
_high = ta.highest(high, 15)
_low = ta.lowest(low, 15)
candleColor = switch
close[1] > open[14] => color.green
=> color.red
plotcandle(open[14], _high, _low, close[1], color = newBar ? candleColor : na, wickcolor = newBar ? candleColor : na)

上面的脚本基本上检查一个杆时间(以毫秒为单位)减去7分钟,除以15分钟后余数是否为0。这将在每15分钟偏移7分钟时返回true

如果柱形为newBar(上面是true),则:

  1. highlow将是过去15条中最高和最低的(因为我们在1分钟的时间范围内)。
  2. open将是14条之前open的价格。
  3. close将关闭前一个栏。

这个逻辑并不完美,因为有时在新的15分钟时间框架内没有交易(因此没有条),但我认为这是实现你想要的最好的方法。

最新更新