以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请问编程问题  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=148371)

--  作者:ratbst
--  发布时间:2017/3/1 0:29:54
--  请问编程问题

我想把如下数学公式编进去:

y[t]=a*x[t]+(1-a)*y[t-1] 且 y[1]=x[1]

 

我是这么写的

x:=close;

y:=x;

for k = 2 to DATACOUNT do
 BEGIN
     y[k]:= a*x[k]+(1-a)*y[k-1];
  end
line:y;

 

 错在哪里? y不能用它自己的前一个值给后一个值赋值吗?


--  作者:jinzhe
--  发布时间:2017/3/1 9:00:47
--  

runmode:0;

a:=5;

x:=close;


if barpos=1 then y:=x;


if barpos>1 then    y:= a*x+(1-a)*y;

line:y;


--  作者:ratbst
--  发布时间:2017/3/1 20:59:47
--  

不行啊 按你给的答案什么也没显示.

 

而且 我要的是由y的前一天值算出后一天的,你的答案没有体现啊?

 

另外 我的a是一个序列,每天都有一个值,不是单一的值,可以吗?


--  作者:jinzhe
--  发布时间:2017/3/2 9:00:58
--  

1.行的,有答案有显示

2.答案是有体现的

3.可以,你自己去定义


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

--  作者:ratbst
--  发布时间:2017/3/5 22:36:51
--  确实不行啊

确实什么也没显示啊 ,而且老是死机


--  作者:ratbst
--  发布时间:2017/3/5 22:41:10
--  
我完全照抄你的 确实什么也没显示啊
--  作者:jinzhe
--  发布时间:2017/3/6 9:16:58
--  

可能:1,你软件版本太老

         2 ,软件上开的的图太多

         3  , 当前k线图上数据太多

         4,  电脑不行


--  作者:ratbst
--  发布时间:2017/3/6 22:07:13
--  

我把数据接收关掉了 又选了个k线很少的图 还是死机啊

 

另外 我的数学公式是 y[t]=a*x[t]+(1-a)*y[t-1]  这里y[t-1]指的是前一天的y值

可是你给的语句是 y:= a*x+(1-a)*y  这里没有用前一天的y值啊?


--  作者:jinzhe
--  发布时间:2017/3/7 8:56:59
--  

你需要换台电脑

后面的Y就是你讲的前一天的Y值,前面的Y才是计算后的现在的Y值。