TradingView Pine Script RMA如何工作?

问题描述

我遇到了想要实现与交易视图中相同的指标的问题,但是我无法正确实现RMA指标。

如果我参考文档,则会得到以下代码:

pine_rma(src,length) =>
    alpha = length
    sum = 0.0
    sum := na(sum[1]) ? sma(src,length) : (src + (alpha - 1) * nz(sum[1])) / alpha

所有内容对我来说都很清楚,除了可能出现 na(sum [1])条件时。而且我是否正确理解 nz(sum [1]) sum 的先前值。

当我尝试在golang中实现它时,他们编写了以下代码:

func RMA(value []float64,period int) float64 {
    var sum float64 

    for i := period - 1; i >= 0; i-- {
        sum = (sum * (float64(period) - 1) + value[i]) / float64(period)
    }

    return sum
}

我在返回的数据中存在很大差异。

我试图了解当输入参数为3时,从RMA顺序获得的值是3的情况。

src [0] = 0,src [1] = 0 src [2] = 0.12

我们明白了

rma [0] = 0.06,rma [1] = 0.04 rma [2] = 0.03

我不知道这些数字在哪里,因为我用src代替了原始公式,所以得到的数字最多。

我从2020年9月2日的 FORD MTR CO DEL,1D,Cboe BZX 图表中提取了为RSI创建的向下数组的基准数据。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...