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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 严重的问题,关于序列变量引用上周期值的错误

   

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


  共有5929人关注过本帖平板打印复制链接

主题:严重的问题,关于序列变量引用上周期值的错误

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


加好友 发短信 资深程序员
等级:论坛游民 帖子:154 积分:327 威望:0 精华:0 注册:2011/10/4 23:41:24
严重的问题,关于序列变量引用上周期值的错误  发帖心情 Post By:2011/12/31 11:56:30    Post IP:221.222.127.191[只看该作者]

初始目的是为了写一条均线,使其在价格大幅跳空时能立刻阶梯式运动到一定位置,

用指数移动平均线来实现这条均线,因为简单算数均线即使中间改变了均线值也不能使其正确移动,

而指数均线是通过均线前一周期值来计算,可以实现。

 

于是第一步,我先写一条指数均线:(算法参考EMA)

N:=20;             //周期长度
DMA1:=close;   //如果不写这句,下句会出现 "未定义的变量 DMA1"的错误
DMA1:=if(barpos=1,C,(2*C+(N-1)*ref(DMA1,1))/(N+1));
指数均线:DMA1;

 

但是这条语句执行出来的结果是错误的,画出的线根本不是一条均线,倒像是一条连接close的线。

从序列变量运算的机制来看,这条语句没有道理执行不正确,即便是在赋值时,引用了本变量的前值,

也应该计算出正确的结果,我觉得这可能是金字塔计算机制的一个严重的问题导致,请教一下这是为什么?

 


 回到顶部