设为首页收藏本站

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

回测报告组合利润不对 [复制链接]

Rank: 1

精华
0
UID
283647
积分
16
帖子
13
主题
3
阅读权限
10
注册时间
2019-9-12
最后登录
2021-2-23
跳转到指定楼层
1#
发表于 2019-10-25 21:45:38 |只看该作者 |倒序浏览
本帖最后由 a379955579 于 2019-10-25 21:52 编辑

我用TBQUANT,回测报告组合利润不对,如图(上传不了图片和附件)

单个商品利润加起来不等于下面那个总利润

这是我设置问题吗?

Rank: 1

精华
0
UID
283647
积分
16
帖子
13
主题
3
阅读权限
10
注册时间
2019-9-12
最后登录
2021-2-23
2#
发表于 2019-10-26 21:33:02 |只看该作者
                回测组合利润不对的问题已经解决了。重置系统的所有数据就好。

                这是另一个问题,帮看看这样子的判断条件会出问题不?
                我想在当天快要收盘的时候以当前最新价成交,这样会信号闪烁不?求大神       

                if(Currenttime>=0.145958 and Currenttime<0.150001 and MarketPosition<=0 and close>=buyline)
                {
                BuyToCover(0,close);
                Buy(lots,close);
                }
                if(Currenttime>=0.145958 and Currenttime<0.150001 and MarketPosition>=0 and close<=sellline)
                {
                Sell(0,close);
                SellShort(lots,close);

使用道具 举报

Rank: 1

精华
0
UID
283647
积分
16
帖子
13
主题
3
阅读权限
10
注册时间
2019-9-12
最后登录
2021-2-23
3#
发表于 2019-10-27 00:12:36 |只看该作者
                上面那种写法不知道会不会信号闪烁,重复发单?

                如果改成这样子,会不会可以避免信号闪烁?


                Series<Numeric> a(0);
                if(close>=buyline and Currenttime>=0.145958 and Currenttime<0.150001)
                {a=1;}

                if(Currenttime>=0.145958 and Currenttime<0.150001 and MarketPosition<=0 and a==1)
                {
                BuyToCover(0,close);
                Buy(lots,close);
                }

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
4#
发表于 2019-10-28 09:40:58 |只看该作者
a379955579 发表于 2019-10-27 00:12
上面那种写法不知道会不会信号闪烁,重复发单?

                如果改成这样子,会不会 ...

无论改前改后,都会信号闪烁,都会重复发单 。

建议系统地学习TB公式基础语法,以及多看看软件自带的经典策略公式,然后再试着自己编写公式。

使用道具 举报

Rank: 1

精华
0
UID
283647
积分
16
帖子
13
主题
3
阅读权限
10
注册时间
2019-9-12
最后登录
2021-2-23
5#
发表于 2019-10-28 10:24:43 |只看该作者
Currenttime>=0.145958   
Currenttime<0.150001   
MarketPosition<=0
a==1                     

请教下,在这快要收盘的几秒里面,这四个条件都不会随着TICK推送而变化,为什么还会重复发单?

开盘赋值a=0,,然后a=0一直不变直到这几秒,a一旦赋值=1后,这几秒里面没有其他赋值给a的内容,难道上面那里当close>=buyline这个条件变得=false的时候,会撤销a=1这行的赋值吗?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
6#
发表于 2019-10-28 10:35:51 |只看该作者
a379955579 发表于 2019-10-28 10:24
Currenttime>=0.145958   
Currenttime

时间一过,信号会消失,第二天重新来过信号重新下单 。
a的赋值也是基于curretnttime的,用不用a,没有区别吧。

使用道具 举报

Rank: 1

精华
0
UID
283647
积分
16
帖子
13
主题
3
阅读权限
10
注册时间
2019-9-12
最后登录
2021-2-23
7#
发表于 2019-10-28 11:18:31 |只看该作者
明白了,我之前还在纠结这几秒内会不会重复发单,原来是第二天重复发单
第二天信号确实会消失。,,时间一过,信号消失后MarketPosition也会由=1变回原来的值

看来我应该要用个变量代替MarketPosition以解决这个问题对吗?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
8#
发表于 2019-10-29 08:58:30 |只看该作者
a379955579 发表于 2019-10-28 11:18
明白了,我之前还在纠结这几秒内会不会重复发单,原来是第二天重复发单
第二天信号确实会消失。,,时 ...

不能吧。。你的公式问题不在于是否应该使用marketposition。
而在于使用的条件不稳定的。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-5 01:36

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部