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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → dll计算准确性

   

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


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

主题:dll计算准确性

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


加好友 发短信
等级:新手上路 帖子:10 积分:67 威望:0 精华:0 注册:2011/6/17 13:32:56
dll计算准确性  发帖心情 Post By:2012/8/27 22:08:25 [只看该作者]

计算股指1M周期上的5日收盘价均线,用DLL算的跟直接ma(c,5)算的结果不完全一致,


日期 dll(5日均线) ma(c,5)
2012/8/24 13:46    
2012/8/24 13:47    
2012/8/24 13:48    
2012/8/24 13:49    
2012/8/24 13:50 2303.040039 2303.03999
2012/8/24 13:51 2303.399902 2303.4
2012/8/24 13:52 2303.720215 2303.72002
2012/8/24 13:53 2303.919922 2303.92002
2012/8/24 13:54 2303.880127 2303.880029
2012/8/24 13:55 2303.960205 2303.960059
2012/8/24 13:56 2303.399902 2303.400049
2012/8/24 13:57 2302.560059 2302.560059

具体看上面第2列和第3列的数据。请问为什么有这样的差距

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


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

小数浮点上的计算误差,你都改成DOUBLE模式的浮点数,应该就一样了



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

金字塔-技术部

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

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

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


加好友 发短信
等级:新手上路 帖子:10 积分:67 威望:0 精华:0 注册:2011/6/17 13:32:56
  发帖心情 Post By:2012/8/28 15:39:22 [只看该作者]

是把头文件StockFunc.h里的float定义改成double定义吗?我这样试了下,出现的结果差距更大或者是编译的dll金字塔识别不了。

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


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

不是让你改头文件结构,而是让你将中间的计算变量,改成DOUBLE试试,浮点数的计算误差每台计算机都存在,这是基本的程序员应该都知道的


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

金字塔-技术部

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

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

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


加好友 发短信
等级:新手上路 帖子:10 积分:67 威望:0 精华:0 注册:2011/6/17 13:32:56
  发帖心情 Post By:2012/8/28 20:35:33 [只看该作者]

中间变量改成double型的依然有误差!我知道有浮点运算会产生误差,但我是用同一台机子dll(5日收盘价均线)与ma(c,5)来测试的,差距在小数点第4、5位,
那这个差距就很大了,因为金字塔定义的float类型的误差在小数点第7位,用这样的dll编成对应的模型会导致开平仓点的不同。这个差距是不是还有其他的
原因呢?


 回到顶部