一个让人困惑的公式bug [金字塔]
- 咨询内容:
a:IFN(open-low<=1*MINDIFF,0,1);
把如上公式使用在600004白云机场日线图,观看14年8月4日这一天日线下该指标的显示。
原本这一天的开盘减去收盘是,7.44-7.43=0.01,0.01确实小于等于该股的最小波动单位的,即0.01<=0.01的,所以a这个指标线应该是1(对应8月4日这一天)但是奇怪的是在金字塔上实际那个位置是0.
这是为什么呢?请大家看看为什么 - 金字塔客服:
这个可能是数型的问题,我不知道现在的编程语言是怎么样的,我记得以前用“Fortran”写程序时,只有“整型”数才可以用“=”进行判断,而实型数是不可以的。而实型数的相等判断一般是用abs(a-b)<....来判断。
- 用户回复:
ROUNDS(dd,2);对open-l进行小数点为精确,实际返回值的时候涉及浮点误差,有小数点位影响
- 网友回复:
哦,感谢回复。
继续请教,是不是a股的数据,其实并不是2位小数,而实际是小数点后三位?
- 网友回复:
计算机对浮点数的计算可能会存在小数点上的误差,你要精确判断的话用3楼的那个函数自己限制掉位数。
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容