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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → REF函数的调试问题,调试了几天都没有明白

   

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


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

主题:REF函数的调试问题,调试了几天都没有明白

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


加好友 发短信
等级:论坛游侠 帖子:319 积分:0 威望:0 精华:1 注册:2015/11/1 14:20:16
REF函数的调试问题,调试了几天都没有明白  发帖心情 Post By:2015/11/11 16:45:58 [只看该作者]

      H2:=ref(high,1);
      H1:=ref(H2,1);     
      tmph2:=ref(h2,1);
      tmph1:=ref(h1,1);
      bool:=close>open;
      if   bool  then BEGIN h2:=tmph2;h1:=tmph1;  end

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

 

  用鼠标右键查看运行时变量,明明上一根K线的H2是15.57,第二根K线执行之前H2还是15.57,理论上H1应该是ref(H2,1),应该还是15.57,可实际结果是 15.64,是上上根K线的高点。

  单步调试:看的很清楚,当前K线代码执行之前,上一根K线的H2是15.57 ,然后执行当前K线的 H1:=ref(H2,1); 执行完之后,H1就是15.64    
   


图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:4.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:论坛游侠 帖子:319 积分:0 威望:0 精华:1 注册:2015/11/1 14:20:16
  发帖心情 Post By:2015/11/11 16:47:06 [只看该作者]

就因为这么一个问题,耽误了我好多天进度,还没有进入到正式开发。

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/11/11 16:59:43 [只看该作者]

H2:=ref(high,1);
      H1:=ref(H2,1);                         //这个地方取的是上一根k线执行这一行时候 H2的值,不是上一根k最后的H2  
      tmph2:=ref(h2,1);
      tmph1:=ref(h1,1);
      bool:=close>open;
      if   bool  then BEGIN h2:=tmph2;h1:=tmph1;  end

 

您如果对这儿还有疑问直接电话我把,2033087


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


加好友 发短信
等级:论坛游侠 帖子:319 积分:0 威望:0 精华:1 注册:2015/11/1 14:20:16
  发帖心情 Post By:2015/11/11 17:04:04 [只看该作者]

021-2033087?提示号码不正确呢

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/11/11 17:07:44 [只看该作者]

20339087,漏了一位

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


加好友 发短信
等级:论坛游侠 帖子:319 积分:0 威望:0 精华:1 注册:2015/11/1 14:20:16
  发帖心情 Post By:2015/11/12 14:56:02 [只看该作者]

您好,昨天与您沟通后,还有两点疑惑:

  1、知道这里的H1其实是取得上上根K线的H2,但我就要取昨天的H2,怎么处理呢?可否麻烦您直接在我上述代码上修改一下。

  2、为什么我只要将“if   bool  then BEGIN h2:=tmph2;h1:=tmph1;  end”这句话删除,H1取得就是昨天的H2。

 


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/11/12 15:38:20 [只看该作者]

    H2:=ref(high,1); 
      tmph2:=ref(h2,1);
      tmph1:=ref(h1,1);
      bool:=close>open;
      if   bool  then BEGIN h2:=tmph2;h1:=tmph1;  end

 

H1:=ref(H2,1);  

 

最后再去引用,另外不要变量和变量之间来回引用,必须h1放在最后去引用,才是上一根k最后的h2


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


加好友 发短信
等级:论坛游侠 帖子:319 积分:0 威望:0 精华:1 注册:2015/11/1 14:20:16
  发帖心情 Post By:2015/11/12 16:45:37 [只看该作者]

这是您昨天说的两个方法之一,但这不能满足我的需求啊,我不能将H1放在所有代码的最后,因为在前面的代码中需要对其进行计算,而且那个IF语句的目的就是根据不同条件对H1做不同赋值。

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


加好友 发短信
等级:论坛游侠 帖子:319 积分:0 威望:0 精华:1 注册:2015/11/1 14:20:16
  发帖心情 Post By:2015/11/12 16:45:56 [只看该作者]

记得您昨天说还有一个方法的。

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/11/12 16:53:37 [只看该作者]

没有办法的,你必须在最后去引用。

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