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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → Debugout 没有输出,哪里写错了

   

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


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

主题:Debugout 没有输出,哪里写错了

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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
Debugout 没有输出,哪里写错了  发帖心情 Post By:2014/3/3 10:05:37    Post IP:14.119.88.105[显示全部帖子]

GLOBALVARIABLE: Lc11A:=0;//上一秒的仓位
GLOBALVARIABLE: Cc11A:=0;//当前这一秒的仓位
HD1:=STKINDIEX('IF00','Dagger1.HD',0 ,1,  0,360);
HD2:=STKINDIEX('IF00','Dagger2.HD',0 ,17, 0,360);
HD3:=STKINDIEX('IF00','Dagger3.HD',0 ,1,  0,360);
HD4:=STKINDIEX('IF00','Dagger4.HD',0 ,17, 0,360);
HD5:=STKINDIEX('IF00','Dagger5.HD',0,1,  0,360);

Lc11A:=Cc11A;
Cc11A:=if(Time>=151400,0,IF((HD1>=0 && HD4>=0),(HD1 && HD4 ),IF((HD1<=0 && HD4<=0) ,-(ABS(HD1)&&ABS(HD4)),0))); //151400强制平仓
Nowc11A:=VALUEWHEN(Lc11A=Cc11A,Cc11A );
DEbugout('Lc11a=%.0f',Lc11a);
DEbugout('Cc11a=%.0f',Cc11a);
DEbugout('Nowc11a=%.0f',Nowc11a);

 

……

后台,工作在1秒周期,打开监控,没有看到Debugout的数据,请大侠帮忙看看哪里写错了?(金字塔V3.11beta2版本)

 

 

 


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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
  发帖心情 Post By:2014/3/3 10:12:13    Post IP:14.119.88.105[显示全部帖子]

是没有输出,连“Lc11a=”这个都看不到

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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
  发帖心情 Post By:2014/3/3 11:39:40    Post IP:183.63.127.250[显示全部帖子]

下午我在测试一下,看看是什么问题

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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
  发帖心情 Post By:2014/3/4 22:32:44    Post IP:14.151.73.12[显示全部帖子]

反复测试了n次,终于找到原因。原来是模型中有一语句如下:

 

MM:==ref(close,1);

 

这里的"=="是属于笔误,多输入了一个“=”号,Debugout的时候,完全没有输出,只有“运行结束”

 

不解的是:为什么编译还是通过?这个“==”在金字塔是什么操作??

 


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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
  发帖心情 Post By:2014/3/5 14:05:17    Post IP:14.151.73.12[显示全部帖子]

照你这么理解,那这个语句也是合法的啊。那为什么整个模型,只要有了这一句,在运行的过程在,连Debugout的数据都没有输出了?

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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
  发帖心情 Post By:2014/3/5 14:07:07    Post IP:14.151.73.12[显示全部帖子]

这一句应经导致程序运行不正常,Debugout前面的标号至少应该在监控窗口打印出来啊,只有提示是“运行结束”

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


加好友 发短信
等级:论坛游侠 帖子:581 积分:171 威望:0 精华:0 注册:2013/4/2 6:58:20
  发帖心情 Post By:2014/3/5 15:09:45    Post IP:183.63.127.250[显示全部帖子]

我不是一定要这样赋值。我的意思是:==这样的写法是不合理的,就算你随便写一个空的语句,也导致整个模型不能正常运行了。既然是”==“这样写不合理,应该在编译的时候检测出来,或者给予提示。我认为,金字塔的研发部的设计思路不允许这样写的,也可能是一个疏忽,今天碰到这样的情况,也是一个很偶然,真心不希望以后还有更多的金字塔用户,就因为笔误多打入了一个”=“号,而上千行的代码,翻个遍,最后发现是多了一个”=“号。


 回到顶部