粤B-南山小散 发表于 2013-11-26 10:40:05

搞了一个DMA计算公式,但是总提示1.#QNAN0,这什么意思?公式见内

zAMA = zCONSTANT*Close + (1 - zCONSTANT)*zAMA;
zCONSTANT只是一个系数
zAMA是NumericSeries类型,结果就提示1.#QNAN0

这个问题如何解决?
按理说我即便赋初值给zAMA为0,也不应该计算不出来吧?
难道是因为zAMA没有值的缘故? 那怎么搞才能让它计算出来呢?

唐小僧 发表于 2013-11-26 11:47:12

{:soso_e163:}

粤B-南山小散 发表于 2013-11-26 11:57:53

数值越界,唉,只有判断第一个数赋值一个初值,不过好像总是差距太远,很久均线才跟上来

凡人一世 发表于 2013-11-26 15:49:44

这个,那外委会

粤B-南山小散 发表于 2013-11-26 21:02:22

问题找到了,因为zCONSTANT这个数字在前面的计算中,可能除0,导致数据错误,结果后续所有的数据就会全部计算出错,导致这个问题,我限制了程序一开始几个如果为0,则强制赋值为1,问题解决。
页: [1]
查看完整版本: 搞了一个DMA计算公式,但是总提示1.#QNAN0,这什么意思?公式见内