- 精华
- 0
- 在线时间
- 556 小时
- UID
- 88963
- 积分
- 269
- 帖子
- 208
- 阅读权限
- 50
- 注册时间
- 2011-12-25
- 最后登录
- 2022-12-9
- 精华
- 0
- UID
- 88963
- 积分
- 269
- 帖子
- 208
- 主题
- 16
- 阅读权限
- 50
- 注册时间
- 2011-12-25
- 最后登录
- 2022-12-9
|
关于回溯测试和自动交易同步的处理
http://bbs.tb18.net/forum.php?mo ... =%E5%90%8C%E6%AD%A5
大概意思是说
在BarStatus == 2时发单
在BarStatus != 2时从新写信号
但是当这根Bar由BarStatus == 2变为1的瞬间,会不会从新运行一遍公式,导致重复发单?
根据原因是管理员小米的回复
http://bbs.tb18.net/forum.php?mo ... mp;page=1#pid126620
小米 发表于 2013-3-27 17:10
在新bar开始时的第一个tick,上一个bar的最后一个tick会与新bar第一个tick一起再运算一遍。
此时,上bar的最后一个tick的barstatus就是==1的,于是会再重为0.
建议修改公式,可尝试以下语句来初始化全局变量。
f(barstatus==0 || getglobalvar(0)==invalidnumeric)setglobalvar(0,0);
也就是BarStatus == 2变为1的瞬间,会把公式执行到新Bar上一次?而这时却在重写一个新的开仓指令?会不会重复发单?
我碰到了一个重复发单的问题,其他原因都排除了,在考虑是不是这个问题导致
望管理解答
|
|