以文本方式查看主题

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

--  作者:qq代人发帖
--  发布时间:2014/7/23 16:06:53
--  for 循环问题
在for I=1 to 4循环里计算出来的 EMA(Close,1),EMA(Close,2),EMA(Close,3),EMA(Close,4)这些值全部是一样的,是不是一条语句,只能执行一个ema,但是for I=1 to 4中EMA(Close,2),EMA(Close,4),EMA(Close,6),EMA(Close,8)这四个值不相同,还有两次EMA(Close,2),EMA(Close,4)都不相同,大概解释一下for干了什么,什么原理啊
--  作者:jinzhe
--  发布时间:2014/7/23 16:10:23
--  
把代码全部贴出来,上面的代码不能看出问题
--  作者:andrew361x
--  发布时间:2014/7/23 16:50:14
--  
你好,代码是这样的,帮忙看下问题在哪儿?
input:CNT(4,1,100,1);
VARIABLE:ARRAY1[CNT]=0;
VARIABLE:ARRAY2[CNT]=0;
I:=0,NOAXIS;
J:=0,NOAXIS;

aa:ema(c,1),NOAXIS;
bb:ema(c,2),NOAXIS;
cc:ema(c,3),NOAXIS;
dd:ema(c,4),NOAXIS;

for I=1 to CNT do
BEGIN
J=2*I;
ARRAY1[I]:=ema(close,I);
ARRAY2[I]:=ema(close,J);
end

--  作者:jinzhe
--  发布时间:2014/7/23 17:01:27
--  

input:CNT(4,1,100,1);
VARIABLE:ARRAY1[CNT]=0;
VARIABLE:ARRAY2[CNT]=0;
I:=0,NOAXIS;
J:=0,NOAXIS;


aa:ema(c,1),NOAXIS;
bb:ema(c,2),NOAXIS;
cc:ema(c,3),NOAXIS;
dd:ema(c,4),NOAXIS;


for I=1 to CNT do
BEGIN
J:=2*I;
ARRAY1[I]:=ema(close,I);
ARRAY2[I]:=ema(close,J);
end
aaa1:array1[1];
aaa2:array1[2];
aaa3:array1[3];
aaa4:array1[4];
aaab1:array2[1];
aaab2:array2[2];
aaab3:array2[3];
aaab4:array2[4];

 

 

 


--  作者:andrew361x
--  发布时间:2014/7/23 17:28:03
--  [求助]我把那个数组成员打印出来了
你好,我分别打印了array1和array2,但是array1的四个值都是相同的(都是3016),而array2的四个值不同(3010.369   3010.221 3010.158 3010.123),但是array1中的EMA(close,2)和EMA(close,4)(3016  3016),和array2中的的EMA(close,2)和EMA(close,4)(3010.369 3010.221),都不相同,也和前面的
aa:ema(c,1),NOAXIS,linethick0;
图片点击可在新窗口打开查看此主题相关图片如下:图中显示array2的四个成员.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:图中显示array1的四个成员是一条线.jpg
图片点击可在新窗口打开查看
bb:ema(c,2),NOAXIS,linethick0;
cc:ema(c,4),NOAXIS,linethick0;
dd:ema(c,8),NOAXIS,linethick0;
中的EMA(close,2)和EMA(close,4),也不相同,请问一下。这到底是什么原因啊

--  作者:jinzhe
--  发布时间:2014/7/23 17:30:14
--  
哪里一样了,我给你的代码你用了吗
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:andrew361x
--  发布时间:2014/7/24 9:25:40
--  
你好,我把你给我的代码复制用了,还是原来的问题,我在逐K线模式和序列模式中都试了一下,还是有问题,是不是我设置有问题,还是其他问题,看你发的运行变量感觉正确着,可是我一点儿都模拟不出来,求大神指导
图片点击可在新窗口打开查看此主题相关图片如下:在序列模式下,8个参数虽然不相同,但是没有变化,一条直线.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:在逐k模式下,前4个参数相同,后四个参数与aabbccdd中的值不相同.jpg
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2014/7/24 9:34:53
--  
解压之后 导入,不要直接打开
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:formula74.rar


--  作者:andrew361x
--  发布时间:2014/7/24 11:08:58
--  
你好,我把你刚才给我的代码导入后,序列模式和逐K线模式下分别试了一下,还是原来的问题,于是我就换了台电脑重新试了一下还是原来的问题,这是怎么回事啊,可以看一下两种模式下的截图吗?for循环在序列模式或者逐k线模式下是不是不能用ema,ma啊,提示说有风险,但是不知道到底发生了什么问题,我现在需要拿好几组ema做比较,优化一下到底多少组比较合适,所以必须要用到循环给数组赋值,该怎么规避这些问题啊
--  作者:jinzhe
--  发布时间:2014/7/24 13:11:17
--  
先不管风险,我给你的代码编译之后应用于图,然后就调试出结果