设为首页收藏本站

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

【坐等】严重质疑TB运算准确性 [复制链接]

Rank: 3Rank: 3

精华
0
UID
66209
积分
128
帖子
78
主题
19
阅读权限
40
注册时间
2011-9-18
最后登录
2020-12-20
跳转到指定楼层
1#
发表于 2013-2-22 00:10:32 |只看该作者 |倒序浏览
求问,上下这两段,逻辑上有没有区别?有什么区别?
一个是在if里面算,一个在if外面算。
——————————————————————————————————————
        If(MarketPosition<>1 && CrossOver(High,bh))
        {
        MyPriceB=Highest(High[1],n)+offset*minpoint;       
                MyPriceB = Max(Open,MyPriceB);
                Buy(Lots,MyPriceB);
        }
        If(MarketPosition<>-1 && CrossUnder(Low,bl))
        {
        MyPriceS=Lowest(Low[1],n)-offset*minpoint;       
                MyPriceS = Min(Open,MyPriceS);
                SellShort(Lots,MyPriceS);      
        }
——————————————————————————————————————
        MyPriceB=Highest(High[1],n)+offset*minpoint;       
        MyPriceS=Lowest(Low[1],n)-offset*minpoint;       
        If(MarketPosition<>1 && CrossOver(High,bh))
        {
                MyPriceB = Max(Open,MyPriceB);
                Buy(Lots,MyPriceB);
        }
        If(MarketPosition<>-1 && CrossUnder(Low,bl))
        {
                MyPriceS = Min(Open,MyPriceS);
                SellShort(Lots,MyPriceS);      
        }

Rank: 3Rank: 3

精华
0
UID
66209
积分
128
帖子
78
主题
19
阅读权限
40
注册时间
2011-9-18
最后登录
2020-12-20
2#
发表于 2013-2-22 00:31:49 |只看该作者

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
112423
积分
147
帖子
105
主题
3
阅读权限
40
注册时间
2012-9-10
最后登录
2018-2-26
3#
发表于 2013-2-22 09:25:12 |只看该作者
这个问题我也发现了,在if外的计算才符合我的思路,if内的计算出来的数值不是我要的结果

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
4#
发表于 2013-2-22 09:51:10 |只看该作者
crossover等函数的运算需要用到序列数据,一般称之为序列函数。
序列函数的赋值、运算若是放在条件内,是有可能因为取值不完全而导致计算结果有误的。

且在你编译时,下方会有文字警告提醒你的呀。。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
66209
积分
128
帖子
78
主题
19
阅读权限
40
注册时间
2011-9-18
最后登录
2020-12-20
5#
发表于 2013-2-23 22:06:06 |只看该作者
小米 发表于 2013-2-22 09:51
crossover等函数的运算需要用到序列数据,一般称之为序列函数。
序列函数的赋值、运算若是放在条件内,是有 ...

我用大于小于替换Crossover、Crossdown,还是一样的。
问题根本就不在Cross函数,而在于If。
下面的问题警告只是说请注意有没有逻辑问题,
在正常理解看来的话,这里没有逻辑问题吧?
请详细说清楚什么能放在什么内,什么不能放在什么内,以及还有什么隐性规则,
对于不了解的TB使用者来说,这个太坑爹了……

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
73474
积分
1249
帖子
695
主题
30
阅读权限
60
注册时间
2011-10-22
最后登录
2015-11-6
6#
发表于 2013-2-24 08:07:48 |只看该作者
leovone 发表于 2013-2-23 22:06
我用大于小于替换Crossover、Crossdown,还是一样的。
问题根本就不在Cross函数,而在于If。
下面的问题 ...

放在条件内,与放在条件外,其计算结果和开仓平仓讯号,是一样的吗?你自己测试一下

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
7#
发表于 2013-2-24 09:55:11 |只看该作者
leovone 发表于 2013-2-23 22:06
我用大于小于替换Crossover、Crossdown,还是一样的。
问题根本就不在Cross函数,而在于If。
下面的问题 ...


定义两个布尔变量。aa,bb,
aa = crossover();
bb = crossunder();
if(marketposition && aa )....
if(marketposition && bb)......

试试这样的表达方式,或者按你所说的将大小于替换cross来看看,结果会是如何。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-19 16:15

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部