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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → [求助]黄金的报价小数点后第五位总有误差导致信号出问题~

   

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


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

主题:[求助]黄金的报价小数点后第五位总有误差导致信号出问题~

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
[求助]黄金的报价小数点后第五位总有误差导致信号出问题~  发帖心情 Post By:2018/12/14 9:57:25 [只看该作者]

2018-12-14 09:30:16.937    xn=280.85001
2018-12-14 09:30:16.937    hold=1.00000
2018-12-14 09:30:16.937    numbertrade=1.00000
2018-12-14 09:30:16.937    bkl=280.89999
2018-12-14 09:30:16.937    skl=280.29999
2018-12-14 09:30:16.937    price=280.85000


这是黄金的debugout一些结果~
小数点后第五位造成了我信号的误差~应该怎么解决?
[此贴子已经被作者于2018/12/14 9:57:45编辑过]

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2018/12/14 10:05:08 [只看该作者]

我感觉这个数值是随机在我指标上加减0.00001~导致信号不是大于就是小于~根本没法相等~本来没触发的信号变成了触发~
几年前问过你们~说是浮点小数误差~当时我还在交易股指~这个东西影响不是太大~
但现在交易黄金了~发现这东西频繁造成信号误差根本无法忽略

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2018/12/14 10:07:24 [只看该作者]

这是后台DEBUGFILE出来的数据~
图表上加载shift+q根本看不出来问题~

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/12/14 10:09:11 [只看该作者]

因为从交易所过来的行情数据本来就带有小数位的,您保留2位小数试试呢,看下信号是否会产生偏差

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2018/12/14 10:15:00 [只看该作者]

那等于我所有价格数据都得intpart(dynainfo(7)*100)/100这样操作了

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2018/12/14 10:27:25 [只看该作者]

股指小数点后是一位数
黄金是两位数
债券是三位数
全部都有误差~



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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/12/14 10:40:44 [只看该作者]

这个只能用函数调整一下了,没办法

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2018/12/14 13:39:14 [只看该作者]

xn:=dynainfo(7);
//--------后台调试部分
FILEPATH:='C:\debug\'&str1&'.TXT'; DEBUGFILE(FILEPATH,'=======',0);

//--------动态函数~orderbook
DEBUGFILE(FILEPATH,'xn=%.5f',xn);
DEBUGFILE(FILEPATH,'xn1=%.5f',round(xn*10000)/10000);



你们试试上面的调试代码吧~if1812 t1903 au1906几个合约上~
xn1还是有误差~消除不了~你们是否还有其他办法?

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


加好友 发短信
等级:超级版主 帖子:16558 积分:0 威望:0 精华:0 注册:2017/6/1 10:24:09
  发帖心情 Post By:2018/12/14 13:44:16 [只看该作者]

您试试下面的方法
xn:dynainfo(7),PRECISION2;//保留2位小数
xn:dynainfo(7),PRECISION3;//保留3位小数
或者
xn:ROUNDS(dynainfo(7),3 );
[此贴子已经被作者于2018/12/14 13:45:55编辑过]

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


加好友 发短信
等级:小飞侠 帖子:1609 积分:4924 威望:0 精华:0 注册:2010/10/28 14:02:46
  发帖心情 Post By:2018/12/14 13:49:07 [只看该作者]

没用~麻烦你帮忙一起调试一下看看能否找到合适的解决方案

 回到顶部
总数 12 1 2 下一页