1

我想对RSI Failure Swings进行编码。我需要计算的东西:

  1. 具有超买/卖出条件的新收盘高点/低点 -完成
  2. 之后,在正常 RSI 条件下(背离)收盘价更高/更低 -完成
  3. 在这些新的收盘高点/低点之间获取最低/最高 RSI 读数 -问题
  4. 当 RSI 超过第 3 点提到的 RSI 读数时,给出完成失败摆动的反馈 -准完成

当分歧发生时,我已经设法提出警告,所以第 1 点和第 2 点很好。但是如何在这些柱之间获得最低/最高 RSI 读数?

我为顶部失败摆动(又名看跌失败摆动)尝试了类似的方法:

lowestrsi = valuewhen(bearishdivergence, lowest(rsi, barssince(overbought)), 0)

我的想法是:找到具有看跌背离的柱,并返回该柱与处于超买状态之前的柱之间的最低 RSI 读数。

但这不起作用,因为第二个参数lowest()不能是一个系列!如果你用一个数字替换那个参数,比如 10,它会完美运行,并且我会收到摇摆失败的通知。但问题是,这样的东西没有默认值。这意味着您不能硬编码诸如“10”或其他数字之类的东西。

问题: 如何获得第 1 点和第 2 点提到的柱之间的最低 RSI?或者我如何将一个系列变成一个整数?这甚至可能吗?或者是否有可能从一个系列中得到一个整数?

4

1 回答 1

0

您可能想尝试 RicardoSantos 的最高/最低功能。它帮助我解决了过去类似问题:https ://www.tradingview.com/script/32ohT5SQ-Function-Highest-Lowest/

//@version=2
study(title='Function Highest/Lowest', overlay=true)
src = input(close)
length = input(10)

f_highest(_src, _length)=>
    _adjusted_length = _length < 1 ? 1 : _length
    _value = _src
    for _i = 0 to (_adjusted_length-1)
        _value := _src[_i] >= _value ? _src[_i] : _value
    _return = _value

f_lowest(_src, _length)=>
    _adjusted_length = _length < 1 ? 1 : _length
    _value = _src
    for _i = 0 to (_adjusted_length-1)
        _value := _src[_i] <= _value ? _src[_i] : _value
    _return = _value

h = f_highest(src, length)
l = f_lowest(src, length)

plot(h)
plot(l)
于 2019-03-25T10:07:35.590 回答