设为首页收藏本站

 找回密码
 注册
查看: 4709|回复: 5
打印 上一主题 下一主题

for while if else 中包含序列函数,可能存在潜在的逻辑错误! [复制链接]

Rank: 3Rank: 3

精华
0
UID
118920
积分
158
帖子
89
主题
40
阅读权限
40
注册时间
2013-5-7
最后登录
2013-7-22
跳转到指定楼层
1#
发表于 2013-5-9 15:00:37 |只看该作者 |倒序浏览
//CurrentBar>20是因为CoefficientR函数中,如果序列值的CurrentBar小于Length时,该函数返回无效值
        //CurrentBar-20>=19 是为了使得从close[20]开始往后还有20个日线k柱,这样才能使得算CoefficientR时两组数据都能够准备好。
        if(CurrentBar>20 && CurrentBar-20>=19)
        {
                CoefficientPearson=CoefficientR(Close,Close[20],20);
               
                //某K柱的日线相关性达到要求,则开始考虑该k柱的分钟时间序列的相关性
                if(abs(CoefficientPearson)>=relevancy)
                {
                       
                }
        }

for while if else 中包含序列函数,可能存在潜在的逻辑错误!这个是什么问题!

Rank: 6Rank: 6

精华
0
UID
116229
积分
2373
帖子
2247
主题
18
阅读权限
70
注册时间
2013-3-4
最后登录
2019-3-24
2#
发表于 2013-5-9 16:27:36 |只看该作者
序列变量的赋值不能放到条件语句里,因为满足条件才能赋值,会导致有的bar没有,有的有,会出现问题的

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
118920
积分
158
帖子
89
主题
40
阅读权限
40
注册时间
2013-5-7
最后登录
2013-7-22
3#
发表于 2013-5-10 10:26:27 |只看该作者
ample 发表于 2013-5-9 16:27
序列变量的赋值不能放到条件语句里,因为满足条件才能赋值,会导致有的bar没有,有的有,会出现问题的 ...

能不能说明白点呀!好像问题处在CoefficientPearson=CoefficientR(Close,Close[20],20);这句话上。如何修改呢!

使用道具 举报

高级操盘手

你不理财,财不理你

Rank: 10Rank: 10Rank: 10

精华
0
UID
116980
积分
37674
帖子
416
主题
12
阅读权限
200
注册时间
2013-3-17
最后登录
2021-5-12
4#
发表于 2013-5-10 10:40:52 |只看该作者
其实很好理解的,你把赋值放在IF里面了,当IF满足的时候,你的变量参与了K线的计算,当IF不满足的时候,你的变量又不参与K线的计算,这样的结果就是,你的变量并没有在所有K线上计算,只是部分K线的计算结果,所以这个变量的值,肯定是有偏差的

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
174690
积分
2359
帖子
15
主题
2
阅读权限
70
注册时间
2013-10-29
最后登录
2014-6-25
5#
发表于 2014-4-16 10:25:43 |只看该作者
那如果不进行赋值的话,会有影响吗?

使用道具 举报

Rank: 6Rank: 6

精华
0
UID
116229
积分
2373
帖子
2247
主题
18
阅读权限
70
注册时间
2013-3-4
最后登录
2019-3-24
6#
发表于 2014-4-16 15:09:11 |只看该作者
楼上说的不赋值是什么意思?后面用到了该值进行判断啊

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-5 09:40

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部