“每根K线一次”警报问题

在构建K线期间,可能会触发频率不同于“每根K线收盘一次”的指标警报(即“一次”、“每分钟一次”和“每根K线收盘一次”)。由于HLC(最高、最低、收盘)在构建K线期间会发生变化,因此依赖于HLC的指标值也会发生变化。这导致图表上触发条件的执行时间并不总是与实际警报触发时间一致。

例如,让我们考虑两种常见的情况:

  • 警报已触发,但图表上的条件未满足
  • 警报触发的时间晚于图表上的条件满足的时间
1)警报已触发,但图表上的条件不满足

下面的截图显示了回放模式下从10:00开始构建K线期间HLCRSI的变化。第一个截图显示在某个点,RSI值低于30(即存在水平30的交叉点)。

第二张截图显示,在该K线关闭时,RSI值升至30以上(即不再超过水平30)。

因此,在从10:00开始构建K线的过程中,将会触发具有RSI穿过30条件的警报,尽管在K线关闭时,似乎不应该触发它。

2)触发警报的时间晚于图表上的条件满足时间

下面的截图显示了在K线回放模式下,从02:00开始构建K线过程中HLCBB下带的变化,以及下带值和K线灯芯相交的水平(68840,黑色虚线)。

第一个截图显示,在构建K线时,收盘价低于水平68840,指标值低于收盘价,而K线和指标未在水平68840相交。

第二张截图显示,在K线收盘时,收盘价升至68840的水平上方。指标值也增加了,但由于最低值保持不变(在K线构建期间只能下降),指标和灯芯在68840的水平交叉。

值得注意的是,交叉点并非发生在价格跌至68840水平时,而是发生在指标值升至该水平时。

因此,在构建过程中,条件为BTCUSD穿过BB下带的警报将在价格和指标值开始上升时触发。然而,在K线关闭后,似乎触发应该发生得更早(即,在价格跌至68840 水平时)。