欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 金字塔在有小数的计算方面有问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有5337人关注过本帖树形打印复制链接

主题:金字塔在有小数的计算方面有问题

帅哥哟,离线,有人找我吗?
瓢把子
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:23 积分:232 威望:0 精华:0 注册:2010/8/25 9:33:12
金字塔在有小数的计算方面有问题  发帖心情 Post By:2012/8/9 11:56:41 [只看该作者]

金字塔在有小数的计算方面有问题

比如,在股指,有小数。

a1:=high-close;
VERTLINE( a1=10),colorgreen,pointdot;

没问题,但是:

a1:=high-close;
VERTLINE( a1=10.4),colorgreen,pointdot;

就有问题了,换一种方式

a1:=high-close;
VERTLINE( a1>10.2 and a1<10.6),colorgreen,pointdot;

这个显示的结果应该一样,可实际上显示的是

a1:=high-close;
VERTLINE( a1>=10.2 and a1<=10.6),colorgreen,pointdot;


 回到顶部
帅哥哟,离线,有人找我吗?
董小球
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 大哥
等级:超级版主 帖子:2837 积分:13237 威望:0 精华:2 注册:2010/7/14 17:31:54
  发帖心情 Post By:2012/8/9 13:08:37 [只看该作者]

楼主能说说是什么问题么?
你光说有问题,我们不知道你遇到了什么问题啊


金字塔—专业程序化交易量化投资平台

客户服务部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到

service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2012/8/9 13:29:12 [只看该作者]

这不是金字塔的问题,你说的问题是目前计算机普遍存在的浮点计算误差,如果你需要一个精确的数字,应该使用金字塔提供的小数点整理函数,计算完毕后使用该函数进行整理

参考

四舍五入整理小数到指定位数
用法:ROUNDS(A,B) 表示整理数字A的小数点位数到B。该函数可用以做浮点数的精确相等判断。
例如:ROUNDS(12.345,2)将返回 12.35
所属函数组:数学函数



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
yanxc
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小飞侠 帖子:2046 积分:2707 威望:0 精华:1 注册:2011/6/14 14:49:49
  发帖心情 Post By:2012/11/13 12:58:43 [只看该作者]

close难道本身还能是2300.23吗?不太明白

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2012/11/13 13:33:31 [只看该作者]

交易所过来的数据,经过多次浮点转换,会导致出现2300.200000001等这样的情况,这就是我们指的浮点误差,对于浮点数的等于判断,哪怕是0.00000001也是不等于的


金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
jinzhe
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2012/11/13 13:33:47 [只看该作者]

看王峰所说,有可能就是计算机的浮点误差导致把收盘价计算错了,


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

 回到顶部
帅哥哟,离线,有人找我吗?
wd369
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:288 积分:1038 威望:0 精华:0 注册:2011/12/8 17:52:45
使用自定义函数出错  发帖心情 Post By:2012/11/14 10:59:25 [只看该作者]

原始数据的浮点误差造成的,
我在以前提到过的,像大智慧在数据结构中就有一项是精确度,在行情中显示的数据已经经过精确度再处理,就不会出现这样情况.
金字塔可以借鉴这样做法.由每个用户在公式里面自己处理,由此出现的问题就太多了.

 回到顶部