设为首页收藏本站

 找回密码
 注册
楼主: tradingart
打印 上一主题 下一主题

我觉得我遇到的问题可能还是个BUG [复制链接]

Rank: 5Rank: 5

精华
0
UID
4613
积分
953
帖子
162
主题
37
阅读权限
60
注册时间
2009-6-10
最后登录
2019-3-30
11#
发表于 2010-4-21 16:06:32 |只看该作者
这个我们都知道,关键是在计算倒数第二根BAR的时候如果原先有信号,但图标信号显示消失的情况下,会在倒数第二根BAR再次往外发单。这才是问题关键

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20906
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
12#
发表于 2010-4-21 16:46:11 |只看该作者
在新的一个bar出现的时候,上一个bar会被再算一次,所以用barstatus区分最后一个bar和历史数据的时候,需要把CurrentBar==BarCount-2的情况计算进来

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5439
积分
721
帖子
116
主题
35
阅读权限
60
注册时间
2009-9-12
最后登录
2011-7-4
13#
发表于 2010-5-25 11:59:44 |只看该作者
原帖由 lh948 于 2010-4-21 16:46 发表
在新的一个bar出现的时候,上一个bar会被再算一次,所以用barstatus区分最后一个bar和历史数据的时候,需要把CurrentBar==BarCount-2的情况计算进来


lh948:你的意思是用CurrentBar==BarCount-2能够把"在新的一个bar出现的时候,上一个bar会被再算一次"的情况区分出来,在这时候可以控制不重新发单,对吗?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20906
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
14#
发表于 2010-5-25 12:53:31 |只看该作者
需要判断CurrentBar==BarCount-2的时候的情况
if(CurrentBar==BarCount-2)
{
      .....
}

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5439
积分
721
帖子
116
主题
35
阅读权限
60
注册时间
2009-9-12
最后登录
2011-7-4
15#
发表于 2010-5-25 20:50:50 |只看该作者
我就是要过滤掉倒数第二个Bar发单。是不是用

if(CurrentBar==BarCount-2) Return;

就可以了?

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5439
积分
721
帖子
116
主题
35
阅读权限
60
注册时间
2009-9-12
最后登录
2011-7-4
16#
发表于 2010-5-26 10:16:13 |只看该作者
原帖由 dhhbeitang 于 2010-5-25 20:50 发表
我就是要过滤掉倒数第二个Bar发单。是不是用

if(CurrentBar==BarCount-2) Return;

就可以了?



模拟盘测试,上述方法不能阻止Buy/Sell函数在倒数第二Bar上发单。失败!

TB应该公布Buy/Sell函数在倒数第二Bar上发单的机制。本来很喜欢Buy/Sell函数的,在图表上有显示,很直观。但这个问题把人搞惨了。

使用道具 举报

Rank: 7Rank: 7Rank: 7

精华
0
UID
4485
积分
3032
帖子
164
主题
33
阅读权限
80
注册时间
2009-5-25
最后登录
2011-3-26
17#
发表于 2010-6-8 16:52:28 |只看该作者
If (Barstatus==2)
{
Code1...
序列变量A=2...
}

If (Barstatus==1)
{
Code2...
序列变量A=1...
}

请斑竹帮忙确认:

1。 上面一段代码, 在新bar 第一个tick到来时肯定会先在倒数第二根bar上执行code2, 然后在最后一根bar上执行code1
2。 执行完后 序列变量 A=2, A[1]=1.

使用道具 举报

Rank: 1

精华
0
UID
249830
积分
18
帖子
9
主题
3
阅读权限
10
注册时间
2017-4-9
最后登录
2020-12-5
18#
发表于 2017-4-16 23:22:11 |只看该作者
可以参考我这个帖子,研究了一晚上终于搞清楚了。1、最后一个tick的barstatus变成1的时候是会发单的,我觉得这个是以前版本的nextopen的历史遗留问题。2、如果这个bar之前发过单,那么最后一个tick的单就不会重复发了。但是像楼主说的,如果中途断掉系统,重启之后限制系统再发单,那么系统就会认为没有发过单,那么最后一个tick有可能发单(如果不限制的话)

http://bbs.tb18.net/thread-114647-1-1.html

使用道具 举报

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

bottom

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

GMT+8, 2024-5-22 17:35

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部