特定日期的 bgcolor

bgcolor for specific date

我想为特定日期提供背景颜色。我正在尝试使用 pine 脚本版本 5 中的以下代码。

date = timestamp(2021, 01, 19, 09, 30)
bgcolor(date ? color.new(color.red,70) : na)

由于日期是真实的,它将整个图表背景涂成红色,有人可以帮我只在那个特定日期包含红色吗?

我只希望它只在给定日期(即“2021、01、19、09、30”)将 bgcolor 涂成红色。在手册或其他地方找不到帮助。

这应该可以做到。

//@version=5
indicator("My Script", overlay=true)

var int     myDate  = input.time(timestamp("13 Jan 2022 09:30 -0500"), 'Choose date/time')
var color   myColor = color.new(color.red,70)

bgcolor(myDate == time ? myColor : na)

编辑 1,以回答

如果您有多个日期,可以将它们放入一个数组中。

//@version=5
indicator("My Script", overlay=true)

var color   myColor = color.new(color.red,70)
var int[]   myDates = array.new_int()

if barstate.isfirst
    array.push(myDates, timestamp(2021, 12, 01, 09, 30))
    array.push(myDates, timestamp(2021, 12, 15, 09, 30))
    array.push(myDates, timestamp(2022, 01, 05, 09, 30))
    array.push(myDates, timestamp(2022, 01, 11, 09, 30))

bgcolor(array.includes(myDates, time) ? myColor : na)

或更短的版本

//@version=5
indicator("My Script", overlay=true)

var color   myColor = color.new(color.red,70)
var int[]   myDates = array.from(timestamp(2021, 12, 01, 09, 30), timestamp(2021, 12, 15, 09, 30), timestamp(2022, 01, 05, 09, 30), timestamp(2022, 01, 11, 09, 30))

bgcolor(array.includes(myDates, time) ? myColor : na)

产生